Payment Service

Crypto payments,
built with workflow blocks.

Every step of the payment lifecycle — invoice, checkout, signing, settlement — is a first-class workflow component. Assemble it visually, or call it via the SDK. No custom integration work required.

Every step of the payment lifecycle

1
Invoice
Generated
2
Checkout
Multi-currency
3
Escrow
Smart contract
4
MPC Sign
Secured
5
Confirm
On-chain
6
Settle
Treasury

The complete payment stack, as components

Multi-currency checkout

Accept USDC, ETH, BTC, BNB, and 30+ tokens in a single checkout flow across all supported chains — fiat bridge included.

Smart contract escrow

Lock funds in a contract with configurable release conditions. No trusted intermediary. Release is triggered by on-chain events or workflow conditions.

MPC-secured signing

Every payment settlement is signed by multiple nodes. No private key is ever exposed at the moment of payment — or any other moment.

Treasury routing

Route settled funds to the right wallet automatically by currency, chain, or payment amount. Split payments across multiple recipients.

Gasless payments

Integrate with the gas station component so buyers never need to hold native tokens to pay. We sponsor gas based on your policy.

Webhook notifications

Get real-time events for every state change: payment created, escrow locked, settlement confirmed, and treasury routed.

Accept 30+ tokens across 20+ chains

One checkout flow handles every currency combination — no per-token integration needed.

Supported Tokens30+ assets
Stablecoins
USDCUSDTDAI
Major Assets
ETHBTCBNBSOLAVAXMATICTON
DeFi & Governance
UNIAAVELINKCRVMKROP

+ custom tokens via contract address

Supported Chains20+ chains
Ethereum
Arbitrum
Base
Optimism
Polygon
BNB
Solana
Avalanche
Tron
TON
Mantle
zkSync
Scroll
Linea
Blast
Bitcoin
Litecoin
Dogecoin
SUI
Cosmos

New chains added quarterly

Real-time run notifications

Every run and component execution streams status in real time. Subscribe via SSE for live updates, or set a callbackUrl on any component execution to receive a signed HTTP callback when it completes.

  • SSE stream
    GET /v1/sdk/workflows/executions/{runId}/stream
  • Run status
    GET /v1/sdk/workflows/executions/{runId}
  • Stage output
    GET /v1/workflows/{workflowId}/runs/{runId}
  • Replay
    POST /v1/workflows/{workflowId}/runs/{runId}/replay
  • Cancel
    POST /v1/workflows/{workflowId}/runs/{runId}/cancel
API reference
execution resultCOMPLETED
{
"id": "550e8400-e29b-41d4-a716",
"status": "COMPLETED",
"totalUsage": 24,
"stages": [
{
"module": "ON_API_CALLED",
"status": "COMPLETED"
},
{
"module": "EVM_TRANSFER",
"status": "COMPLETED",
"output": { "txHash": "0x4f2a…" }
}
]
}