Payment Processing & FinTech

How to Record Cryptocurrency On-Ramp Fees and Fiat-to-Crypto Exchange

Accounting for the revenue earned when a user purchases cryptocurrency using fiat currency within a digital wallet.

Account NameTypeDebit ($)Credit ($)
Cash - Safeguarding Account (from User)Asset (+)100.00-
Revenue - Crypto Exchange FeesRevenue (+)-2.00
Crypto Asset Liability (Held for User)Liability (+)-98.00

💡 Accountant's Note

When a user buys $100 of Bitcoin, the FinTech typically charges a fee (e.g., 2%). The FinTech receives $100 in fiat. They recognize $2 as immediate revenue and record a $98 liability representing the fair value of the crypto they are now holding on behalf of the user. Under Staff Accounting Bulletin (SAB) 121, public companies must record both an asset and a liability for the fair value of crypto held for users.

Practitioner & Systems Framework

💻 ERP Architecture

Requires a real-time link between the Crypto Liquidity Provider (e.g., Coinbase Prime) and the G/L. The liability must be 'Mark-to-Market' at the end of every reporting period, though the net impact on the P&L is zero if the firm holds the exact underlying asset.

⚠️ Audit Flags

Asset/Liability mismatch. If the firm 'internalizes' the trade (matches buyers and sellers without buying the underlying), they may have a delta/risk position that auditors will scrutinize.

📄 Required Documentation

Exchange execution log, user transaction receipt, and SAB 121 compliance memo.

Did you find the exact entry you were looking for?

Automate this entry with the JEH Accounting Suite

Stop doing manual entry. Our VBA-powered ERP automatically generates your ledgers, Trial Balance, and Financial Statements.

No Subscriptions. Own your data.

QA

Expert Analysis by Qusai Ahmad

General Accountant Supervisor & IFRS Specialist

Specialized in SAP GUI automation and Middle Eastern tax compliance. Building digital tools for the next generation of finance leaders.

LinkedIn Profile

Discussion & Community Questions

Loading comments...

Leave a comment (No sign-up required)