Odoo Community Association

Connector to Frappe eTax service

Beta License: AGPL-3 ecosoft-odoo/ecosoft-addons

This module integrates Odoo with the Frappe e-Tax Service (INET) to sign and retrieve certified e-Tax documents.

Key features:

Workflow:

  1. Post a customer invoice, debit note, or credit note.
  2. Click the e-Tax Invoice button on the document.
  3. Select the e-Tax document type (e.g. ใบกำกับภาษี, ใบแจ้งหนี้/ใบกำกับภาษี) and confirm.
  4. The system sends the document to Frappe server for signing.
  5. Check the e-Tax Status on the e-Tax Info tab - when Success, the signed PDF and XML are attached automatically.
  6. If a signed invoice needs correction, use Create Replacement to create a replacement document, then sign the replacement.

Table of contents

Configuration

1. API Connection

Go to Invoicing -> Configurations -> Settings, section Ecosoft e-Tax Services:

  • Frappe Server URL - URL of the Frappe server where the e-Tax Service is installed.
  • Frappe Auth Token - Token generated from the Frappe server.

Contact your e-Tax Service provider for these values.

2. Document Type Code (etax.doctype.code)

Standard INET document type codes are pre-loaded:

Code Description
380 ใบแจ้งหนี้
388 ใบกำกับภาษี
T01 ใบรับ (ใบเสร็จรับเงิน)
T02 ใบแจ้งหนี้/ใบกำกับภาษี
T03 ใบเสร็จรับเงิน/ใบกำกับภาษี
T04 ใบส่งของ/ใบกำกับภาษี
T05 ใบกำกับภาษีอย่างย่อ
80 ใบเพิ่มหนี้
81 ใบลดหนี้

Go to Invoicing -> Configurations -> e-Tax Service -> Document Type Code to view or add codes.

3. e-Tax Document Type (etax.doctype)

Map each Odoo document type to its INET document type code and report template.

Go to Invoicing -> Configurations -> e-Tax Service -> e-Tax Doctype and create records:

  • Form Name - Name of the Odoo/Frappe form template (must match exactly).
  • Type - Odoo document type: Customer Invoice, Credit Note, Debit Note, or Payment.
  • Invoice Template Source - odoo (render PDF from Odoo) or frappe (use Frappe template).
  • Document Type Code - Select the matching INET code (e.g. T02 for ใบแจ้งหนี้/ใบกำกับภาษี).

Example setup:

Form Name Type Code
ใบกำกับภาษี Customer Invoice 388
ใบแจ้งหนี้/ใบกำกับภาษี Customer Invoice T02
ใบเพิ่มหนี้ Customer Debit Note 80
ใบลดหนี้ Customer Credit Note 81

4. Purpose Code (etax.purpose.code)

Purpose codes are pre-loaded following INET convention and are linked to applicable document type codes.

Go to Invoicing -> Configurations -> e-Tax Service -> Purpose Code to view all codes.

Key groups:

  • TIVC - Tax Invoice replacement (applicable to 388, T02, T03, T04, T05)
  • DBNG / DBNS - Debit Note Goods/Services (applicable to 80)
  • CDNG / CDNS - Credit Note Goods/Services (applicable to 81)
  • RCTC - Receipt replacement (applicable to T01)

Purpose codes are automatically filtered by document type when creating a credit note or debit note.

5. Replacement Lock Date

Go to Invoicing -> Configurations -> Settings, section Ecosoft e-Tax Services:

  • Replacement Lock Date - Day of month after which creating a replacement e-Tax document is no longer allowed (counted from the 1st of the following month). Default is 1.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Kitti U.
  • Ecosoft

Maintainers

Current maintainer:

Saran440

This module is part of the ecosoft-odoo/ecosoft-addons project on GitHub.

You are welcome to contribute.