- Ana Sayfa
- Apps
- SaaS Tools
- Thailand e-Tax Invoice & Receipt for ERPNext
Örnek önizlemeA build-to-order Frappe app that turns a submitted ERPNext Sales Invoice into a signed,
ETDA-compliant Thai e-Tax Invoice or Receipt — machine format for the Revenue Department, human-readable PDF for the customer, and a full archive for audit.
ECOSIRE builds, installs and supports it after you request a quotation.
Thailand e-Tax Invoice & Receipt for ERPNext nedir?
A build-to-order Frappe app that turns a submitted ERPNext Sales Invoice into a signed, ETDA-compliant Thai e-Tax Invoice or Receipt — machine format for the Revenue Department, human-readable PDF for the customer, and a full archive for audit. ECOSIRE builds, installs and supports it after you request a quotation. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Temel Özellikler
Siparişe özel, sizin için baştan sona
Kendiniz kurmanıza gerek yok — ECOSIRE tarafından geliştirilen, kurulan ve desteklenen çalışır bir uygulama.
- 1
Sipariş verirsiniz
Tek seferlik geliştirme fiyatıyla başlayın. Kapsamı başlangıçta sizinle birlikte belirleriz.
- 2
Geliştirir ve kurarız
ECOSIRE, ERPNext ortamınızda geliştirir, yapılandırır ve kurar.
- 3
Yayına alma + destek
Yaklaşık bir iş haftasında yayına alırsınız; canlıya geçiş sonrası iki hafta destek dahildir. Teslim ettiğimiz koddaki hatalar ücretsiz düzeltilir.
Teknik Özellikler
- ERPNext Uyumluluğu
- —
- Lisans
- Lisansın doğrulanması gerekiyor
- Python Gereksinimi
- Python 3.10+
- Veritabanı
- MariaDB 10.6+
Bu Ürün Hakkında
Thai VAT registrants who opt into e-Tax Invoice & Receipt carry an obligation that native ERPNext was never designed for. Core ERPNext gives you a Sales Invoice, a print format and a Sales Taxes and Charges Template — it does not produce a digitally signed electronic document in the structured format the Revenue Department expects, it has no concept of a signing certificate or timestamp, no submission and acknowledgement lifecycle, no rejection-and-correction path, and no tamper-evident archive that survives a records inspection. Finance teams fill that gap with a spreadsheet, a third-party portal and a lot of re-keying: the invoice is posted once in ERPNext, then typed again somewhere else, and the two versions drift. The month you are audited is the month that drift becomes expensive.
We build a proper Frappe app — its own repository, its own module, migrated with bench migrate like any other app — rather than a pile of loose customizations that a version upgrade wipes out. The app introduces DocTypes for the compliance layer: a Thailand E-Tax Settings single for the company profile, tax ID, branch code and issuing options; a Thailand E-Tax Certificate holding the signing credential reference and validity window; and a Thailand E-Tax Document that is the per-transaction record of what was generated, signed, delivered and acknowledged, with its own workflow states and a link back to the source Sales Invoice or Payment Entry. Nothing about the accounting posting changes — your GL, VAT reports and receivables stay pure ERPNext.
Generation hangs off hooks.py doc events. on_submit of Sales Invoice enqueues document generation on the Frappe background worker so the user is never blocked by a signing or network round trip; the tax mapping is derived from your existing master data (Customer tax ID and branch, Item tax templates, Sales Taxes and Charges rows) rather than re-entered, and a validate hook fails the submit early with a clear message when a mandatory Thai field is missing — a missing customer tax ID should stop the invoice, not the filing. One posting yields both outputs: the machine-readable structured document for the authority, and the human-readable PDF built from a dedicated Frappe Print Format so the customer sees the same numbers, with both artifacts attached to the record as File documents.
Digital signing is applied to the generated document before delivery, with the certificate handled server-side and never exposed to the browser. A scheduler event polls outstanding submissions and reconciles status; a rejection creates a linked correction document and reopens the workflow with the reason recorded, so nobody has to guess why a document bounced. Delivery to the customer runs through Frappe's Email Queue with the artifacts attached. Access is controlled by dedicated roles and a role profile — an AP clerk can generate and view, only a Tax Officer can sign or void — and whitelisted methods plus the standard Frappe REST API let an external portal or an in-house tool trigger generation and read status without database access. Client scripts add the buttons and status indicators to the Sales Invoice form so the whole thing lives where your finance team already works. Built and regression-tested for Frappe/ERPNext v15 and v16.
This is build-to-order, not a marketplace download. You request a quotation, we run a short scoping call, and we confirm scope in writing: which document types you issue, your certificate and service-provider arrangement, branch structure, delivery channels and any print-format requirements. From confirmed scope, typical delivery is one working week. We build against your ERPNext version, deploy to a staging site for UAT with your own invoices, then go live with a rollback plan. You receive the full source code and the git repository — the app is yours, and you are never locked to us to keep it running.
Ne elde edeceksin
- Complete installable source code for the Frappe app, built and tested against your exact ERPNext version (v15 or v16)
- Installation and configuration on your environment — settings, certificate wiring, roles, naming series and print formats
- Technical documentation: DocType reference, hook and scheduler map, whitelisted API endpoints, and configuration guide
- End-user guide plus a live training session for your finance and accounting team
- UAT on a staging site using your own invoice data, with a written test pass and a documented rollback plan
- Post-go-live support window for defect fixes and configuration adjustments on the delivered scope
- Handover of the private git repository with full commit history — the code is yours to keep, fork or extend
- Version-compatibility statement covering the Frappe/ERPNext releases the app was verified on
Bu kimin için
Finance Manager at a Thai VAT-registered company
Owns the e-Tax Invoice & Receipt obligation and is tired of invoices being posted in ERPNext and then re-typed into a separate portal. Needs one posting to produce both the customer's document and the authority's, with a status they can check without asking IT.
Group Controller with Thai subsidiaries
Runs a multi-company ERPNext instance where only the Thai entities carry the e-Tax obligation. Needs company- and branch-scoped settings, certificates and naming series so Thai compliance never leaks into the other books.
ERPNext administrator or internal Frappe developer
Will live with this app after go-live. Cares that it is a real app with DocTypes, hooks and tests rather than customizations that vanish on migrate, that the source and git history are handed over, and that whitelisted methods exist for the integrations they already maintain.
Tax and compliance officer
Answers to the auditor. Needs a tamper-evident archive, an audit trail showing who signed and when, a clear correction path for rejected documents, and permissions that keep signing authority separate from invoice entry.
Thailand e-Tax Invoice & Receipt for ERPNext Nasıl Karşılaştırılır
| Kriter | ECOSIRE | Özel Yapı | Rakip | ERPNext Yerleşik |
|---|---|---|---|---|
| Thai e-Tax document generation | Structured machine format plus human-readable PDF from one ERPNext posting | Possible, but the format and lifecycle are designed from scratch by your team | Often a generic e-invoicing shell that still needs Thai-specific work | Not available — ERPNext ships a print format, not an electronic tax document |
| Digital signing | Server-side signing, certificate held in a dedicated DocType and never exposed to the browser | Depends entirely on how carefully the in-house developer handles the credential | Varies; some delegate signing to an external portal you must operate separately | No concept of a signing certificate or a signed document |
| Fit to your ERPNext data | Tax mapping derived from your Customer, Item tax template and taxes table — no re-keying | Fits by definition, at the cost of your team's build time | Assumes a standard setup; branch codes and custom fields usually need rework | The master data exists, but nothing consumes it for e-Tax purposes |
| Rejection and correction workflow | Reason recorded, linked correction document created, workflow reopened for a human decision | Usually deferred to phase two and handled in a spreadsheet until then | Frequently a blind retry or a status flag with no correction path | No submission lifecycle exists to reject against |
| Audit trail and archiving | Tamper-evident archive; every generation, signing and delivery logged by user and timestamp | Only as good as the logging someone remembered to add | Basic status history; archive retention often left to the customer | Standard document versioning only — not a compliance archive |
| Upgrade safety | Real Frappe app with DocTypes, hooks and `bench run-tests` unit tests; verified on v15 and v16 | Often Server Scripts and Customize Form tweaks that a migrate erases | Depends on the vendor's release cadence and their support for your version | Nothing to break, because nothing is there |
| Source code and ownership | Full source and private git repository handed over — extend or fork freely | You own it, and you also own every future fix | Typically licensed and closed; extensions go through the vendor | Open source, but the capability does not exist |
| Time and cost to production | one working week from confirmed scope, fixed quotation, UAT and rollback plan included | Months of internal effort plus the compliance research nobody budgets for | Fast to install, then slow while the gaps close through change requests | Immediate, but leaves the obligation unmet |
Thailand e-Tax Invoice & Receipt hakkında Sıkça Sorulan Sorular
How long does delivery take?
This is build-to-order — there is no instant download. After you request a quotation we run a short scoping call and confirm the scope in writing. From confirmed scope, typical delivery is one working week, covering build, UAT on a staging site with your own data, and go-live. Complex multi-branch or multi-channel scopes can run longer, and we tell you that before you commit rather than after.
What support and updates are included?
The quotation includes a post-go-live support window for defect fixes and configuration adjustments on the delivered scope. Because you receive the full source code and git repository, your own team can maintain and extend it. Beyond the included window we offer an optional annual maintenance arrangement covering compatibility with new Frappe/ERPNext releases and changes to Thai e-Tax requirements — quoted separately, so you are never locked in.
Do you supply the digital certificate or act as the service provider?
No. The signing certificate and any service-provider arrangement remain yours — we do not resell certificates or act as an intermediary. The app is built to integrate with the certificate and channel you already have or are procuring, and configuring that integration is part of the scoping call so there are no surprises during the build.
Will this survive an ERPNext version upgrade?
It is a proper Frappe app in its own repository with its own DocTypes, hooks and tests — not a set of Customize Form tweaks or Server Scripts that a migrate overwrites. We build against your current version (v15 or v16) and ship unit tests you can run with `bench run-tests`. Moving to a future major version is a compatibility exercise, covered under the optional maintenance arrangement or quoted as a small piece of work.
Does it change how ERPNext posts accounting entries?
No. The compliance layer sits alongside the accounting layer. Your Sales Invoice, GL entries, VAT reports and receivables remain standard ERPNext; the app reads that data, generates and signs the electronic document, and records the lifecycle on its own DocType. If you ever uninstall the app, your books are unaffected.
What happens when a document is rejected?
Rejections are handled explicitly rather than retried blindly. The reason is recorded on the original `Thailand E-Tax Document`, a linked correction document is created, and the workflow reopens so a person decides what to fix. A scheduler event keeps outstanding submissions reconciled and surfaces failures in a queue your accountant can see, instead of leaving them buried in an error log.
Can our other systems trigger document generation?
Yes. The app exposes whitelisted methods alongside the standard Frappe REST API, so a customer portal, POS or in-house tool can request generation and read status over authenticated HTTP without direct database access. Endpoint scope and authentication are agreed during scoping and documented in the technical handover.
İlgili Modüller

