Order Statuses
Each order can have various states during its lifecycle. When order callback is sent, response body contains status - a numeric value that indicates the current status of the order. For a better understanding of the order callbacks refer to Order Callbacks.
Order Statuses
Each order can have various states during its lifecycle. When order callback is sent, response body contains status - a numeric value that indicates the current status of the order. For a better understanding of the order callbacks refer to Order Callbacks.
| Status | Callback order status code | Description | Merchant actions |
|---|---|---|---|
| NEW | N/a | The order has been created, but no further action has been taken yet. | |
| PENDING | 2 | The payment(s) for the corresponding order were detected on-chain and are being confirmed now. | |
| PAID | 3 | The payment(s) is sufficient and on time. Deposit is converted to receive currency (if applicable). Or | |
| FAILED | 4 | Internal transfer (Pay with SpectroCoin method) was unsuccessful due to an internal error. | |
| EXPIRED | 5 | The order was not paid within the designated time frame. To get an idea of why orders expire and what to do next, refer to Expired Orders. | |
| LATE_CRYPTO_PAYMENT | 10 | This order has received a crypto transaction or an additional crypto transaction after the validity time. | Merchant can manually accept this order with updated information via API or web platform. |
| PARTIAL_PAYMENT | 11 | Crypto transactions received for this order are not enough to cover the order amount, but the order is still valid - an additional crypto transaction of the missing amount would process this order. | |
| UNDERPAID | 12 | Crypto transactions received for this order are not enough to cover the order amount, and the order's validity time of 15 minutes (+ grace period) has ended. | Merchant can manually accept this order with updated information via API or web platform. |
| CANCELLED | 13 | The order has been cancelled by the payer. | |
| INVALID_PAYMENT | 14 | Crypto transaction as payment for this order has been suspended/frozen by AML/Sanctions engines/rules. | |
| TEST_PAID | 15 | Paid order simulation with test mode enabled. | |
| TEST_EXPIRED | 16 | Expired order simulation with test mode enabled. | |
| PENDING_LATE_CRYPTO_PAYMENT | 20 | A late crypto payment was detected on-chain and is being confirmed. The order moves to LATE_CRYPTO_PAYMENT once confirmed. | |
| PROCESSING_REFUND | 17 | A refund for this order has been initiated and is being processed. | |
| REFUNDED | 18 | The refund has been completed and the funds have been returned to the payer. | |
| REJECTED_REFUND | 19 | The refund request was rejected; no funds were returned. | |
| REJECTED | 21 | The order was rejected by the merchant. Reachable from UNDERPAID and LATE_CRYPTO_PAYMENT, the counterpart of accepting such an order. | |
| TEST | 6 | Legacy test-mode status. New test orders report TEST_PAID or TEST_EXPIRED instead; handle TEST only for historical orders. |
Order status flow
This flowchart illustrates the order payment process, showing status transitions based on payment conditions:

Updated 9 days ago
What’s Next
Next, review the section on order callbacks, which closely relates to order statuses, to build a complete understanding.