Compliance-first architecture
Why compliance is structural in Lumeo, not a feature bolted onto payments.
Most payment products treat compliance as paperwork generated after the fact — you settle first, then export a report. Lumeo treats compliance as a structural property of the transaction itself: FIRA, GST applicability, and income tax liability are all derived directly from the same reconciled ledger entry that represents the payment, not recomputed later from a summary or batch export.
Where compliance sits relative to the payment
The compliance gate is not a separate service you call afterward — it's in the critical path of confirm. A payment that fails a compliance check never leaves COMPLIANCE_CHECK, so there is no window where money has moved but compliance hasn't caught up.
What "compliance-first" means in practice
You cannot settle without a ledger entry. Every payment confirmation writes a balanced double-entry before any webhook fires. There is no path where funds move but the ledger doesn't know about it.
You cannot have a reconciled cross-border payment without a FIRA.
FIRA generation is triggered automatically at confirmation, before the payout.settled webhook fires. If FIRA generation fails (e.g. a missing purpose code), the payment does not move to CONFIRMED — it waits in COMPLIANCE_CHECK until the issue is resolved.
Tax calculations always trace to a specific reconciled transaction. There is no "estimate" mode for GST or ITR-4 prefill. The figures a user sees in their compliance dashboard and exports are always derived from the actual reconciled set of transactions, not from projections or averages.
The regulatory context
Indian independent workers and exporters of services face a specific compliance stack on every cross-border payment:
| Obligation | What it requires |
|---|---|
| FEMA / RBI | A FIRA must be obtained for every foreign inward remittance above ₹10,000. Banks traditionally issue these on request; Lumeo generates them automatically. |
| Form 15CA/15CB | Outbound cross-border remittances need a Form 15CA declaration. Above ₹5,00,000, Part C applies and requires chartered-accountant certification (Form 15CB) before the remittance can go through. |
| GST (LUT) | Service exporters who have filed a Letter of Undertaking are eligible for zero-rated GST on export invoices. This needs to be computed per-transaction, not periodically. |
| Income tax (44ADA) | Freelancers with professional income under ₹50L can use presumptive taxation — 50% of gross receipts is taxable income. ITR-4 requires accurate gross receipt figures per financial year. |
Lumeo prefills Form 15CA data automatically — see GET /payments/:id/form15ca in the Payments API. It tells you whether Part A or Part C applies and whether CA certification is required, but does not (yet) submit the form on your behalf.
Lumeo's architecture means all three of these are satisfied as a side-effect of the payment settling — not as a separate manual step.
Consequences for your integration
When you build on Lumeo, you inherit these guarantees:
- Every payout you initiate will have a FIRA by the time it's confirmed.
- Every confirmed payout contributes to the user's GST and income tax position in real time.
- Every compliance export your users download is always up to date with the latest settled transactions — there is no "sync" button.
Read next
The compliance flow — the step-by-step sequence that enforces these guarantees on every payment.