Insights on Crypto Payments, Infrastructure, and Operations

Crypto Accounting for Businesses: A Practical Workflow

Crypto accounting records for business payments and treasury activity

Accepting a crypto payment creates more than a blockchain transaction. The business must connect that payment to an invoice, determine its value in the accounting currency, separate fees, track conversions, and explain where the funds eventually moved. Crypto accounting for businesses turns payment activity into structured financial records that Finance can reconcile, review, and report without relying on wallet screenshots or manual estimates.

What Does Crypto Accounting Need to Explain?

Une blockchain shows that digital assets moved between addresses. However, it does not explain the commercial reason for the transfer or how the business should report it.

Accounting must answer questions such as:

  • Which customer or invoice produced the payment?
  • When did the business recognize the financial event?
  • What was the payment worth in the business’s accounting currency?
  • Which asset and network did the customer use?
  • What processing, network, or conversion fees applied?
  • Was the asset held, converted, withdrawn, refunded, or paid out?
  • Can the final balance be reconciled with payment activity?

This is why crypto accounting is not simply transaction tracking.

A reliable accounting record connects four layers:

Business order → Crypto payment → Treasury movement → Financial record

Le guide cycle de vie d’un paiement crypto explains how a payment moves from commercial intent through blockchain processing, acceptance, settlement, and final record creation.

Payment Status and Accounting Status Are Different

Payment systems and accounting systems answer different questions.

A payment system asks:

Is this payment valid and ready for the business to act on?

An accounting system asks:

What financial event occurred, when should it be recognized, and how should it be measured?

A transaction may be visible on a blockchain before the payment meets the merchant’s acceptance rules. Similarly, confirmation may occur before the payment has been matched to the correct invoice or recorded in the accounting system.

A useful sequence is:

  1. Detected: the transaction appears on the network.
  2. Confirmed: it reaches the required network state.
  3. Accepted: the merchant considers the payment complete under its operating rules.
  4. Recorded: the financial event enters the accounting system.
  5. Reported: the transaction becomes part of internal or external financial reporting.

Detection alone does not establish revenue. Likewise, confirmation alone does not define the accounting treatment. Instead, the business must apply a documented accounting policy to the accepted payment and the related commercial transaction.

Establish the Accounting Policy Before Recording Payments

Businesses should define their crypto accounting policy before transaction volume grows.

La politique doit déterminer :

  • the business’s functional or accounting currency;
  • the point at which a payment enters the accounting workflow;
  • the approved source and timestamp for valuation;
  • how different crypto assets are classified;
  • how processing and network fees are recorded;
  • how conversions are treated;
  • how refunds, underpayments, and overpayments are handled;
  • how wallet movements and payouts are distinguished from revenue;
  • which records Finance must preserve.

The correct treatment depends on the accounting framework, jurisdiction, asset, and facts of the transaction.

Under the IFRS Interpretations Committee’s 2019 decision for cryptocurrencies meeting its stated characteristics, IAS 2 applies when crypto is held for sale in the ordinary course of business; otherwise, IAS 38 generally applies. The Committee also concluded that those cryptocurrencies did not meet the definition of cash.

Under US GAAP, FASB ASU 2023-08 requires certain in-scope crypto assets to be measured at fair value each reporting period, with changes recognized in net income. Tokens with different contractual rights, including some stablecoins, may require different analysis.

Therefore, businesses should confirm their treatment with a qualified accounting professional.

Review the IFRS decision et FASB’s crypto-asset standard.

What Should Be Recorded for Every Crypto Payment?

Every accepted payment should connect the blockchain transaction to the business event that caused it.

A practical record may contain:

FieldPourquoi c’est important
ID de commande ou de factureConnects the payment to the sale
Payment or Track IDIdentifies the gateway payment record
Transaction hashConnects the record to blockchain evidence
Customer referenceIdentifies the payer or account
Asset and networkShows exactly what was received
Crypto amountPreserves the original asset quantity
Accounting-currency valueRecords the value under the approved policy
Valuation timestamp and sourceMakes the measurement reproducible
Payment acceptance timeShows when the payment became actionable
Processing feeSeparates provider cost from revenue
Frais de réseauRecords on-chain movement costs
Conversion detailsTracks changes from one asset to another
Refund or adjustmentPreserves later corrections
Settlement or payout referenceExplains where the funds moved
Journal or ledger referenceConnects payment data to accounting entries

OxaPay’s Generate Invoice endpoint allows a merchant to include its own order_id and returns a track_id for the payment session. Payment Information can then retrieve the specific payment using that Track ID.

As a result, these references create the connection between the merchant’s commercial record and the gateway payment record.

See Generate Invoice et Payment Information d’OxaPay.

