# Spt Tahunan Guide

> Step-by-step guidance for filing individual annual tax returns (SPT Tahunan Wajib Pajak Orang Pribadi) on DJP Online.

- Skill: `adamriofc/spt-tahunan-guide` (Agent Skill)
- Install (CLI): `npx skillmds@latest add adamriofc/spt-tahunan-guide`
- Raw SKILL.md: https://api.skillmd.com/api/skills/adamriofc/spt-tahunan-guide/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: adamriofc (https://skillmd.com/u/adamriofc)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/adamriofc/spt-tahunan-guide

---


# Individual SPT Tahunan Filing Engine

Guides individual taxpayers in completing Form 1770, 1770S, or 1770SS via DJP Online.

## Selection Matrix
* **Form 1770SS**: Gross income <= Rp 60M/year from a single employer.
* **Form 1770S**: Gross income > Rp 60M/year or multiple employers.
* **Form 1770**: Independent business owners, freelancers, or professionals.

## Filing Steps (DJP Online)
1. Log in to djponline.pajak.go.id → **Lapor** menu → create the SPT.
2. Select the form per the matrix → enter the 1721-A1 data / bookkeeping records.
3. Verify PTKP status (TK/0, K/0, K/1, K/2, K/3) per Director General Regulation (Perdirjen) PER-2/2025 (effective rate & PTKP check).
4. Submit → receive the BPE (Bukti Penerimaan Elektronik / Electronic Filing Receipt) — retain it for at least 5 years (UU KUP retention period).
5. Deadline: 31 March of the following year (individuals), 30 April (business taxpayers (Wajib Pajak) required to file electronically).

## Scope & Safety
* **Use for**: filling guidance & reporting workflow; for calculations, use the `pph21-calculator` engine.
* **Do not use as**: a substitute for a tax consultant for non-resident cases, foreign-source income without PPh 24 tax credit, or arrears/restructuring cases.
* **Penalty awareness**: late filing = sanction of Rp 100.000 (1770SS) / Rp 100.000–500.000 depending on the form; incorrect entries may trigger an audit — verify the data from 1721-A1/A2.

## Worked Example
Input: `spt_form_type: "1770S" / has_1721_a1: true, gross salary Rp 150 million, PTKP TK/0, PPh 21 already withheld Rp 3.6 million`
Flow: Login → Lapor → 1770S → enter 1721-A1 data → check the tax payable column (use the PPh21 engine: TER + Art 17) → result: tax payable = Rp 150 million × progressive rate → compare against the Rp 3.6 million withholding credit → overpayment/underpayment → submit → save the BPE.
