How to Report Investment Taxes: Stocks & Mutual Funds 2026

How to file SPT Tahunan for investors: required documents, filling Form 1770, reporting investments on DJP Online.

In brief

How to file SPT Tahunan for investors: required documents, filling Form 1770, reporting investments on DJP Online.

Sources and corrections policy (Indonesian)

Note: This article discusses Indonesian financial products and markets. The principles apply globally, though specific products, regulations, and tax treatments vary by country.

Reporting Investments in Your Annual Tax Return

Every year, you are required to file an SPT (Surat Pemberitahuan — Tax Return) for PPh (Pajak Penghasilan — Income Tax) Orang Pribadi (Individual) — including your investment assets and income from investments. Although investment taxes are already automatically withheld (final), reporting is still mandatory.

Deadline for filing SPT Tahunan PPh Orang Pribadi: March 31 each year for the previous tax year.1

Which SPT Form?

Form For Whom
1770SS Gross income ≤ Rp 60 million/year, single employer
1770S Gross income > Rp 60 million/year, employee
1770 Has business/freelance work

Most employees with investments use Form 1770S. If you’re an employee with salary above Rp 60 million/year and have investments, this is your form.

Two Things That Must Be Reported

1. Asset List (Daftar Harta)

All your investment assets as of December 31 must be reported in Attachment IV Section A — Assets at Year End (Harta pada Akhir Tahun).

2. Income from Investments

Investment income that has been subject to final tax is reported in Attachment III — Income Subject to PPh Final (Penghasilan yang Dikenakan PPh Final).

How to Report Each Instrument

Stocks

In the Asset List:

Column Fill In
Asset Code (Kode Harta) 031 (Stocks purchased for resale) or 032 (Stocks)
Asset Name (Nama Harta) “Stocks at PT [Broker] — [list of main issuers]”
Year of Acquisition (Tahun Perolehan) Year you first purchased
Acquisition Cost (Harga Perolehan) Total purchase value (not current market value)
Notes (Keterangan) Broker name, securities account number

Important: What is reported is the acquisition cost (purchase price), not the market price as of December 31. Many people make mistakes here.

In Final Income:

  • Report total capital gains that have been subject to PPh Final 0.1%
  • Report total dividends received (and taxes already withheld)
  • This information is usually available in the annual report from your broker

Mutual Funds

In the Asset List:

Column Fill In
Asset Code (Kode Harta) 034 (Mutual Funds / Reksa Dana)
Asset Name (Nama Harta) “Mutual Fund [product name] at [platform]”
Year of Acquisition (Tahun Perolehan) Year you first purchased
Acquisition Cost (Harga Perolehan) Total purchase value
Notes (Keterangan) Platform name (Bibit/Bareksa/etc.), number of units

In Income:

  • Mutual fund gains are not a tax object for individuals
  • No need to report as income
  • Just report in the asset list

SBN (Surat Berharga Negara — Government Securities: ORI, SBR, SR, ST)

In the Asset List:

Column Fill In
Asset Code (Kode Harta) 033 (Bonds / Obligasi)
Asset Name (Nama Harta) “ORI025” or “ST012” (according to series)
Year of Acquisition (Tahun Perolehan) Year of purchase
Acquisition Cost (Harga Perolehan) Nominal value at purchase
Notes (Keterangan) Distribution partner name

In Final Income:

  • Report total coupons received during the tax year
  • 10% tax has been withheld — report as PPh Final income

Deposits

In the Asset List:

Column Fill In
Asset Code (Kode Harta) 014 (Deposits / Deposito)
Asset Name (Nama Harta) “Deposit [bank name]”
Year of Acquisition (Tahun Perolehan) Year of placement
Acquisition Cost (Harga Perolehan) Deposit principal value
Notes (Keterangan) Bank name, account number

In Final Income:

  • Report total deposit interest received
  • 20% tax has been withheld

Gold

In the Asset List:

Column Fill In
Asset Code (Kode Harta) 015 (Precious metals / Logam mulia)
Asset Name (Nama Harta) “Gold [form: Antam/digital/jewelry]”
Acquisition Cost (Harga Perolehan) Purchase price

Steps to File SPT Online (DJP Online)

Preparation

Before starting, gather the following documents:

Document Source
Withholding slip 1721-A1 (from employer) Company HRD
Stock portfolio report Broker app (Stockbit/Ajaib/IPOT)
Mutual fund portfolio report App (Bibit/Bareksa)
SBN coupon proof Email from distribution partner
Deposit interest proof Bank statement

Most investment platforms provide an annual summary that you can download at the beginning of the year. Take advantage of this feature.

