A build-to-order Frappe app that lets your ERPNext store and sales flow accept USDT, USDC, BTC and other stablecoins through CoinGate or a self-hosted BTCPay Server, with on-chain confirmation tracking, FX rate lock at checkout, and refund-to-wallet handling. ECOSIRE scopes, builds, installs and supports it for your instance. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $299.00 USD; request a quote for a scoped proposal.

A build-to-order Frappe app that lets your ERPNext store and sales flow accept USDT, USDC, BTC and other stablecoins through CoinGate or a self-hosted BTCPay Server, with on-chain confirmation tracking, FX rate lock at checkout, and refund-to-wallet handling. ECOSIRE scopes, builds, installs and supports it for your instance.
ابھی کوئی ادائیگی نہیں۔ یہ ہماری ٹیم کو قیمت کی درخواست بھیجتا ہے — ہم قیمت اور اگلے اقدامات کے ساتھ ای میل کے ذریعے رابطہ کریں گے۔
Cross-border ERPNext merchants keep losing crypto-paying customers because ERPNext has no native way to take a stablecoin payment. Out of the box, ERPNext Payments supports card and bank gateways like Stripe, Razorpay and PayPal, but there is no Payment Gateway document for USDT, USDC or BTC, no way to watch a blockchain for confirmations, and no mechanism to lock the fiat value of a volatile asset at the moment of sale. Teams end up emailing a wallet address manually, reconciling transactions by hand in Payment Entry, and arguing with customers about which exchange rate applied. That is where ERPNext native runs out of road.
New `Crypto Payment` DocType linked to Sales Invoice, Sales Order and web checkout, holding coin, wallet address, expected amount, locked FX rate and expiry
CoinGate connector (hosted/custody-managed) with API key auth, invoice creation and status callbacks
Self-hosted BTCPay Server connector (non-custodial) using your own store, API key and Greenfield API
USDT, USDC, BTC and ETH acceptance, with per-coin and per-network (ERC-20, TRC-20) configuration during scoping
Webhook receiver as a whitelisted Frappe method with HMAC signature verification and replay protection
On-chain confirmation state machine: Pending → Seen on chain → Confirmed → Settled, with configurable minimum confirmations per coin
We build a proper Frappe app (its own module, installed with bench get-app and bench install-app) that plugs crypto acceptance directly into the ERPNext checkout and sales flow. The app registers a new payment method backed by either CoinGate (hosted, custody-managed) or a self-hosted BTCPay Server (non-custodial, your own node), selected per your risk appetite during scoping. When a customer chooses to pay in crypto on a Sales Invoice, Sales Order or web checkout, the app calls the provider API, generates a payment request for the exact stablecoin or coin, and stores the invoice, wallet address, expected amount and expiry in a dedicated Crypto Payment DocType linked back to the source document.
Technically, confirmation is event-driven. The provider's webhook hits a whitelisted Frappe method (@frappe.whitelist(allow_guest=True)) that verifies the HMAC signature, then updates the Crypto Payment state machine (Pending → Seen on chain → Confirmed → Settled). A hooks.py scheduler event polls for stuck or under-confirmed transactions as a safety net, and doc_events handlers auto-create the matching Payment Entry and reconcile it against the invoice once the required on-chain confirmations are reached. At checkout we call the provider's rate endpoint to lock the FX rate, persist the locked rate and coin amount on the payment record, and post the accounting entry in your ERPNext base currency so your GL and receivables stay clean regardless of coin volatility. Refunds are handled through a role-gated action that issues a refund to the customer's wallet and writes the corresponding credit note and Payment Entry. Client scripts surface a live QR code and confirmation status on the transaction form; permissions and role profiles keep wallet actions restricted to finance roles.
Because this is build-to-order, nothing ships until we agree on scope. It starts with a short scoping call to confirm your coins, provider (CoinGate vs BTCPay), ERPNext version (v15 or v16), and reconciliation rules. We then build against your requirements, deliver on a staging instance for UAT, and only cut over to production after you sign off. Typical delivery is 2 to 4 weeks from confirmed scope, and you receive the full source repository, so you are never locked to us.
Sells to customers in regions where stablecoins are the practical way to pay, and needs USDT/USDC to land as a clean, reconciled receipt against the right Sales Invoice in ERPNext without manual wallet juggling.
Owns the GL and receivables and refuses to let crypto volatility pollute the books. Needs the FX rate locked at checkout, entries posted in base currency, and refunds fully traceable through Payment Entries and credit notes.
Runs checkout on ERPNext's web store or a headless frontend and wants crypto to appear as a first-class payment option with a live QR code and automatic confirmation, not an off-platform manual step.
Prefers to run its own BTCPay Server and hold its own keys rather than trust a custodial gateway, and needs that node wired into ERPNext with on-chain confirmation tracking and automatic reconciliation.
Buy the license on ecosire.com and download the USDT / Crypto Checkout for ERPNext app ZIP from your account dashboard.
Extract the ZIP into your bench's apps folder, or run `bench get-app` with the path to the extracted app.
Run `bench --site SITE_NAME install-app APP_NAME` followed by `bench migrate` to install USDT / Crypto Checkout for ERPNext and apply its schema.
Open the ECOSIRE License settings on your site and activate your license key. Requires the free ecosire_connect and ecosire_license_client apps.
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Crypto/USDT acceptance | Built in via CoinGate or BTCPay with USDT/USDC/BTC/ETH | Possible but you design and build the whole integration | Often single-coin or single-provider, take it or leave it | |
| On-chain confirmation tracking | State machine + webhook + scheduler safety-net polling | You must build confirmation logic and edge-case handling | Varies; often a simple paid/unpaid flag | |
| FX rate lock at checkout | Rate locked and persisted; GL posts in base currency | You implement rate capture and base-currency posting | Frequently absent, leaving volatility on the books | |
| Reconciliation into ERPNext | Auto Payment Entry + invoice matching via doc_events | You wire the accounting hooks yourself | May stop at marking the invoice paid | |
| Refund to wallet | Role-gated refund with credit note + reversing entry | You build refund flow and accounting reversal | Rarely handled end to end | |
| Fit to your instance | Scoped to your coins, provider, version and rules | Fully bespoke but slow and costly to start | Generic; you adapt your process to the app | |
| Source code ownership | Full git repo handed over; no lock-in | You own it because you wrote it | Usually closed source, license-gated | |
| Support & version upgrades | Post-go-live window + v15/v16 support available | Your team maintains it entirely | Depends on vendor roadmap and responsiveness |
This is a build-to-order app, not an instant download. Typical delivery is 2 to 4 weeks from confirmed scope, depending on your chosen provider (CoinGate vs a self-hosted BTCPay Server), the coins and networks you need, and your reconciliation rules. We build on a staging instance, run UAT with you, and cut over to production only after sign-off.
No. ECOSIRE builds it to order for your specific ERPNext instance and requirements, installs it, and supports it. You receive the full source repository at handover, so you own the code and are never locked to us.
Yes. We can connect CoinGate for a hosted, custody-managed experience where the provider handles wallets and settlement, or wire in a self-hosted BTCPay Server so you stay fully non-custodial and hold your own keys. We help you choose during the scoping call based on your compliance and risk position.
At checkout the app calls the provider's rate endpoint to lock the FX rate and persists both the locked rate and the coin amount on the `Crypto Payment` record. When confirmations complete, the resulting `Payment Entry` posts in your ERPNext base currency, so your GL and receivables reflect the agreed fiat value regardless of how the coin moves afterward.
We build for Frappe/ERPNext v15 and v16. Confirm your exact version and site setup on the scoping call so we target the right branch and test on a matching staging instance before cutover.
Every build includes a post-go-live support window for bug fixes and adjustments. Because you receive the full git repository, your team can extend it, or we can provide ongoing maintenance, provider API upgrades and version migrations (for example v15 to v16) under a separate support arrangement.
Refunds run through a role-gated action available only to finance roles. It issues the refund to the customer's wallet through the provider API and writes the matching credit note and a reversing `Payment Entry` in ERPNext, so the refund is fully reconciled and auditable rather than an off-book transfer.
A build-to-order Frappe app that lets your ERPNext store and sales flow accept USDT, USDC, BTC and other stablecoins through CoinGate or a self-hosted BTCPay Server, with on-chain confirmation tracking, FX rate lock at checkout, and refund-to-wallet handling. ECOSIRE scopes, builds, installs and supports it for your instance.