Skip to main content
POST
Auth method: Signed (HMAC) — this endpoint requires the full set of signed headers: x-access-id, x-request-id, x-timestamp, and an HMAC-SHA256 authorization signature. See Authentication.
Redeems a quote and creates a virtual bank account for the customer to pay into. Show the returned bankTransfer details to the customer, then poll Get On-ramp Status with the reference.
  • Each quote can be redeemed once. The quote is consumed as soon as you call this endpoint, even if it has expired; request a new quote after any failure.
  • Only the merchant that created the quote can redeem it. A quote from another merchant returns Quote not found or already used.
  • Tender doesn’t check targetAddress against the chain at this point. Validate the address before you call; crypto sent to a wrong address can’t be recovered.
This request counts against the on-ramp limit of 10 requests per minute. See Rate limits.

Headers

string
required
Base64-encoded HMAC-SHA256 signature of {"timeStamp":"<x-timestamp>","requestId":"<x-request-id>","accessId":"<x-access-id>"}, signed with your access secret. The request body is not part of the signature.Example: "pV3n0o8kq0lK2mJ8bZ1yq3Yt6hR0cXK9u4mVJ2l9sE0="
string
required
ISO 8601 timestamp; must be within 5 minutes of server timeExample: "2026-10-15T09:45:53.000Z"
string
required
A unique UUID v4 per requestExample: "550e8400-e29b-41d4-a716-446655440000"
string
required
Your API access IDExample: "your-access-id-here"
string
required
Example: "application/json"

Body

string
required
The quoteId returned by Get On-ramp Quote. Must be a UUID.Example: "b7f2a1c3-9d4e-4b2f-a8c0-1e2d3f4a5b6c"
string
required
Wallet address that receives the crypto, on the quote’s targetChain.Example: "TQ7xJm4z9..."
object
required
The customer making the bank transfer.
object
Optional key-value pairs (string or number values). They are passed along with the payment request but are not returned by Get On-ramp Status, so keep your own mapping from reference to your order.Example: { "orderId": "ORD-9821" }

Response

string
required
Example: "success"
string
required
Example: "Onramp initiated"
object
required

Error responses

All errors return HTTP 400.

Authorizations

authorization
string
header
required

Signed (HMAC) authentication. Required headers: x-access-id, x-request-id (UUID v4), x-timestamp (ISO 8601, must be within 5 minutes of server time), and authorization: the Base64 HMAC-SHA256 of the JSON string {"timeStamp":"","requestId":"","accessId":""} (keys in that order, no whitespace) using your access secret. The request body, method and path are not signed. The API key must be linked to an outlet.

Headers

authorization
string
required

Base64-encoded HMAC-SHA256 signature of {"timeStamp":"","requestId":"","accessId":""}, signed with your access secret. The request body is not part of the signature.

x-timestamp
string<date-time>
required

ISO 8601 timestamp; must be within 5 minutes of server time

x-request-id
string<uuid>
required

A unique UUID v4 per request

x-access-id
string
required
Content-Type
string
required

Body

application/json
quoteId
string<uuid>
required
targetAddress
string
required
Maximum string length: 500
Example:

"TQ7xJm4z9..."

customer
object
required
metadata
object

Optional. Not returned by the status endpoint.

Response

On-ramp created

status
string
Example:

"success"

message
string
Example:

"Onramp initiated"

data
object