Skip to main content

Order Status

After creating an order, you can track its progress through the payment lifecycle.

Order lifecycle

All orders follow the same status progression regardless of the payment gateway:
StatusDescription
pendingOrder created but payment has not been initiated with the gateway yet.
processingPayment is in progress — waiting for buyer action (push approval, OTP, transfer).
confirmedPayment completed successfully. Funds will be included in your next settlement.
cancelledOrder was cancelled — buyer rejected the payment, it timed out, or it was cancelled via API.
refundedA refund has been processed for this order.

Checking order status

You have two options to track when a payment completes: Configure a webhook URL in your dashboard to receive real-time notifications when an order status changes. This is the most efficient approach — no polling required.
{
  "event": "order.confirmed",
  "data": {
    "id_order": 12345,
    "status": "confirmed",
    "amount": 50000,
    "currency": "COP"
  }
}
See Webhooks for setup instructions and Webhook Events for all available events.

Option 2: Polling

If you cannot receive webhooks, poll the order status endpoint:
curl -X GET "https://api.wava.co/v1/orders/12345" \
  -H "merchant-key: YOUR_MERCHANT_KEY"
Polling should be used as a fallback only. We recommend a polling interval of 3–5 seconds. Excessive polling may be rate-limited.

Cancelling an order

You can cancel an order that is still in pending or processing status:
curl -X PUT "https://api.wava.co/v1/orders/12345/cancel" \
  -H "merchant-key: YOUR_MERCHANT_KEY"
Orders in confirmed status cannot be cancelled. To reverse a confirmed payment, use the refund flow.

Timeout behavior

Each gateway has a different timeout window. If the buyer does not complete the payment within the timeout period, the order is automatically moved to cancelled status.
GatewayApproximate timeout
Nequi~5 minutes
Daviplata~5 minutes
Breb~15 minutes
StripeSession-based

Next steps

  • Set up Webhooks for real-time notifications
  • Review Error Handling for failed payment scenarios
  • See Testing to simulate different order outcomes