Ecommerce
Accept payments online with the EFT Pay WooCommerce plugin, hosted Bluebox checkout or a custom Scan to Pay integration.
For WooCommerce stores, install the EFT Pay WooCommerce plugin. It manages hosted payment creation, signed notification verification and WooCommerce order updates. Follow the guide for merchant setup, all eleven configurable payment methods, sandbox testing and going live. The plugin's merchant configuration and notification setup are covered in that guide.
For custom-built stores, the two Scan to Pay API patterns below both end in the same outcome — the customer scans a QR with their bank or wallet app, authorises the payment, and you receive a webhook with the result. The difference is who builds the customer-facing checkout experience.
Pick your integration
| Pattern | What you build | What we build | Best for |
|---|---|---|---|
| Bluebox hosted checkout | A redirect from your cart to our hosted page, plus a callback handler | The QR display, the customer instructions, the success/failure UI | Fastest time-to-live. Small to medium merchants, custom-build is overkill |
| Custom checkout | The full checkout UI, including QR rendering and state-polling | Just the API endpoints | Larger merchants with strong brand UI requirements |
If you're not sure, start with Bluebox. You can always migrate to custom later — the underlying API is the same.
What's the same across both
- Same
code/createendpoint for creating the payment intent - Same webhook payload delivered to your notification URL on completion
- Same
merchantReferenceidempotency model — see Idempotency - Same encryption for the webhook body — see Signing and verifying webhooks
- Same settlement through your existing acquiring bank
What's different
| Concern | Hosted (Bluebox) | Custom |
|---|---|---|
| Endpoint | POST /bluebox/secure/createTx | POST /code/create |
| You render the QR? | No — we do, on our redirect page | Yes — render yourself or use the QR endpoint |
| Customer leaves your site? | Yes, briefly, then returns via callback | No — entire flow stays on your domain |
| Callbacks | Two: unencrypted browser redirect (CB1) and encrypted server-to-server webhook (CB2) | One: standard encrypted webhook |
| Branding | Scan to Pay branding on the checkout page | Your branding throughout |
| Time-to-integrate | A day or two | A week or two |
What's next
- Hosted checkout walkthrough → Bluebox hosted checkout
- Hosted checkout business rules → Business rules
- Custom checkout walkthrough → Custom checkout
- Sandbox test before you build → Sandbox and test cards
- Handle the webhook → Webhooks
- Refund or reverse → Refunds and reversals
Updated 7 days ago
