Idempotency
When creating payments or cashout orders:
- You must account for timeouts and retries.
- If the create API times out or returns a non-200 status, query the status API first before concluding failure.
- When
orderStatusis unavailable, do not infer the order status. - Idempotency is valid for 3 months: within the validity period, resubmitting the same merchant order number returns the first accepted result and does not create a duplicate order.
- Cashin and cashout idempotency are independent of each other: a merchant order number already submitted for cashin can still be submitted for cashout; the same order number only needs to be unique within the same business direction.
These rules already appear in production cashin / cashout notes.