What You Can Do with the Developer Portal

api webhook overview getting-started
About this guide
This page gives an overview of the integration methods (REST API and Webhooks) offered by the ReceiptRoller developer portal and what you can build with each. It's the first page to read when you're ready to start implementing.

What You Can Do with the Developer Portal

The ReceiptRoller developer portal provides the means to securely connect retail data — purchases, sales, products, inventory, advertising, user receipts, and more — from external systems. There are two integration methods: the REST API and Webhooks.


Two Integration Methods

REST API (polling / request-based)

Send HTTPS requests from an external system to ReceiptRoller's servers to retrieve and manipulate data. Authenticate with OAuth 2.0 and call endpoints using an access token scoped to the permissions you need.

  • Within the range a store owner has authorized, you can operate on products, orders, inventory, customers, coupons, and more
  • An approved partner can reference the receipt and spending data a user has consented to share
  • Best suited for use cases like "I want to fetch the current state right now" or "I want to update data"

Webhooks (push / event-based)

Events that occur on the ReceiptRoller side (such as receipt issuance or updates) are automatically POSTed to a URL you register. Your external system doesn't need to poll the API periodically — it can start processing the moment an event occurs.

  • Receive a notification on your own server the moment a receipt is issued
  • Verify the sender using a signature (HMAC-SHA256)
  • Failed deliveries are automatically retried up to 4 times

What You Can Do with the API

The resources you can access are separated by OAuth scope. Below are representative examples. For the complete list of scopes, see the OAuth scopes reference.

Category Main operations Representative scopes
Products & inventory Read and update product master, SKUs, and stock levels store.products.* store.inventory.read
Orders Read order data, update status store.orders.*
Customers & CRM Read customer data and segments store.customers.read crm.profiles.read
Coupons Create, update, and read coupons store.coupons.*
Store flyers Create and publish flyers store.flyers.*
SNS & analytics Read SNS posts, audience, and analytics data sns.* analytics.read
User (review required) An individual user's receipts, spending, and favorite stores user.*

What You Can Do with Webhooks

Subscribe to events on ReceiptRoller and process them in real time in your external system.

  • Receipt issued event — the moment a checkout completes at the POS and a digital receipt is issued, a notification is sent to your server
  • Receipt updated event — notified when a receipt's state changes due to a refund, cancellation, and so on
  • Order event — notified on a new order or a status change (store-facing)

For implementation considerations such as signature verification, retries, and idempotency design, see the store-facing Webhook guide.


Common Use Cases

What you want to do Method to use Related guide
Send receipt data to my own server when a checkout completes at my store Webhook + Store API Store-facing guide
Show a user all of their receipts across every store in my own wallet app OAuth + User API (review required) Wallet app guide
Sync product master and inventory from an external inventory management system Store API (batch)
Visualize a store's SNS posting performance in an internal BI tool SNS / Analytics API
Embed an in-store survey into a digital receipt and aggregate the responses Survey API + Receipt embed Survey API guide

About SDKs and Client Generation

We don't provide language-specific SDKs. Instead, we publish the definitions of all endpoints as a machine-readable specification in OpenAPI (Swagger) format.

https://receiptroller.io/openapi/v1.json

Pass this URL to an AI coding assistant, or feed it into a code-generation tool such as openapi-generator, NSwag, or Kiota, to automatically generate a typed API client. There's no need to wait for an SDK.

If you implement by hand, a combination of your language's standard HTTP client and an OAuth 2.0 library is all you need.

  • JavaScript / TypeScript: fetch, axios, openid-client
  • Python: requests, requests-oauthlib, authlib
  • .NET: HttpClient, IdentityModel
  • Ruby / PHP / Go: your language's standard library + an OAuth 2.0 client

Steps to Get Started

  1. Create a ReceiptRoller account
  2. Submit a developer application and get approved
  3. Register an application in the developer portal and set the client ID, client secret, and redirect URL
  4. Specify the OAuth scopes you need and implement the authorization flow
  5. Call the API with the access token you obtain, or register a Webhook URL to receive events

Related Guides

Published: 2026-04-27 Updated: 2026-07-05
このトピックについて
開発者API
機能の詳細を見る
Tags
API (22) OAuth (15) Android (10) iOS (9) Webhook (6) Troubleshooting (5) api (5) App registration (4) POS Integration (4) Reference (4)
Related articles