Razorpay Payments Add-on for HTML + PHP Shops
Take UPI, card, netbanking and wallet payments in the Code Craft PHP shops through Razorpay Checkout
Everything included
- Razorpay Orders API + Checkout
- Payment signature verified before an order is marked paid
- Signed webhooks (payment.captured, order.paid)
- Amount and currency checked against the order
- A payment is never recorded twice
- Settings and licence key in Admin → Add-ons
From order to a live website
- 1
Buy the add-on
One-time price. Your download link and licence key arrive by email and in My Account.
- 2
Drop it in
Upload the folder into addons/ on your hosting.
- 3
Switch it on
Turn it on in Admin → Add-ons, add the licence key and your settings.
What it does
Adds Razorpay as a payment method to the Code Craft HTML + PHP shop templates. When a customer places an order, the add-on creates a Razorpay order for the exact server-calculated total and opens Razorpay Checkout. The order is marked paid only after the payment signature checks out, and Razorpay's webhook is accepted only with a valid signature, so orders are confirmed even if the customer closes the window. The shop engine compares the paid amount and currency with the order. You need your own Razorpay account. The add-on follows Razorpay's Orders API documentation and was tested against mocked Razorpay responses, not with real payments.
- Razorpay Orders API + Checkout
- Payment signature verified before an order is marked paid
- Signed webhooks (payment.captured, order.paid)
- Amount and currency checked against the order
Works with
This add-on is for the 12 Code Craft HTML + PHP shop templates (Kora, Annapurna, Bunkar, Giftsy, Harit, Mithas, Nazar, Petal, PhoneZone, Pukka, Pustak, WoodCraft). It is sold separately and has its own licence key. Upload its folder into the website's addons/ folder and switch it on in Admin → Add-ons; no code changes.
- Site core 1.1 or later
- Drop-in folder, no code changes
- Its own settings screen and licence key
Who it is for
It is for owners of one of the 12 Code Craft HTML + PHP shop templates (Kora, Annapurna, Bunkar, Giftsy, Harit, Mithas, Nazar, Petal, PhoneZone, Pukka, Pustak and WoodCraft) who sell mainly in India and want UPI, cards, netbanking and wallets at checkout. You need your own Razorpay account with API keys and, for the webhook, your site on HTTPS. Payment details are typed in Razorpay's window, never on your site. Nothing is installed with Composer; the add-on uses the website's built-in HTTP functions (cURL or PHP streams).
- One of the 12 shop templates, site core 1.1+
- Your own Razorpay account
- HTTPS for the webhook
Setting it up
Upload the razorpay folder into addons/, switch on Razorpay payments in Admin → Add-ons and open its Settings. Paste the add-on licence key, your Key ID (rzp_test_ or rzp_live_, checked for the right format), Key secret and webhook secret, and change the name shown at checkout if you like (default: Pay online (cards, UPI, netbanking)). The settings screen shows your webhook address, …/cc/endpoint.php?addon=razorpay&action=webhook; add it in Razorpay Dashboard → Webhooks with the events payment.captured and order.paid and the same secret. Finally keep the method ticked in Admin → Shop → Payments and set its position.
- Key ID format checked when you save
- Key secret never shown again
- Webhook URL printed on the settings screen
What the customer sees
After placing the order the customer lands on a short payment page with the order number, the total and a Pay with Razorpay button; Razorpay Checkout opens straight away with their name, email and phone filled in and your brand colour. When they pay, Razorpay posts the result back and they return to their order page, which shows the order as paid. If they cancel or the signature does not check out, the order stays pending with a note, and they can press Pay now on their order page to try again. If they close the window after paying, the signed webhook still marks the order paid.
- Pay page with order number and total
- Name, email and phone pre-filled
- Retry from the order page
Honest limits
It was tested only on local copies of the Kora and Pustak templates with real PHP 8.3 and every Razorpay call answered by a mock server, together with the other gateway add-ons (47 checks per shop): the Orders API call, tampered and valid signatures, a duplicate webhook, a wrong amount and the licence gate. It has not processed real money. Refunds, payouts and disputes are handled in your Razorpay Dashboard. Razorpay's checkout.js is loaded from checkout.razorpay.com and cannot be pinned with an integrity hash.
- Mocked responses only
- Refunds are made in Razorpay
- Razorpay fees apply
More ready-made websites
Built by the same team, with the same setup service and support.
Browse every ready-made website, or compare our custom website packages if you need a site designed from scratch. Want more guests to find you on Google Maps? See our local SEO service, or talk to our web design team.





