Skip to main content
The Check Status mechanism allows merchants to actively verify the latest status of a payment by querying the Get Payment by ID API. This ensures your system always reflects the most accurate transaction state, even if webhook updates are delayed or missed due to network issues, server downtime, or other technical factors.

Why Implement Check Status?

While Monxa provides real-time notifications via webhooks, relying solely on them may introduce risks:
  • Webhook Delays – Network or server issues can slow down updates.
  • Missed Events – Downtime or connectivity issues may cause webhooks to fail.
By implementing Check Status, you have a reliable fallback mechanism to keep your system synchronized with the actual transaction status.

How to Implement

Use the following endpoint to retrieve the latest status of a payment:
MethodEndpoint
GEThttps://api.monxa.co/v1/payments/{id}
Replace {id} with the payment_id you want to check.
Tip: For better accuracy, implement interval-based polling (e.g., retry with exponential backoff) until the transaction reaches a final state.
The API response will include key transaction details.
Most importantly, the status parameter indicates the current state of the payment.
Your system should use this value to update the order or payment status accordingly.
Example Response:
{
  "data": {
    "id": "pay_123456789",
    "status": "completed",
    "order_id": "ord_987654321",
    "amount": 150000,
    "currency": "IDR",
    "created_at": "2025-09-10T10:15:30Z",
    "updated_at": "2025-09-10T10:17:05Z"
  }
}