Practical crypto payment accounting workflow for businesses

A Practical Crypto Payment Accounting Workflow

Step 1: Create the Payment with a Business Reference

The accounting trail should start when the payment request is created, not after funds arrive.

Attach the merchant’s Order ID, invoice reference, customer account, or subscription reference to the payment. In addition, store the gateway’s payment identifier immediately.

This prevents Finance from later receiving a list of blockchain transactions with no clear commercial context.

Step 2: Record the Accepted Payment

When the payment reaches the merchant’s approved acceptance state, connect it to the correct order and create the accounting event according to the business’s policy.

The record should preserve:

  • the crypto quantity received;
  • the payment asset and network;
  • the accounting-currency value;
  • the valuation source and timestamp;
  • the related invoice or order;
  • applicable fees.

Avoid replacing the crypto amount with only its fiat value. Finance may need both values to review holdings, conversions, refunds, and later balance movements.

Step 3: Separate Gross Revenue from Fees

Businesses often record only the net amount that appears in their balance. However, this hides the true transaction economics.

Suppose a customer pays the equivalent of $1,000 and the payment service deducts a $10 processing fee. The financial record may need to preserve:

  • gross sale: $1,000;
  • processing expense: $10;
  • net asset received: $990.

The exact journal treatment depends on the company’s accounting policy. Nevertheless, the underlying records should keep revenue and payment costs separate.

Possible crypto payment costs include:

  • gateway processing fees;
  • blockchain network fees;
  • conversion fees or spreads;
  • withdrawal costs;
  • refund transaction costs;
  • treasury movement costs.

Separating these categories helps the business understand its real payment margin.

Step 4: Treat Asset Conversion as a Separate Event

Receiving crypto and converting crypto are two different events.

Par exemple :

Customer payment in BTC → BTC accepted → BTC converted to USDT

The accounting trail may need to preserve:

  • BTC quantity received;
  • BTC value at the payment recognition point;
  • conversion time;
  • conversion rate;
  • conversion fee;
  • USDT amount received;
  • any resulting difference under the applicable accounting policy.

Do not replace the original payment record with the converted amount. The original payment proves what the customer paid. In contrast, the conversion record explains what Treasury did afterward.

For merchants that prefer an automatic post-payment conversion policy, see Conversion automatique en USDT.

OxaPay also provides Swap functionality and rate information that businesses can connect to their treasury records.

Review OxaPay Swap et Swap Rate.

Step 5: Distinguish Treasury Movements from Revenue

Moving funds between business-controlled balances does not usually represent a second sale.

Examples include:

  • moving crypto from a gateway balance to a company wallet;
  • transferring assets between operational and reserve wallets;
  • consolidating balances;
  • withdrawing funds to a treasury address;
  • sending funds to an exchange or liquidity provider.

These movements should preserve:

  • source and destination;
  • actif et réseau ;
  • le montant ;
  • transfer fee;
  • transaction reference;
  • business purpose;
  • authorization.

Without this distinction, internal movements can be mistaken for new income or unexplained expenses.

If a business moves eligible received payments automatically to an external treasury wallet, the process should remain traceable to the original payment. See Retraits automatiques de cryptomonnaies pour les commerçants.

For the broader relationship between payment acceptance, conversion, balances, and treasury movement, see rapport sur les modèles de règlement des paiements crypto.

OxaPay’s Account Balance endpoint provides currency-level balances, while Payout History can filter payout records by time, status, amount, currency, network, and internal or external type.

See Account Balance et Payout History.

Step 6: Record Exceptions and Adjustments

Not every payment follows the expected path.

Accounting workflows should address:

  • underpayments;
  • overpayments;
  • late or expired payments;
  • duplicate payments;
  • manually accepted payments;
  • les remboursements ;
  • failed or rejected payouts;
  • corrections to an order-payment match.

An underpayment should not silently appear as a discounted sale unless the business deliberately approves that treatment. Likewise, an overpayment should not automatically become revenue. A refund should update the payment, order, customer, treasury, and accounting records.

For operational handling of these cases, see How to Handle Underpaid and Expired Crypto Invoices.

Each manual decision should record:

  • who approved it;
  • why it was approved;
  • which records changed;
  • when the change occurred;
  • the final financial outcome.

An Illustrative Payment Example

Assume a business issues a $1,000 invoice and the customer pays in ETH.

The payment record should preserve the ETH amount and the $1,000 commercial obligation. When the payment reaches the business’s approved acceptance state, the accounting process records the transaction based on its established policy.

If the business then converts the ETH to USDT, it should create a separate conversion record rather than rewriting the original payment.

If the business later withdraws the USDT to its treasury wallet, that withdrawal becomes another separate movement.

The complete trail is:

