Hey! These docs are for version 3.2, which is no longer officially supported. Click here for the latest version, 1.0!

Overview of the Bank Accounts APIs

These five Bank Account APIs handle bank account/customer interaction in the Juspay system.

Create Bank Account:   
Enters a new customer bank account in the Juspay system with the given bank information.
Required:   customer_id, Bank Data (bank_code, ifsc, etc.)
Optional:   command = create or command = validate
    POST    https://api.juspay.in/customers/:customer_id/bank-accounts
Validate Bank Account:   
Validates given bank account of customer. Returns a
Required:   customer_id, bank_account_id
    POST   https://api.juspay.in/customers/:customer_id/bank-accounts/:bank_account_id/validate
List Bank Accounts:   
Returns a detailed list all bank accounts of a given customer as an array of Bank Account Objects (list).
Required:   customer_id
Returns:   object, list[{...},{...},...], total, offset, count
    GET     https://api.juspay.in/customers/:customer_id/bank-accounts/list
Get Bank Account:   
Returns details of a customer's bank account as a Bank Account Object.
Required:   customer_id, bank_account_id
    GET     https://api.juspay.in/customers/:customer_id/bank-accounts/:bank_account_id
Delete Bank Account:   
This will delete the selected bank account of a customer.
Required:   customer_id, bank_account_id
Optional:   command = delete
Returns:  bank_account_id, bank_account_status ( = "deleted" if OK)
    POST     https://api.juspay.in/customers/:customer_id/bank-accounts/:bank_account_id
URL Embedded (Path) Parameters:
Field * Type Description
customer_id * String This is the Customer ID provided by Juspay or the Object Reference ID given by merchant during customer creation.
bank_account_id String This is the Bank Account ID provided by Juspay. Required only for the Get, Validate, and Delete Bank Account APIs. Not used for the Create and List Bank Account APIs.
* = Required
Bank Data parameters

Additional Request (Form) Parameters for the Create bank account API.

Field * Type Description
bank_code * String Juspay bank code ID defining the bank.
account_number * String Bank account number.
ifsc * String IFSC code for a bank branch.
beneficiary_name String Name of the customer in a given bank account.
gateway_id String Gateway id of the underlying provider to be used for bank account validation.
gateway_reference_id String Reference Id to a specific gateway which is used for validation
metadata
   {param1, param2, ...}
String Custom key-value sets can be passed here
* = Required
Command Parameters     (all have string type)

Command Parameters are included in some Bank Account APIs to specify the action.
(Set up as a Request (Form) Parameter)

Field * API used for Required Value
command Create Bank Account Can be set to  create or  validate . Default is create.   command = validate will do create and validate at once.
command * Delete Bank Account Should be set to  delete This will delete the selected entity from the Juspay system.
* = Required only for the specified API


The Create, Validate, and Get bank account APIS all return a response as a Bank Account Object, which provides details or a selected bank account of a customer. The List bank accounts API returns a response as an array of Bank Account Objects:

    Bank Account Object     (click to open table)
ParameterTypeDescription
objectString"bank_account"
idStringBank account ID generated by Juspay
customer_idStringCustomer ID sent in request. (Customer ID is provided by juspay or is the object reference ID given by merchant during customer creation.)
date_createdStringDate that account was created
bank_nameStringName of bank
ifscStringIFSC code for a bank branch.
account_numberStringBank account number.
beneficiary_nameStringName of the customer in a given bank account.
validation_amountStringAmount that account is validated for
currencyStringType of currency
validation_statusStringStatus of account (CREATED, PENDING, or ACTIVE)
last_validatedStringTime/date of most recent validation
metadata:
   {param1, param2, ....}
StringCustom key-value sets sent in request


What’s Next