Steps

  1. Login to djponline.pajak.go.id

    • Use your NPWP (Nomor Pokok Wajib Pajak — Taxpayer Identification Number) and password
    • If you don’t have an account yet, register first with EFIN from the tax office
  2. Select “Lapor” (Report) → “e-Filing”

    • Choose Form 1770S (for employees)
    • Fill in the tax year
  3. Fill in main income data

    • Enter data from withholding slip 1721-A1
  4. Fill in Attachment III — PPh Final Income

    • Add investment income that has been subject to final tax:
    • Stock capital gains (PPh Final 0.1%)
    • Dividends (PPh Final 10%)
    • SBN coupons (PPh Final 10%)
    • Deposit interest (PPh Final 20%)
  5. Fill in Attachment IV — Asset List (Daftar Harta)

    • Add all investment assets as of December 31
    • Use the appropriate asset codes
    • Fill in acquisition cost (not market value)
  6. Review and Submit

    • Double-check all data
    • Get verification code
    • Submit SPT

How Long Does It Take?

If documents are ready, filling out the SPT usually takes 30-60 minutes. Most time is spent entering the asset list.

Tips for Easier Reporting

1. Keep records throughout the year

Don’t wait until March to gather data. Create a simple spreadsheet and record every investment transaction. Or just screenshot your portfolio summary at the end of December.

2. Use export features from platforms

Platform Tax Report Feature
Bibit Annual tax summary (download in app)
Stockbit Realized profit/loss + dividend report
Bareksa Portfolio summary
IPOT Annual transaction report

3. Combine similar assets

You don’t have to report each stock one by one. You can combine them:

  • “Stocks at Stockbit — BBCA, BBRI, TLKM, etc.” with total acquisition cost

4. Consistency is more important than perfect precision

Make sure total assets in SPT are consistent from year to year. If last year you reported mutual funds at Rp 20 million and this year Rp 30 million, the difference should be explainable from your income.

Common Mistakes and How to Avoid Them

Mistake 1: Reporting Market Value Instead of Acquisition Cost

Wrong: You bought stocks for Rp 50 million, now worth Rp 80 million. You report Rp 80 million. Correct: Report Rp 50 million (your purchase price).

Why: The asset list shows what you paid, not current value. Capital gains only matter when you sell, and are already taxed as final.

Mistake 2: Not Reporting Unrealized Gains

Some investors think “I haven’t sold, so no tax, no report.” Wrong.

  • Asset list: Must report holdings even if unsold
  • Income: Only report when sold (and tax was withheld)

Mistake 3: Double-Counting Dividend Tax

If you received Rp 10 million in dividends, Rp 1 million was already withheld (10% final tax). Some people mistakenly think they need to pay another tax.

Correct approach: Report the gross dividend (Rp 10 million) and note that tax was already withheld. No additional tax is due — this is “final.”

Mistake 4: Forgetting to Update When Assets Are Sold

If you sold all your stocks in 2025, your asset list for tax year 2025 should show zero (or lower amount). Don’t copy-paste last year’s asset list without checking current holdings.

Mistake 5: Mixing Up Acquisition Years

If you bought stocks in 3 different years (2023, 2024, 2025), you can either:

  • Option A: List separately with correct acquisition years
  • Option B: Combine under earliest year

Either is acceptable, but stay consistent year-to-year.

Step-by-Step Example: Employee Investor Filing SPT 1770S

Let’s walk through a complete example:

Profile:

  • Name: Budi
  • Status: Employee, annual salary Rp 120 million (gross)
  • Investments:
    • Stocks (bought 2024): Rp 30 million → now worth Rp 35 million (unrealized gain)
    • Mutual funds at Bibit: Rp 20 million
    • ST012 (Sukuk Tabungan): Rp 10 million
    • Bank deposit: Rp 15 million

Income received in 2025:

  • Dividends from stocks: Rp 1.2 million (10% tax = Rp 120k already withheld)
  • Sold some stocks, realized gain: Rp 2 million (0.1% tax = Rp 2k already withheld)
  • ST012 coupons: Rp 600k (10% tax = Rp 60k already withheld)
  • Deposit interest: Rp 450k (20% tax = Rp 90k already withheld)

Filling Form 1770S:

Part A: Main Income (from employer)

  • Enter salary from 1721-A1 slip: Rp 120 million
  • Tax already withheld (from 1721-A1): Rp X million (let’s say Rp 5 million)

Attachment III: PPh Final Income

Description Gross Amount Tax Withheld
Stock capital gains Rp 2,000,000 Rp 2,000 (0.1%)
Dividends Rp 1,200,000 Rp 120,000 (10%)
ST012 coupons Rp 600,000 Rp 60,000 (10%)
Deposit interest Rp 450,000 Rp 90,000 (20%)

