🛠️ToolsShed

Kalkulator PPN

Tambahkan atau hapus PPN/pajak dari harga. Mendukung tarif pajak kustom.

Tarif umum:

Kalkulator PPN (Pajak Pertambahan Nilai) membantu Anda menambah atau menghapus PPN dari harga dengan cepat dan akurat. PPN adalah pajak konsumsi yang diterapkan pada barang dan jasa di lebih dari 160 negara, dan tarif standar sangat bervariasi.

Untuk menambah PPN: masukkan harga pra-pajak (neto) dan tarif PPN, dan alat memberikan jumlah PPN dan harga total (bruto). Untuk menghapus PPN: masukkan harga termasuk pajak (bruto) dan tarif PPN, dan alat mengekstrak harga pra-pajak — ini disebut perhitungan PPN terbalik.

Tarif PPN umum termasuk 20% di Inggris, 19% di Jerman, 20% di Prancis, 22% di Italia, dan 21% di Spanyol, meskipun banyak kategori barang dan jasa mendapat tarif yang dikurangi.

Pertanyaan yang Sering Diajukan

Implementasi Kode

def add_vat(net: float, rate: float) -> dict:
    """Add VAT to a net (pre-tax) price."""
    vat_amount = net * (rate / 100)
    gross = net + vat_amount
    return {"net": net, "vat": vat_amount, "gross": gross, "rate": rate}

def remove_vat(gross: float, rate: float) -> dict:
    """Extract VAT from a VAT-inclusive (gross) price."""
    net = gross / (1 + rate / 100)
    vat_amount = gross - net
    return {"net": net, "vat": vat_amount, "gross": gross, "rate": rate}

# Example: Add 20% VAT
r1 = add_vat(net=100, rate=20)
print(f"Net:   ${r1['net']:.2f}")
print(f"VAT:   ${r1['vat']:.2f}  ({r1['rate']}%)")
print(f"Gross: ${r1['gross']:.2f}")

print()

# Example: Remove 20% VAT from £120 inclusive price
r2 = remove_vat(gross=120, rate=20)
print(f"Gross: ${r2['gross']:.2f}  (VAT inclusive)")
print(f"VAT:   ${r2['vat']:.2f}  ({r2['rate']}%)")
print(f"Net:   ${r2['net']:.2f}  (ex VAT)")

# Common VAT rates reference
print("\nCountry VAT Rates:")
rates = {"UK": 20, "Germany": 19, "France": 20, "Australia": 10, "Japan": 10}
for country, rate in rates.items():
    r = add_vat(100, rate)
    print(f"  {country} ({rate}%): ${r['gross']:.0f} on $100")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.