The developer portal is not shown while on the Free plan
What to check when the ReceiptRoller developer portal is not shown. Explains what to do when your plan is Free, switching business accounts, and the timing of when the display updates.
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.
The flow to getting started
Explains the flow to start using the ReceiptRoller developer portal. If you register as a store user and are on the Starter plan or higher, no separate developer application is needed; you can register an app and begin API implementation right away.
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.
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.
Receive new sales by webhook and post them to Slack
Register a receipt.created webhook, verify its signature and drop duplicates in Node.js, and post each new sale to a Slack channel.
Cannot obtain a token (authentication error)
How to narrow down a 400 or 401 from the token endpoint, with the fix for each error and error_description, including invalid_client and invalid_grant.
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.
Rate limiting and throttling
Which ReceiptRoller API endpoints limit requests and by how much, what a 429 looks like, and how to pace and retry your client's calls.
Webhook overview
Which webhook events are actually sent, what the request and signature headers look like, how duplicates, order and lost events behave, and when to use the API.
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.
Error codes and retry guidance
The status codes and error body shapes the ReceiptRoller API returns, token endpoint errors, and which failures to retry and how.
Sync your product catalogue with ReceiptRoller
Build a Node.js script that reads a local CSV or JSON file, matches products by SKU, and creates or patches them through the Products API.
How to register a Webhook
Register a webhook in the developer portal or through the API, choose events that are actually sent, run a test send, and change, pause or delete a webhook.
Using the Products API
How to list, read, create, patch, replace, soft-delete and upload cover images for products with the Products API (/api/v1/products), with exact field names.