Getting Started

Overview

This page is the technical starting point for the ShopBack In-Store Payments API: credentials, payment flows, core endpoints, and environment base URLs.

Use these APIs to accept ShopBack Pay for in-store and point-of-sale (POS) payments — including classic counter and terminal checkout, and in-store / POS payments through a customer-facing app or customer-facing website (for example table ordering, order through app, browse-and-pay in store).

For product fit (surfaces, in-store vs online, when to use each payment method), see In-Store Integrations.

Prerequisites

You must be onboarded with ShopBack before calling these APIs. You will receive:

CredentialDescription
accessKeySecretSecret key used to generate HMAC signatures for API requests
accessKeyIdIdentifier paired with accessKeySecret

ShopBack also issues:

CredentialDescription
posIdUnique ID for each in-store / POS payment surface that accepts ShopBack Pay — including each customer-facing app or website instance, kiosk, cashier register, or payment terminal. Send the assigned posId on every request for that surface.

Note: Sandbox and production credentials may differ. Production accessKeyId / accessKeySecret are issued at go-live. Assign a posId per terminal or payment surface (app, website, kiosk, cashier, or terminal).

Payment flows

The In-Store Payments API supports three methods. Implement one or more depending on your surface.

MethodBest forTypical surfaces
Merchant-presented QRYour UI shows a ShopBack QR; customer scans with the ShopBack appApp, website, kiosk, cashier display, terminal
Customer-presented QRYou scan the customer’s ShopBack QRCashier, scanner, terminal
URL redirectCustomer is sent into ShopBack to pay, then returned to your app or siteCustomer-facing apps and websites only

Merchant-presented QR

  1. Create an order: POST /v1/instore/order/create
  2. Display the returned QR on your customer-facing app or website, or on a kiosk, cashier display, or terminal
  3. Customer scans with the ShopBack app and pays
  4. Poll order status and/or handle the payment notification webhook
  5. Refund or cancel via the order APIs as needed

Customer-presented QR

  1. Customer presents a ShopBack QR
  2. Your cashier, scanner, terminal, or assisted flow reads it and calls POST /v1/instore/order/scan
  3. Confirm order status and/or handle the payment notification webhook
  4. Refund or cancel via the order APIs as needed

URL redirect (customer-facing apps and websites)

Use this for in-store / POS payments where the UI is a customer-facing app or website, and you want ShopBack to host the payment step.

  1. Create the in-store / POS payment via the In-Store Payments API (same order lifecycle as other in-store methods)
  2. Redirect the customer to ShopBack’s payment URL to complete payment
  3. ShopBack returns the customer to your app or website (return / deep link URL you configure)
  4. Confirm final status via order status API and/or payment notification webhook
  5. Refund or cancel via the order APIs as needed

Do not use URL redirect for kiosk-only, cashier-scan, or payment-terminal hardware flows that rely on QR at the device. For those, use merchant-presented or customer-presented QR.

Core endpoints

Use these endpoints for in-store / POS create, scan, status, refund, and cancel — including when the payment UI is a customer-facing app or website (QR or URL redirect).

ActionEndpointFlow
Create order (show QR or start redirect)POST /v1/instore/order/createMerchant-presented QR; URL redirect (apps / websites)
Scan consumer QRPOST /v1/instore/order/scanCustomer-presented QR
Get order statusGET /v1/instore/order/{referenceId}All methods
Refund captured orderPOST /v1/instore/order/{referenceId}/refundAll methods
Cancel orderPOST /v1/instore/order/{referenceId}/cancelAll methods

After create, merchant-presented QR displays the QR from the response; URL redirect sends the customer to ShopBack’s payment URL, then verifies status when they return to your app or website.

Certification and go-live: Implementation.

API contract

Note: Paths below are relative. Prefix with the base URL for your country and environment.

Change log

Document versionDate introducedChanges made
v1.111 Aug 2022Support both Pay and PayLater
v1.222 Aug 2022Add clarifying text for referenceId; use ISO-3166-1 Alpha for country code
v1.31 Sept 2022Surface HTTP 409 codes; show partnerId as not part of query param
v1.41 Jan 2023Add Consumer Presented QR Code endpoints
v1.57 Sep 2023Add POSI AU API environment
v1.613 June 2025Add POSI HK API environment

API environment

CountryEnvironmentURL
AllSandboxhttps://integrations-sandbox.shopback.com/posi-sandbox
SingaporeProductionhttps://integrations.shopback.sg/posi
Hong KongProductionhttps://integrations.shopback.com.hk/posi

What's next

  1. Authentication
  2. Generating an HMAC Signature
  3. Create / Scan order endpoints in this API reference
  4. Implementation — certification and go-live
  5. In-Store Integrations — product fit and method selection