EasyCom

Settlement → journal, not settlement → spreadsheet

Your marketplace payout is not your revenue.

One Amazon deposit is sales, refunds, fifteen kinds of fee, tax you only collected, and two months of trading netted together. EasyCom pulls that settlement, classifies every line, and posts an accrual journal that ties to the bank to the cent.

  • Zero variance the journal is refused if it misses the payout by a cent
  • No “Other” bucket an unmapped fee stops the journal and names itself
  • No developer keys pasted in the app, proven before they are saved
Settlement · Amazon · 16 Jun – 14 Jul
Payout deposited 18 Jul · 4,271.60
Ties to bank
Variance
0
Debits = Credits
5,302.80
Months split
2
LineAccountAmount
Product sales4000 · Sales4,910.00
Marketplace tax2200 · Tax payable392.80
Referral + FBA fees6100 · Fees-871.40
Refunds4100 · Contra-rev-159.80
Bank · Amazon payouts1010 · Bank4,271.60
Posted June slice → June P&L · July slice → July · cash on deposit date

The problem

Booking the deposit as revenue is fiction

One deposit ≠ one month

A settlement period straddles month-end. Book it whole and every month is wrong by half a settlement — permanently.

One deposit ≠ one transaction

Sales, shipping, discounts, refunds, referral fees, FBA fulfilment, storage, ad spend, reimbursements, reserves. Net them and the P&L is meaningless.

Tax is not yours

The marketplace collects and remits sales tax. Record it as revenue and you overstate turnover, overstate margin, and invent a tax liability you don't owe.

The dashboard is not the source. The payment view hides fee detail. Only the settlement report is authoritative — which is exactly what EasyCom reads.

How it works

Three steps, one hard rule

01

Pull the settlement

Connect the channel once with its own key — or drop its export in. EasyCom calls the provider server-side on a schedule, so nobody downloads a report on a Friday night.

  • Amazon SP-API signed in-app (no SDK, no AWS account)
  • Shopify admin token, WooCommerce keys, Authorize.net login/key
  • Credentials encrypted at rest, live-tested before they save
02

Classify every line

Each row becomes a transaction type — not an account yet. Sales, shipping, discount, refund, each fee family, tax collected, reserve, reimbursement.

  • Unknown fee → journal blocked, fee named, one click maps it forever
  • Mapping suggestions carry a confidence score
  • Never swept into an “Other” line
03

Post the journal

Aggregate by transaction date, split the payout across the months it earned, post cash on the deposit date, and refuse anything that doesn't balance.

  • Debits = Credits and components = payout, or no post
  • One bank + one clearing account per channel
  • Export for QBO / Xero, or the audit trail as CSV

Channels

Connect what you actually sell on

ChannelWhat you pasteBooked asBank account
AmazonPrivate SP-API app refresh token — signed inside EasyComPayout1010
Shopifyshpat_… admin API tokenPayout1011
EtsyOAuth token, or the Finances CSVDeposit1012
WooCommerceConsumer key + secretOrders → clearing, cash later1013
Authorize.netAPI Login ID + Transaction KeyBatch settlement1014
Anything elseColumn mapper — point at date / type / amount oncePayout1015

Each channel gets its own bank and clearing account, so its residual is checkable on its own. Order-only channels accrue to clearing — the bank line waits for the money, which is why they can never be faked into tying.

What is verified, not claimed

Numbers from the running build

0
automated tests, one pass/fail count
0
cash variance on a tied settlement
0
export formats out of the box
0
hours between unattended per-channel syncs
Restatements

The provider changed a payout. Now what?

EasyCom posts an adjusting journal. The original entry is never rewritten — a closed period stays closed, and the correction is visible.

Landed cost

Contribution margin, not just tidy journals

Invoice + freight + duty + FX → weighted average unit cost → its own COGS journal. Cash never moves in a COGS entry.

Pricing

Your own instance, not a seat

Starter

$19/mo

$99 one-off setup

  • One channel
  • Accrual split + tie-to-bank
  • Unmapped fees blocked, never bundled
  • CSV exports for QBO / Xero
  • Period lock
Talk to us

Installed on your own server, or ours. Your books are never pooled with another client's.

Questions an accountant asks first

Before you trust it with a month

Does it post to QuickBooks or Xero directly?

Today it produces import-ready journals and its own audit trail as CSV — QBO and Xero journal import formats both. Direct API posting is the next step, not a claim on this page.

What happens when a fee is new?

The journal does not post. The fee is named, added to the mapping queue, and you map it once. Every later occurrence classifies itself.

Can it book a period I've already closed?

No. A period lock refuses anything dated inside a closed month. Late data arrives as an adjusting entry in the open period.

Is the sales tax really not revenue?

On a marketplace where the facilitator collects and remits, the tax is a pass-through liability. EasyCom separates it by default rather than folding it into sales.

Do I need a developer?

No. Every channel form is in the app with the literal click-path to find each key. Credentials are proven with a read-only call before they are stored.

What if the payout is restated weeks later?

An adjusting journal is posted against the same clearing account. Nothing already filed is rewritten, and the variance stays explainable.

Send us one settlement you've already closed by hand.

We run it through EasyCom and show you the journal, the tie-to-bank and the variance beside your own numbers. If it doesn't match, you've lost nothing.