Why should I configure webhooks for Razorpay?
Razorpay supports receiving payments through multiple payment modes. If you have set up Razorpay in Zoho Invoice, your customers can make payments for invoices through the Client Portal. When the customer clicks the Proceed to Pay button, a Razorpay pop-up will open from which they can select a payment mode and make the payment. Once the customer authenticates the payment through OTP or other methods, the amount will be deducted from the customer’s account. Next, Razorpay will notify Zoho Invoice for the payment to be recorded. However, the notification to record the payment in Zoho Invoice might fail as explained in the cases below. So, configuring a webhook for Razorpay ensures that Zoho Invoice is notified about the payment statuses and payments do not fail to be recorded.
Case 1: Mobile browser and UPI/Wallet payments
Let’s say, your customer opens the payment URL in a mobile browser and chooses to pay via Wallet or UPI payment mode. They will be redirected to one of the mobile apps to make the payment. Once they make the payment, the payment status will be Authorised and if they return to the payment initiation screen, the payment will be captured and recorded in Zoho Invoice. However, if the customer does not return to the payment initiation screen, their payment will be in Authorised status and the payment may never be recorded in Zoho Invoice. Moreover, if the payment stays in the Authorised status, Razorpay will initiate an auto-refund of the payment based on the Default Speed of Refunds you’ve configured.
In this case, configuring the webhook ensures that the payment status is passed on to Zoho Invoice, even if your customer does not return to the payment initiation screen.
Case 2: Late authorisation
One of your customers makes payment via Net Banking. However, due to a delay in payment authorisation response from the bank to Razorpay, the transaction times out and the payment status is updated as failed. Later, the payment could become a success and the bank might send a success message to Razorpay.
Configuring the webhook ensures that Zoho Invoice receives this success message and a payment is recorded in Zoho Invoice.