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 Parameters.
For Android, serialize this data such that it can be loaded to WebView directly via postData. Example code in Java: Serialize Parameters.
|
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.
Error Codes:
|
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"}}
|
- Have questions?
- Need help? Contact support
- LLM? Read llms.txt

