Bank Transfers

Create a payment transaction for Bank Transfers. Once you have the response, depending on the “method” attribute, you will have to take the next step. If you receive GET, then take the value in the “URL” attribute and redirect the user to this location. If you receive POST, then “params” attribute will hold a map containing key-value pairs.

For Web, you can create a form with these parameters as hidden variables and auto submit the form. Example code in Javascript: Serialize Parameterslink icon.

For Android, serialize this data such that it can be loaded to WebView directly via postData. Example code in Java: Serialize Parameterslink icon.

Scroll inside to view more
payment_method
Bank
NB_MY_UOB
United Overseas Bank(Malaysia)
NB_MY_RHB
RHB Bank (Malaysia)
NB_MY_OCBC
OCBC Bank (Malaysia)
NB_MY_HSBC
HSBC Bank (Malaysia)
NB_MY_BSN
Bank Simpanan Nasional (Malaysia)
NB_TH_BAY
Bank of Ayudhya - Krungsri (Thailand)
NB_TH_BBL
Bangkok Bank (Thailand)
NB_TH_KTB
Krung Thai Bank (Thailand)
NB_TH_SCB
Siam Commercial Bank (Thailand)
NB_TH_TMB
TMB Bank (Thailand)
NB_TH_UOB
United Overseas Bank (Thailand)
NB_TH_TBANK
Thanachart Bank (Thailand)
NB_TH_KBANK
Kasikorn Bank (Thailand)
NB_MY_ABB
Affin Bank (Malaysia)
NB_MY_AGB
AGRO Bank (Malaysia)
NB_MY_ABMB
Alliance Bank (Malaysia)
NB_MY_AMB
AmBank (Malaysia)
NB_MY_BISM
Bank Islam (Malaysia)
NB_MY_BMMB
Bank Muamalat (Malaysia)
NB_MY_BOC
Bank of China (Malaysia)
NB_MY_CITI
CitiBank (Malaysia)
NB_MY_DBB
Deutsche Bank (Malaysia)
NB_SG_UOB
United Overseas Bank(Singapore)
NB_SG_SCB
Standard Chartered Bank (Singapore)
NB_SG_OCBC
OCBC Bank (Singapore)
NB_SG_DBS
DBS Bank (Singapore)
NB_MY_MBM
Maybank2U (Malaysia)
NB_MY_PBB
Public Bank (Malaysia)
NB_MY_SCB
Standard Chartered Bank (Malaysia)
NB_MY_HLB
Hong Leong Bank (Malaysia)
NB_MY_UOBE
United Overseas Bank Regional (Malaysia)
NB_MY_PBBE
PB Enterprise (Malaysia)
NB_MY_MBMCORP
Maybank2E (Malaysia)
NB_MY_MBMPAY
Maybank2UPAY (Malaysia)
NB_POLI
Poli payments
NB_EPS
EPS Bank
NB_GIROPAY
GIROPAY Bank
NB_IDEAL
IDEAL Bank
NB_P24
P24 Bank
NB_SOFORT
SOFORT Bank
NB_EPS
EPS Bank
NB_GIROPAY
GIROPAY Bank
NB_IDEAL
IDEAL Bank
NB_SOFORT
SOFORT Bank
NB_EPS
EPS Bank
NB_GIROPAY
GIROPAY Bank
NB_IDEAL
IDEAL Bank
NB_SOFORT
SOFORT Bank
NB_EPS
EPS Bank
NB_GIROPAY
GIROPAY Bank
NB_IDEAL
IDEAL Bank
NB_SOFORT
SOFORT Bank
NB_P24
P24 Bank
NB_GIROPAY
GIROPAY Bank
NB_IDEAL
IDEAL Bank
NB_EPS
EPS Bank
NB_SOFORT
SOFORT Bank
NB_P24
P24 Bank
NB_IDEAL
IDEAL Bank
NB_TRANSFER
NB Transfer
NB_SBIA
Test Bank
NB_MY_KFH
Kuwait Finance House (Malaysia)
NB_TH_BAY
Bank of Ayudhya - Krungsri (Thailand)
NB_TH_BBL
Bangkok Bank (Thailand)
NB_TH_KTB
Krung Thai Bank (Thailand)
NB_TH_SCB
Siam Commercial Bank (Thailand)
NB_TH_UOB
United Overseas Bank (Thailand)
NB_TH_TMB
TMB Bank (Thailand)
NB_TH_TBANK
Thanachart Bank (Thailand)
NB_MY_ABB
Affin Bank (Malaysia)
NB_MY_AGB
AGRO Bank (Malaysia)
NB_MY_ABMB
Alliance Bank (Malaysia)
NB_MY_AMB
AmBank (Malaysia)
NB_MY_BISM
Bank Islam (Malaysia)
NB_MY_BKRM
Bank Rakyat (Malaysia)
NB_MY_BOC
Bank of China (Malaysia)
NB_MY_CIMB
CIMB Clicks (Malaysia)
NB_MY_CITI
CitiBank (Malaysia)
NB_MY_DBB
Deutsche Bank (Malaysia)
NB_SG_DBS
DBS Bank (Singapore)
NB_SG_OCBC
OCBC Bank (Singapore)
NB_SG_SCB
Standard Chartered Bank (Singapore)
NB_SG_UOB
United Overseas Bank(Singapore)
NB_FED
Federal Bank
NB_TRUSTLY
TRUSTLY
NB_MY_ABB
Affin Bank (Malaysia)
NB_MY_AGB
AGRO Bank (Malaysia)
NB_MY_ABMB
Alliance Bank (Malaysia)
NB_MY_AMB
AmBank (Malaysia)
NB_MY_BISM
Bank Islam (Malaysia)
NB_TH_BBL
Bangkok Bank (Thailand)
NB_TH_BAY
Bank of Ayudhya - Krungsri (Thailand)
NB_TH_KTB
Krung Thai Bank (Thailand)
NB_MY_MBMPAY
Maybank2UPAY (Malaysia)
NB_MY_MBMCORP
Maybank2E (Malaysia)

