Collections Response keys

This page gives an overview of the response keys provided by Decentro as part of the collections platform.


Create Payment Link

Below are the response keys propagated by Decentro in the Generate UPI Payment Link API.

Response keyScenario
error_provider_errorAn unexpected response was obtained from the provider service.
error_empty_module_secretAn empty module secret was passed.
error_no_subscription_foundThe company has not subscribed to this module.
error_unauthorized_moduleAuthentication failed for this module.
error_module_access_expiredThe module subscription has expired.
error_module_credits_exhaustedModule credits are exhausted for the company.
error_decentro_errorSomething wrong happened at the Decentro level.
unauthorized_providerThe Provider is not authorized for the company.
success_payment_link_createdThe payment link was created successfully.
error_invalid_reference_idThe reference id passed is not of type string.
error_duplicate_reference_idA duplicate request reference id is passed.
error_invalid_account_numberThe account passed does not match the underlying provider.
error_malformed_requestA malformed JSON request was passed.
error_amount_not_parsableThe amount is not a valid positive value.
error_exceeded_decimal_in_amountMore than 2 decimals were passed in amount.
error_amount_type_invalidAmount type other than a positive integer is passed.
error_unsanitized_valuesInvalid characters, such as. @ # $ % ^ & * ! ; : ' " ~ ` ? = + ) ( were passed.
error_invalid_purpose_message_lengthLong purpose length was passed.
error_invalid_purpose_messageThe purpose message passed is not in string format.
error_invalid_generate_QR_valueGenerate QR value is passed other than 0 or 1.
error_expiry_is_not_positiveExpiry time passed is less than 0.
error_expiry_exceeded_max_expiry_daysExpiry time passed is more than 45 days.
error_invalid_expiry_valueExpiry time passed is not of the type positive integer.
error_invalid_generate_uri_valueGenerate uri value is passed other than 0 or 1.
error_empty_payee_accountAn empty payee account was passed.
error_invalid_reference_idThe request reference id passed is not a string.
error_empty_reference_idAn empty reference_id was passed.
error_empty_amountAn empty amount was passed.
error_empty_purpose_messageAn empty purpose message was passed.
error_invalid_custom_QR_valueCustom QR value is passed other than 0 or 1.
error_QR_not_generatedAn error occurred while creating a dynamic QR.
error_empty_generate_QRAn empty generate QR was passed.

Check Payment Status

Below are the response keys propagated by Decentro in the Check Payment Status API.

Response keyScenario
success_transaction_status_successfulUPI Transaction Status is successful.
error_no_transaction_foundThis transaction was not found in our system. If there was any debit, it would have already been reversed. Please retry the corresponding initiate payment transaction.
success_transaction_status_pendingUPI Transaction Status is successful pending.
success_transaction_status_failureUPI Transaction Status is successful failure.
success_transaction_status_expiredUPI Transaction Status is successful expired.
error_invalid_providerGiven transaction does not belong to the original provider.
error_provider_errorError occurred while fetching transaction status from provider.
error_api_access_errorError occurred while accessing the API.
error_authentication_requestError occurred while authenticating the request.
error_unauthorized_requestError occurred because request is unauthorized .
error_plan_not_configuredError occurred because plan is not configured.
error_plan_not_foundError occurred because plan is not found.
error_duplicate_transactionDuplicate transaction found in the system.


Below are the response keys propagated by Decentro in the Issue UPI Refund API.

Response keysScenarios
success_refund_status_pendingTransaction refund request processed successfully.
error_invalid_reference_idReference URL is not of type string.
error_duplicate_reference_idDuplicate Request Reference ID.
error_malformed_requestMalformed request detected.
error_unsanitized_valuesUnsanitized values detected for key(s): purpose_message. Kindly sanitize the corresponding values by removing special characters such as . @ # $ % ^ & * ! ; : ' " ~ ` ? = + ) ( and retry.
error_invalid_purpose_message_lengthLength of Purpose Message cannot be greater than X.
error_invalid_purpose_messagePurpose Message is not of type string. Hint : purpose_message (string).
error_missing_reference_idRequest reference id cannot be null or empty. Hint: reference_id (string).
error_missing_purpose_messagePurpose Message cannot be null or empty. Hint : purpose_message (string).
error_invalid_credentialsInvalid authentication credentials.
error_missing_credentialsNo API key found in request.
error_invalid_client_credentialsAuthentication failed. Please use valid Client ID and Client Secret.
error_empty_client_secretClient Secret cannot be empty. Hint: client_secret (string).
error_unauthorized_moduleAuthentication failed for accessing the module.
error_empty_module_secretModule Secret cannot be empty. Hint: module_secret (string).
error_company/account_disabledUPI Credit transactions are disabled for the company/account.
error_no_transaction_foundNo such transaction found at our end. Please check the values and retry.
error_no_transaction_identifier_foundAny one value should be present out of transaction_id, original_reference_id and bank_reference_number.Please check the documentation and provide values accordingly.
error_provider_errorUnexpected response received from underlying provider.
error_invalid_bank_reference_numberOriginal transaction bank reference number is invalid.
error_pending_original_transactionOriginal transaction has not reached terminal state.
error_unsuccessful_original_transactionOriginal transaction was not a success.
error_refund_already_processedRefund already processed for the given transaction.
error_refund_already_initiatedAnother refund has already been initiated for the given original transaction.
error_insufficient_balanceRefund cannot be processed due to insufficient balance. Contact [email protected].


Error keys serve as indicators to notify clients when a payment transaction encounters issues. These errors are unique to the payment collections. In a complex ecosystem like UPI, where multiple payment entities collaborate to facilitate a transaction, it's essential to pinpoint the cause of a transaction failure. Error keys play a crucial role in helping clients identify which specific entity within the UPI ecosystem contributed to the transaction's failure

Error keyDescription
error_at_remitter_bankThe transaction failed due to an issue at the remitter's (end customer) bank. Please contact the remitter's bank. The common reasons for such failures are the payer account is frozen, technical issues at the bank, etc.
error_at_beneficiary_bankThe transaction failed due to an issue at the beneficiary bank.
error_at_payer_pspThe transaction failed due to an issue at payer psp.
error_at_payee_pspThe transaction failed due to payee psp.
error_at_npciThe transaction failed due to an issue at NPCI.