Payment Order Statuses

An overview of all possible Payment Order statuses.

When you submit a Payment Order via Modern Treasury, you can view the status of that Payment Order at any time. The chart is a description of where in the money movement process a Payment Order can be at any given time and a description of each stage shown in Modern Treasury.

Payment Order Lifecycle

Payment orders have many states, which may also be sent as webhook events based on your configuration. You can find the full list of payment order states below.

StatusDescription
needs_approvalThe payment order needs at least one approval before it can be sent to the bank. Note that if the effective_date on the payment order has been passed but the payment order isn't approved yet, it will be sent to the bank at the earliest time after it is approved.
approvedThe payment order has been approved and will be sent to the bank.
processingThis is a very short state where Modern Treasury is preparing the payment order to be sent to the bank. Once it begins processing, it cannot be edited anymore.
sentThe payment order has been sent to the bank. It may remain in this state for up to a few days, depending on the type of payment.
completedThe payment order has been reconciled to a posted bank transaction. At this point, we know the payment occurred, and your account will have been debited or credited.
Note however, that some payment types are not final. For an ACH, you may still get a return later.
returnedThe payment order has been returned. There is typically an associated Return object with more information.
reversedThe payment order has been reversed. There is typically an associated Reversal object with more information.
failedThis status is rare but may happen if there is an error at the bank. It can also happen when using the asynchronous create API endpoint, if the parameters are invalid.
Note that the lifecycle diagram below only shows an arrow to the failed state down the asynchronous create path.
If a failure is associated with a vendor (e.g. Currencycloud), a vendor_failure_reason may be provided.
deniedThe payment order has been denied. This is a terminal state. This state is reached if a payment order in needs_approval was denied by an approver.
cancelledThe payment order was cancelled. This is a terminal state.