Total investment income: Rp 4,250,000 Total tax withheld: Rp 272,000

Attachment IV: Asset List

Asset Code Name Acquisition Year Acquisition Cost Notes
031 Stocks at Stockbit — BBCA, TLKM, UNVR 2024 Rp 30,000,000 Account 123456
034 Mutual funds at Bibit — Sucorinvest Equity Fund 2023 Rp 20,000,000 50,000 units
033 ST012 (Sukuk Tabungan) 2025 Rp 10,000,000 Via Bareksa
014 Deposit — Bank Mandiri 2024 Rp 15,000,000 Account 789012

Total assets reported: Rp 75,000,000

Result:

  • Budi’s final tax calculation remains based on salary (from 1721-A1)
  • Investment income is final — already taxed, no recalculation
  • Total tax payable/refundable depends on salary withholding vs actual calculation
  • Assets are documented — safe if questioned later

What If You Made Mistakes in Previous Years?

If you realize you forgot to report investments in previous SPT filings:

Option 1: Voluntary Correction (Pembetulan)

You can file a corrected SPT through DJP Online:

  1. Login to djponline.pajak.go.id
  2. Select “Lapor” → “Pembetulan SPT”
  3. Choose the tax year to correct
  4. Fill in the missing assets/income
  5. Submit

Benefit: Shows good faith, usually no penalty if done voluntarily before audit.

Option 2: Wait and Explain If Audited

If the missing assets don’t materially affect your tax calculation (e.g., mutual funds with no taxable gain), some people wait. If questioned during audit, explain it was an oversight.

Risk: Auditor may impose penalties if they consider it material.

Recommendation: If the amounts are significant, file a correction voluntarily. It’s safer.

How DJP Verifies Investment Assets

DJP has access to various data sources to cross-check your SPT:

Automatic Exchange of Information (AEoI)

  • Banks report account balances above certain thresholds
  • Investment platforms report customer holdings
  • DJP can see if you have accounts you didn’t report

Third-Party Data Matching

  • Your broker reports transactions to tax authorities
  • Mutual fund platforms share data with DJP
  • SBN distribution partners report coupon payments

Lifestyle vs Income Analysis

If you report low income but have large investment portfolios, DJP may question the source of funds. Having consistent SPT history showing gradual asset accumulation is your defense.

Red Flags That Trigger Audits

  • Large jumps in asset value with no clear income source
  • Inconsistencies year-over-year (assets disappearing/appearing without explanation)
  • High spending (property purchases, luxury cars) vs reported income
  • Anonymous tips (yes, this happens — disgruntled ex-partners, business rivals)

Digital Tools to Simplify SPT Filing

DJP Online Mobile App

Download the “DJP Online” app (Android/iOS) to:

  • File SPT from your phone
  • Check SPT status
  • Upload supporting documents

Third-Party Tax Software

Several apps help with SPT filing:

  • [EMPLOYER-REDACTED] — automated import from investment platforms
  • Klikpajak — guided SPT filling with explanations
  • Pajakku — personal tax management

These can save time, but verify their calculations — you’re still responsible for accuracy.

Spreadsheet Template

Create a simple tracking sheet:

Date Transaction Type Platform Amount Tax Withheld Notes
2025-03-15 Stock sale Stockbit +Rp 2M gain Rp 2k (0.1%) Sold BBCA
2025-06-20 Dividend Stockbit +Rp 600k Rp 60k (10%) TLKM dividend
… … … … … …

At year-end, sum up each column → directly transfer to SPT.

What Happens If You Don’t Report?

Violation Penalty
Late filing SPT Fine of Rp 100,000
Not filing at all Fine + potential audit
Assets not reported Discovered during audit → tax + 200% penalty

Reporting investments in your SPT is not just an obligation — it also protects you. If at some point you cash out a large investment, DJP (Direktorat Jenderal Pajak — Directorate General of Taxes) can ask where the money came from. If it’s already reported in your SPT, you’re safe.

Summary

Item What to Do
Asset list Report all investment assets (acquisition cost)
Final income Report dividends, capital gains, coupons, interest
Form 1770S for most employees
Deadline March 31 each year
Platform djponline.pajak.go.id
Time required 30-60 minutes if data is ready

Investment tax reporting in Indonesia is actually not complicated. Most is already withheld as final — you just report, not recalculate.


Disclaimer: This article is for educational purposes only, not tax advice. Consult with a tax consultant for your specific situation.

Footnotes

  1. Based on Article 3 paragraph (3) of the KUP Law ↩

Disclaimer: This article is educational, not investment advice. Do your own research and consult a licensed financial adviser before making investment decisions.