
PajaKripto
Harmonizing DeFi Speed with Sovereign Tax Law
About
The problem it solves ### ⚖️ The Regulatory Squeeze of 2026 As of January 2026, the Indonesian crypto landscape has shifted dramatically due to the enforcement of two critical fiscal regulations: **PMK 108/2025 (CARF)** and **PMK 50/2025**. These new laws create a complex compliance environment where active DeFi traders on Base are at significant risk. **1. The On-Chain Data Gap** Under the new CARF framework, Centralized Exchanges (CEX) are now legally required to report user identities and transfers to self-custody wallets to the Tax Office (DJP). While the government gains visibility on funds leaving exchanges, a "blind spot" remains regarding subsequent on-chain activities. Traders now face the burden of maintaining a verifiable audit trail to prove that their on-chain transfers are legitimate investment activities, not undisclosed income. **2. The Unregistered Platform Liability** While trading on registered local exchanges benefits from a definite 0.21% Final Income Tax rate, trading on decentralized protocols (DEXs) creates regulatory ambiguity. Under PMK 50/2025, transactions via non-registered entities may trigger a significantly higher tax liability (up to **1% under PPh Article 22**) due to the absence of a designated tax withholder. **3. The Self-Assessment Complexity** Unlike CEXs where taxes are deducted automatically, DeFi transactions operate under a "Self-Assessment" mechanism. A trader executing thousands of swaps on Base protocols must identify the Rupiah value of every transaction at the exact timestamp of execution and calculate the liability manually. Performing this reconciliation for high-frequency trading is operationally infeasible and carries a high risk of miscalculation. --- ### 💡 The Solution: PajaKripto PajaKripto is the first **Onchain Tax Compliance Layer** built on **Base**, designed to harmonize decentralized finance speed with sovereign regulations. We provide the missing infrastructure that bridges the gap between mandatory reporting and on-chain self-assessment. **Our Core Capabilities:** * **Automated Self-Assessment Engine:** We replace manual spreadsheets with code. By integrating **Base OnchainKit** and **Pyth Network Benchmarks**, our engine scans wallet history, fetches historical asset prices at the precise block timestamp, and calculates the estimated tax liability for DEX transactions based on the user's risk profile (0.21% or 1%). * **IDRX Tax-Safe Vault:** To mitigate the risk of accidental non-compliance, we developed a smart contract vault integrated with **IDRX (Rupiah Stablecoin)**. Users can instantly segregate their calculated tax liability into the vault, ensuring funds are secure and ready for settlement during the tax filing period. * **Strategic Portfolio Insight:** Beyond compliance, our algorithm analyzes portfolio health to identify "underwater" assets. This allows users to execute **Strategic Realization**, enabling efficient portfolio rebalancing and clearer accounting positions without leaving the Base ecosystem. * **CARF-Ready Reporting:** PajaKripto generates a comprehensive transaction report structured to mirror the requirements of the Tax Office (Lampiran VI PMK 108). This provides users with a reliable, cryptographic audit trail to clarify their wealth sources to regulators. **Why Base?** We leverage Base's low transaction fees to make compliance affordable for retail users, and utilize **OnchainKit** to provide a seamless onboarding experience via Passkeys, removing the friction of complex wallet connections.
How it's made
Challenges we ran into ### 1. The Code vs Law Dilemma **The Context** Indonesian regulation PMK 50 creates a bifurcated tax system with different rates for registered exchanges versus unregistered decentralized platforms. **The Hurdle** Blockchain data is agnostic. A transaction hash does not inherently carry a legal tag indicating if the platform is registered. Treating all swaps equally would cause users to legally underpay their taxes. **The Fix** We engineered a **Router Classification Logic** in our backend. We mapped the contract addresses of major Base DEXs like Uniswap and Aerodrome. When the engine detects an interaction with these specific routers, it automatically flags the transaction as *High Risk Liability* and applies the steeper tax formula. This ensures the generated report is legally defensible. ### 2. The IDRX Decimal Trap **The Context** We integrated IDRX or Indonesian Rupiah Stablecoin to power our Tax-Safe Vault. Standard EVM development assumes tokens have 18 decimals. **The Hurdle** During the first vault test, a deposit of 10,000 IDRX resulted in a chaotic display value on the UI. The math was completely broken. We realized too late that **IDRX uses 2 decimals** to mimic fiat cents, not the standard 18. **The Fix** We had to rewrite our core formatting utilities and smart contract interactions. Instead of using standard parsing libraries, we implemented dynamic decimal handling that explicitly checks for the specific decimal count when interacting with the IDRX contract. This fixed the calculation error and ensured the Rupiah balance was accurate down to the cent. ### 3. The Localhost Farcaster Nightmare **The Context** PajaKripto is designed as a Base Mini-App accessible via Farcaster Frames. **The Hurdle** Testing Farcaster Frames locally is notoriously difficult. Frames require strict HTTPS validation and specific manifest headers that constantly fail in a standard localhost environment. Our development cycle slowed to a crawl because we had to deploy to the server just to test simple UI changes. **The Fix** We built a **Custom Mock Debugger** directly into our development build. This component simulates the Frame context by injecting dummy Farcaster IDs and wallet signatures. This allowed us to test the entire scan and pay flow in a standard browser without triggering Frame validation errors, reducing our iteration time from minutes to seconds. ### 4. Audit-Grade Historical Pricing **The Context** Tax reporting requires precision. Using the current price of ETH to calculate the tax for a trade that happened months ago is legally invalid. **The Hurdle** Most free crypto APIs only return the latest price. Fetching granular historical data for thousands of swaps usually hits rate limits instantly or requires expensive enterprise plans. **The Fix** We implemented a **Timestamp-Based Oracle** system. Instead of querying a simple price feed, our engine captures the specific block timestamp of every transaction. We then query **Pyth Network** benchmarks for that exact second to fetch the USD value and map it to the daily forex rate. This ensures our PDF reports reflect the historical reality and satisfy the cash basis requirement of the tax law.