Cash rounding is a service charge adjustment used to simplify transactions following the withdrawal of the penny from circulation. This charge applies only to cash payments, where the change due to the guest is rounded to the nearest 0.05. The adjustment is applied after taxes and discounts, making it a non-taxable cash adjustment.
Cash rounding is a service charge that applies when a cash payment is processed. The change due to the guest is rounded to the nearest 0.05. The adjustment is applied after tax and discounts, so it is a non-taxable cash adjustment.
You can configure one of three rounding strategies at your location:
-
Always round up (rounds in the location's favor)
-
Always round down (rounds in the guest's favor)
-
Round to the nearest nickel
Rounding only happens when the change due doesn't already end in 0 or 5 cents. The change is adjusted by a few cents (anywhere from $0.01 to $0.04) to reach the nearest nickel. A negative cash rounding service charge means more change was given (rounded in the guest's favor). A positive value means less change was given (rounded in the location's favor). For more information about rounding strategies, see Cash rounding strategies overview.
In the orders API, cash rounding is response-only. You cannot create orders with cash rounding service charges; they only appear in API responses when a cash payment is processed.
The orders API does not indicate which rounding strategy a location
uses. In API responses you only see the resulting positive or negative
chargeAmount for each cash rounding service charge.
A guest at a location that uses the always round down rounding strategy has a check total of $6.03. They pay with $10.00 cash. The exact change would be $3.97, but that doesn't end in 0 or 5 cents, so the Toast platform rounds the change to the nearest nickel. With always round down rounding, the guest receives $3.95 back. The location keeps the extra $0.02. That .02 is recorded on the check as a cash rounding service charge. The guest still owes $6.03, and the orders API response shows both the payment and the small adjustment. For the example JSON payload matching this scenario, see Example: Cash round on a check with change due.
Cash rounding service charges are applied to checks when a cash
payment is processed and appear as AppliedServiceCharge
objects on the check object. The service charge reflects the
adjustment from rounding the change due to the nearest nickel.
Cash rounding service charges have the following characteristics:
-
The
serviceChargeCategoryvalue is set toCASH_ROUNDING. -
The
chargeAmountcan be positive or negative, depending on whether the change due was rounded in the location's favor (less change given) or the guest's favor (more change given). -
The
destinationvalue is set toCASH_DRAWER. Service charges with adestinationvalue set toCASH_DRAWERdon't contribute to net sales. -
The
paymentGuidvalue contains the globally unique identifier (GUID) of the cash payment that the rounding adjustment is linked to.
Example: Cash round on a check with change due
{
"checks": [
{
"entityType": "Check",
"guid": "5fa001b4-6a00-4a5e-8ed8-adaa21bd6a36",
"amount": 6.03
,
"amountDue": 0,
"payments": [
{
"guid": "5a70ee5a-1612-443a-871d-d663a6e905d2",
"entityType": "OrderPayment",
"type": "CASH",
"amount": 6.03,
"amountTendered": 10
}
],
"appliedServiceCharges": [
{
"guid": "4fe70ad1-c9dd-43e8-88b8-d10d1cdc1055",
"entityType": "AppliedServiceCharge",
"paymentGuid": "5a70ee5a-1612-443a-871d-d663a6e905d2",
"destination": "CASH_DRAWER",
"serviceChargeCategory": "CASH_ROUNDING",
"serviceCharge": {
"guid": "29701aad-dabd-4ba7-9db8-97830968733e",
"entityType": "ServiceCharge"
},
"name": "Toast Cash Rounding",
"chargeAmount": 0.02
,
"taxAmount": 0
}
]
}
]
}