I intuitively thought AMOUNT_LIMIT_EXCEEDED is the account credit limit. However, this developer blog's example shows in the usage that, AMOUNT_LIMIT_EXCEEDED is the individual transaction limit. I was wrong, which is good to know! But this comes to my mind that a more descriptive definition will go a long way to help us implement a better integration!
According to the blog, I can interpret the definition as below. There are still many missing, can we finish the table please?
|decline_reason||definition / description / example|
The transaction exceeded the individual transaction amount allowable limit.
Implied action: try to split the transactions for lower individual amount.
The account balance is too high or is reaching the allowable limit.
Implied action: try to lower the transaction amount.
The merchant is not supported.
Implied action: try a different card, this card does not support this merchant.
The transaction is not permitted for an unclassified reason.
Implied action: contact the card issuer for more details.
My naive thinking, does Marqeta feeds it back to the card network (e.g., master card), the network might then map to specific actionable error codes which the merchant (or their payment processor) might be able to act upon?
Although the decline_reason is optional, it allows only a set of values. There might be usage behind each and might result in different behaviour?