Skip to content
Code Craft — web development and digital marketing
Django Store Add-onv1.0.0

Razorpay Payments Add-on for Code Craft Store (Django)

Take UPI, card, netbanking and wallet payments in the Django store through Razorpay, with signature checks

No reviews yetUpdated October 2026
Razorpay add-on settings card in the Django store admin
Screenshots · 1 / 3

Everything included

  • Razorpay Orders API, amount fixed on the server
  • Standard Checkout: UPI, cards, netbanking, wallets
  • HMAC signature check before marking paid
  • Signed webhook with amount and currency check
  • Webhook URL shown in the admin
  • Settings and licence key in Admin → Add-ons
How it works

From order to a live website

  1. 1

    Buy the add-on

    One-time price. Your download link and licence key arrive by email and in My Account.

  2. 2

    Drop it in

    Upload the folder to addons/, restart the app and enable it in the admin.

  3. 3

    Take payments

    Pick Razorpay at checkout, pay with UPI, card or netbanking in the Razorpay window and come back to a paid order. If the shopper closes the tab after paying, the signed webhook still marks the order paid.

What it does

Adds Razorpay as a payment method to Code Craft Store: Django Ecommerce. A Razorpay order is created on the server for the exact order total, the shopper pays in Razorpay Standard Checkout, and the HMAC signature of order_id|payment_id is verified with your key secret before the order is marked paid. A signed webhook (payment.captured or order.paid, with amount and currency checked) covers shoppers who close the tab. You need your own Razorpay account. The add-on follows Razorpay's Orders API and checkout documentation and was tested against mocked Razorpay responses only, not with real payments.

  • Razorpay Orders API, amount fixed on the server
  • Standard Checkout: UPI, cards, netbanking, wallets
  • HMAC signature check before marking paid
  • Signed webhook with amount and currency check

Requires Code Craft Store for Django

This is an add-on for Code Craft Store: Django Ecommerce, sold separately. Upload its folder to the store's addons/ folder, restart the app and configure it in Admin → Add-ons; no code changes needed. Each add-on has its own licence key.

  • Works with Code Craft Store for Django 1.0 or later
  • Installed in minutes on cPanel Python App or a VPS
  • Its own settings card in the admin

Who needs it and what you need first

It is for shops running Code Craft Store: Django Ecommerce that sell mainly in India and want UPI, cards, netbanking and wallets through Razorpay. You need the store (1.0 or later) on Python 3.10 or later, your own Razorpay account with API keys, and HTTPS for the webhook. The shopper pays in Razorpay's own Checkout window, so no card or UPI details pass through your server, and there are no extra Python packages to install.

  • Your own Razorpay account
  • Store 1.0+, Python 3.10+
  • HTTPS domain for the webhook

Setting it up in Razorpay and in your admin

Upload the razorpay folder to addons/ and restart the app. In the Razorpay Dashboard create API keys (rzp_test_ while you test) and add a webhook with the address shown on the add-on's card in Admin → Add-ons, https://your-domain/addons/razorpay/webhook/, for the events payment.captured and order.paid, with a secret you choose. In the add-on's settings enter the Key ID, Key secret, webhook secret and licence key, pick the checkout colour (default #2f5d50), tick Enable and save. Then tick UPI, cards & netbanking (Razorpay) in Admin → Payment methods.

  • Webhook address: /addons/razorpay/webhook/
  • Events: payment.captured and order.paid
  • Checkout colour picker

What happens during a payment

When the shopper places the order, the add-on creates a Razorpay order on the server for the exact total in the order's currency (paise for INR), with your order number as the receipt, and shows a checkout page that opens Razorpay Checkout. Razorpay's response is posted back to the store with the page's CSRF token. The order is marked paid only when the Razorpay order id is the one saved on your order and the signature equals HMAC-SHA256 of the order id and payment id with your key secret; otherwise the shopper is told the payment could not be verified. The webhook needs a valid X-Razorpay-Signature and a matching amount and currency.

  • Razorpay order created on the server
  • Signature verified before marking paid
  • Webhook confirms orders if the window is closed

Honest limits

Its automated tests answer every Razorpay call with a simulated response: the order and checkout page, a signature-verified callback, a bad signature refused and the webhook. It has never handled real money, so try a test-mode payment first. Refunds, settlements and disputes are handled in your Razorpay Dashboard. Razorpay decides which currencies and methods your account accepts.

  • Simulated responses only
  • Refunds are made in Razorpay
  • Razorpay fees apply

After the payment: what you see in the admin

The order moves from pending to paid with a note naming Razorpay and the payment reference, which is saved on the order, and the store emails the customer and you as it does for every status change. A webhook that reports a different amount or currency is ignored, so the order stays pending for you to check in your Razorpay account. From there you handle the order as usual: processing, shipped with a tracking number and link, then delivered. An order that is already paid is never marked paid again.

  • Payment reference saved on the order
  • Status emails to the customer and you
  • Mismatches leave the order pending

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.