Guide for native mobile apps: multi-business-account access and the OAuth flow
An implementation guide for Android / iOS native apps. Turning off "bind the token to one business account at authorization time" during app registration issues a user-scoped OAuth token. With the /api/v1/me/organizations + ?organizationId= pattern, you can access multiple business accounts across the board.
Listing business accounts, stores, and POS terminals
A guide to retrieving, via REST API, the business accounts a user belongs to, the stores under them, and each store's POS terminals, from a ReceiptRoller mobile app or server integration.
Creating a new app
How to register a developer app in a business account: the fields, how the credentials are shown, what you can do afterwards, and common stumbling points.
Managing the client ID and client secret
Where to find the client ID and client secret, how to store them, regenerating the secret after a suspected leak, and running several environments.
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.
OAuth Scopes Reference and Availability
A reference of all scopes available in the ReceiptRoller OAuth API and which kinds of apps each scope can be granted to. Also covers the review requirement for User scopes, why Store and User scopes can't be mixed, and how to use the API from a LIFF app.
Account linking and merging API (token exchange, /me/identities, /account/merge)
How native apps and the LINE mini app sign in with a LINE, Apple or Google ID token, add and remove sign-in methods, and merge two accounts — the endpoints, the proof object and the error codes.
Available data domains
A one-page overview of the data domains you can retrieve from the ReceiptRoller developer portal. Summarizes the contents, retrieval methods, and required scopes for each domain — transactions, products, inventory, orders, customers, coupons, SNS, advertising, individual user data, and more.
API Authentication Guide
How to authenticate with the OAuth 2.0 authorization code flow: authorize parameters, the consent screen, token exchange and revocation, errors and scopes.
Your first API call: from app registration to listing transactions
Get a token with the OAuth authorization code flow and PKCE, confirm the business account, list its transactions, and refresh the token.
Obtaining and refreshing an access token
How to obtain and refresh access tokens (8 hours) and refresh tokens (30 days), how refresh tokens rotate, and when tokens stop working.
Show a store's reservations in your own calendar
Fetch the next 7 days of a store's reservations with the Reservations API and write them to an iCalendar (.ics) file with Node.js.