---
page_title: Merchant exercises the Mandate (Recurring payments)
product: API Reference
page_source: https://juspay.io/in/docs/api-reference/docs/express-checkout/merchant-exercises-the-mandate-recurring-payments
openapi: https://juspay.io/in/docs/api/swagger?document=https%3A%2F%2Fjuspay.io%2Fin%2Fdocs%2Fapi-reference%2Fdocs%2Fexpress-checkout%2Fmerchant-exercises-the-mandate-recurring-payments
llms_txt: https://juspay.io/in/docs/llms.txt
product_llms_txt: https://juspay.io/in/docs/api-reference/llms.txt
---

## API Version: default


# Merchant exercises the Mandate (Recurring payments)



After the Mandate is successful, Merchant will receive a mandate_id from Juspay that should be stored against a customer at their end. From the subsequent charge transactions, Merchant is supposed to pass a combination of customer_id and mandate_id to do a charge without a 2nd factor. This API will create order and will charge it based on the mandate_id passed by the merchant.

In case of Credit Cards, the charge is real time, so status can be CHARGED or AUTHORISATION_FAILED. In the case of e-mandate (netbanking / aadhaar), this might be PENDING_VBV, for which Merchant should poll after the appropriate time.## Endpoints:
- Sandbox: https://sandbox.juspay.in/txns

- Production: https://api.juspay.in/txns

## Request Type: 
POST

## Authorization:

#### Basic Auth:
Consists of two parts.

* Username: API Key obtained from Juspay dashboard
* Password: Empty string

Example:- Basic MUQ2QUxxxxxxxxxxxxU5QTIxQzNFNTQwNkFDMEZCOg==
- Tags: Base64 Encoded Username:Password, Mandatory
## Headers:

#### Content-Type:
application/x-www-form-urlencoded
- Tags: string

#### x-routing-id:
We recommend passing the customer_id as the x-routing-id. If the customer is checking out as a guest, you can pass an alternative ID that helps track the payment session lifecycle. For example, this could be an Order ID or Cart ID.

> **Warning**
> This ID is associated with the customer. It plays a key role in ensuring consistency and maintaining connections across different systems. If you fail to pass the same x-routing-id for the same customer in all related API calls, it could lead to issues with API functionality. Therefore, it’s crucial that you use the same x-routing-id for all requests tied to the same customer.


- Value: customer_1122
- Tags: String, Required
## Sample Code Snippets:
### Sample Request:

#### Request Code Snippet:

```request
curl --request POST \
     --url 'https://api.juspay.in/txns/#Merchant-exercise-the-Mandate' \
     --header 'accept: application/json' \
     --header 'x-routing-id: customer_1122'\
     --header 'authorization: Basic OUU4QkxxxxxxxxxxxxJDQTQzMEM2RkFDMjcyQjM5Og==' \
     --header 'content-type: application/x-www-form-urlencoded'

```

### Sample Response:

#### Response:
```json
{
  "order_id": ":prongs-order-23",
  "txn_id": ":txn_id",
  "status": "CHARGED",
  "payment": {
    "authentication": {
      "method": "GET",
      "url": "https://api.juspay.in/pay/finish/guest/8646a7a029974fa99995fec00340a507"
    }
  }
}
```

## Body Parameters:
### Parameters:

