Skip to main content
Razorpay Suite for ERPNext — A full Razorpay integration for ERPNext that goes well beyond the stock Frappe payment connector — 1/1Illustrative preview

A full Razorpay integration for ERPNext that goes well beyond the stock Frappe payment connector,

adding UPI-first collections, Payment Links, Smart Collect virtual accounts, recurring eMandate subscriptions, and automated reconciliation.

ECOSIRE builds, installs, and supports it for your instance on a build-to-order basis.

What is Razorpay Suite for ERPNext?

A full Razorpay integration for ERPNext that goes well beyond the stock Frappe payment connector, adding UPI-first collections, Payment Links, Smart Collect virtual accounts, recurring eMandate subscriptions, and automated reconciliation. ECOSIRE builds, installs, and supports it for your instance on a build-to-order basis. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

A dedicated Frappe app/module installed on your bench with its own DocTypes, `hooks.py` doc events, fixtures, and a Razorpay role profile
`Razorpay Settings` single DocType storing the key id and an encrypted key secret (`Password` field), test/live mode toggle, and per-company mapping
Whitelisted webhook receiver that verifies the `X-Razorpay-Signature` HMAC before processing and rejects any unsigned or tampered payload
Idempotent webhook handling keyed on the Razorpay event id, with every event persisted to a `Razorpay Webhook Log` DocType for audit and replay
UPI, cards, netbanking, and wallet acceptance surfaced against ERPNext Payment Request and Sales Invoice, with UPI treated as the primary rail
One-click Razorpay Payment Link generation from a Sales Invoice or Payment Request, dispatched over email and SMS with expiry and partial-payment controls
Smart Collect virtual accounts provisioned per customer so inbound UPI/NEFT/IMPS/RTGS credits auto-reconcile to the correct party without manual matching
Razorpay Subscriptions and UPI/card eMandate synced to ERPNext Subscription, auto-generating and paying invoices on each successful recurring charge
Dunning and retry handling for failed mandate charges, with status pushed back onto the ERPNext Subscription and Payment Entry lifecycle
Scheduler event (`hooks.py` `scheduler_events`) running a periodic settlements sweep that reconciles payouts, gateway fees, and net amounts into bank Payment Entries
Refund handling that maps Razorpay refunds to ERPNext credit/return flows and updates the linked Payment Entry and invoice outstanding
Razorpay Route split-transfer sync for marketplace/multi-vendor payouts, recording each linked-account transfer against the source payment
`hooks.py` document events that auto-submit Payment Entries against the matched Sales Invoice/Subscription and update outstanding in real time on capture
Client scripts adding desk action buttons, status indicators, and a reconciliation view; whitelisted server methods exposed through the Frappe REST API for headless triggering
Granular DocType permissions and a scoped role profile so only authorized finance users can view keys or trigger collections

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your ERPNext.

  3. 3

    Go live + support

    You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.

Technical Specifications

ERPNext Compatibility
—
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
MariaDB 10.6+

About this Product

Indian ERPNext businesses collecting through Razorpay quickly hit the ceiling of what the native payment gateway integration offers. ERPNext core can accept a card or UPI payment against a Payment Request and mark an invoice paid, but it has no first-class support for Razorpay Payment Links pushed over email and SMS, no Smart Collect virtual accounts, no subscription/eMandate lifecycle, and no automated reconciliation of settlements, refunds, and route splits back into your Payment Entries. Finance teams end up exporting the Razorpay dashboard to spreadsheets and matching payouts by hand, while UPI collections that make up the bulk of Indian receivables are only loosely tied to the actual Sales Invoice.

