curl --request POST \
--url https://sandbox.elementpay.net/api/v1/partner/orders/{quote_id}/accept \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '{}'{
"status": "success",
"message": "Partner order quote accepted",
"data": {
"quote_id": "yc_receive_580e04c2-a136-5cca-be54-b49fcf80970c",
"status": "processing",
"order": {
"order_id": "YC-580e04c2-a136-5cca-be54-b49fcf80970c",
"status": "processing",
"order_type": "OnRamp",
"amount_fiat": 800,
"amount_crypto": 5.94999,
"currency": "KES",
"token": "BASE_USDC",
"wallet_address": "0xde0B295669a9FD93d5F28D9Ec85E40f4cb697BAe",
"exchange_rate": 131.69,
"psp_transaction_id": "580e04c2-a136-5cca-be54-b49fcf80970c"
},
"accepted": {
"payment_instructions": {
"type": "momo",
"source": {
"accountNumber": "+2541111111111",
"networkName": "Mobile Wallet (M-PESA)"
}
}
},
"webhooks": {
"events": [
"order.processing",
"order.settled",
"order.failed",
"order.refunded"
],
"delivery": "ElementPay will notify the webhook_url configured on the API key."
},
"rail": "local_fiat"
}
}{
"status": "error",
"message": "Unsupported quote_id. Expected `yc_receive_<preview_id>` or `yc_send_<preview_id>`."
}{
"status": "error",
"message": "Quote request failed",
"data": null
}{
"status": "error",
"message": "Missing requirements for selected route",
"data": {
"field": "order_type"
}
}{
"status": "error",
"message": "Quote request failed",
"data": null
}Accept a partner order quote
Accept a previously created quote and create the local order. When Console Signed accepts is on for the API key, send signed_accept.signature over the quote signing.typed_data instead of an empty body.
curl --request POST \
--url https://sandbox.elementpay.net/api/v1/partner/orders/{quote_id}/accept \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '{}'{
"status": "success",
"message": "Partner order quote accepted",
"data": {
"quote_id": "yc_receive_580e04c2-a136-5cca-be54-b49fcf80970c",
"status": "processing",
"order": {
"order_id": "YC-580e04c2-a136-5cca-be54-b49fcf80970c",
"status": "processing",
"order_type": "OnRamp",
"amount_fiat": 800,
"amount_crypto": 5.94999,
"currency": "KES",
"token": "BASE_USDC",
"wallet_address": "0xde0B295669a9FD93d5F28D9Ec85E40f4cb697BAe",
"exchange_rate": 131.69,
"psp_transaction_id": "580e04c2-a136-5cca-be54-b49fcf80970c"
},
"accepted": {
"payment_instructions": {
"type": "momo",
"source": {
"accountNumber": "+2541111111111",
"networkName": "Mobile Wallet (M-PESA)"
}
}
},
"webhooks": {
"events": [
"order.processing",
"order.settled",
"order.failed",
"order.refunded"
],
"delivery": "ElementPay will notify the webhook_url configured on the API key."
},
"rail": "local_fiat"
}
}{
"status": "error",
"message": "Unsupported quote_id. Expected `yc_receive_<preview_id>` or `yc_send_<preview_id>`."
}{
"status": "error",
"message": "Quote request failed",
"data": null
}{
"status": "error",
"message": "Missing requirements for selected route",
"data": {
"field": "order_type"
}
}{
"status": "error",
"message": "Quote request failed",
"data": null
}{}. When Console Signed accepts is on for this API key, send signed_accept.signature over quote data.signing.typed_data — see Customer-signed accepts.
OnRamp: final payment instructions are returned after accept when applicable.Authorizations
Partner API key. Sandbox keys start with is_test_; production keys start with is_live_. Keys are not interchangeable across environments. Send on every request. Never expose in browser or mobile clients.
Path Parameters
Quote id returned by /partner/orders/quote.
Body
Accept a partner quote. Empty body is supported when quote_id identifies the route
and Signed accepts is off. When Signed accepts is on, send signed_accept.signature.
Optional provider assertion. Usually inferred from quote_id.
local fiat rail, international bank, elementpay Required for international bank OffRamp: form fields from the corridor's form_schema (returned in the quote response). Keys match the international bank FormSchema properties e.g. BankDetails, AccountHolderName, PaymentPurpose.
Customer-signed accept envelope when Console Signed accepts is enabled.
Show child attributes
Show child attributes