Is uncertainty about HMRC matching rules and manual spreadsheets slowing down client work? This guide focuses on how accountants can integrate crypto tools to automate matching rules, calculate CGT correctly and produce HMRC-ready records for Bitcoin and other cryptoassets.
Key takeaways: what to know in 1 minute
- Automate HMRC matching: use crypto tax tools to apply same-day, 30-day and Section 104 pooling rules consistently.
- Reduce manual errors: integration with ledgers and exchanges cuts reconciliation time by up to 70% for typical clients.
- Preserve audit trails: choose tools that export transaction-level evidence HMRC accepts.
- Calculate losses accurately: tools that implement matching rules avoid misreporting CGT on disposals.
- Onboarding matters: a clear API/key workflow and retention policy are essential for firm-wide rollout.
The UK uses a chronological set of matching rules for disposals of 'wasting assets' including crypto for CGT. Accountants integrating crypto tools must map these rules into the data model so disposals are matched to the correct acquisitions: same-day (matching acquisitions on the same day), 30-day (matching acquisitions in the next 30 days) and Section 104 pooling (grouping remaining holdings). A good crypto tool will expose how each disposal was matched and permit manual overrides with audit notes.
Key practical integration points:
- Import raw exchange/wallet data with timestamps and internal transfer flags.
- Maintain separate ledgers for custodial wallets versus private wallets to avoid false matches.
- Ensure the tool tags transfers between wallets as non-disposals so Section 104 pooling is not corrupted.
For official HMRC guidance see HMRC: Tax on cryptoassets.

Same-day rule: acquisitions on the same UTC day as the disposal are matched first. Tools should normalise timestamps to a chosen timezone and present the matched lot.
30-day rule: acquisitions in the 30 days after disposal (the 'bed and breakfast' window) match next. Integration must preserve time ordering and prevent double-counting when clients move assets between custodians.
Section 104 pooling: all remaining acquisitions of the same asset (e.g. BTC) form a pool; disposals reduce the pool using average cost. Tools must compute the pool average cost and show the pool evolution over time.
Implementation checklist for accountants integration: crypto tools:
- Ensure timestamp normalisation to UTC and show local offset.
- Provide step-through matching logs (same-day, 30-day, pool) per disposal.
- Allow export of matched-lot reports in CSV and PDF for self-assessment attachments.
HMRC expects disposals to be matched by the rules above. When accountants adopt crypto tools, outputs should demonstrate the matching sequence for each disposal and the resulting CGT computation. Tools that merely provide aggregate gains without lot-level evidence increase risk on enquiry.
Recommended features in a tool for matching transparency:
- Per-disposal breakdown showing matched acquisitions with timestamps, quantities and acquisition costs.
- Visual timeline to show how same-day and 30-day matches were applied.
- Audit notes field to justify manual reallocation, with user, date and reason.
Cite HMRC consolidated guidance: HMRC cryptoassets guidance collection.
| Feature |
Why it matters |
Integration must-haves |
| Lot-level matching |
Supports HMRC enquiries and accurate CGT |
API or CSV import; match logs; exportable reports |
| Pool tracking |
Essential for Section 104 calculations |
Pool history and average cost per asset |
| Transfer labelling |
Avoids misclassifying internal moves as disposals |
Manual tagging, heuristics and watchlists |
Allowable losses arise when disposal proceeds are less than the matched acquisition cost(s). Correct application of the matching rules affects which costs are matched and therefore whether a loss is allowable.
Calculation steps a tool must implement:
- Identify matched acquisitions (same-day, 30-day, pool).
- Sum acquisition costs and any allowable incidental costs (fees charged by exchanges that qualify).
- Subtract proceeds to determine gain or loss.
- Label loss as allowable or non-allowable according to whether the disposal meets HMRC disposal criteria.
Accountants should confirm which fees the tool treats as incidental costs and be able to override or annotate them. For firms, this should be codified in client engagement letters.
HMRC expects transaction-level records similar to conventional securities: dates, amounts, value in GBP at time of transaction, counterparty information where available, and supporting evidence for cost bases.
Minimum records a tool should produce:
- Raw imports (exchange statements, wallet exports) with file hashes for integrity.
- Per-transaction GBP valuations showing exchange rates or price source.
- Matched-lot records with timestamps and matching rule applied.
- Exportable ledger entries mapped to the practice chart of accounts.
Integration best practice:
- Store raw files on the firm’s document management system and link in the tool.
- Maintain retention policy consistent with HMRC (recommended six years for self-assessment).
- Create an audit pack per client that contains export of matched disposals, pool schedules and reconciliations.
Authoritative resources: HMRC records to keep.
Onboard to report: simple workflow
🔁 Client data flow
📥 Client provides API/CSV → 🔐 Tool imports & normalises → 🔎 Tool applies matching rules → 📊 Accountant reviews & annotates → 📤 Export HMRC-ready reports
Example 1 — same-day match (simplified):
- Client disposes 1 BTC at 11:00 on 2025-06-01.
- Client bought 0.5 BTC at 09:00 on 2025-06-01 and 0.5 BTC earlier in March 2025.
- Tool applies same-day rule and matches 0.5 BTC bought at 09:00 first; the balance 0.5 BTC is matched to the Section 104 pool.
- Result: realised gain = proceeds less cost of matched 0.5 BTC and proportionate pool cost.
Example 2 — 30-day bed-and-breakfast risk (simplified):
- Client sells 2 BTC on 2025-07-10 and re-buys 2 BTC on 2025-07-20.
- Purchases within 30 days are matched under the 30-day rule; without a tool this often leads to incorrect matching, misreported gains and missed losses.
- Tool shows 30-day matches and allows the accountant to flag transfers that should be considered internal moves rather than fresh acquisitions.
Example 3 — Section 104 pool average cost:
- Pool contains 3 BTC at average cost £30,000 per BTC.
- Disposal of 0.75 BTC reduces pool; tool recalculates average and provides pool ledger showing remaining units and pooled cost.
Each example should produce an exportable matched-lot report. Firms are recommended to keep a version-controlled archive of these exports.
✅ Benefits / when to apply
- Automates complex matching rules and reduces time spent on manual lot matching.
- Produces HMRC-friendly evidence and audit packs.
- Scales for multi-client accountancy firms with role-based access control.
⚠️ Errors to avoid / risks
- Relying on tools that do not support transfer labelling, causing internal wallet moves to be treated as disposals.
- Using tools that lack exportable audit trails or do not disclose matching logic.
- Failing to agree on data retention and API key handling in client engagement letters.
Questions frequently asked
Most tools accept CSV exports or connect via read-only API keys; best practice is to validate imported data against exchange statements and store raw files.
Yes. Reputable tools implement same-day, 30-day and Section 104 pooling and show the matching sequence for each disposal.
What records should be exported for an HMRC enquiry?
Per-transaction records, matched-lot reports, GBP valuations and original exchange/wallet exports with checksums.
Are transfer fees and exchange commissions allowable costs?
Some incidental costs are allowable; the tool should permit specifying which fees are included in cost base and produce a rationale in the audit pack.
How should an accountant handle manual overrides to matching?
Document the reason, user and date in the tool, keep source evidence and reflect the decision in the audit pack.
Your next step:
- Review current client cases and identify those with multi-exchange activity to prioritise tool rollout.
- Run a pilot: connect API/CSV for 2–3 clients and evaluate matching logs and export quality.
- Update engagement letters and internal SOPs to include data retention and API key handling.