# Turn RD e-Filing into an API

> Read each return's status in ตรวจสอบผลการยื่นแบบ (check filing results), the taxes awaiting payment and the receipt for a filed ภ.พ.30 or ภ.ง.ด.1 with one API call each. A workflow can check this month's returns every weekday and email you the unpaid ones.

Page: https://fous.com/automate/rd-e-filing
Updated: 2026-11-12

Works with your own RD e-Filing account. Fous is an independent product.

## What you can build on RD e-Filing

### Check filing results

Reads the ตรวจสอบผลการยื่นแบบ (check filing results) list: each return filed in the last year, with its reference numbers and its status.

- Takes: Form type (optional), tax month (optional), status (optional)
- Returns: Form type, tax month, branch, filing sequence, filing reference, payment reference, tax to pay, status

### Get taxes awaiting payment

Reads the รายการภาษีที่ต้องชำระ (taxes to be paid) tab under ชำระภาษี (pay tax): every filed return whose tax has not been paid yet.

- Takes: Form type (optional), tax month (optional)
- Returns: Payment reference, form type, tax month, pay by date, total to pay

### Download a return's receipt

Opens one return in ตรวจสอบผลการยื่นแบบ, chooses พิมพ์ภาพแบบ/ภาพใบเสร็จ and downloads the ภาพใบเสร็จรับเงิน/ใบรับ (receipt) and the ภาพแบบ (form image).

- Takes: Filing reference or payment reference
- Returns: Form type, tax month, status, receipt PDF, form image PDF

### File a ภ.ง.ด.1 withholding return

Fills in the four steps of the ภ.ง.ด.1 form online, from ข้อมูลทั่วไป (general information) to ยืนยันการยื่นแบบ (confirm filing), with the attachment rows you send.

- Takes: Branch, tax month, filing sequence, rows of income type, payee tax ID, name, date paid, amount, tax withheld
- Returns: Payment reference, tax month, total tax remitted, tax to pay, pay by date, status

## Automate RD e-Filing with a workflow

A [workflow](/product/workflows) runs your methods as one process, with nobody at the screen. A schedule or a call from your own system starts it, the steps run in order, and the result arrives in your inbox or in the systems you already use.

### Unpaid and overdue returns, every weekday

Starts: Every weekday at 8:00

1. Check filing results for this tax month and the last one.
2. Keep the returns in รอการชำระ or เกินกำหนดชำระเงิน status.
3. Email you the list with form type, tax month, payment reference and tax to pay.

### Issued receipts, handed to accounting

Starts: Every weekday at 17:00

1. Check filing results for the last two tax months.
2. Keep the returns that reached ยื่นแบบสำเร็จ ออกใบเสร็จรับเงินแล้ว since the last run.
3. Post form type, tax month, filing reference, payment reference and tax amount to your accounting webhook.

### Taxes still to pay before the monthly deadline

Starts: Monthly on the 20th at 9:00

1. Get the taxes awaiting payment.
2. Stop when there are none.
3. Post payment reference, form type, tax month, pay by date and total to your finance team's webhook.

You can run a workflow by hand on every plan, Free included. Schedules and webhook triggers come with the paid plans, from $29 a month.

## Once built, one call from your code

Once you have built a [method](/product/methods), it is one POST to /v1/runs from your backend, or a tool an AI agent calls over MCP. This is what “Check filing results” would look like.

Example request:

```
curl https://api.fous.com/v1/runs \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "method": "efiling.rd.go.th/check_filing_results",
    "input": {
      "form_type": "ภ.พ.30",
      "tax_month": "2026-10"
    }
  }'
```

Example response:

```
{
  "status": "completed",
  "data": {
    "taxpayer": "Acme Trading Co., Ltd.",
    "returns": [
      {
        "form_type": "ภ.พ.30",
        "tax_month": "2026-10",
        "branch": "00000",
        "filing_sequence": "ยื่นปกติ",
        "filing_reference": "P30-2026-0001842",
        "payment_reference": "PAY-2026-1104-0077",
        "tax_to_pay": 48215,
        "currency": "THB",
        "status": "รอการชำระ"
      }
    ],
    "count": 1
  }
}
```

An example with invented data, not a ready-made endpoint. The method exists in your organization once you build it, and its name, inputs and fields follow your request.

## RD e-Filing’s own options

The Revenue Department publishes an Open API for filing returns, getting pay-in slips and receipts, cancelling and checking status. Each connection is requested from the department and must meet its IT standards; the API Spec names ภ.ง.ด.90, ภ.ง.ด.91, ภ.ง.ด.54 and ภ.พ.30. Otherwise you key returns in on the site or upload a file.

| Option | What it covers | What it takes |
| --- | --- | --- |
| Open API | Submit a return, request the pay-in slip, get the form image and receipt, cancel a return and ask a return's status. | A connection requested through ขอเชื่อมต่อ Open API, as an agent provider or for your own company, meeting the department's IT standards. |
| XML or RD Prep file upload | Sends a return's data as a file: an XML file in the department's XML Public format, or a file prepared in its RD Prep program. | An e-Filing account. The XML route is described as for system developers. |
| Filing through a Tax Agent | An accounting office files and pays returns on behalf of the taxpayers who are its clients. | An accounting office registered as a Tax Agent. |
| RD e-Filing by hand | Every tax type: key a return in online, pay it under ชำระภาษี, then check status and download receipts in ตรวจสอบผลการยื่นแบบ. | An RD ID registered with the Revenue Department; companies confirm each sign-in with a one-time code by email or SMS. |

