Three Razorpay steps deal with asking a customer to pay:
- Razorpay · Create a payment link — A link the customer pays by — UPI, card or netbanking. Send the link by email or message, or let Razorpay send it.
- Razorpay · Create an order — An order for Razorpay Checkout to take payment against. For your own website or app, which opens Razorpay Checkout with the order's id.
- Razorpay · Cancel a payment link — Stops a payment link from taking payment.
None of them moves money themselves; the customer pays later.
Who can do this
Workspace Admins and Editors, on every plan. Viewers see the step's settings but cannot change them.
Before you start
A Razorpay connection in this workspace — see Connect Razorpay. Use one with a test key while you build.
Steps
Create a payment link:
- Select + where the link should be made. In the step picker, open Apps, select Razorpay, then Create a payment link. Or search Razorpay.
- In Connection, choose your Razorpay connection.
- In Amount, the amount in rupees — In rupees; Bizomate sends paise. In another currency, its main unit. For example 1499.00. See Steps that move money for how amounts are read.
- In Currency, leave ₹ Indian rupee, or choose $ US dollar, € Euro, £ Pound sterling, AED or SGD.
- Optional: in Description, what it is for — Invoice NW-20417.
- Optional: Customer name, Customer email and Customer phone — for example Northwind Logistics, accounts@northwind.example and +919845012345.
- Optional: switch on Text the link — Razorpay sends the link to the phone. — or Email the link — Razorpay sends the link to the email. Both are off by default.
- Optional: in Expires, a date and time in UTC — 2026-10-31 18:00. Optional — UTC. Empty: it does not expire.
- Optional: in Reference, your own id — Your own id for it — an invoice number. Razorpay refuses the same one twice.
- Optional: under Notes, select Add a field and add a name and a value — Up to 15 names and values Razorpay keeps with it. For example order and
{{ trigger.orderId }}. - Select Run this step to make a link.
Create an order:
- In the step picker, under Razorpay, select Create an order.
- Choose the Connection, then fill in Amount and Currency as above.
- Optional: in Receipt, Your own reference for it, up to 40 characters.
- Optional: under Notes, add names and values.
- Select Run this step. Pass the order's
idto your website, where Razorpay Checkout takes the payment.
Cancel a payment link:
- In the step picker, under Razorpay, select Cancel a payment link.
- Choose the Connection.
- In Payment link, the link's id, starting
plink_— usually{{ steps.create_a_payment_link.id }}from an earlier step, or from the trigger. - Select Run this step.
Output
Create a payment link
| Field | What it is |
|---|---|
id |
Razorpay's id for the link — starts plink_. |
shortUrl |
The link to send the customer. |
status |
created until it is paid. |
amount, amountMain, amountText |
149900 (paise), 1499, ₹ 1,499.00. |
currency |
INR. |
referenceId |
Your Reference, if you gave one. |
Create an order
| Field | What it is |
|---|---|
id |
Razorpay's id for the order — starts order_. Razorpay Checkout needs it. |
status |
created, then attempted and paid as the customer pays. |
receipt |
Your Receipt. |
amount, amountMain, amountText |
The order's amount. |
currency |
INR. |
Cancel a payment link gives id and status — cancelled.
Good to know
- Runs once per item. Ten items make ten links.
- A paid link cannot be cancelled. To know when a link is paid, use the trigger Payment link paid — see Start a workflow from Razorpay payment events.
- Expires is read as UTC. A date Bizomate cannot read stops the step, rather than making a link that never expires. Empty, the link does not expire. Razorpay refuses an expiry that is too soon.
- Reference must be different for every link. A step that makes links for repeat runs should use a value from the trigger, such as
{{ trigger.invoiceNumber }}. - Test key, test link. A link made with a test key takes only Razorpay's test payments.
If something goes wrong
| What you see | Why | What to do |
|---|---|---|
| Amount is empty when the step ran — an earlier step may not have given the value it names. | Amount reads a value that came out empty. | Check the value it reads. |
| Amount “…” is not an amount — write it in rupees, like 1499.00. | Amount has no number in it. | Type a number, or a value that holds one. |
| Expires “…” is not a date. Write it as 2026-10-31 18:00. | Expires holds something Bizomate cannot read as a date. Rather than make a link that never expires, the step stops. | Write the date and time in UTC, or check the value it reads. |
| Razorpay refused: … | Razorpay would not make it, and says why in its own words — a reference used before, an expiry too soon, a phone number it cannot read. | Fix what it names and run the step again. |
| Razorpay refused: Authentication failed. Check the connection's details on Connections. | The key was regenerated in Razorpay. | Reconnect the connection with the new key. |
| Payment link is empty when the step ran — … | Cancel a payment link got no link id. | Check the value it reads. |