---
page_source: https://docs.juspay.io/ec-headless/ios/payloads/netbanking
page_title: Netbanking
---


# Netbanking




### Netbanking Txn Substep


This operation helps the merchant to redirect user to the Bank page selected by the user and complete payment through NetBanking




### Netbanking Txn - e-mandate Prerequisites:


Below prerequisites shall be completed by the merchant, prior to commencing integration.

* Account creation with respective Payment Gateway for e-mandate flow
* Configure the credentials on Juspay Dashboard

![Image](https://dth95m2xtyv8v.cloudfront.net/tesseract/assets/ec-headless/nb_emandate_user_journey.png)
*User Experience for E-mandate registration flow*



> **Note**
> * Bank Account Validation is an optional step in the e-mandate flow. It helps to validate the account number by crediting a penny amount into the user’s account. The availability of this feature depends on the Payment gateway providing this feature.
> * During E-mandate registration the user will not be charged any amount.
> * E-mandate registration status confirmation may be instantaneous and upto 5 working days. It depends on the Payment Gateway and Issuer Bank.






### Step 1.1. Net Banking E-mandate Flow


![Image](https://dth95m2xtyv8v.cloudfront.net/tesseract/assets/ec-headless/nb_emandate_flow-rqiTn.png)
*Net Banking E-mandate Flow*






### Step 1.1. Key integration changes for integrating Netbanking E Mandate via Hyper SDK:


**Step 1 - Setting the Customer context** 

Create or Get Customer[](https://developer.juspay.in/reference#customer)on the Juspay Server. It is recommended to make this API call before opening the payment page.

**Step 2 - Order creation** 

Create Order[](https://developer.juspay.in/reference#create-order-1)on Juspay Servers with Rs.1 as value. Please ensure to pass two critical parameters for e-mandate flow

* options.create_mandate :: REQUIRED
* mandate_max_amount :: Pass the appropriate maximum amount for recurring transactions

**Step 3 - Bank Account Validation** 

This is an optional step. If your payment gateway supports this feature, perform the nbValidate SDK call to check whether the user has entered a valid account number. This will help to improve the conversion rate of e-mandate registration attempts. The account validation typically takes around 30 to 60 seconds (depends on the payment gateway and issuer). Hence, Hyper SDK supports polling upto 5 minutes with 5 second frequency and returns the status.

**Step 4 - Initiate Netbanking Transaction** 

Upon successful validation, perform a nbTxn SDK call to redirect the user to the bank page for login and e-mandate authorization.

**Step 5 - Check mandate registration status** 

Use Juspay order status API to check the status of mandate. E-mandate registration status confirmation may be instantaneous and upto 5 working days. It depends on the Payment Gateway and Issuer Bank.

**Step 6 - Recurring payments** 

Once the mandate registration status is successful, use Juspay APIs to directly debit the user account for recurring payments.

* Fetch active mandates for the customer using list mandates API
* Debit the user account using execute mandate API

API Reference - [https://docs.juspay.in/api-reference](https://docs.juspay.in/api-reference)



## Sample Code Snippets:
### Sample Request:

#### Netbanking Txn Code Snippet:

```netbanking txn
{
    "requestId": "eee6f65e-23dc-42e1-ad7c-ec3cddd64ac9",
    "service": "in.juspay.hyperapi",
    "payload": {
        "action": "nbTxn",
        "orderId": "hyperorder45314",
        "paymentMethod": "NB_AXIS",
        "clientAuthToken": "tkn_0e37edc631d647fdb606ab48ccfc4213"
    }
}
```

#### Netbanking Txn - e-mandate Code Snippet:

```netbanking txn - e-mandate
{
    "requestId": "eee6f65e-23dc-42e1-ad7c-ec3cddd64ac9",
    "service": "in.juspay.hyperapi",
    "payload": {
        "action": "nbTxn",
        "orderId": "hyperorder45314",
        "paymentMethod": "NB_AXIS",
        "bankIfsc": "SBIN0070740",
        "bankAccountNumber": "00000067369932310",
        "bankBeneficiaryName": "Parthiban P",
        "mandateType": "EMANDATE",
        "bankId": "bank_gYB2qivEEGUYonVW",
        "shouldCreateMandate": "true",
        "clientAuthToken": "tkn_0e37edc631d647fdb606ab48ccfc4213"
    }
}
```

### Sample Response:

#### Netbanking Txn:
```json
{
    "requestId": "eee6f65e-23dc-42e1-ad7c-ec3cddd64ac9",
    "service": "in.juspay.hyperapi",
    "payload": {
        "orderId": "hyperorder45314",
        "action": "nbTxn",
        "status": "CHARGED",
        "otherInfo": {
            "url": "https://api.juspay.in/end?status_id=21&status=CHARGED&order_id=hyperorder22463&signature=gXRaN%2FyfHCJJouNuTmnFR025CMptP7%2FFkEz2BFQdTOI%3D&signature_algorithm=HMAC-SHA256",
            "realtime": {
                "requestId": "98ff1ee9-03a7-41ad-9f28-d402b1bb9aa1",
                "merchantId": "idea_preprod",
                "customerId": "balas0011@gmail.com",
                "clientId": "idea_android",
                "environment": "production",
                "merchantLoader": "false",
                "isWrapper": "false",
                "lastVisitedUrl": "https://merchant.onlinesbi.sbi/merchant/smsenablehighsecurityconfirm.htm"
            }
        }
    },
    "error": false,
    "errorCode": "",
    "errorMessage": ""
}
```

#### Netbanking Txn - e-mandate:
```plaintext
{
    "service": "in.juspay.hyperapi",
    "requestId": "eee6f65e-23dc-42e1-ad7c-ec3cddd64ac9",
    "payload": {
        "action": "nbTxn",
        "status": "CHARGED",
        "orderId": "hyperorder45314"
    },
    "errorMessage": "",
    "errorCode": "",
    "error": false
}
```

