Features PB1 tax, service charge, rounding & discounts

Features

PB1 tax, service charge, rounding & discounts

Set up PBJT/PB1, service charge per channel, rounding, extra charges, and item or bill discounts, with a worked calculation example.

3 min read Updated 15 Nov 2026
On this page

All price calculations are set in Back OfficeSettingsTax & charges. On the right is a Receipt simulation that uses the same calculation engine as the cashier app and the server, so what you see there matches the real receipt.

Tax (PBJT / PB1)#

PBJT (Indonesia’s regional restaurant tax, formerly PB1) on food and beverages is usually 10%, depending on your city’s regional regulation. On receipts and in the cashier app, this tax is labeled PB1.

pricing.tax_pct10
Enter 0 if the outlet doesn’t charge tax.
pricing.tax_modeexclusive
Exclude tax: tax is added on top of the menu price. Include tax: the menu price is final; the receipt shows the tax portion.

Specific items can be exempted from tax with Tax exempt in the item editor (make sure this follows your local regulations). The outlet’s NPWPD (regional taxpayer number) is entered in Back OfficeOutlets & brandsOutlets and can be printed on receipts.

Service charge#

pricing.service_charge_pct5
Calculated on the subtotal after discounts. Enter 0 to turn it off.
pricing.service_charge_channelsdine_in
Choose which channels get a service charge under Applies to channels. Usually only Dine-in, so takeaway and delivery aren’t charged.
pricing.tax_on_service_chargetrue
On: tax is calculated on subtotal + service (the common setup). Off: tax is calculated on the subtotal only.

Calculation example#

A dine-in order: Nasi Goreng Kampung Rp27,000 + Kopi Susu Gula Aren Rp22,000. Settings: prices exclude tax, 5% service, 10% PBJT on subtotal + service, cash rounded to the nearest Rp500.

Line Calculation Amount
Subtotal 27,000 + 22,000 Rp49,000
Service 5% 5% × 49,000 Rp2,450
PB1 10% 10% × (49,000 + 2,450) Rp5,145
Total Rp56,595
Rounding (cash payments only) to the nearest Rp500 −Rp95
Paid in cash Rp56,500

If the guest pays with QRIS, they still pay Rp56,595, because rounding only applies to cash.

Rounding#

pricing.rounding_unit500
Options: no rounding, Rp100, Rp500, or Rp1,000.
pricing.rounding_modenearest
Direction: Up, Nearest, or Down. Nearest is the most common.
pricing.rounding_scopecash_only
Cash only (default) or All payment methods. QRIS and card payments are usually charged the exact total.

Rounding differences are recorded separately in reports, so your revenue stays accurate.

Extra charges#

Need a takeaway packaging fee or a QR service fee? Add it under Extra charges → Add charge. Each charge has a name, a type (Fixed amount or Percentage), a value, the channels it applies to, and whether it’s Taxable. Example: “Packaging fee” Rp2,000, Takeaway channel only.

Discounts#

Discounts are applied from the cashier or waiter app, at two levels:

Type How Example
Item discount Tap the item on the bill → Item discount → Percent or Amount Free birthday coffee: 100%
Bill discount Bill menu → Bill discount → Percent or Amount 10% regular-customer discount

Every discount requires a reason. Discounts are calculated before service and tax. By default, manual discounts by Cashiers and Waiters need a supervisor PIN (see Approval). All discounts are recorded in the Discounts report: cashier, reason, approver, and amount.

Was this guide helpful?