Razorpay Suite for ERPNext is a proper Frappe app (a namespaced module with its own DocTypes, hooks.py, and fixtures) that ECOSIRE builds and installs on your bench. It registers Razorpay as a first-class collection channel: new DocTypes such as Razorpay Settings (single, with the key id and encrypted key secret in a Password field), Razorpay Payment Link, Razorpay Virtual Account, Razorpay Subscription, and Razorpay Webhook Log model the full lifecycle. A hardened whitelisted webhook endpoint verifies the X-Razorpay-Signature HMAC before doing anything, is idempotent on the Razorpay event id, and fans events out through hooks.py document events so that a captured payment, a payment_link.paid, a virtual-account credit, or a subscription charge lands as a submitted Payment Entry against the right Sales Invoice or Subscription.

On the collection side, server scripts and whitelisted methods let you generate a Razorpay Payment Link straight from a Sales Invoice or Payment Request and dispatch it over email and SMS; Smart Collect provisions per-customer virtual accounts so an inbound UPI or NEFT/IMPS/RTGS transfer auto-reconciles by the customer's unique account, killing manual matching. Recurring revenue is handled through Razorpay Subscriptions and UPI/card eMandate, synced to ERPNext Subscription and auto-invoiced on each successful charge with dunning on failures. A scheduler event (registered in hooks.py scheduler_events) runs a periodic settlements-and-refunds sweep against the Razorpay API to reconcile payouts, fees, refunds, and Route split transfers, so your bank Payment Entries and the Razorpay ledger always agree. Client scripts add the action buttons and status indicators inside the ERPNext desk, and a dedicated role profile with granular DocType permissions keeps the payment configuration locked down.

Because this is build-to-order, nothing ships as a blind download. We start with a short scoping call to confirm your exact flows (which invoices trigger links, Smart Collect vs. Payment Links, subscription plans, Route split logic, and your Frappe/ERPNext v15 or v16 target). ECOSIRE then builds your version, validates it on a staging bench through UAT, and installs it on production with a rollback plan. You receive the full source in a git repository, technical and user documentation, a training session for your finance team, and a post-go-live support window. Typical delivery is one working week from confirmed scope.

What you get

  • Installable source code for your version of the app, delivered as a versioned Frappe app installable on your bench
  • Installation and configuration on your environment, including Razorpay Settings, webhook registration, and scheduler wiring
  • Technical documentation: DocType reference, `hooks.py` events, whitelisted methods, webhook contract, and reconciliation logic
  • User guide plus a live training session for your finance/accounts team on links, Smart Collect, subscriptions, and reconciliation
  • UAT on a staging bench with sign-off scenarios, plus a documented rollback plan for the production install
  • Post-go-live support window for defect fixes and configuration questions after cutover
  • Git repository handover with full commit history, branch/tag strategy, and README for future maintenance
  • Compatibility validation against your target Frappe/ERPNext v15 or v16 release

Who this is for

Indian D2C / e-commerce finance lead

Runs UPI-first collections at volume and needs Payment Links over SMS plus Smart Collect virtual accounts so every inbound UPI credit auto-reconciles to the right Sales Invoice instead of being matched by hand.

SaaS / subscription business owner on ERPNext

Bills recurring plans and needs Razorpay Subscriptions and UPI/card eMandate synced to ERPNext Subscription, with auto-invoicing on each charge and dunning on failed mandates.

ERPNext accounts controller

Owns the ledger and wants settlements, gateway fees, and refunds reconciled automatically into bank Payment Entries so the Razorpay dashboard and ERPNext always agree at month close.

Marketplace / aggregator operator

Splits collected payments across multiple sellers and needs Razorpay Route transfers recorded against the source payment, with per-linked-account payouts visible inside ERPNext.

How Razorpay Suite for ERPNext Compares