Invoice → ETH payment → payment fee → ETH-to-USDT conversion → withdrawal to treasury

Each stage answers a different question:

  • Invoice: Why did the customer pay?
  • Payment: What asset was received?
  • Fee: What did processing cost?
  • Conversion: How did the held asset change?
  • Withdrawal: Where did the asset move?

This example is illustrative. Therefore, the journal entries and measurement rules depend on the business’s accounting framework and professional advice.

Reconcile Before Financial Close

Accounting records are only reliable when they agree with the underlying payment and treasury activity.

A regular reconciliation should compare:

  • orders and invoices;
  • les paiements acceptés ;
  • Order IDs and Track IDs;
  • transaction hashes;
  • refunds and adjustments;
  • gateway fees;
  • les conversions ;
  • account balances;
  • payouts and withdrawals;
  • accounting entries.

OxaPay’s Payment History endpoint lets merchants retrieve and filter payment records by criteria including date range, status, payment type, amount, Track ID, asset, and network. As a result, it can provide one source for scheduled review and reconciliation.

Review OxaPay Payment History.

Reconciliation identifies whether the records agree. Accounting, however, determines how the verified events should appear in the financial system.

Stablecoins Can Reduce Volatility, Not Accounting Responsibility

Stablecoins may make payment values more predictable than volatile assets, but they do not eliminate the need for structured records.

Businesses should still preserve:

  • the exact stablecoin;
  • blockchain network;
  • quantity received;
  • accounting-currency value;
  • les frais ;
  • conversion activity;
  • issuer or counterparty exposure where relevant;
  • refunds and treasury movements.

Not every stablecoin has the same legal, contractual, redemption, or accounting characteristics. Therefore, “stablecoin” is an operational category, not a complete accounting classification.

Common crypto accounting mistakes businesses should avoid

Common Crypto Accounting Mistakes

Recording Every Incoming Transaction as Revenue

Wallets may receive internal transfers, refunds, test transactions, deposits, or unrelated funds. Revenue requires business context.

Keeping Only the Fiat Value

The original crypto quantity, asset, network, and transaction reference may be needed for later valuation, conversion, refund, and reconciliation.

Recording Only Net Receipts

Combining revenue, fees, and conversion costs into one number hides payment profitability.

Treating Confirmation as the Accounting Policy

Blockchain confirmation establishes network evidence. However, it does not independently define revenue recognition or asset classification.

Ignoring Conversion Events

Converting BTC to USDT changes the asset held and may create additional measurement and reporting requirements.

Treating Wallet Transfers as New Income

Transfers between business-controlled accounts normally represent asset movement, not a new customer sale.

Depending on Current Prices for Historical Records

OxaPay’s Prices endpoint provides current prices for supported cryptocurrencies. Businesses should still store the approved valuation source and timestamp when the accounting event occurs because a current price does not reconstruct the value used earlier.

See OxaPay Prices.

How OxaPay Supports Crypto Accounting Workflows

OxaPay does not replace accounting software or determine the accounting treatment of a crypto asset. Instead, it provides payment and treasury data that businesses can connect to their accounting workflow.

Relevant capabilities include:

  • merchant-defined Order IDs;
  • unique payment Track IDs;
  • Payment Information for individual records;
  • searchable Payment History;
  • des statuts de paiement documentés ;
  • account-balance data;
  • Swap functionality and rates;
  • Payout Information and Payout History;
  • Webhooks for payment-state updates.

OxaPay Webhooks notify merchants when relevant payment statuses change, helping business systems capture payment events as they occur. Nevertheless, the accounting system should still apply the merchant’s policy before creating or finalizing the financial record.

Review OxaPay Webhooks.

The most reliable model is:

OxaPay provides structured payment evidence. The merchant’s accounting policy determines the financial treatment.

Turn Crypto Payments into Financially Explainable Records

Crypto accounting becomes manageable when every payment retains its business context.

A reliable workflow should:

  1. connect the payment to an order or invoice;
  2. preserve the crypto asset and amount;
  3. apply a consistent valuation policy;
  4. record fees separately;
  5. treat conversions as separate events;
  6. distinguish treasury transfers from revenue;
  7. document refunds and manual adjustments;
  8. reconcile payment, balance, and accounting records.

La passerelle de paiement crypto OxaPay provides the identifiers, payment history, balance information, Swap data, and payout records businesses need to build this trail.

By connecting those records to an approved accounting policy and professional review, merchants can move beyond simply receiving crypto and create financial records that remain understandable as payment volume grows.

FAQ

Partager cet article
URL partageable
Prev Post

The Total Cost of Crypto Payment Infrastructure

Article suivant

Payment Gateways, Payment Processors, and Merchant Accounts

Lire la suite