Handling POST
When you get POST as the authentication method in the response, then the customer must be redirected using a form. Example HTML code is given to you. Depending on your client language, choose the appropriate way to create the form.

Handling GET
When you get GET as the authentication method in the response, you may load the URL directly into the customer’s browser. You can easily achieve this by sending HTTP 302 from your server. However, if the API call was made from the browser, then you can utilize the code snippet provided.

API Endpoints
Sandbox Link
POST
https://sandbox.juspay.in/txns
Production Link
POST
https://api.juspay.in/txns
Headers
Body
200 : Success
400 : Invalid Input data

Error Codes:

Scroll inside to view more
Scenario
Error Codes
Sample Error Message
Not passing the currency value
400
{"error_message":"Bad Request.","status":"Bad Request","error_code":"INVALID_REQUEST","error_info":{"user_message":"Invalid input data","fields":[{"field_name":"currency","reason":"Missing field or Invalid Value"}],"developer_message":"Invalid input data","code":"INVALID_INPUT","category":"USER_ERROR"}}
Not passing the amount value
400
{"error_message":"Bad Request.","status":"Bad Request","error_code":"INVALID_REQUEST","error_info":{"user_message":"Invalid input data","fields":[{"field_name":"amount","reason":"Missing field or Invalid Value"}],"developer_message":"Invalid input data","code":"INVALID_INPUT","category":"USER_ERROR"}
Passing the amount in negative Integer
400
{"error_message":"Bad Request.","status":"Bad Request","error_code":"INVALID_REQUEST","error_info":{"user_message":"Invalid input data","fields":[{"field_name":"amount","reason":"Invalid amount"}],"developer_message":"Invalid input data","code":"INVALID_INPUT","category":"USER_ERROR"}}
Passing the amount in Positive Integer
400
{"error_message":"BadRequest.","status":"Bad Request","error_code":"INVALID_REQUEST","error_info":{"user_message":"Invalid input data","fields":[{"field_name":"amount","reason":"Missing field or Invalid Value"}],"developer_message":"Invalid input data","code":"INVALID_INPUT","category":"USER_ERROR"}}
Not passing the customer_email
400
{"status":"error","error_code":"invalid_request","error_info":{"user_message":"Invalid customer Email","fields":[{"field_name":"customerEmail","reason":"Invalid value."}],"developer_message":"customerEmail shouldn't have any special chars","code":"INVALID_INPUT","category":"USER_ERROR"}}
Not sending the orderId
400
{"error_message":"order_id is missing","status":"Bad Request","error_code":"order_id is missing","error_info":{"user_message":"Please pass order_id in request","fields":[{"field_name":"order_id","reason":"Missing field."}],"developer_message":"order_id is missing in request","code":"MISSING_MANDATORY_PARAMETER","category":"USER_ERROR"}}
Not passing API key
403
{"error":true,"error_message":"Forbidden.No valid API key or client auth token is present in Authorization header or client_auth_token query parameter","user_message":"Access Denied.Unable to proceed.","userMessage":"Access Denied.Unable to proceed.","error_info":{"code":"UNAUTHORIZED","category":"USER_ERROR","user_message":"AccessDenied","developer_message":"No valid API key or client auth token is present in Authorization header or client_auth_token query parameter"}}
Invalid API key
401
{"status":"error","error_code":"access_denied","error_info":{"user_message":"Unauthorized.","developer_message":"Invalid API Key.Please pass a valid and active apikey.","code":"UNAUTHORIZED","category":"USER_ERROR"}}
Whitelisting of IP in dashboard
403
{"error":true,"error_message":"Internal Server error.","user_message":"Bad Origin.","error_info":{"code":"BAD_ORIGIN","category":"USER_ERROR","user_message":"Bad Origin.","developer_message":"IP Verification Failed"}}
Not passing order id
400
{"error_message":"[order id] cannot be null","status":"invalid_request_error","error_code":"blank","error_info": {"user_message":"Cannot process your request. Please contact support team for assistance.","fields": [{"field_name":"order_id","reason":"Missing field."}],"developer_message":"Missing order id. Please pass order_id or order payload.","code":"MISSING_MANDATORY_PARAMETER","category":"USER_ERROR"}}
Not passing MID
400
{"error_message":"Bad request.","status":"ERROR","error_code":"Bad request.","error_info": {"user_message":"Bad request.","fields": [{"field_name":"merchant_id","reason":"Field required but not passed."}],"developer_message":"Failed while parsing your request.","code":"MISSING_MANDATORY_PARAMETER","category":"USER_ERROR"}}
Passing MID as Empty
400
{"user_message":"Invalid merchant id. Cannot process your request.","error_message":"Invalid Request","error": true,"error_info": {"user_message":"Please pass valid merchant_id in request.","fields": [{"field_name":"merchant_id","reason":"Invalid merchant_id."}],"developer_message":"merchant_id is invalid.","code":"RESOURCE_NOT_FOUND","category":"USER_ERROR"}}
Not passing Payment method type
400
{"error_message":"Payment method type cannot be null","status":"invalid_request_error","error_code":"missing_payment_method_type","error_info": {"user_message":"Please pass payment method type in the request.","fields": [{"field_name":"payment_method_type","reason":"Missing field."}],"developer_message":"Missing payment method type in the request. Payment method type is a mandatory parametere.","code":"MISSING_MANDATORY_PARAMETER","category":"USER_ERROR"}}
Not passing Payment method
400
{"error_message":"Payment method cannot be null","status":"invalid_request_error","error_code":"missing_payment_method","error_info": {"user_message":"Cannot process your request. Please contact support team for assistance.","fields": [{"field_name":"payment_method","reason":"Missing field."}],"developer_message":"Missing payment method. Payment method is required for provided payment method type.","code":"MISSING_MANDATORY_PARAMETER","category":"USER_ERROR"}}
Passing invalid MID
400
{"user_message":"Invalid merchant id. Cannot process your request.","error_message":"Invalid Request","error": true,"error_info": {"user_message":"Please pass valid merchant_id in request.","fields": [{"field_name":"merchant_id","reason":"Invalid merchant_id."}],"developer_message":"merchant_id is invalid.","code":"RESOURCE_NOT_FOUND","category":"USER_ERROR"}}
Passing wrong endpoint
404
Response will be empty
Passing amount as 0(without Juspay internal enablement)
400
{"error_message":"Bad Request.","status":"ERROR","error_code":"INVALID_REQUEST","error_info":{"user_message":"Invalid input data","fields":[{"field_name":"amount","reason":"Invalid amount"}],"developer_message":"Invalid input data","code":"INVALID_INPUT","category":"USER_ERROR"}}'
Passing a non configured currency
400
{"error_message":"Can't find a suitable gateway to process the transaction","status":"Bad Request","error_code":"invalid_request_error","error_info":{"user_message":"Gateway not found to process the transaction request.","developer_message":"No functional gateways after filtering for currency THB","code":"GATEWAY_NOT_FOUND","category":"CONFIG_ERROR"}}
Last updated 12 hours ago