Authorize.Net · Decline codes
What does Authorize.Net 50 “This transaction is awaiting settlement and cannot be refunded” mean?
Checked
Authorize.Net response reason code 50 means the transaction is awaiting settlement and cannot be refunded: credits or refunds may only be performed against settled transactions. Until the batch settles, cancel the payment with a void instead, which releases the full amount. Once it settles, a refund works.
- Type
- Error (refund)
- Who declined
- Authorize.Net's refund rules
- Retry
- After settlement, or void it now instead.
- Shopper action
- Nothing; the store handles the refund.
- Merchant action
- Void the unsettled transaction, or wait for settlement and refund.
What PlatformDTC does
PlatformDTC's Authorize.Net refunds follow this rule automatically: a refund is sent only once the payment has settled, and an unsettled capture is voided instead, for the full amount.
Why it happens
Refunds return settled money. Before settlement there is nothing to refund, only an authorization to cancel.
What the store can do
In the Merchant Interface choose Void for an unsettled transaction. For a partial refund, wait until it settles.
For developers
errors[0].errorCode "50". Use voidTransaction before settlement; refundTransaction after.
Frequently asked questions
- How do I cancel an unsettled Authorize.Net payment (code 50)?
- Void it. Voids cancel the full amount before settlement.
- Can I do a partial refund before settlement?
- No. Wait for settlement, then refund the partial amount.
Sources
- Authorize.Net Response Code Tool (response reason codes) — Authorize.Net
- Authorize.Net response codes (JSON list behind the Response Code Tool) — Authorize.Net
Related
- 54 — The refund can't be issued: unsettled, wrong type or currency, bad ID, or settled over 180 days ago.
- 55 — This refund plus earlier refunds would be more than the original payment.
- 16 — The transaction ID you referenced (for a refund or void) is not on this Authorize.Net account.
- E00027 — The API reports the transaction failed; the real reason is in the transaction's errorCode.
- E00007 — The API Login ID or Transaction Key is wrong, or sent to the wrong environment.
- E00001 — Authorize.Net hit an internal error; the request was not completed.
- E00003 — The request sent to the API was malformed, so Authorize.Net could not read it.