# ACH transaction statuses

The following table describes the ACH transaction statuses:

<table><thead><tr><th width="258" valign="top">Status</th><th valign="top">Description</th></tr></thead><tbody><tr><td valign="top"><code>PENDING</code></td><td valign="top">This status indicates that the transaction has been created and accepted by the system but has not yet begun processing.</td></tr><tr><td valign="top"><code>SETTLED</code></td><td valign="top">This status indicates that the transaction has completed successfully.</td></tr><tr><td valign="top"><code>SETTLING</code></td><td valign="top">This status indicates that the transaction is currently being processed by the ACH network.</td></tr><tr><td valign="top"><code>RETURNED</code></td><td valign="top">This status indicates that the transaction was processed but later returned.</td></tr><tr><td valign="top"><code>VOID</code></td><td valign="top">This status indicates that the transaction was intentionally canceled before settlement.</td></tr><tr><td valign="top"><code>CHARGEBACK</code></td><td valign="top">This status indicates that the transaction was reversed after settlement due to a dispute initiated by the account holder or their bank.</td></tr><tr><td valign="top"><code>MERCHANT_RETURNED</code></td><td valign="top">This status indicates that the merchant returned the transaction after settlement.</td></tr><tr><td valign="top"><code>NO CREDIT</code></td><td valign="top">This status indicates that the transaction was processed, but the receiving account was not credited.</td></tr><tr><td valign="top"><code>TO RESERVE</code></td><td valign="top">This status indicates that the transaction amount has been moved to a reserve balance.</td></tr><tr><td valign="top"><code>UNPROCESSED</code></td><td valign="top">This status indicates that the transaction has not entered processing.</td></tr><tr><td valign="top"><code>ERROR</code></td><td valign="top">This status indicates that the transaction failed due to a system or processing error.</td></tr><tr><td valign="top"><code>REJECTED: AUTHORIZATION DECLINED</code></td><td valign="top">This status indicates that the transaction was rejected because the account holder did not authorize the debit or credit.</td></tr><tr><td valign="top"><code>REJECTED: ACCOUNT IS INVALID</code></td><td valign="top">This status indicates that the transaction was rejected because the bank account information is invalid.</td></tr><tr><td valign="top"><code>REJECTED: VOIDED</code></td><td valign="top">This status indicates that the transaction was rejected because it had already been voided.</td></tr><tr><td valign="top"><code>REJECTED: VOIDING</code></td><td valign="top">This status indicates that the transaction was rejected because it was in the process of being voided.</td></tr><tr><td valign="top"><code>UPDATED</code></td><td valign="top">This status indicates that the transaction details were changed after the transaction was created.</td></tr></tbody></table>

{% hint style="warning" %}
The status of the ACH transaction initially appears as `PENDING`. The status changes from `SETTLING` to `SETTLED` when the ACH transaction is processed successfully.
{% endhint %}

{% hint style="success" %}
Use webhooks to retrieve ACH transaction statuses. For more information, see [ACH Transaction Status Webhooks](https://docs.xplorpay.com/api-reference/webhooks/working-with-webhooks/ach-transaction-status-webhooks).
{% endhint %}
