Interactive Playground

Make live calls to the ZerithPay payment engine. Sign in to pre-load your API key.

API PlaygroundPOST /api/payments
= $50.00 USD
Response
// Click "Send Request" to make a live API call // The response will appear here with full JSON

Create Payment

POST/api/payments↑ Try it above

Create and authorize a new payment. The payment is processed synchronously through the routing engine, risk scorer, and acquiring network. Returns an authorized payment object with a risk score and settlement route.

Request Body
json
{
  "amount": 5000,
  "currency": "USD",
  "settlement": "USDC",
  "method": "card",
  "merchant_name": "Acme Corp"
}
Response
json
{
  "id": "pay_7Yk92mNxQr3pLsT",
  "object": "payment",
  "status": "authorized",
  "amount": 5000,
  "currency": "USD",
  "method": "card",
  "merchant": {
    "id": "mch_abc123",
    "name": "Acme Corp"
  },
  "authorization": {
    "latency_ms": 84,
    "route": "ZERITH-NYC-01",
    "approval_code": "A0001H"
  },
  "settlement": {
    "method": "USDC",
    "status": "pending",
    "wallet": null,
    "tx_hash": null
  },
  "risk": {
    "score": 12,
    "level": "low",
    "decision": "approved",
    "signals": []
  },
  "fees": {
    "processing": 1.5,
    "network": 0.3,
    "total": 1.8
  },
  "created": 1748598000
}

amount is in the smallest currency unit (cents for USD, pence for GBP, etc.). settlement can be USDC, USDT, ETH, bank_transfer, or fiat.

SDK Examples

Sign in to pre-fill your API key in the examples.

typescript
import { ZerithPay } from '@zerithpay/sdk'

const client = new ZerithPay({
  apiKey: 'YOUR_API_KEY',
  environment: 'production',
})

const payment = await client.payments.create({
  amount: 5000,       // $50.00
  currency: 'USD',
  settlement: 'USDC',
})

console.log(payment.id)   // pay_7Yk92mNxQr3pLsT
console.log(payment.risk) // { score: 12, decision: "approved" }
Get your API key

Sign in to see your live API key pre-loaded in the playground and all code examples above.

Sign in