Get payment status
/api/v1/payments/:id
Read a payment intent and its order or deposit result.
Before you call
For pending chain or supplier outcomes, keep querying this intent. Do not pay again or change the request key.
Request example
curl "https://tovahub.com/api/v1/payments/507f1f77bcf86cd799439012" \
-H "Authorization: Bearer $TOVAHUB_TOKEN"Examples only. No requests are sent from this page.
Illustrative response
{
"id": "507f1f77bcf86cd799439011",
"purpose": "order",
"amount": "1200",
"asset": "USD",
"state": "quoted",
"mode": null,
"expiresAt": "2026-11-07T12:30:00.000Z",
"transactionHash": null,
"network": null,
"result": null,
"error": null
}Parameters
idPath · Requiredstring
Resource ID: 24 hexadecimal characters. Use the platform ID returned by the matching list endpoint, not a supplier instance ID.
Response
HTTP status 200
Read the current durable state of an existing organization payment intent.
idstring (ObjectId)Payment-intent identifier; also the quote identifier.
purposestringIntent purpose; current public creation paths use order or deposit. The stored purpose can also be renew; that does not mean renewal is currently supported.
amountstringInteger USD cents.
assetstring ('USD')The platform accounting asset.
statestring ('quoted' | 'authorized' | 'broadcast' | 'settled' | 'applied' | 'failed')Durable payment-intent state.
modestring ('balance' | 'x402') | nullSelected funding mode, or null before selection.
expiresAtstring (ISO 8601)Quote expiry; already accepted funds still require reconciliation after this time.
transactionHashstring | nullBlockchain transaction hash, if any.
networkstring | nullPayment network, if any.
resultunknown | nullPurpose-specific persisted application result; no universal nested response schema is declared.
errorstring | nullPersisted payment error, if any.