Representative API examples
API
Samples
curl
Receipt retrieval
Who this article is for
A set of samples for developers touching the API for the first time to verify behavior. We present them in curl, which does not depend on the implementation language.
A set of samples for developers touching the API for the first time to verify behavior. We present them in curl, which does not depend on the implementation language.
In every example, assume $TOKEN holds an access token. For the complete spec, see the API reference (Swagger).
1. Retrieve your list of stores
curl https://api.receiptroller.io/v1/stores \ -H "Authorization: Bearer $TOKEN"
Response
{
"object": "list",
"data": [
{
"id": "str_abc123",
"name": "Shibuya store",
"currency": "JPY",
"created_at": "2025-12-01T00:00:00Z"
}
],
"has_more": false
}
2. Retrieve receipts from the past 24 hours
curl "https://api.receiptroller.io/v1/receipts?store_id=str_abc123&issued_after=2026-04-26T00:00:00Z&limit=50" \ -H "Authorization: Bearer $TOKEN"
3. Retrieve the line items of an individual receipt
curl https://api.receiptroller.io/v1/receipts/rcp_xyz789 \ -H "Authorization: Bearer $TOKEN"
Response (partial)
{
"id": "rcp_xyz789",
"store_id": "str_abc123",
"issued_at": "2026-04-27T10:15:22Z",
"total_amount": 3850,
"tax_amount": 350,
"currency": "JPY",
"items": [
{
"product_id": "prd_a01",
"name": "Coffee beans 200g",
"quantity": 1,
"unit_price": 1500,
"amount": 1500
},
{
"product_id": "prd_a02",
"name": "Drip pack",
"quantity": 1,
"unit_price": 2000,
"amount": 2000
}
],
"payment_method": "credit_card"
}
4. Create a new product
curl -X POST https://api.receiptroller.io/v1/products \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: 01HV6N3M2K9PQR" \
-d '{
"store_id": "str_abc123",
"sku": "COFFEE-200G-001",
"name": "Coffee beans Ethiopia 200g",
"price": 1800,
"currency": "JPY",
"tax_rate": 0.10
}'
5. Update a stock count
curl -X PATCH https://api.receiptroller.io/v1/inventory/prd_a01 \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"quantity": 42,
"warehouse_id": "wh_main"
}'
6. Register a Webhook endpoint
curl -X POST https://api.receiptroller.io/v1/webhook_endpoints \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"url": "https://app.example.com/webhook",
"events": ["receipt.issued", "receipt.refunded"],
"description": "Production - for inventory sync"
}'
7. Retrieve your own user information (User-scope)
curl https://api.receiptroller.io/v1/me \ -H "Authorization: Bearer $USER_TOKEN"
* $USER_TOKEN is a general consumer's token obtained with the user.profile scope.
8. A user's own receipt list (User-scope)
curl "https://api.receiptroller.io/v1/me/receipts?limit=20" \ -H "Authorization: Bearer $USER_TOKEN"
Per-language SDKs and client generation
We do not provide official per-language SDKs. Instead, we publish the definitions of all endpoints in OpenAPI (Swagger) format.
https://receiptroller.io/openapi/v1.json
Pass this URL to an AI coding assistant, or feed it into a code generator such as openapi-generator, NSwag, or Kiota, to automatically generate a typed API client. If you implement it by hand, you can also implement it directly with any general-purpose library that supports OAuth 2.0 and JSON HTTP (axios, Requests, HttpClient, etc.).
Sample code developed by the community is shared in the developer community.
Related guides
Published: 2026-04-27
Updated: 2026-07-05
Category
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
-
Using the Store Information APIA guide to the REST API for fetching and updating a store's basic information (store name, store type, contact details, and address). Lets you implement a store information editing screen from token-authenticated clients such as staff apps.
-
PosTransactionDto specification — field reference for transaction dataA complete field reference for PosTransactionDto, the canonical model for the transaction data ReceiptRoller handles. For each category — identifiers, dates, amounts, line items, payments, staff, status, and CRM linkage — it summarizes the field names, types, meanings, and how each POS vendor populates them. A reference for developers and external-system integrators. Also referenced from the Smaregi and Square mapping articles.
-
Purchase and receipt data integrationExplains the structure of the purchase and receipt data ReceiptRoller handles, how to retrieve it, related scopes, Webhooks, and common use cases.
-
Using the Business Hours APIA 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 Orders / OMS APIA 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.