Introduction
The Server-to-Server (S2S) Net Banking integration lets you initiate net banking payments entirely from your backend. EximPe returns an ACS (Access Control Server) template that you render in the customer’s browser, which automatically redirects them to their bank’s net banking portal to authorise the payment.18+ Banks Supported
SBI, HDFC, ICICI, Axis, Kotak and many more
ACS Redirect
Seamlessly redirect customers to their bank’s portal via Base64-encoded HTML
Real-time Callbacks
Receive instant payment status updates via server-to-server webhooks
Prerequisites
Before you begin, ensure you have:- Credentials: Your Client ID and Client Secret
- Domain Whitelist: Whitelisted your website domain in the EximPe dashboard
- Webhook URL: A secure endpoint to receive payment status updates
- Callback URL: A publicly accessible URL configured in your EximPe dashboard for server-to-server callbacks
- HTTPS Endpoint: All S2S endpoints must be served over HTTPS
- Initiate payment with the customer’s selected bank code
- Render the ACS template to redirect the customer to their bank
- Check payment transaction status
- EximPe sends Server-to-Server callback response
Step 1: Initiate Payment
Send aPOST request to the Create Order endpoint with collection_mode set to "s2s" and mop_type set to "net_banking". Include the customer’s chosen bank code in netbanking_details.
Required parameters for S2S Net Banking:
collection_mode: must be"s2s"mop_type: must be"net_banking"netbanking_details.bank_name: name of the selected bank (see Supported Banks)buyer.ip_address: customer’s device IP address (used for fraud prevention)buyer.user_agent: customer’s browser user-agent string (used for fraud prevention)
Request Headers
Response
order_id: Unique order identifier for tracking the transactionacs_template: Base64-encoded HTML form that redirects the customer to their bank’s net banking portal
Step 2: Render ACS Template
Decode the Base64acs_template and render it in the customer’s browser. The embedded form auto-submits and takes the customer directly to their bank’s authentication page.
Step 3: Check Payment Transaction Status
Use the Order Status API to retrieve the current payment status:For detailed parameters and response formats, see the Get Order API
Payment Status Values
| Status | Description |
|---|---|
payment_pending | Payment initiated, awaiting completion |
payment_successful | Payment completed successfully |
failed | Payment failed or was declined |
Step 4: Server-to-Server Callback Response
EximPe sends real-time webhook notifications when payment status changes:Supported Banks
- Axis Bank
- Bank of India
- Bank of Maharashtra
- Central Bank Of India
- Corporation Bank
- Development Credit Bank
- Federal Bank
- HDFC Bank
- ICICI Netbanking
- Industrial Development Bank of India
- Indian Bank
- IndusInd Bank
- Indian Overseas Bank
- Jammu and Kashmir Bank
- Karnataka Bank
- Karur Vysya
- State Bank of Bikaner and Jaipur
- State Bank of Hyderabad
- State Bank of India
- State Bank of Mysore
- State Bank of Travancore
- South Indian Bank
- Union Bank of India
- United Bank Of India
- Vijaya Bank
- Yes Bank
- CityUnion
- Canara Bank
- State Bank of Patiala
- Citi Bank NetBanking
- Deutsche Bank
- Kotak Bank
- Dhanalaxmi Bank
- ING Vysya Bank
- Andhra Bank
- Punjab National Bank CORPORATE
- Punjab National Bank
- Bank of Baroda
- Catholic Syrian Bank
- Oriental Bank Of Commerce
- Standard Chartered Bank
- Tamilnad Mercantile Bank
- Saraswat Bank
- Syndicate Bank
- UCO Bank
- Bank of Baroda Corporate
- Allahabad Bank
- Bank of Bahrain and Kuwait
- Janata Sahakari Bank
- Lakshmi Vilas Bank Corporate
- Lakshmi Vilas Bank Retail
- North Kanara GSB
- Punjab and Maharashtra Coop Bank
- Punjab and Sind Bank
- Ratnakar Bank
- Royal Bank of Scotland
- Shamrao Vithal Coop Bank
- Tamil Nadu State Apex Coop Bank
- DENA Bank
- COSMOS Bank
- DBS Bank Ltd
- DCB BANK Business
- SVC Cooperative Bank
- Bharat Bank
- Karur Vysya Corporate Banking
- Union Bank Corporate Banking
- IDFC Bank
- The Nainital Bank
- Airtel Payments Bank
Next Steps
- Go Live: Switch to production credentials after thorough testing
- Monitor: Track success rates and error patterns via your EximPe dashboard