Using the Reservations API
A guide to ReceiptRoller's Reservations API (/api/v1/reservations). Covers reservation CRUD and status updates, retrieving, creating, and bulk-generating reservation slots, retrieving the tables (tables, private rooms, counters) registered in the store layout, and reservation statistics.
Posting a Question to the Community
Explains how to post a question to the developer community, and the review-approval and notification-email flow after posting.
Using the Orders / OMS API
A guide to CRUD operations on the orders under a business account using ReceiptRoller's Orders / OMS API (/api/v1/orders). Covers creating, updating, transitioning status (confirm, process, cancel), and deleting orders, plus the flow for Android / iOS apps and server integrations.
Using the Business Hours API
A guide to ReceiptRoller's Business Hours API (/api/v1/stores/{storeId}/business-hours). Covers retrieving and updating per-day business hours, registering special business days (temporary closures and hour changes), configuring a store's workable hours (the upper bound for shift creation), and determining whether the store is currently open.
Using the Sales API
An overview of ReceiptRoller's Sales API (/api/v1/sales/*) and how to filter by business account, store, POS terminal, and period. A getting-started guide covering the actual response structure (the KpiValue nested type) through averageTicket and the 8-hour token lifetime, for building a sales dashboard in an Android/iOS mobile app or server integration.
Using the in-store media display API (Display API)
An overview of ReceiptRoller's in-store Android display API (/api/v1/displays/*) and the steps for pairing, heartbeat, playlist retrieval, and impression reporting. An introductory guide for building an app that plays a media loop on an Android kiosk or in-store signage device.
Using the Store App Content API (News, Pages, and Business Info)
A guide to /api/v1/apps/{shopId}/*, used to fetch store app content (news, pages, app manifest, business info, and membership card config). Explains that shopId is the same as the business account ID, the difference between business-account-level content and store-level content, and how authentication is handled.
Designing resends, ordering, and idempotency
Explains ReceiptRoller's Webhook resend policy, why delivery order is not guaranteed, implementing idempotency with event_id, handling dead letters, and common anti-patterns.
Product master (PIM) and category data
Explains the data structure of ReceiptRoller's product master (PIM), categories, and variations, CRUD operations, SKU management, and synchronization patterns with e-commerce.
Inventory data integration
Explains the structure of ReceiptRoller's inventory data, multi-warehouse management, stock movement history, real-time sync via Webhooks, and WMS integration patterns.
How to think about data protection (anonymization and encryption)
Explains how to think about data protection in a ReceiptRoller integration app — encryption (at rest and in transit), anonymization and pseudonymization techniques, and a deletion policy.
Rotating and safely storing secrets
Explains the rotation plan for safely operating ReceiptRoller client secrets and Webhook secrets, how to use the old/new parallel period, and best practices for storage.
403/401 is returned (permissions and scopes)
How to isolate the cause when an API call returns 401 or 403. Explains the typical cases: invalid token, insufficient scope, no store access permission, and User-scope review not passed.
Purchase and receipt data integration
Explains the structure of the purchase and receipt data ReceiptRoller handles, how to retrieve it, related scopes, Webhooks, and common use cases.
Contacting support (technical integration)
Explains the types of support available to ReceiptRoller developers, a checklist to run before contacting support, and a template of the information to attach so issues get resolved efficiently.
The basics of requests and responses (JSON)
Explains the request format, required headers, response structure, pagination, filtering, and date/time format rules of the ReceiptRoller API.
Best practices for production operation
Explains best practices for running a ReceiptRoller integration app in production — environment separation, monitoring, deployment, incident response, and keeping documentation in order.
Representative API examples
Introduces, as curl commands, examples of calling the representative ReceiptRoller API endpoints (retrieving receipts, listing stores, creating products, registering Webhooks).
app_not_approved is returned for User-scope calls
What to check when using a User-scope results in an app_not_approved error. Explains development with a sandbox slot, applying for review, and the flow from sandbox to production.
Cannot obtain a token (authentication error)
How to isolate the cause when you cannot obtain an access token. Explains the representative errors — invalid_client, invalid_grant, redirect_uri_mismatch — and what to do about them.