Verifiable NFT Receipts
for Crypto Payments

Generate permanent, verifiable receipts as compressed NFTs on Solana. Immutable proof for every transaction.

On-Chain Arweave Storage On-Chain NFTs x402 Payments

For Humans and Agents

Everything you need for compliant, verifiable crypto payment receipts

Structured Data

Rich metadata with all transaction details

Permanent

Metadata stored forever on Arweave

Low Cost

Compressed NFTs for maximum efficiency

Chain Verified

Amount & wallets fetched from blockchain

Reliable

Auto-retry queue with 3 attempts

Create Your Receipt

Mint a verifiable NFT receipt for any Solana transaction

The Solana transaction signature to create a receipt for
Security: Wallet addresses and amount are automatically fetched from the blockchain. You must be the payer or seller to mint a receipt.
This determines which country field is auto-filled from your location
Optional - for jurisdiction tracking
For reconciliation with accounting software
Enter any Solana transaction signature to verify payment details
The 12-character receipt ID from a minted receipt

Convert any transaction to your local currency. Enter a transaction signature and select your country to calculate the value at the time of the transaction.

The Solana transaction to calculate local currency for

Look up USDC transfers by counterparty wallet or transaction signature.

Enter a wallet to see all transfers, or a TX signature to look up a specific transaction
@

Enter a wallet or transaction above

View transfers with a counterparty or look up a specific transaction.

Pay Per Use

No subscriptions. No accounts. Just pay when you mint.

0.1% of transaction value
$0.10
minimum
$5.00
maximum
FREE
under $1 TX
✓ Permanent storage ✓ On-chain NFT ✓ x402 payments

API for Developers

Base URL https://api.apocha.cc
GET /wallet/{w}/receipts?counterparty={w}
Get USDC transfers between two wallets (counterparty required)
POST /mint
Mint receipt NFT for a transaction (x402)
POST /statement
Generate statement NFT for multiple TXs (x402)
View full documentation →

Frequently Asked Questions

Everything you need to know about Apocha

Apocha (from Greek "receipt") generates verifiable NFT receipts for cryptocurrency transactions on Solana. Each receipt is minted as a compressed NFT (cNFT) with structured metadata stored permanently on Arweave. Receipts include transaction details, amounts, dates, and wallet addresses - providing immutable proof of payment.
x402 is a payment protocol designed for the agentic economy - enabling AI agents and applications to pay for API calls programmatically. When you request a receipt, you receive a 402 Payment Required response with payment details (amount, wallet, network). Your application sends a USDC payment transaction, then retries the request with the transaction signature in the X-Payment header. The wallet that pays the fee must be a participant in the original transaction - this proves ownership without requiring interactive wallet signing.
Yes! Transactions under $1 USDC are free. This supports micropayments and the x402 ecosystem. The receipt NFT is still minted with full metadata.
Only participants in a transaction can mint its receipt. When you pay the x402 fee, your wallet address is verified against the original transaction - you must be either the payer or the seller. This prevents unauthorized parties from claiming transactions as their own. The act of paying for the receipt proves you control one of the participating wallets.
Each receipt includes: transaction signature, amount, asset type, date, sender and receiver wallet addresses, service description, and optional fields like invoice ID and country. All metadata is stored permanently on Arweave and linked to your NFT.
Each receipt attribute is marked with its source. Chain-verified data (amount, wallets, timestamp, token) is fetched directly from the Solana blockchain and cannot be falsified. Self-reported data (service type, invoice ID, description) is provided by the user for convenience but is not verified by Apocha. This distinction is clearly marked in the receipt metadata.
Your privacy is a priority. The on-chain NFT includes a Domestic_Sale boolean (true/false) for tax classification, but no specific country codes are stored in the NFT metadata. We detect payer jurisdiction via IP at transaction time - these details (actual country codes) are stored in our private database and only accessible to sellers for tax reporting. Payers never see location data in their wallet. This approach gives sellers the tax compliance info they need while protecting payer privacy on-chain.
Your receipt data is preserved in three places: (1) The NFT metadata on Arweave is permanent and immutable - it exists forever even if the NFT is burned. (2) Our database maintains a record of all minted receipts, preventing duplicate minting and enabling receipt lookup. (3) The original blockchain transaction is always verifiable. If you burn your NFT, you cannot mint another receipt for the same transaction.
For individual receipts, we charge 0.1% of the transaction value (min $0.10, max $5) via x402 micropayment. Transactions under $1 are completely free. For AI agents using the /statement endpoint, pricing is tiered by transaction count: $1 for 1-10 transactions, $3 for 11-50, and $5 for 51+. All payments are in USDC on Solana.
Compressed NFTs use Solana's state compression via Metaplex Bubblegum to store NFT data in a Merkle tree, reducing on-chain storage costs by over 99%. This allows us to mint receipts for approximately $0.0005 in network fees while maintaining full NFT functionality. Metadata is permanently stored on Arweave via Irys, ensuring your receipts exist forever.
Absolutely! Our REST API is designed for easy integration. Use /mint to create individual receipts, /statement to batch process multiple transactions, /verify to check transactions, and /wallet/{address}/receipts?counterparty={wallet} to retrieve transfer history between two wallets. AI agents can use the /statement endpoint to get consolidated reports with JSON and CSV output. Check the API documentation for details.
We support all major tokens with registered DTIF codes for accurate tax reporting. This includes stablecoins (USDC, USDT, PYUSD, DAI), major cryptocurrencies (SOL, ETH, BTC, and their wrapped versions), and popular DeFi tokens (JUP, RAY, ORCA, JTO, BONK). For tokens without a registered DTIF code, we generate a unique identifier based on the token address.