API reference

Payment reason: insufficient_funds

insufficient_funds is a payment failure_code value. The account had insufficient funds to cover the collection. It appears in the <a href="/reference/event-payment-failed/">payment.failed</a> webhook payload under failure_code. Respond supportively: a gentle reminder and hardship signposting, not pressure.

2 min read

insufficient_fundsfailure_code value
paymentDomain
data.objectCarries failure_code

What it means

The account had insufficient funds to cover the collection. A Direct Debit or card collection that bounced for lack of balance.

Where you see it

It arrives in the webhook payload:

{
  "data": {
    "object": {
      "id": "pay_7M3X1",
      "loan_id": "loan_2K9P4",
      "status": "failed",
      "failure_code": "insufficient_funds"
    }
  }
}

How to handle it

Respond supportively: a gentle reminder and hardship signposting, not pressure. The collection is usually re-attempted on schedule.

Reconcile against live state, since webhooks are unordered and a later event may supersede this one.

In practice

Treat insufficient_funds as one branch of your failure_code handling, not the whole story. For payments, the value tells you why a collection failed so you can respond proportionately — a technical failure needs no customer contact, whereas an insufficient-funds failure is a moment for supportive, hardship-aware messaging. Always confirm current state before acting, because a later success event (a retry that cleared) may already have superseded this failure, and webhook delivery is unordered.

Frequently asked questions

Is insufficient_funds final?

Not necessarily — for payments, a later retry may succeed. Reconcile against live loan state before acting.

Should I show this reason to the customer verbatim?

Map it to your own clear, humane copy rather than surfacing the raw code. See Map errors to user-facing messages.

Where does insufficient_funds appear in the payload?

Under data.object.failure_code in the payment.failed webhook. Verify the signature, then branch on it.

Funding for UK limited companies

Credicorp lends to your company, not to you personally — short-term working capital with no personal guarantee. See what your business could access.