CollectionDunning ManagementPayment Failure Error Codes

Payment Failure Error Codes

When a payment fails and triggers dunning in BillHive, the failure comes with an error code from the payment gateway. Understanding these codes helps you diagnose why payments are failing and take the right recovery action — whether that’s an automatic retry, customer outreach, or escalation.

BillHive classifies every failure into one of three decline types:

Decline TypeMeaningDunning Action
Soft DeclineTemporary issue — likely to succeed on retryAuto-retry with smart scheduling
Hard DeclinePermanent issue — retry won’t helpSkip to customer notification or escalation
Fraud DeclineSecurity/compliance blockEscalate; do not auto-retry

Account Issues

Errors related to the customer’s bank account being closed, blocked, or invalid.

Error CodeDescriptionDecline TypeRecommended Action
ACCOUNT CLOSEDThe account has been closed and all associated mandates were deactivatedHardNotify customer to update payment method
Account Blocked or frozenAccount is temporarily blocked (e.g., KYC not updated)HardNotify customer to contact their bank
DEBIT HAS BEEN FAILED | ACCOUNT DOES NOT EXIST (REMITTER)Account verification failed — incorrect detailsHardNotify customer to update account details
Not a CBS act no.or old act no.representwithCBS noAccount is old, non-CBS, or invalidHardNotify customer to use a valid account
DEBIT HAS BEEN FAILED | REMITTER CBS OFFLINECore Banking System is offline at customer’s bankSoftAuto-retry after a few hours
U30|DEBIT HAS BEEN FAILED|YE|REMITTING ACCOUNT BLOCKED/FROZENRemitting account is blocked or frozenHardNotify customer to resolve with their bank

Insufficient Funds & Limits

The most common category — the customer doesn’t have enough balance or has hit a transaction limit.

Error CodeDescriptionDecline TypeRecommended Action
Balance InsufficientInsufficient funds in customer accountSoftAuto-retry on next salary cycle (smart timing)
DEBIT HAS BEEN FAILED | INSUFFICIENT FUNDS IN CUSTOMER (REMITTER) ACCOUNTInsufficient balance in customer accountSoftAuto-retry with smart scheduling
U30|DEBIT HAS BEEN FAILED|Z9|INSUFFICIENT FUNDS IN CUSTOMER (REMITTER) ACCOUNTInsufficient funds in remitter accountSoftAuto-retry after 2–3 days
Amount Exceeds E-mandate LimitTransaction amount exceeds the e-mandate limitHardNotify customer to increase mandate limit or create new mandate
DEBIT HAS BEEN FAILED | PER TRANSACTION LIMIT EXCEEDED AS SET BY REMITTING MEMBERPer-transaction limit exceededHardNotify customer to adjust bank limits
U29|ADDRESS RESOLUTION IS FAILED|QL|MANDATE DEBIT IS BEYOND PSP SPECIFIED AMOUNT CAPAmount exceeds PSP-specified capHardReduce charge amount or split into multiple charges
DEBIT HAS BEEN FAILED | MANDATE REQUEST LIMIT HAS BREACHEDMandate request limit breachedHardWait for limit reset period
U30|DEBIT HAS BEEN FAILED|QK|MANDATE REQUEST LIMIT HAS BREACHEDMandate request limit exceededHardWait for limit reset or contact support
Not Arranged ForBank account isn’t set up for debit transactionsHardNotify customer to enable debit facility

Mandate Issues

Problems with the UPI or e-NACH mandate that authorizes recurring debits.

Error CodeDescriptionDecline TypeRecommended Action
Invalid UMRN or Inactive MandateMandate deactivated by NPCI or cancelled by customer/merchantHardCreate new mandate; send payment link
Mandate CancelledMandate cancelled by customer or merchantHardCreate new mandate; send payment link
Record Level Error: Invalid Mandate InfoMandate cancelled by customer from bankHardCreate new mandate
DEBIT HAS BEEN FAILED | MANDATE HAS BEEN REVOKEDMandate has been revokedHardCreate new mandate; send payment link
DEBIT HAS BEEN FAILED | MANDATE SIGNATURE IS TAMPERED OR CORRUPT (REMITTER)Mandate signature is corruptedHardCustomer must contact bank; create new mandate
DUPLICATE MANDATE REQUEST FOR SAME ITEMDuplicate mandate request submittedSoftCheck existing mandates before creating new one
Mandate Qr tamperedMandate QR code has been tamperedHardGenerate fresh mandate
U29|ADDRESS RESOLUTION IS FAILED|QB|MANDATE IS ALREADY HONOUREDDuplicate transaction attempt — mandate already honouredSoftVerify transaction isn’t already successful
Invalid frequencyInvalid frequency for LOAN category mandateHardUpdate mandate with correct frequency per NPCI guidelines