#### order:
- Value:
  - **Order.order**:
    - Description: Unique Identifier for the order.
    - Tags: string, Required
  - **Order. amount**:
    - Description: This is the amount that a customer will be charge in this transaction.
    - Tags: string, Required
  - **Order.currency**:
    - Description: ISO string of the currency. Use INR for Indian Rupee. Among other accepted values are EUR, USD, GBP. Default value: INR
    - Tags: string
  - **Order.customer_id**:
    - Description: Customer Identifier against which a mandate was created.
    - Tags: string, Required
  - **Order.customer_email**:
    - Description: Email address of the customer. If the backend gateway requires it, then you must send this value.
    - Tags: string
  - **Order.customer_phone**:
    - Description: Mobile number or fixed line number of the customer. If the backend gateway requires it, then you must
    - Tags: string
  - **Order.description**:
    - Description: Short description for the order. We send this information to the backend gateways whenever there is a provision for this.
    - Tags: string
  - **Order.return_url**:
    - Description: A fully qualified URL such as [http://shop.merchant.com/](http://shop.merchant.com/) to which the customer will be redirected after payment completion. This URL shouldn’t contain any query parameters. This URL takes higher precedence over the common return URL configured in your account settings.
    - Tags: string
  - **Order.product_id**:
    - Description: An identifier for the product. Fits well for impulse purchase usecases
    - Tags: string
  - **Order.billing_address_first_name**:
    - Description: First name in the billing address
    - Tags: string
  - **Order.billing_address_last_name**:
    - Description: Last name in the billing address
    - Tags: string
  - **Order.billing_address_line1**:
    - Description: Line1 in the billing address
    - Tags: string
  - **Order.billing_address_line2**:
    - Description: Line2 in the billing address
    - Tags: string
  - **Order.billing_address_line3**:
    - Description: Line3 in the billing address
    - Tags: string
  - **Order.billing_address_city**:
    - Description: Billing address city
    - Tags: string
  - **Order.billing_address_state**:
    - Description: Billing address state
    - Tags: string
  - **Order.billing_address_country**:
    - Description: Billing address country
    - Tags: string
  - **Order.billing_address_postal_code**:
    - Description: Billing address postal code or zip code
    - Tags: string
  - **Order.billing_address_phone**:
    - Description: Mobile or phone number in the billing address
    - Tags: string
  - **Order.billing_address_country_code_iso**:
    - Description: ISO Country code. Default value: IND
    - Tags: string
  - **Order.shipping_address_first_name**:
    - Description: First name in the shipping address
    - Tags: string
  - **Order.shipping_address_last_name**:
    - Description: Last name in the shipping address
    - Tags: string
  - **Order.shipping_address_line1**:
    - Description: Line1 in the shipping address
    - Tags: string
  - **Order.shipping_address_line2**:
    - Description: Line2 in the shipping address
    - Tags: string
  - **Order.shipping_address_line3**:
    - Description: Line3 in the shipping address
    - Tags: string
  - **Order.shipping_address_city**:
    - Description: Shipping address city
    - Tags: string
  - **Order.shipping_address_state**:
    - Description: Shipping address state
    - Tags: string
  - **Order.shipping_address_country**:
    - Description: Shipping address country
    - Tags: string
  - **Order.shipping_address_postal_code**:
    - Description: Shipping address postal code or zip code
    - Tags: string
  - **Order.shipping_address_phone**:
    - Description: Mobile or phone number in the shipping address
    - Tags: string
  - **Order.shipping_address_country_code_iso**:
    - Description: ISO Country code. Default value: IND
    - Tags: string
  - **Order.udf1**:
    - Tags: string
  - **Order.udf2**:
    - Tags: string
  - **Order.udf3**:
    - Tags: string
  - **Order.udf4**:
    - Tags: string
  - **Order.udf5**:
    - Tags: string
  - **Order.udf6**:
    - Tags: string
  - **Order.udf7**:
    - Tags: string
  - **Order.udf8**:
    - Tags: string
  - **Order.udf9**:
    - Tags: string
  - **Order.udf10**:
    - Tags: string
  - **Order.metadata**:
    - Tags: string
- Tags: object

#### mandate_id:
- Description: Mandate id sent by Juspay after mandate creation
- Tags: string, Required
## API Responses:
### 200:

#### txn_uuid:
- Description: eul81DBJR2Yv6gjZ7ue
- Tags: string

#### txn_id:
- Description: Transaction Id for the payment
- Tags: string

#### status:
- Description: Status of the transaction. See appendix.
- Tags: string

#### payment:
- Value:
  - **Authentication.method**:
    - Description: HTTP Method for authentication. Can be one of GET or POST
    - Tags: String
  - **Authentication.url**:
    - Description: URL to which the user has to be taken to for completing the authentication
    - Tags: String
- Tags: object

#### order_id:
- Description: OrderID for which the payment is being started.
- Tags: string


---

## See Also

- [Resume Mandate API](https://juspay.io/in/docs/api-reference/docs/express-checkout/resume-mandate-api)
- [Merchant exercises the mandate from the Dashboard](https://juspay.io/in/docs/api-reference/docs/express-checkout/merchant-exercises-the-mandate-from-the-dashboard)
