> For the complete documentation index, see [llms.txt](https://developer.citypay.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.citypay.io/endpoint/order-status.md).

# Order Status

### Description

The order statuses are returned by CityPay callback for identifying the current state of order in question.&#x20;

| Status           | Description                                                                            |
| ---------------- | -------------------------------------------------------------------------------------- |
| In-progress      | The buyer has opened the payment page and has selected cryptocurrency.                 |
| Paid/Unconfirmed | The buyer has fully paid the order amount, but six confirmations are not received yet. |
| Confirmed        | The buyer has fully paid the order amount and 5+ confirmations are received.           |
| Underpaid        | The buyer hasn't fully paid the order amount.                                          |
| Overpaid         | The buyer has paid more than the order amount.                                         |
| Expired          | The buyer did not pay any amount and the order time has expired.                       |
| Canceled         | The buyer has canceled the order by clicking on the cancel button.                     |

Statuses are received by payment callback. You can use them to determine whether a payment was received or not and what are its conditions. &#x20;

When the order is created you will receive a call from our [callback ](/endpoint/payment-callback.md#the-order-callback)service. the newly created orders have In-progress status. In-progress status remains unchanged until the order expires, or is paid/overpaid or is canceled.&#x20;

If your customer makes a payment you will receive a new call from our callback, with the indication of the corresponding status. If the status remains In-progress, that means that customer hasn't yet paid the full amount.&#x20;

You can determine order expiration or underpayment by calculating the expiration time using the call to the creation time.&#x20;