Fraud & Compliance

Transactions blocked due to suspected fraud or regulatory compliance violations.

Error CodeDescriptionDecline TypeRecommended Action
DEBIT HAS BEEN FAILED | SUSPECTED FRAUDTransaction flagged as suspected fraudFraudEscalate; do not auto-retry
U30|DEBIT HAS BEEN FAILED|K1|SUSPECTED FRAUD, DECLINE / TRANSACTIONS DECLINED BASED ON RISK SCORE BY REMITTERRisk-based decline by remitter bankFraudEscalate; customer must contact bank
ADDRESS RESOLUTION IS FAILED | TRANSACTION CANNOT BE COMPLETED. COMPLIANCE VIOLATION (REMITTER)Compliance violation detectedFraudEscalate; ensure regulatory compliance
DEBIT HAS BEEN FAILED | DO NOT HONOUR (REMITTER)Debit transaction rejected by issuing bankHardCustomer must contact their bank

Bank Unavailable & Timeouts

Temporary technical issues at the customer’s bank or payment network. These are the best candidates for auto-retry.

Error CodeDescriptionDecline TypeRecommended Action
REMITTER BANK NOT AVAILABLERemitter bank system is unavailableSoftAuto-retry after 1–2 hours
DEBIT TIMEOUT | REMITTER/ISSUER UNAVAILABLE (TIMEOUT)Bank system timeoutSoftAuto-retry after 1–2 hours
U67|DEBIT TIMEOUT|UT|REMITTER/ISSUER UNAVAILABLE (TIMEOUT)Timeout from remitter or issuerSoftAuto-retry after 1–2 hours
REMITTER BANK DEEMED HIGH RESPONSE TIME CHECK DECLINEBank experiencing high traffic or technical issuesSoftAuto-retry during off-peak hours
U90|REMITTER BANK DEEMED HIGH RESPONSE TIME CHECK DECLINEHigh response time from remitter bankSoftAuto-retry during off-peak hours
U91|BENEFICIARY BANK DEEMED HIGH RESPONSE TIME CHECK DECLINEBeneficiary bank system issuesSoftAuto-retry during off-peak hours
No response received from bank within the prescribed API time limitBank API timeoutSoftAuto-retry after a few minutes
ADD_RESLN_DISPATCH_FAILEDAddress resolution dispatch failureSoftAuto-retry; contact support if persistent

Customer Action Required

The customer needs to complete an action (authorize a mandate, respond to a collect request, etc.).

Error CodeDescriptionDecline TypeRecommended Action
No action performed by customerCustomer didn’t complete the authorization processSoftSend reminder notification to customer
COLLECT EXPIREDCustomer didn’t complete auth after entering VPASoftResend collect request with reminder
RESPMANDATE TIMEOUT AT REMITTER ENDCustomer didn’t honour the mandate within timeSoftSend reminder; re-initiate if needed
RESPMANDATE DECLINED BY REMITTER BANKRemitter bank declined the mandateHardCustomer must contact their bank
RESPAUTHMANDATE EXPIREDNo action performed on collect request — expiredSoftResend authorization request
RESPAUTHMANDATE DECLINED BY PSPPSP declined the authorization mandateHardContact support
Transaction Open StatusCustomer closed page before completing or retried a failed transactionSoftSend payment link to customer
No Details available for Requested MandateReqIDCustomer cancelled mandate before reaching NPCI pageSoftRe-initiate mandate creation

Invalid Data & Validation

Issues with the payment request data — wrong VPA, invalid amount, missing fields.

Error CodeDescriptionDecline TypeRecommended Action
U29|ADDRESS RESOLUTION IS FAILED|ZH|INVALID VIRTUAL ADDRESSInvalid VPA usedHardNotify customer to update VPA
ADDRESS RESOLUTION IS FAILED | INVALID VIRTUAL ADDRESSInvalid Virtual Address during VPA validationHardNotify customer to update VPA
DEBIT HAS BEEN FAILED | INVALID TRANSACTION OR IF MEMBER IS NOT ABLE TO FIND ANY APPROPRIATE RESPONSE CODE (REMITTER)Invalid transaction or unrecognized responseSoftRetry; escalate if persistent
U30|DEBIT HAS BEEN FAILED|XB|INVALID TRANSACTION OR IF MEMBER IS NOT ABLE TO FIND ANY APPROPRIATE RESPONSE CODE (REMITTER)Invalid transaction from remitterSoftRetry; escalate if persistent
DEBIT HAS BEEN FAILED | INVALID RESPONSE CODEInvalid response from bankSoftAuto-retry
U30|DEBIT HAS BEEN FAILED|XD|INVALID AMOUNT (REMITTER)Invalid amount specifiedHardFix amount format and retry
DEBIT HAS BEEN FAILED | RegIdDetails must be presentRequired registration details missingHardEnsure all required fields are provided
U30|DEBIT HAS BEEN FAILED|V1|RegIdDetails must be presentRegistration details missingHardInclude all required registration info
DEBIT HAS BEEN FAILED | Id name must be presentRequired ID name field missingHardInclude ID name field

