---
page_source: https://juspay.io/sea/docs/hyper-checkout-sea/web/resources/payment-locking
page_title: Payment Locking
---


# Payment Locking



Payment locking allows you to block/ allow specific payment instrument groups/ payment instruments on the Hypercheckout screen. For example, if you want to display or hide a specific payment option for a particular product/ service, you can use payment locking to handle such scenarios.Follow the below steps to implement payment locking:1. Pass the payment locking payload in the `payment_filter` parameter while calling the session API, where all the fields are **CASE SENSITIVE** .2. Session API will respond with a JSON object containing process payload and payment filter parameters inside `sdk_payload` key.3. Call the [Process API](https://docs.juspay.in/hyper-checkout/android/base-sdk-integration/open-hypercheckout-screen) by passing the JSON object you received in `sdk_payload` of session API.


### Payload Details




### Step 1.1a PaymentFilter Payload


Refer below parameters for Payment Locking.


### Payload
- **AllowDefaultOptions**:
  - Description: It defines whether you want to display all default payment options along with the payment options on which payment filters were applied.**For Example:**  You passed payload to disable cards payment option and set 'allowDefaultOptions' as true, then it will display all other payment options other than cards. ORYou passed paylaod to enable cards payment option and set 'allowDefaultOptions' as false, then it will only display cards option on the Hypercheckout screen.
  - Value: <p><b>Possible Values:</b> true or false</p>
  - Tags: Boolean, Mandatory
- **Options**:
  - Description: Options defines the method on which payment locking has to be applied.
  - Value:
    - **Enable**:
      - Description: This is to decide whether to disable or enable the payment method, false will disable the payment method and true will enable the payment method.For CARD/UPI as paymentMethodType it should be true if upiFilters or cardFilters are passed.
      - Value: <b>Possible Values:</b> true, false
      - Tags: Boolean, Mandatory
    - **PaymentMethodType**:
      - Description: This decides on which payment method type the payment locking should be applied on.
      - Value: <p><b> Possible Values:</b> CARD, WALLET, RTP etc.</p>
      - Tags: String, Mandatory
    - **PaymentMethods**:
      - Description: This contains the payment methods on which payment locking have to be applied It won't be considered if paymentMethodType is CARD.
      - Value: <p><b> Possible Values:</b> FPS_QR etc.</p>
      - Tags: Array, Optional
    - **CardFilters**:
      - Description: It won't be considered unless paymentMethodType is CARD.
      - Value:
        - **CardBrand**:
          - Description: This contains the card brand on which payment locking has to be applied.
          - Value: <b>Possible values:</b> VISA, RUPAY,...
          - Tags: Array, Optional
        - **CardBin**:
          - Description: This contains the card BINS on which payment locking has to be applied.
          - Value: <p><b>Possible values:</b> ["459000::460000"]</p>
          - Tags: Array, Optional
        - **CardType**:
          - Description: This contains the card type on which payment locking has to be applied.
          - Value: <p><b>Possible values:</b> DEBIT, CREDIT</p>
          - Tags: Array, Optional
        - **CardSubType**:
          - Description: This contains the card sub type on which payment locking has to be applied.
          - Value: <p><b>Possible values:</b> BUSINESS, EMPLOYEE_CARD,...</p>
          - Tags: Array, Optional
        - **CardBanks**:
          - Description: This contains the Bank names on which payment locking has to be applied.
          - Value: <p><b>Possible values:</b> SBI, ICICI,....</p>
          - Tags: Array, Optional
        - **Enable**:
          - Description: This is to decide whether to disable or enable the payment instrument. False will disable the payment method and true will enable the payment method.
          - Value: <p><b>Possible values:</b>true, false</p>
          - Tags: Boolean, Mandatory
      - Tags: Array, Optional
  - Tags: Array, Mandatory





### EMI Filter:



You can show/ hide/ only display EMI without cards by passing below values in **'sdk_udf'**  parameter while calling the session API.

> **Note**
> Please intimate your Juspay POC if you plan on using sdk_udf. They will enable a config required to use this feature.




| Use case | Description and Type | sdk_udf : Possible Values |
|---|---|---|
| Show EMI | <b>Type:</b> String <br> <br><b>Use Case:</b> Need to show EMI on the Hypercheckout screen | <b>Value:</b> showEMI |
| No EMI | <b>Type:</b> String<br> <br><b>Use Case:</b> Need to hide EMI on the Hypercheckout screen. | <b>Value:</b> hideEMI |
| EMI without Cards | <b>Type:</b> String <br> <br><b>Use Case:</b> Need to show EMI on the Hypercheckout screen, but not CARD. | <b>Value:</b> ShowEMIWithoutCards |


## Sample Code Snippets:
### Payment Locking Sample Payloads:

#### UPI: Hide UPI Section Code Snippet:

```upi: hide upi section
curl --location --request POST 'https://api.juspay.in/session' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'x-merchantid: your_merchant_id' \
--header 'Content-Type: application/json' \
--data-raw '{
    "order_id": "testing-order-one",
    "amount": "1.0",
    "customer_id": "testing-customer-one",
    "customer_email": "test@mail.com",
    "customer_phone": "9876543210",
    "payment_page_client_id": "your_client_id",
    "action": "paymentPage",
    "return_url": "https://shop.merchant.com",
    "description": "Complete your payment",
    "first_name": "John",
    "last_name": "wick",
    "payment_filter": {
       "allowDefaultOptions": true,
       "options": [
           {
               "paymentMethodType": "WALLET",
               "enable": false
           }
       ]
   }
}'
```

#### UPI: Dispaly only UPI Code Snippet:

```upi: dispaly only upi
curl --location --request POST 'https://api.juspay.in/session' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'x-merchantid: your_merchant_id' \
--header 'Content-Type: application/json' \
--data-raw '{
    "order_id": "testing-order-one",
    "amount": "1.0",
    "customer_id": "testing-customer-one",
    "customer_email": "test@mail.com",
    "customer_phone": "9876543210",
    "payment_page_client_id": "your_client_id",
    "action": "paymentPage",
    "return_url": "https://shop.merchant.com",
    "description": "Complete your payment",
    "first_name": "John",
    "last_name": "wick",
    "payment_filter": {
       "allowDefaultOptions" : false,
       "options": [
         {
           "paymentMethodType": "UPI",
           "enable": true
         }
       ]
     }
}'
```

#### UPI: Hide Specific UPI Apps or UPI Collect handles Code Snippet:

```upi: hide specific upi apps or upi collect handles
curl --location --request POST 'https://api.juspay.in/session' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'x-merchantid: your_merchant_id' \
--header 'Content-Type: application/json' \
--data-raw '{
    "order_id": "testing-order-one",
    "amount": "1.0",
    "customer_id": "testing-customer-one",
    "customer_email": "test@mail.com",
    "customer_phone": "9876543210",
    "payment_page_client_id": "your_client_id",
    "action": "paymentPage",
    "return_url": "https://shop.merchant.com",
    "description": "Complete your payment",
    "first_name": "John",
    "last_name": "wick",
    "payment_filter": {
       "allowDefaultOptions": true,
       "options": [{
               "paymentMethodType": "UPI",
               "enable": true,
               "upiFilters": [{
                       "upiType": "COLLECT",
               "enable": false,     
                       "upiMethods": ["@ybl", "@okhdfcbank"]
                   },
                   {
                       "upiType": "INTENT",
                       "enable": false,
                       "upiMethods": ["PHONEPE", "GPAY", "PAYTM"]
                   }]
               }
           ]
       }
}'
```

#### Card: Hide Card Section  Code Snippet:

```card: hide card section 
curl --location --request POST 'https://api.juspay.in/session' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'x-merchantid: your_merchant_id' \
--header 'Content-Type: application/json' \
--data-raw '{
    "order_id": "testing-order-one",
    "amount": "1.0",
    "customer_id": "testing-customer-one",
    "customer_email": "test@mail.com",
    "customer_phone": "9876543210",
    "payment_page_client_id": "your_client_id",
    "action": "paymentPage",
    "return_url": "https://shop.merchant.com",
    "description": "Complete your payment",
    "first_name": "John",
    "last_name": "wick",
    "payment_filter": {
       "allowDefaultOptions" : true,
       "options": [
         {
           "paymentMethodType": "CARD",
           "enable" : false
         }
       ]
     }
}'
```

#### Card: Hide Credit Card Section Code Snippet:

```card: hide credit card section
curl --location --request POST 'https://api.juspay.in/session' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'x-merchantid: your_merchant_id' \
--header 'Content-Type: application/json' \
--data-raw '{
    "order_id": "testing-order-one",
    "amount": "1.0",
    "customer_id": "testing-customer-one",
    "customer_email": "test@mail.com",
    "customer_phone": "9876543210",
    "payment_page_client_id": "your_client_id",
    "action": "paymentPage",
    "return_url": "https://shop.merchant.com",
    "description": "Complete your payment",
    "first_name": "John",
    "last_name": "wick",
    "payment_filter": {
       "allowDefaultOptions" : true,
       "options": [
         {
           "paymentMethodType": "CARD",
           "enable" : true,
     "cardFilters": [
             {
               "enable": false,
               "cardTypes": ["CREDIT"]
             }
           ]
         }
       ]
     }
}'
```

#### Card: Hide particular card bins Code Snippet:

```card: hide particular card bins
curl --location --request POST 'https://api.juspay.in/session' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'x-merchantid: your_merchant_id' \
--header 'Content-Type: application/json' \
--data-raw '{
    "order_id": "testing-order-one",
    "amount": "1.0",
    "customer_id": "testing-customer-one",
    "customer_email": "test@mail.com",
    "customer_phone": "9876543210",
    "payment_page_client_id": "your_client_id",
    "action": "paymentPage",
    "return_url": "https://shop.merchant.com",
    "description": "Complete your payment",
    "first_name": "John",
    "last_name": "wick",
    "payment_filter": {
       "allowDefaultOptions" : true,
       "options": [
         {
           "paymentMethodType": "CARD",
           "enable": true,
           "cardFilters": [
             {
               "enable": false,
                 "cardBins":["459000::460000"]
             }
           ]
         }
       ]
     }
}'
```

#### Wallet: Hide Wallet Section Code Snippet:

```wallet: hide wallet section
curl --location --request POST 'https://api.juspay.in/session' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'x-merchantid: your_merchant_id' \
--header 'Content-Type: application/json' \
--data-raw '{
    "order_id": "testing-order-one",
    "amount": "1.0",
    "customer_id": "testing-customer-one",
    "customer_email": "test@mail.com",
    "customer_phone": "9876543210",
    "payment_page_client_id": "your_client_id",
    "action": "paymentPage",
    "return_url": "https://shop.merchant.com",
    "description": "Complete your payment",
    "first_name": "John",
    "last_name": "wick",
    "payment_filter": {
       "allowDefaultOptions": true,
       "options": [
           {
               "paymentMethodType": "WALLET",
               "enable": false
           }
       ]
   }
}'
```

#### Wallet: Hide Specific Wallets Code Snippet:

```wallet: hide specific wallets
curl --location --request POST 'https://api.juspay.in/session' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'x-merchantid: your_merchant_id' \
--header 'Content-Type: application/json' \
--data-raw '{
    "order_id": "testing-order-one",
    "amount": "1.0",
    "customer_id": "testing-customer-one",
    "customer_email": "test@mail.com",
    "customer_phone": "9876543210",
    "payment_page_client_id": "your_client_id",
    "action": "paymentPage",
    "return_url": "https://shop.merchant.com",
    "description": "Complete your payment",
    "first_name": "John",
    "last_name": "wick",
    "payment_filter": {
       "allowDefaultOptions": true,
       "options": [
           {
               "paymentMethodType": "WALLET",
               "paymentMethods": ["LAZYPAY,SIMPL"],
               "enable": false
           }
       ]
   }
}'
```

#### Netbanking: Hide Net Banking Section Code Snippet:

```netbanking: hide net banking section
curl --location --request POST 'https://api.juspay.in/session' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'x-merchantid: your_merchant_id' \
--header 'Content-Type: application/json' \
--data-raw '{
    "order_id": "testing-order-one",
    "amount": "1.0",
    "customer_id": "testing-customer-one",
    "customer_email": "test@mail.com",
    "customer_phone": "9876543210",
    "payment_page_client_id": "your_client_id",
    "action": "paymentPage",
    "return_url": "https://shop.merchant.com",
    "description": "Complete your payment",
    "first_name": "John",
    "last_name": "wick",
    "payment_filter": {
       "allowDefaultOptions" : true,
       "options": [
         {
           "paymentMethodType": "NB",
           "enable" : false
         }
       ]
     }
}'
```

#### COD: Hide COD section Code Snippet:

```cod: hide cod section
curl --location --request POST 'https://api.juspay.in/session' \
--header 'Authorization: Basic base_64_encoded_api_key==' \
--header 'x-merchantid: your_merchant_id' \
--header 'Content-Type: application/json' \
--data-raw '{
    "order_id": "testing-order-one",
    "amount": "1.0",
    "customer_id": "testing-customer-one",
    "customer_email": "test@mail.com",
    "customer_phone": "9876543210",
    "payment_page_client_id": "your_client_id",
    "action": "paymentPage",
    "return_url": "https://shop.merchant.com",
    "description": "Complete your payment",
    "first_name": "John",
    "last_name": "wick",
    "payment_filter": {
       "allowDefaultOptions": true,
       "options": [
           {
               "paymentMethodType": "CASH",
               "enable": false
           }
       ]
   }
}'
```

