Skip to main content
  1. Create an order to charge the customer
  2. Create a recurring payment

3.1. Create an Order to Charge the Customer

You have to create a new order every time you want to charge your customers. This order is different from the one created during the authorisation transaction. The following endpoint creates an order. /orders
Curl
Success Response

Request Parameters

amount mandatory : integer Amount in currency subunits. currency mandatory : string The 3-letter ISO currency code for the payment. receipt optional : string A user-entered unique identifier for the order. For example, Receipt No. 1. You should map this parameter to the order_id sent by Razorpay. notes optional : object Key-value pair you can use to store additional information about the entity. Maximum of 15 key-value pairs, 256 characters each. For example, "note_key": "Beam me up Scotty”. payment_capture mandatory : boolean Determines whether the payment status should be changed to captured automatically or not. Possible values:
  • true: Payments are captured automatically.
  • false: Payments are not captured automatically. You can manually capture payments using the Manually Capture Payments API.

Response Parameters

id : string A unique identifier of the order created. For example order_1Aa00000000001. entity : string The entity that has been created. Here it is order. amount : integer Amount in currency subunits. amount_paid : integer The amount that has been paid. amount_due : integer The amount that is yet to be paid. currency : string The 3-letter ISO currency code for the payment. receipt : string A user-entered unique identifier of the order. For example, rcptid #1. notification : object Details of the pre-debit notification. token_id : string The token_id generated when the customer successfully completes the authorisation payment. Different payment instruments for the same customer have different token_id. payment_after : integer UNIX timestamp post which the debit is supposed to happen. id : string the unique identifier of the notification. For example, notification_00000000000001. status : string The status of the order. notes : object Key-value pair you can use to store additional information about the entity. Maximum of 15 key-value pairs, 256 characters each. For example, "note_key": "Beam me up Scotty”. created_at : integer The Unix timestamp at which the order was created.

3.2. Create a Recurring Payment

Once you have generated an order_id, use it with the token_id to create a payment and charge the customer. The following endpoint creates a payment to charge the customer. /payments/create/recurring
Curl
Success Response

Request Parameters

email mandatory : string The customer’s email address. For example, gaurav.kumar@example.com. contact mandatory : integer The customer’s phone number. For example, 9876543210. currency mandatory : string 3-letter ISO currency code for the payment. Currently, only INR is allowed. amount mandatory : integer The amount you want to charge your customer. This should be the same as the order amount. order_idmandatory : string The unique identifier of the order created. For example, order_1Aa00000000002. customer_id mandatory : string The unique identifier of the customer you want to charge. For example, cust_1Aa00000000002. token mandatory : string The token_id generated when the customer successfully completes the authorisation payment. Different payment instruments for the same customer have different token_id. recurring mandatory : boolean Determines whether recurring payment is enabled or not.
  • true: Recurring payment is enabled.
  • false: Recurring payment is not enabled.
notesoptional : object Key-value pair you can use to store additional information about the entity. Maximum of 15 key-value pairs, 256 characters each. For example, "note_key": "Beam me up Scotty”.

Response Parameter

razorpay_payment_id : string The unique identifier of the payment that is created. For example, pay_1Aa00000000001.