Money and timezones
Amounts are not in one unit across the API. Check the field’s description in the API reference; the partner endpoints use these:
| Where | Unit | Example |
|---|---|---|
Loyalty card balance (stored value) |
integer cents | 1250 = $12.50 |
Menu item sales report: item_price, plate_cost, gross_amount, discount_amount, discounted_price, net_amount, margins |
dollars, decimal | 12.5 = $12.50 |
Loyalty points |
points, not money | 340 |
Loyalty units |
whatever unit the code names | 12.4 gallons |
All amounts are US dollars.
Timezones
Section titled “Timezones”Each restaurant has a timezone, and the API works in it.
restaurant_timezonein every response is the IANA name of the token’s restaurant timezone, e.g.America/Chicago.- Timestamps in payloads (
created_at,redeemed_at, a report’sstart_at/end_at) areYYYY-MM-DD HH:MM:SSin that restaurant’s local time, with no offset. Combine them withrestaurant_timezoneto get an absolute time. response_atisMM/DD/YYYY hh:mmamin the same timezone. Use it for logging only.
Business days in reports
Section titled “Business days in reports”Report date parameters (start_at, end_at) are calendar dates, MM/DD/YYYY, and mean
business days. A restaurant can start its business day later than midnight, for example at
4:00 am, so sales at 1:30 am count towards the previous day. The response echoes the exact range
that was used:
{ "start_at": "2026-10-01 04:00:00", "end_at": "2026-11-01 03:59:59" }