API & Integrations

One set of credentials connects Scan & Pay to your store, plugin, or custom checkout. Generate them once in the merchant dashboard, then pick the integration path that fits your stack.

Overview

Scan & Pay accepts PayTo PayID — Australia’s instant bank-rail payment standard — at a flat $0.90 per transaction. Every checkout uses a QR code generated by our backend, so customers pay straight from their banking app and the funds settle in seconds.

Tagline: Buy now with PayTo PayID.

How it works

  1. 1

    Generate credentials

    Open Settings → Integrations in the merchant dashboard. You’ll get a Merchant ID, an API Secret, and a Webhook Secret — the same set works for every integration path.

  2. 2

    Create a payment session

    Your backend calls https://api.scanandpay.com.au with the order amount and reference. We return a payment session + QR code to render at checkout.

  3. 3

    Verify the webhook

    When the customer pays, we POST a signed event to your endpoint. Verify the X-Scanpay-Signature header against your Webhook Secret, then mark the order paid.

Integration paths

Available

WooCommerce plugin

Drop-in WordPress plugin. Install, paste your credentials, done. The fastest path if you run a WooCommerce store.

Available

Official SDKs

Libraries for Node.js and PHP. Handle session creation, HMAC webhook verification, and retry logic out of the box. Includes a React component for Node.js.

Available

REST API

Build directly against api.scanandpay.com.au for a fully custom checkout, mobile app, or POS. Two endpoints, one signed webhook.

Get your credentials

  1. 1Sign in to merchant.scanandpay.com.au.
  2. 2Open Settings → Integrations.
  3. 3Copy Merchant ID, API Base URL, API Secret, and Webhook Secret.
  4. 4Paste them into the WooCommerce plugin, the drop-in package, or your custom backend.

Treat your secrets like passwords. Only regenerate if they’re compromised — regeneration causes immediate downtime on every connected integration until the new keys are pasted in.