Payment status

Once an operation of a specific Operation Type was executed, and we interpreted its Result Code, we are ready to change the status of the actual payment.

In case the operation we executed on the payment wasn't successful, the status of the payment shouldn't be changed.

However, if the result of the operation is Unknown, we must change the status of the payment to Unknown and act fast to solve the situation so that we are able to either move the payment back to the previous status or to the new one.

In case the payment status is Failed, there will be more information about the reason in the operation result field.

You can find more information on the Result Codes page.

CreatedInitial state. Payment is created but not yet executed.
PendingAn action is pending, either on the user, the provider, or us.
UnknownThere was a problem that left the payment in an unknown state. This situation should be resolved as soon as possible.
FailedThe payment failed because of a reason specified in another field.
ExpiredThe payment was waiting for an action for too long. Time should be configured per merchant.
PreauthorizedThe payment was preauthorized successfully by the provider. Needs a subsequent Capture operation to move the funds.
AuthorizedThe payment was authorized successfully by the provider.
CanceledTwo-step payment was canceled (or voided) successfully by the provider.
CapturedTwo-step payment was captured successfully in the provider.
SettledWhenever a provider informed us that the payment is settled. Not all providers have a notification for this, so this status may be skipped.
RefundedThe payment was successfully refunded by the provider. This status is only present if there was a full refund. For partial refunds, the status remains as it was before but refunds are found in the operation list.
ChargebackPayment has a chargeback from the user.
ChargebackReversedThe payment was chargebacked, but we managed to reverse it after a dispute.

The following is the state machine that illustrates how a payment status can evolve with time after many operations happen to it.