The order statuses are returned by CityPay callback for identifying the current state of order in question.
Statuses are received by payment callback. You can use them to determine whether a payment was received or not and what are its conditions.
When the order is created you will receive a call from our 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.
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.
You can determine order expiration or underpayment by calculating the expiration time using the call to the creation time.