◈ Mail → Excel

Excel export for Crypto accountants

By the Mail → Excel team · Updated 2026-10-20

Clients rarely export complete trade history; the email trail fills the gaps and proves the missing trades. This page lists the exact columns, an example row and the command that produces it.

Columns to keep

ColumnWhy it matters
exchangeWhich exchange or wallet provider sent the message.
tradeTrade description (pair and side).
feeFee amount with its own currency column.
cost_basisCost basis value as recorded; the method is chosen by the accountant.
periodMonth or quarter, so each export is a closed, auditable slice.

Example row

One real-shaped row from this role’s export:

exchangetradefeecost_basisperiod
KrakenBTC/USDT buy12.4061,2002026-Q3

Export it in one command

python mail_to_excel.py \
  --host imap.example.com --user you@example.com \
  --days 31 --fields exchange,trade,fee,cost_basis,period \
  --out crypto-accountant.xlsx

The --fields option is what turns a raw dump into a report your role can use.

Provider notes

Corporate mailboxes for accounting firms often enforce OAuth; confirm before relying on app passwords.

Two pitfalls that ruin the file

Next step

Step-by-step: export crypto accountant email to Excel · all roles · ready script ($3)

FAQ

Does this calculate cost basis?

No. It collects the rows; the method (FIFO, average) is chosen by the accountant.

What about staking rewards?

Add a «type» column and export reward notifications separately from trades.

Is there a ready script for this?

Yes — the Python script exports any IMAP mailbox with the fields listed above; it costs $3 and runs locally.

Related guides