Developers · Build on Tapped

One SDK. Tap-to-pay, onboarding, and payouts, already certified.

Skip the six months it takes to certify an EMV kernel, negotiate a sponsor bank, and write a sub-merchant KYB pipeline. Install the SDK, call tapped.terminals.capture(), ship.

All systems operational status.tapped.cc →
~/tapped-example · charge.js

    
Quickstart · 5 minutes

From zero to first live tap in four steps.

Everything below works with a sandbox key. Flip a single flag to move to production once scheme certification is complete on your side.

SDKs & clients

First-party SDKs for every stack you run.

All SDKs share the same object model and error surface. Write against one, read the others.

API surface

Four resource domains. Everything orthogonal.

Terminals for taps. Merchants for sub-merchant onboarding. Payouts for settlement. Webhooks for everything else.

tap core · terminals

Terminals

Create a tap session, hand it to the phone SDK, capture the result. Idempotent with per-tap identity.

POST/v1/terminals/sessionsCreate tap session
POST/v1/terminals/capturesCapture authorisation
GET/v1/terminals/captures/:idRetrieve capture
POST/v1/refundsRefund a capture
onboard · sub-merchants

Merchants

Create a sub-merchant, attach documents, receive a decision. KYB workflows are per-market; the API surface is unified.

POST/v1/merchantsCreate sub-merchant
POST/v1/merchants/:id/documentsAttach KYB evidence
GET/v1/merchants/:idFetch status + decision
DELETE/v1/merchants/:idOffboard sub-merchant
ledger · payouts

Payouts & Balances

Every tap lands in a Tapped balance per currency. Trigger payouts or schedule them; we handle T+1 across all live markets.

GET/v1/balancesAll balances, per currency
POST/v1/payoutsTrigger a payout
GET/v1/payouts/:idPayout + reconciliation
GET/v1/ledger/entriesStream ledger lines
events · webhooks

Webhooks

60+ event types, signed with HMAC, retried with exponential backoff. All events are strictly ordered per-resource.

POST/v1/webhook-endpointsRegister endpoint
GET/v1/eventsList & replay events
POST/v1/events/:id/replayRe-deliver single event
GET/v1/events/typesFull event catalogue
Built for builders

The details that make integration actually enjoyable.

Idempotent by default

Every mutating endpoint accepts an Idempotency-Key header. Retry with the same key, get the same response, no double-charges at the till.

Versioned forever

Pin an API version per workspace. We deprecate on a 24-month schedule, you upgrade when it's safe, not when it's convenient for us.

Signed webhook replay

Every webhook is HMAC-signed. Replay any event for up to 30 days from the dashboard or via API, test integrations against real payloads.

Stage, sandbox, production

Three isolated environments, each with its own key set. Sandbox accepts the full EMV test-card set; staging mirrors production at the scheme layer.

Multi-region endpoints

SG, JP, and AU regional endpoints serve low-latency writes. PCI-scoped data stays in-region; control plane is globally consistent.

On-call Slack with engineering

Every Platform customer gets a shared Slack channel with named on-call engineers. No tier-1 deflection. 24/7 coverage across SG and UTC-5.

Start building

Sandbox is free and self-serve. Forever.

Sandbox keys have no expiry and the full EMV test-card set attached. Build as much as you want before talking to us, or don't talk to us at all. The Platform plan is self-serve end-to-end.