Оптовая платформа цифровых товаров

Multi-currency B2B-учёт 2026: ERPNext, Xero, QuickBooks для цифровых резеллеров

Гид по multi-currency accounting для дистрибьюторов: ERPNext, Xero, QuickBooks, USD reporting и FX revaluation.

Multi-currency B2B-учёт 2026: ERPNext, Xero, QuickBooks для цифровых резеллеров

Multi-currency-учёт — это не «бухгалтер вручную пересчитает в Excel». При обороте $500k+ в месяц с закупкой в USD и продажей в RUB ошибки в FX-переоценке съедают 2–5% маржи и создают tax-несоответствия. Эта статья — практический разбор production-стеков для multi-currency accounting.

1. Архитектура «USD reporting + RUB receivables»

Стандартный setup для российского дистрибьютора:

  • Functional currency (основная) = RUB (locally compliant)
  • Presentation currency (reporting) = USD (для investors/management)
  • Foreign currency = USD (поставщики), USDT (часть платежей)

Каждая транзакция хранится в трёх измерениях: original currency amount, functional currency amount (по spot rate на день транзакции), presentation currency amount (по closing rate периода).

2. ERPNext — open-source choice

ERPNext поддерживает multi-currency из коробки. Чарт счетов:

1100 - Bank Account (USD)              [foreign]
1110 - Bank Account (RUB)              [functional]
1120 - USDT Wallet (USDT)              [foreign]
1200 - Accounts Receivable             [functional]
2100 - Accounts Payable FoxReload      [foreign currency: USD]
5100 - Cost of Goods Sold              [functional]
6900 - FX Gain/Loss (Unrealized)       [functional]
6910 - FX Gain/Loss (Realized)         [functional]

Monthly closing job в ERPNext через scripted scheduler:

# custom_app/erpnext/fx_revaluation.py
def monthly_fx_revaluation():
    closing_rate = get_rate('USD', 'RUB', closing_date())
    for acc in foreign_accounts(currency='USD'):
        balance_usd = acc.balance_in_currency('USD')
        revalued_rub = balance_usd * closing_rate
        diff = revalued_rub - acc.balance_in_base_currency()
        post_journal_entry(
            debit='6900 FX Unrealized',
            credit=acc.name,
            amount=diff,
            remarks=f'Monthly FX reval {closing_date()}'
        )

3. Сравнение ERPs

Tool Multi-currency FX reval Cost (mid-tier) USDT
ERPNext (self-host) Full Built-in $50/mo infra Custom
Frappe Cloud Full Built-in $200–500/mo Custom
Xero Full (Premium) Auto monthly $80/mo No
QuickBooks Online Limited (Plus+) Manual $90/mo No
Oracle NetSuite Full Auto $999+/mo Manual

Recommendation: для FoxReload-партнёров оборотом $50k–5M — ERPNext (self-host или Frappe Cloud). Xero — если основная юрисдикция UK/AU/NZ. QuickBooks — только США с low FX-volume.

4. Интеграция с FoxReload API

Pull транзакций для daily reconciliation:

curl -X GET "https://api.foxreload.com/v1/transactions?date=2026-05-17&format=csv" \
  -H "Authorization: Bearer $KEY" \
  -o transactions_2026-05-17.csv

Импорт в ERPNext через Data Import Tool или python-script. Mapping:

FoxReload field ERPNext field
transaction_id voucher_no
wholesale_amount_usd debit_in_account_currency (USD)
commission_usd credit_in_account_currency (USD)
order_id reference_no
delivered_at posting_date

Cron каждые 6 часов: pull → diff → POST в ERPNext через REST API.

CTA

FoxReload exporting transactions в CSV/JSON и поддерживает webhook-driven sync для real-time accounting. Получите доступ и подключите ERP к FoxReload за день.

Часто задаваемые вопросы

Какая ERP лучше всего подходит для B2B-резеллера с USD-закупкой и RUB-продажей?
ERPNext (или его enterprise-форк Frappe Cloud). Поддерживает native multi-currency на уровне chart of accounts, monthly FX revaluation, и custom reporting в USD при ведении журнала в RUB. Cost: $50–500/мес против $5k+/мес у Oracle NetSuite.
Что такое FX revaluation и зачем он нужен?
Ежемесячная переоценка foreign currency-балансов по closing-rate. Например, у вас $100k payable на 1-е число (USD/RUB 92.00 = 9.2M RUB), на 31-е (USD/RUB 95.00 = 9.5M RUB) — 300k RUB unrealized FX loss попадает в P&L. Обязательно по IFRS/IAS 21 и US GAAP ASC 830.
Можно ли вести учёт сразу в USDT?
Технически — да, налогово — зависит от юрисдикции. В РФ USDT учитывают как цифровой финансовый актив (ЦФА), в ЕС — как crypto-asset под MiCA. ERPNext и QuickBooks не имеют native USDT-валюты, придётся создавать custom currency с manual rate-updates.
Как автоматизировать импорт FoxReload-транзакций в ERPNext?
FoxReload отдаёт CSV/JSON-выгрузку через GET /v1/transactions с фильтром по дате. ERPNext имеет Data Import Tool для CSV или REST API для real-time sync. Стандартный setup — cron-job каждые 6 часов: pull от FoxReload → POST в ERPNext.
Получить доступ к FoxReload API

Похожие статьи