Read on November 12, 2026: [Open API](https://efiling.rd.go.th/rd-cms/openapi), [API Spec](https://efiling.rd.go.th/rd-cms/api), [ยื่นแบบ (filing channels)](https://efiling.rd.go.th/rd-cms/tax).

## Signing in to RD e-Filing

Companies sign in to RD e-Filing with an RD ID: the tax ID number or a username and a password, then a one-time code sent to the registered email address or mobile number, whichever the user picks. With Fous you sign in once through the site's own sign-in with your own account: the login is sealed with AES-256, the emailed code is handled, and an expired session is signed back in.

## Worth knowing

- **A return is not filed until it is paid**: After you confirm a ภ.พ.30, the site says the department has received the data but it does not count as filed until the tax is paid in full. The status stays รอการชำระ until then.
- **Check for the receipt after 2 business days**: After payment, a return moves through ชำระภาษีสำเร็จ รอออกใบเสร็จรับเงิน before its receipt is issued. The manual asks you to check the status again after 2 business days.
- **Filing results go back 1 year**: ตรวจสอบผลการยื่นแบบ lists the returns filed in the last year, searchable by payment reference, filing reference or ค้นหาขั้นสูง (advanced search).
- **Super Admin, Admin and User**: A company's main account (Super Admin) creates Admin and User accounts and assigns their rights. A method reads and does only what the account you sign in with is allowed to.

## More in Government: East and South-East Asia, Oceania

- [登記情報提供サービス](https://fous.com/automate/registry-information-service.md)
- [Cổng thông tin hóa đơn điện tử](https://fous.com/automate/hoadondientu.md)
- [SIPP Online](https://fous.com/automate/sipp-online.md)
- [Edabu](https://fous.com/automate/edabu.md)
- [PhilHealth EPRS](https://fous.com/automate/philhealth-eprs.md)
- [Virtual Pag-IBIG for Employers](https://fous.com/automate/virtual-pag-ibig-for-employers.md)
- [KWSP i-Akaun (Majikan)](https://fous.com/automate/kwsp-i-akaun-majikan.md)
- [自然人电子税务局（扣缴端）](https://fous.com/automate/natural-person-e-tax-bureau-withholding.md)
- [eMPF Platform](https://fous.com/automate/empf-platform.md)
- [My.SSS Employer Portal](https://fous.com/automate/my-sss-employer-portal.md)
- [SSO e-Service](https://fous.com/automate/sso-e-service.md)
- [BIR eFPS](https://fous.com/automate/bir-efps.md)
- [全国统一规范电子税务局](https://fous.com/automate/china-e-tax-bureau.md)
- [Coretax DJP](https://fous.com/automate/coretax-djp.md)
- [myIR](https://fous.com/automate/myir.md)
- [MyTax](https://fous.com/automate/mytax.md)

Other industries: [MCA21](/automate/mca21), [Airbnb hosting dashboard](/automate/airbnb-hosting-dashboard), [IESS - Portal de Empleadores](/automate/iess-portal-de-empleadores), [uFiling](/automate/ufiling), [TRACES NT](/automate/traces-nt), [Companies House WebFiling](/automate/companies-house-webfiling).

## Frequently asked questions

### Does RD e-Filing have an API?

Yes, on request. The Revenue Department's Open API submits returns, gets pay-in slips and receipts, cancels and checks status, for connections requested from the department that meet its IT standards. Its API Spec names ภ.ง.ด.90, ภ.ง.ด.91, ภ.ง.ด.54 and ภ.พ.30. Without it you key in or upload returns on the site.

### Where do I download the receipt for a return?

In ตรวจสอบผลการยื่นแบบ: open the return, choose พิมพ์ภาพแบบ/ภาพใบเสร็จ and download ภาพใบเสร็จรับเงิน/ใบรับ. The receipt is there once the status is ยื่นแบบสำเร็จ ออกใบเสร็จรับเงินแล้ว.

### When is a ภ.พ.30 due if I file it online?

By the 15th of the following month, plus 8 more days when you file through the Revenue Department's online channels. Late filing or short payment brings fines, a surcharge and 1.5% of the tax due for each month or part of a month.

### Can an accounting firm file for its clients?

Yes. RD e-Filing serves accounting offices registered as Tax Agents, who file and pay returns on behalf of the taxpayers who are their clients.

### Is Fous affiliated with the Revenue Department?

No. Fous is an independent product. You use it with your own RD e-Filing account, and a method reads and does only what that account can.

Fous is an independent product: it is not affiliated with, endorsed by or sponsored by the operator of RD e-Filing (กรมสรรพากร (Revenue Department)). The name is used only to say which system this page is about. Something here wrong or out of date? Write to legal@fous.com.
