Every way India pays. Built in.
UPI, cards, netbanking, wallets and cash on delivery — live the moment your store is. No gateway paperwork, no plugin to install, and every fee that touches an order listed further down this page.
Start accepting paymentsCheckout is where Indian stores lose orders
A buyer who has decided to purchase can still be lost in the last fifteen seconds. The card form asks for a CVV they cannot find. The UPI app does not open. The page reloads on a weak signal and the cart is gone. The only option shown is one they do not use.
Roughly seven in ten Indian online orders are paid by UPI. Not because it is cheaper — because it takes one tap and no typing. A checkout that treats UPI as an afterthought behind a card form is quietly turning away most of its buyers.
And then there is cash on delivery, which every Indian seller has a complicated relationship with. Turn it off and you lose half your orders. Leave it wide open and you fund a courier's round trip for parcels that come back unopened. It has to be priced and gated, not switched on or off.
Everything on this page exists because of those two facts.
Switch on what your buyers use
Every method is a toggle in Settings → Payments. None of them need a separate merchant application, a plugin purchase, or a developer.
The default, treated as the default
GPay, PhonePe, Paytm and every other UPI app. On mobile the checkout fires a UPI intent that opens the buyer's app directly — no copying a VPA, no typing. On desktop it renders a QR. It sits first in the list, because for most Indian stores it is most of the money.
Visa, Mastercard, RuPay, Amex
Plus 50+ banks for netbanking, through Razorpay. 3-D Secure is handled for you, including the RBI-mandated additional factor step. Card details never touch your store or ours — they go straight to the gateway's hosted field.
Gated, priced, capped
Per store: on or off. Add a handling fee so COD carries its own cost. Set a minimum order value for COD. And every buyer verifies their phone with a one-time code before they can place any order, which removes fake and mistyped numbers outright.
135+ currencies
Selling outside India? Stripe and Dodo Payments handle international cards and local methods, with automatic currency display so a buyer in Dubai sees dirhams. Useful the day the diaspora finds you, which for Indian craft brands is usually sooner than expected.
Bank transfer, or your own QR
For wholesale buyers who pay by NEFT, or a regular who always transfers directly. The order is created as pending, you mark it paid when the money lands, and it joins the same order timeline as everything else instead of living in your head.
The total you see is the total
Coupons, loyalty points, membership discounts, shipping and the COD fee are all computed on the server by the same engine that charges the payment. The browser never does the arithmetic, so a discount cannot be edited, stacked or replayed into something you did not agree to. How it works →
When the money actually arrives
Two completely different clocks run depending on how the buyer paid. Knowing which one you are on is the difference between healthy cash flow and a surprise.
Online payments — T+1
Buyer pays. The gateway authorises and captures; the order flips to paid and every downstream automation fires. The money is with the gateway, not yet with you.
The gateway settles to the bank account you added under Payouts, net of its own fee. Weekends and bank holidays push this — T+1 means one working day, not one calendar day.
Every settlement appears in Payouts with the orders it covers. You are never left matching a lump sum in your bank statement against a list of orders by hand.
Cash on delivery — per remittance
No money moves. The order is created with a COD balance owing and, if you have it on, an RTO risk score attached telling you how likely this one is to come back.
The courier collects cash at the door. This is the window where a refused parcel costs you both legs of shipping — and where the gating on the previous section earns its keep.
The courier remits collected cash on its own cycle, typically weekly. It shows in the same Payouts tab, marked collected against the specific orders. COD money is always slower than online money — plan working capital around that, not around your order count.
What a refused parcel really costs
An illustration on a ₹900 order at 30% product margin, to show why RTO rate matters more than order count. Substitute your own numbers — the shape does not change.
| Line | Delivered COD order | Refused COD order |
|---|---|---|
| Order value | ₹900 collected | ₹0 collected |
| Product cost | −₹630 | −₹630 tied up, returned |
| Forward shipping | −₹70 | −₹70 |
| Return shipping | — | −₹70 |
| Handling & repack | — | −₹20, and sometimes unsellable |
| Result | +₹200 | −₹160 |
The break-even
At these numbers, roughly every five refusals cancel four deliveries. An RTO rate above about 20% means COD is running at a loss no matter how many orders you take.
What moves it
Phone-verified buyers, a handling fee that nudges buyers to prepaid, a COD minimum, pincode serviceability checks, and WhatsApp shipping updates so the buyer answers the delivery call.
Where to watch it
Analytics shows RTO rate and prepaid share side by side. If prepaid share is rising and RTO is falling, the gating is working — even when total order count dips. A seller who did exactly this →
Money going the other way
A refund is issued from the order itself — full or partial, with a reason you select. It goes back by the route it came: UPI to the same VPA, card to the same card. Typically 3–5 working days to appear, which is the bank's clock, not ours.
The buyer is told automatically the moment you issue it, with the amount and the timeline, so you are not answering "has my refund gone?" for a week. That single message removes most refund follow-ups.
COD refunds are different. There is no original payment instrument, so you settle by bank transfer or UPI to the buyer and record it against the order. The refund is still logged on the timeline — the money just moves outside the gateway.
Chargebacks on card payments are handled through the gateway's dispute process; the order timeline gives you the evidence trail — payment, dispatch, courier scans, delivery confirmation and every message sent — in one place instead of five.
Transparent by design
Two fees touch an online order. Both are listed here in full, and the second one is the one most platforms bury.
Gateway fee, per online transaction
Standard Razorpay pricing, passed through with nothing added on top. It goes to the gateway. Per NPCI rules, UPI transactions under ₹2,000 carry no MDR at all — for a lot of Indian stores that is most of their orders, charged nothing.
Dukaan service fee, capped at ₹200
A service fee applies to sales made through the platform, and it falls as you move up a plan — 4.99% on Free, 3.99% on Starter, 1.99% on Growth, 0.99% on Infinity. It is capped at ₹200 per order however large the order is, and it does not apply to manual orders you create yourself. Full comparison →
| Order value | Service fee on Free (4.99%) | On Growth (1.99%) | On Infinity (0.99%) |
|---|---|---|---|
| ₹500 | ₹25 | ₹10 | ₹5 |
| ₹1,600 | ₹80 | ₹32 | ₹16 |
| ₹4,000 | ₹200 (capped) | ₹80 | ₹40 |
| ₹25,000 | ₹200 (capped) | ₹200 (capped) | ₹200 (capped) |
Why the cap matters more than the percentage. Because the fee stops at ₹200, it becomes a smaller and smaller share of the order as your average order value rises — a ₹25,000 order pays 0.8% on the free plan, not 4.99%. And because the rate drops with each plan, the plan fee frequently pays for itself: if you are doing meaningful volume on Free, moving to Growth usually costs less in subscription than it saves in service fee. Run your own numbers against the table above before upgrading; that is what it is there for. The fee applies to INR stores — no rate is defined for non-INR markets, so international stores are not charged it.
Costs that are not ours, but are still yours. Courier charges on delivery and returns are billed by the courier. WhatsApp conversations are billed by Meta at cost, with no Dukaan markup — the breakdown is here. International payments carry Stripe or Dodo's own rates. We would rather list these than let you find them later.
What we deliberately never hold
They are entered into the gateway's own hosted field and never reach your store or Dukaan's servers. We cannot leak what we never received, and neither can you.
Your gateway credentials are stored encrypted and are never returned by any API that reads store configuration — the storefront only ever sees the public key it needs to open a payment.
The amount charged is derived server-side from the cart and your rules. Even if someone rewrites the page, the charge is computed from what is in your catalogue, not what is in their DOM.
Every storefront gets SSL automatically, including custom domains, issued as soon as DNS resolves. There is no configuration step and no way to accidentally run checkout unencrypted.
Start taking money today.
No gateway application to fill in, no commission on your sales, no card needed to begin.
Start free