Skip to content

Direct Payment

The Razorpay gateway processes one-time invoice payments via Razorpay's hosted checkout in INR, with server-side validation prior to marking invoices paid.

What your customer sees

Choosing Razorpay at checkout opens Razorpay's payment window under the heading "Complete Your Payment". Available methods:

MethodCovers
UPIGoogle Pay, PhonePe, Paytm and any UPI app
CardsCredit and debit cards
Net bankingDirect bank transfer
WalletsPopular Indian wallets

The Razorpay checkout window opening for a one-time paymentAdmin → Payment Gateways → Razorpay

Payment credentials remain securely on Razorpay's infrastructure; sensitive card details never touch your server.

What happens after they pay

The customer sees one of three messages:

MessageMeaning
"Payment successful. Thank you!"The payment went through; the invoice is settled.
"Payment could not be completed. Please try again."The attempt failed; the customer can retry.
"Payment was cancelled."The customer closed checkout without paying.

Payment confirmation is displayed only after server-to-server verification with Razorpay APIs.

How the payment is trusted

  1. Signature generation: Razorpay returns transaction parameters with an HMAC signature.
  2. Local verification: The plugin recomputes the signature using your secret and rejects mismatches.
  3. Server validation: Payment status is verified directly against Razorpay APIs before settling invoices.

This verification pipeline blocks URL replay attacks and client-side tampering. See Security.

Currency

The Razorpay gateway is INR-only. No plan mapping is required; the amount comes straight from the AcelleMail invoice.

Test before you go live

While your API keys start with rzp_test_, every payment runs in test mode. Switch to rzp_live_ keys when ready — see Going live.

Documentation for the Relyweb app catalogue.