Invoices
Create Payment
Create an invoice and generate a deposit address in a single call
POST
Creates an invoice and generates a deposit address in one request. The customer can start paying immediately — no second call needed.
Use this instead of Create Invoice when you already know which chain and token the customer will pay with (e.g. your checkout UI lets them choose before you call the API).
Request
string
required
Invoice amount as a decimal string. Must be greater than 0.Example:
"49.99"string
required
Fiat currency of the invoice. Supported:
USD, EUR, GBP, etc.Example: "USD"string
required
The chain the customer will pay on. See GET /api/v1/tokens for supported values.Examples:
"polygon", "ethereum", "bsc", "tron", "bitcoin"string
The token the customer will send. If omitted, the chain’s native currency is used.Examples:
"USDT", "USDC", "ETH"string
Optional human-readable description stored with the invoice.Example:
"Order #1234 — 2x T-shirts"number
Minutes until the invoice expires. If omitted, defaults to the platform rate window (15 minutes). Cannot exceed the platform rate window — values above the cap are silently reduced to the maximum.Example:
15string
URL to receive webhook events for this payment. Must be a valid HTTPS URL. Overrides the default webhook URL set in merchant settings.Example:
"https://yoursite.com/webhooks/settlx"object
Arbitrary key-value pairs stored with the invoice. Returned in every webhook event — use it to correlate with your internal order ID.Example:
{ "orderId": "order_abc123", "userId": "user_456" }Response
object
Fulfill the order on
invoice.settled — not invoice.confirmed. Confirmed means the chain accepted it; settled means funds have actually landed in your wallet.