CriterionECOSIRECustom BuildCompetitorERPNext Native
UPI Payment Links via email/SMSBuilt in: one-click from Sales Invoice, dispatched over email + SMSPossible but you build and maintain the API and dispatch logicSometimes partial; often links only, no SMSNot available
Smart Collect virtual accountsPer-customer virtual accounts with auto-reconciliationRequires bespoke API integration and matching logicRarely offeredNot available
Subscriptions & eMandateRazorpay Subscriptions + UPI/card mandate synced to ERPNext SubscriptionHeavy to build correctly with dunning and retriesBasic recurring at best, limited mandate supportManual recurring invoices only
Settlement & refund reconciliationScheduler sweep reconciles payouts, fees, refunds into Payment EntriesMust design and maintain the sweep yourselfUsually manual export/importManual matching in spreadsheets
Route split payoutsRoute transfers recorded against the source paymentCustom work per linked accountTypically unsupportedNot available
Webhook security & idempotencyHMAC signature verified, idempotent on event id, loggedDepends entirely on your implementation qualityVaries; signature checks not guaranteedNo webhook layer for these events
Version support & maintenanceBuilt for Frappe/ERPNext v15/v16 with a support windowYour team owns all upgrades and fixesDepends on the vendor's release cadenceTied to core release cycle
Source code ownershipFull source handed over in a git repoYou own it but built it from scratchOften closed or license-lockedCore code, not app-specific

Frequently Asked Questions about Razorpay Suite

How is this different from the payment gateway integration already in ERPNext?

ERPNext core can accept a Razorpay payment against a Payment Request and mark an invoice paid, but that is where it stops. It has no Payment Links over email/SMS, no Smart Collect virtual accounts, no subscription/eMandate lifecycle, and no automated settlement, fee, refund, or Route-split reconciliation. This suite adds all of that as first-class DocTypes and workflows.

How long does delivery take?

This is a build-to-order product, not an instant download. Typical delivery is one working week from confirmed scope. The exact timeline depends on how many flows you need (links vs. Smart Collect vs. subscriptions vs. Route splits) and your target Frappe/ERPNext version, which we lock down in the scoping call.

Which Frappe and ERPNext versions are supported?

We build and test against Frappe/ERPNext v15 and v16. We confirm your exact release during scoping and validate the app on a staging bench matching your production environment before install.

What happens to support and updates after go-live?

You get a post-go-live support window for defect fixes and configuration questions. Because you receive the full source in a git repository, your team can maintain it, and ECOSIRE can quote follow-on work for Razorpay API changes, new features, or version upgrades whenever you need them.

Is it secure? Where are the API keys stored and how are webhooks handled?

The Razorpay key secret is stored in an encrypted `Password` field on the `Razorpay Settings` DocType, never in plain code. Every incoming webhook is verified against the `X-Razorpay-Signature` HMAC before processing, handling is idempotent on the Razorpay event id, and a scoped role profile restricts who can view keys or trigger collections.

Can it handle recurring billing with UPI AutoPay and card mandates?

Yes. Razorpay Subscriptions with UPI/card eMandate are synced to ERPNext Subscription, invoices are generated and paid automatically on each successful charge, and failed charges trigger dunning with the status reflected back on the Subscription and Payment Entry.

Do you provide the source code or is it locked?

You receive the complete, installable source for your version in a git repository with full history. It is your app to run and extend; nothing is obfuscated or license-locked.

Request a quote

Razorpay Suite

A full Razorpay integration for ERPNext that goes well beyond the stock Frappe payment connector, adding UPI-first collections, Payment Links, Smart Collect virtual accounts, recurring eMandate subscriptions, and automated reconciliation. ECOSIRE builds, installs, and supports it for your instance on a build-to-order basis.

  • A dedicated Frappe app/module installed on your bench with its own DocTypes, `hooks.py` doc events, fixtures, and a Razorpay role profile
  • `Razorpay Settings` single DocType storing the key id and an encrypted key secret (`Password` field), test/live mode toggle, and per-company mapping
  • Whitelisted webhook receiver that verifies the `X-Razorpay-Signature` HMAC before processing and rejects any unsigned or tampered payload
  • Idempotent webhook handling keyed on the Razorpay event id, with every event persisted to a `Razorpay Webhook Log` DocType for audit and replay

Request a Quotation

Tell us about your Razorpay Suite requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.