KYC & Verification

Error CodeDescriptionDecline TypeRecommended Action
Aadhaar number does not have mobile number registered with uidaiMobile number not linked with AadhaarHardCustomer must link mobile with Aadhaar at UIDAI
Payer Account Validation FailureTPV (Third-Party Validation) verification failedHardNotify customer to verify account details

System & Processing

Internal processing issues on the gateway side.

Error CodeDescriptionDecline TypeRecommended Action
Internal Payment FailedInternal system error during payment processingSoftAuto-retry after a few minutes
Charge couldn't happen on timePrevious charge was in progress, preventing next chargeSoftWait for previous charge to complete, then retry
Previous request in progressPrevious request for the same action still being processedSoftWait before retrying
debit has been failedBank didn’t send any failure reasonSoftRetry; escalate if persistent

Notification Failures

Pre-debit notification delivery failures. These prevent the mandate debit from executing.

Error CodeDescriptionDecline TypeRecommended Action
Notification couldn't be sent to the customerPre-debit notification failed to sendSoftVerify customer contact details; retry
DEBIT HAS BEEN FAILED | Unable to Notify the CustomerPre-debit notification delivery failedSoftUpdate customer contact information; retry

Non-Payment (Manual / Offline Invoices)

These are not gateway errors — they occur when an invoice is raised for manual or offline payment (bank transfer, cheque, cash) with a due date, but the customer simply doesn’t pay. There is no mandate to debit, so BillHive must rely entirely on communication and escalation.

ScenarioDescriptionDecline TypeRecommended Action
INVOICE_OVERDUEInvoice due date has passed with no payment receivedSoftSend payment reminder with invoice link
INVOICE_OVERDUE_GRACE_EXPIREDInvoice overdue and grace period has also expiredHardSend urgent reminder; restrict service access
INVOICE_PARTIAL_PAYMENTCustomer made a partial payment; remaining balance is still dueSoftSend reminder for remaining balance with updated invoice
PAYMENT_PROMISE_BROKENCustomer promised to pay by a date but didn’t follow throughHardEscalate; send final notice before hard action
MANUAL_PAYMENT_NOT_RECEIVEDManual payment (bank transfer, cheque) expected but not received or not reconciledSoftSend payment confirmation request; verify with finance team
OFFLINE_PAYMENT_DISPUTEDCustomer claims payment was made but it hasn’t been reconciledSoftVerify with bank/finance; request proof of payment from customer

Key difference from gateway errors: There is no auto-retry possible for manual payments. The dunning flow relies on:

  1. Escalating reminders — Friendly reminder → Urgent reminder → Final notice
  2. Payment link generation — Send a hosted checkout link so the customer can pay online instead
  3. Grace period management — Keep service active for a configured grace period after due date
  4. Escalation — Flag for manual review or sales team follow-up for high-value accounts
  5. Hard action — Pause or cancel subscription if all recovery attempts are exhausted

API Errors

Errors returned by the Cashfree Subscription API during programmatic operations.

Error CodeDescriptionResolution
subscription_id_missingSubscription ID is required but missing in the requestInclude subscription ID in API request
plan_id_missingPlan ID is missing, invalid, or not foundVerify plan ID exists and is correct
payment_id_missingPayment ID is missing or not foundProvide valid payment ID
invalid_payment_typeInvalid payment type specifiedUse supported types: E_MANDATE, UPI, CARD
subscription_does_not_existSubscription doesn’t exist for the provided reference IDVerify subscription reference ID
authorization_payment_info_mismatchAuthorization payment info doesn’t match subscription creation infoMatch payment details between creation and authorization
tpv_not_supportedTPV not allowed for Intent and QR auth flowUse alternative auth flow

How BillHive Uses Error Codes in Dunning

BillHive’s AI-powered dunning system uses these error codes to make intelligent recovery decisions:

  1. Decline Classification — Each error code is mapped to a decline type (soft/hard/fraud) to determine whether auto-retry is appropriate
  2. Smart Retry Scheduling — Soft declines like Balance Insufficient trigger retries timed to salary cycles; timeouts trigger quick retries
  3. Action Routing — Hard declines skip retries and go straight to customer notification with a payment update link
  4. Fraud Handling — Fraud declines are escalated immediately without retry attempts
  5. AI Context — The error code and its history are passed to the AI dunning engine, which uses them alongside customer behavior patterns to decide the optimal next action