• Getting Started
    • Mobile Integration (Android/IOS)
      Enterprise Solutions
      Retail Solutions
      Accept Payments
      Process Payments
      API References
      Other Processes
      Mini Program Platform
        Website Integration

      post Bank Account Validation API

      Use Case

      This API is used to validate the Bank Account details of the beneficiary with small amount tranfser from merchant account to the benificary account. You can send the combination of either the Bank Account Number and IFSC Code or Beneficiary VPA

      HTTP Headers

      Paytm provides MID as a unique identifier to each merchant. For your staging MID, click here. You get the production MID post the account activation.
      Signature encryption for validation. It's value to be sent should be the checksum string created by using Paytm checksum library.

      Request Attributes

      API Content Type: JSON

      Order ID is merchant’s unique reference ID for a transaction passed in the transaction payload. This is Order ID for which the transaction status needs to be fetched.
      Merchants sub wallet guid
      Beneficiary bank account number which needs to be validated
      IFSC code of the beneficiary account holding bank branch.
      Beneficiary VPA which needs to be validated
      Paytm sends the response of transaction on the URL which comes in the callbackUrl parameter.
      Note: In request either you have to send beneficiaryAccount & beneficiaryIFSC OR beneficiaryVPA

      Response Attributes

      API Content Type: JSON

      statusCodestring Failure reason code where status is FAILURE. A detailed list of statusCode is mentioned at the bottom of this page.
      statusstring Disbursal request status. It can be FAILURE or ACCEPTED or SUCCESS.
      statusMessagestring Description of each statusCode.

      Response Codes and Messages

      DE_001SUCCESSSuccessful disbursal to Bank Account is done
      DE_002ACCEPTEDRequest accepted
      DE_101PENDINGYour request is in process. Kindly check after sometime
      DE_102PENDINGDisbursal to Bank Account failed. Your refund to sub-wallet is in process
      DE_601PENDINGDisbursal to bank account is in process. Please check again in some time
      DE_010FAILUREparam is mandatory and it's can't be null or blank
      DE_011FAILUREparam doesn't contain a valid value
      DE_012FAILUREAmount must be a positive number with maximal 2 decimal places
      DE_013FAILUREparam doesn't contain valid length, It should be <length> or less
      DE_014FAILUREPPBL account no should be 12 digits and starts with 91
      DE_015FAILUREPurpose not valid
      DE_016FAILUREMonth not valid
      DE_017FAILUREYear not valid
      DE_018FAILUREYou can disburse the amount up to 6 months before from the current month
      DE_019FAILUREMID is not valid
      DE_020FAILUREUploaded file is blank
      DE_021FAILUREDisburse amount should be Rs. 1 or more
      DE_022FAILUREDisburse amount should not be more than Rs. 200000
      DE_023FAILUREMid is not active
      DE_024FAILUREAccount no should be alphanumeric with length between 9 to 18 digits
      DE_025FAILUREIFSC code is invalid.
      DE_026FAILUREUploaded file must be of csv format
      DE_027FAILUREFile must contain 4 headers
      DE_028FAILURECannot exceed columns more than <length>
      DE_029FAILURETotal amount to be disbursed is more than the subwallet balance
      DE_030FAILUREFile already exists with this name
      DE_034FAILUREInvalid Pay Mode
      DE_035FAILUREYour request has been rejected by your configured Approver.
      DE_036FAILUREUploaded file contains records more than <param>records
      DE_039FAILURENo record found
      DE_040FAILUREDuplicate order id
      DE_041FAILUREUnable to process your request. Please try after some time
      DE_042FAILUREDate format is not correct as it should be yyyy-MM-dd
      DE_056FAILUREUPI not allowed for amount more than 1 lakhs
      DE_057FAILUREInvalid request
      DE_058FAILUREMerchant Commission not configured
      DE_400FAILUREInvalid Request Parameter
      DE_401FAILUREAuthentication Parameters Required
      DE_402FAILUREAccess Denied
      DE_403FAILUREAPI Not Found
      DE_404FAILUREUnable to authenticate the request
      DE_405FAILURERemote IP not whitelisted
      DE_406FAILUREInvalid Client-Token
      DE_407FAILUREClient-Token Required
      DE_408FAILUREChecksum Required
      DE_409FAILUREChecksum Verification Failed
      DE_500FAILURESystem Error
      DE_602FAILUREDisbursal to bank account failed. Please try after some time
      DE_603FAILUREDisbursal to bank account failed
      DE_606FAILUREInvalid account number
      DE_607FAILUREError at bank end
      DE_609FAILUREUnable to fetch details
      DE_610FAILURENo fds available
      DE_612FAILUREAccount blocked/frozen
      DE_613FAILUREInvalid IFSC/MICR
      DE_614FAILUREAccount is closed
      DE_615FAILUREInvalid account number or IFSC code
      DE_616FAILUREDaily allowed amount limit for the beneficiary is exceeded
      DE_617FAILUREBeneficiary account is NRE account
      DE_618FAILUREInvalid NBIN (IFSC code)
      DE_619FAILURENPCI rejects as net debit cap is exceeded for remitter
      DE_620FAILURECard is restricted at beneficiary account
      DE_621FAILURETransaction declined, Bank not enabled for P2A functionality
      DE_622FAILUREMaximum limit amount exceeded
      DE_623FAILUREExceeded maximum allowed number of transfers per day
      DE_625FAILUREInvalid IFSC code
      DE_626FAILURETransaction is declined based on From account type and To account type
      DE_627FAILURETransaction is declined based on transaction limit imposed on the From account type and To account type
      DE_628FAILUREBeneficiary PPI is Gift prepaid and this is not the first transaction
      DE_629FAILUREAcquiring bank has not implemented customer initiated person-to-merchant transaction
      DE_631FAILUREAmount is greater than 2 Lakhs (Applicable for Bank where NDC is greater than 2 Lakhs)
      DE_632FAILUREInvalid payment reference
      DE_633FAILUREInvalid amount
      DE_634FAILUREInvalid transaction
      DE_636FAILUREUnable to process
      DE_637FAILUREBlocked/Lost/Hotlisted card
      DE_638FAILUREExpired card
      DE_639FAILUREDebit Request Failure
      DE_640FAILURELimit Exceed
      DE_641FAILURENo record found
      DE_643FAILURERemmiter and beneficiary accounts are same
      DE_646FAILUREFund transfer not allowed for this transaction type
      DE_647FAILURERefund not allowed for this transaction type
      DE_648FAILUREProduct Service Unavailable
      DE_649FAILURECA Form 60 Val Current Account Form 60 current balance limit breached
      DE_650FAILURECA Form 60 Val Current Account Form 60 Daily deposit limit breached
      DE_651FAILUREFraud verification Maquette suspicious response
      DE_652FAILURENodal IMPS Nodal IMPS Amount Limit Breached
      DE_653FAILURENodal IMPS Beneficiary Does Not exist
      DE_654FAILURERefund Processing Service No successful parent transaction found for request.
      DE_655FAILURERefund Processing service Refund amount is greater than max amount available for refund
      DE_656FAILURECredit account freeze
      DE_701FAILUREMerchant does not exists
      DE_702FAILUREUser doesn't exist
      DE_703FAILUREWallet could not found, please verify walletGuid
      DE_704FAILURESub wallet not found
      DE_705FAILUREAgent wallet balance cann't be negative. Please fund your wallet and try again
      DE_706FAILURERefund is not possible as refund possibly already done or current refund request may cause refund to exceed actual transaction amount
      DE_707FAILURERefund amount should be equal to the transaction amount
      curl -X POST 'https://staging-dashboard.paytm.com/bpay/api/v1/beneficiary/validate' \
      --header 'Content-Type: application/json' \
      --header 'x-mid: {mid}' \
      --header 'x-checksum: {checksum}' \
      --data '{"subwalletGuid":"28054249-XXXX-XXXX-af8f-fa163e429e83","orderId":"ORDERID_98765", "beneficiaryAccount":"918008484891", "beneficiaryIFSC":"PYTM0123456"}'