Back to Guides
Pulse2Pay TeamJanuary 5, 20253 min read

Crypto Accounting and Reconciliation for Merchants

Best practices for tracking, reconciling, and reporting cryptocurrency payments for your business.

Accepting cryptocurrency payments introduces new considerations for your accounting workflow. This guide covers best practices for tracking, reconciling, and reporting crypto transactions.

Record-Keeping Fundamentals

For each payment, record:

FieldDescriptionExample

|-------|-------------|---------|

Payment IDUnique identifierpay_abc123 External IDYour order referenceorder_12345 Gross AmountAmount before fees100.00 USDT Fee AmountProcessing fees1.30 USDT Net AmountAmount after fees98.70 USDT TX HashBlockchain transactiona1b2c3... TimestampConfirmation time2025-01-15 10:30:00 UTC

Daily Reconciliation

Step 1: Export Transactions

Download your daily transaction report from the dashboard:

  • Go to Payments > Export
  • Select date range
  • Choose CSV or JSON format
  • Download report
  • Step 2: Match with Orders

    Cross-reference external_id with your order system:

    SELECT
    

    o.order_id,

    o.total,

    p.amount,

    p.net_amount,

    p.status

    FROM orders o

    LEFT JOIN payments p ON o.order_id = p.external_id

    WHERE p.created_at >= '2025-01-15'

    Step 3: Verify Totals

    Ensure totals match:

  • Sum of gross amounts
  • Sum of fees
  • Sum of net amounts (what you receive)
  • Fee Tracking

    Track fees separately for accurate reporting:

    Processing Fees (Expense Account)
    

    β”œβ”€β”€ January: $45.30

    β”œβ”€β”€ February: $52.10

    └── March: $61.20

    Access fee details via API:

    GET /api/v1/merchant/payments?from=2025-01-01&to=2025-01-31
    

    Response includes fee breakdown:

    {
    

    "payments": [...],

    "summary": {

    "total_gross": 5000.00,

    "total_fees": 65.00,

    "total_net": 4935.00,

    "count": 150

    }

    }

    Tax Considerations

    Disclaimer: This is general guidance. Consult a tax professional for your jurisdiction.

    Common Approaches

  • Mark-to-Market: Record at USD value when received
  • FIFO: Track each receipt for capital gains (if holding)
  • Immediate Conversion: Convert to fiat and record fiat value
  • What to Track

  • Date and time of receipt
  • USD equivalent at time of receipt
  • Conversion rate if applicable
  • Any exchange fees
  • Reporting

    Monthly Reports

    Generate monthly summaries for:

  • Total payment volume
  • Average transaction size
  • Fee totals
  • Successful vs. failed payments
  • Quarterly Review

  • Compare crypto vs. traditional payment volumes
  • Analyze customer payment preferences
  • Review fee optimization opportunities
  • Webhook Data for Accounting

    Use webhook payloads to automate accounting entries:

    app.post('/webhook', async (req, res) => {
    

    const { event, payment } = req.body;

    if (event === 'payment.confirmed') {

    await createAccountingEntry({

    date: new Date(payment.confirmed_at),

    gross: payment.amount,

    fees: payment.fee_amount,

    net: payment.net_amount,

    reference: payment.external_id,

    tx_hash: payment.tx_hash

    });

    }

    res.status(200).send('OK');

    });

    Settlement and Withdrawals

    Pulse2Pay settles to your specified wallet. Track:

  • Settlement date
  • Settlement amount
  • Network fees (if any)
  • Receiving address
  • Best Practices

  • Automate data capture: Use webhooks to log transactions
  • Reconcile daily: Catch discrepancies early
  • Separate fee tracking: Clear expense categorization
  • Document everything: TX hashes provide audit trails
  • Regular backups: Export data periodically
  • Related Resources

  • Pricing & Fees Explained
  • API Reference
  • Dashboard Guide
  • #accounting#reconciliation#reporting#business

    Ready to get started?

    Create your merchant account and start accepting crypto payments today.