Docs
Integrations
Payments (Razorpay & Cashfree)

Payments (Razorpay & Cashfree)

thola uses two payment gateways for billing customers and (optionally) for taking customer payments through your business:

  • Cashfree — default for new workspaces
  • Razorpay — supported, switchable

You can use one or the other. Most workspaces never need to think about this; the default works.

Two different things to pay for

There are two distinct payment flows to keep straight:

1. You paying thola

Your monthly subscription, top-ups, and any add-on charges go through one of the two gateways. Configured under Profile → Plan → Payment methods.

2. Your customers paying you

If you raise invoices through thola and want to accept payment links inside those invoices, thola can act as your gateway provider too. Configured under Settings → Workspace → Customer payments.

These are independent. You can pay thola via card while taking customer payments via UPI through Cashfree.

Setting up customer payments

If you want to take customer payments via invoice links:

  1. Settings → Workspace → Customer payments
  2. Choose Cashfree or Razorpay
  3. Connect your existing account, or create a new one through the in-app flow
  4. Set a default payout account (your bank)
  5. Test the connection — thola issues a ₹1 payment to itself to verify

When customers receive an invoice from thola, they get a link. Clicking it opens a hosted checkout page (in your business's branding). The customer pays; the money goes to your account; thola updates the invoice status.

Webhooks

Both gateways send webhook events back to thola when a payment happens. thola validates each webhook by signature before acting:

  • payment.captured — invoice marked paid, customer's record updated, Sales agent notified
  • payment.failed — invoice unchanged, customer record gets a "payment attempt failed" note
  • refund.processed — invoice marked as refunded, Finance reconciles

You don't configure webhooks yourself — the in-app gateway connect flow registers them with the correct signing secrets.

Refunds

To refund a customer:

  1. Open the invoice
  2. Tap Refund
  3. Choose full or partial
  4. Confirm

thola issues the refund through the same gateway the original payment went through. Refunds settle in 5–7 business days, sometimes faster.

Refunds are logged in the audit log with the user who issued them and the amount.

Switching gateways

To switch from Cashfree to Razorpay (or vice versa):

  1. Settings → Workspace → Customer payments
  2. Tap Change gateway
  3. Connect the new gateway
  4. Choose whether to migrate future invoices only, or existing pending invoices too

Existing paid invoices are not migrated — they stay tagged with the original gateway for audit consistency.

Multi-currency

Both gateways support INR primarily; both also support international transactions:

  • Cashfree — INR, USD, EUR (limited)
  • Razorpay — INR, USD, GBP, EUR

For multi-currency, your gateway account needs to be a multi-currency account. We support routing per-currency: USD invoices through one gateway, INR through another.

GST on payments

Customer payments are recorded with the original invoice's GST treatment. The gateway fee charged to you (typically 1–3% per transaction) is recorded as a separate expense and categorised automatically.

Common questions

Can I use a gateway thola doesn't support directly? You can record payments manually — mark an invoice paid with the date, amount, and reference. The link / reconciliation is your responsibility, but thola accepts it.

Will thola show me my gateway dashboard inside thola? No — Cashfree and Razorpay have their own dashboards which are richer than anything we'd embed. We provide deep-links into them from invoice details.

What about UPI? Both gateways support UPI as a payment method. There's no separate "UPI" integration to enable — it's available on both, automatically.


→ Next: Troubleshooting