Team Messaging & Collaboration
Slack-style team chat built directly into ERPNext, with channels, direct messages, and threads pinned to the exact Sales Order, Task, or HD Ticket being discussed. ECOSIRE builds, installs, and supports it on your Frappe/ERPNext v15/v16 site after you request a quotation.

Telegram Notifications & Bot for ERPNext
A build-to-order Frappe app that pushes ERPNext document events to Telegram and runs an interactive command bot for approvals, queries and broadcasts. ECOSIRE scopes, builds, installs and supports it on your v15/v16 site.

TradeIndia / ExportersIndia Lead Connector for ERPNext
A build-to-order Frappe app that captures B2B buyer inquiries from TradeIndia and ExportersIndia and lands them directly in ERPNext CRM as deduplicated, product-mapped Leads. ECOSIRE scopes, builds, installs, and supports it for your export sales team.

Transactional Email Deliverability Connector (Resend / SES / Postmark)
A build-to-order Frappe app that routes ERPNext's transactional email through Resend, Amazon SES or Postmark with proper DKIM/SPF/DMARC, webhook-driven bounce and complaint handling, and per-domain sending stats. ECOSIRE builds, installs and supports it for your v15/v16 site after a scoping call.
Thailand e-Tax Invoice & Receipt
A build-to-order Frappe app that turns a submitted ERPNext Sales Invoice into a signed, ETDA-compliant Thai e-Tax Invoice or Receipt — machine format for the Revenue Department, human-readable PDF for the customer, and a full archive for audit. ECOSIRE builds, installs and supports it after you request a quotation.
- Dedicated Frappe app and module, installed with `bench get-app` / `bench install-app` and version-controlled in its own git repository, so upgrades and `bench migrate` behave predictably
- `Thailand E-Tax Document` DocType as the per-transaction compliance record — status, timestamps, signed artifact, acknowledgement reference and a link back to the source Sales Invoice or Payment Entry
- `hooks.py` doc events on Sales Invoice `validate` and `on_submit`: mandatory Thai field validation fails the submit early, generation is enqueued on the background worker so submit stays fast
- Digital signing applied server-side before delivery; certificate reference and validity window stored in a `Thailand E-Tax Certificate` DocType and never exposed to the browser