Finance & Accounts · Reference Guide

Amazon A/R Aging: every number, traced to its source

How the month‑end Accounts Receivable Aging dashboard turns three raw Amazon transaction reports into a reconciled receivable — and exactly where each figure on every screen comes from.

Amazon‑only Local processing · no third‑party egress Reproduces the manual workbook to the penny
$11,110,433 USA closing receivable for Jan 2026 — the same figure as Detail!D11 in the hand‑prepared workbook. Below: precisely how it is built.

01How data flows through the system

Every figure you see is the end of a chain that starts in the raw Amazon files. Nothing is typed in by hand except the few inputs you choose (month‑end date, clearing‑lag, reserve, FX). The pipeline runs once when you click Run processing.

SOURCE
Amazon files
3× “Custom Unified Transaction” reports. The raw sheet only — the pivot tab is ignored.
PARSE
Read & normalize
Header auto‑detected at row 8; 30 columns mapped by name; ~2.4M rows streamed.
GROUP
Aggregate
Summed by marketplace × account type × settlement id; transfers separated.
CLASSIFY
Paid vs receivable
Clearing‑lag decides which settlements are still owed.
RESULT
Receivable + store
Receivable, reserve, reconciliation saved to a local database.
SHOW
Dashboard & Excel
Read back into the screens and the downloadable workbook.
The one number that matters most: the source column total (spreadsheet column AD) is the net amount of each transaction — product sales, taxes, shipping and all Amazon fees already netted together. Almost every figure on the dashboard is a filtered sum of this single column.

02The source data — what we read, what we use

Each Amazon file has a preamble (rows 1–7), a header on row 8, and data from row 9. There are 30 columns (A→AD). We map them by normalized name, not position, so a header rename doesn’t break anything. Of the 30, five columns drive the entire calculation:

The columns the engine relies on (the other 25 are carried through for the audit detail)
ColumnHeaderWhat it isUsed for
Adate/timeTransaction timestamp (text, e.g. “Jan 15, 2026 5:45:40 PM PST”)Date coverage; deciding if a payout has cleared
Bsettlement idAmazon’s settlement batch number — always increases over timeGrouping; the paid/receivable boundary
CtypeOrder, Refund, Adjustment, fees… and Transfer (a bank payout)Separating payouts from sales
Iaccount typeStandard Orders or Invoiced OrdersSplitting the two receivable streams
ADtotalNet amount of the row (all sub‑columns already summed)The amount summed for every figure
Why the pivot sheet is skipped. Each uploaded file contains a “Sheet1” pivot table that the Finance team built by hand. The app ignores it automatically and reads the single raw data sheet — the one whose row 8 contains settlement id, type and total.

03The four rules behind every figure

These four rules are the whole engine. Understand them and every number on the dashboard follows.

Rule 1 · Settlement status

Which settlements are still owed

Amazon pays you in settlement batches. When a batch closes it is paid out as a Transfer row that is tagged to the next batch. A settlement is receivable until the payout that clears it has actually reached the bank by month‑end. A payout counts as received only if its date is on or before month‑end − clearing‑lag (default 2 days), otherwise it is in‑transit.

# per marketplace & account type
paid_boundary = max(settlement_id of received transfers)
a settlement is receivable if settlement_id ≥ paid_boundary
               else paid
Rule 2 · The receivable base

“Additional sales after last payment”

For the settlements still owed, sum the total column — split by account type, and excluding the Transfer payout rows themselves. This is the workbook’s Additional sales after last payment line, and it is the bulk of the receivable.

additional_sales = Σ total
  where settlement is receivable
    and account_type in {Standard, Invoiced}
    and type ≠ Transfer
Rule 3 · The closing figure

Rounding, reserve & currency

Add the reserve (a small Finance‑maintained “Net Closing Balance”, ≈ 0, entered by you), round to whole units, then convert to USD at your rate. The marketplace‑level rounded figure is exactly the workbook’s Detail!D11.

receivable_local = ROUND( reserve + additional_sales , 0 )
receivable_usd   = receivable_local × fx_rate
# USA fx_rate = 1
Rule 4 · The safety check

Reconciliation identity

Every uploaded row lands in exactly one bucket, so the three buckets must add back to the uploaded total. If they don’t (beyond a $0.01 tolerance) the closing is flagged Unreconciled.

uploaded_total = receivable_orders
               + paid_orders
               + transfers_total
final_receivable = Σ receivable_usd + manual_adjustment
The reserve, explained. The reserve nets to about zero by design — it reconciles the last paid settlement against its bank payout, plus a prior‑month opening balance. It cannot be rebuilt exactly from the transaction files alone (a single payout clears several settlements, some from the previous month), so it is a small manual input. With the reserve left at 0 the USA figure is $11,110,308; entering the workbook’s Standard reserve of 125.44 gives the exact $11,110,433.

04Home & Overview — number by number

Below, “Source” names the database table the figure is read from and “Logic” is what produced it. The database is populated once during processing and every screen reads from it.

Dashboard (home)

On screenSourceLogic
Total closingssessionsCount of month‑end closings you’ve created.
Latest closing receivablereconciliation.final_receivable_usdThe most recent processed closing’s final figure (see Rule 3–4).
Processedsessions.statusHow many closings have finished processing.
Closings table → ReceivablereconciliationPer‑closing final receivable, one row each.

Closing → Overview (the summary cards)

CardSourceLogic
Closing Amazon Receivablereconciliation.final_receivable_usdΣ over marketplaces of ROUND(reserve+additional)×fx + manual adjustment.
Reconciliation statusreconciliation.statusReconciled when the identity (Rule 4) holds within $0.01.
Reserve totalreconciliation.reserve_totalSum of the reserves you entered.
Unpaid / paid / total settlementssettlements.statusCounts of settlements by status (Rule 1).
ExceptionsexceptionsCounts grouped by severity (error / warning / info).
Receivable ordersreconciliation.receivable_ordersΣ total over receivable settlements (all order rows).
Paid orders (settled)reconciliation.paid_ordersΣ total over paid settlements.
Transfers / disbursementsreconciliation.transfers_totalΣ total over all Transfer rows (bank payouts, negative).
Receivable transactionstransactions.receivable_flagCount of rows that belong to a receivable settlement.
Receivable by marketplacereceivable_results (TOTAL)Per‑marketplace local & USD receivable (Rule 3).

Trace: total grouped by settlement settlement marked receivable summed = Receivable orders ROUND(+reserve)×fx = Closing Amazon Receivable.

05Settlement Reconciliation — the cutoff you can see

This screen shows how the paid/receivable line was drawn, and lets you move it. Every row is a settlement batch summed from the source; the Disbursements block lists the Transfer payouts that set the boundary.

ColumnSourceLogic
Settlement idsettlements.settlement_idAmazon’s batch number (column B).
Accountsettlements.account_typeStandard or Invoiced (column I).
Orderssettlements.order_totalΣ total for non‑Transfer rows in the batch.
Transferssettlements.transfer_totalΣ total for Transfer rows in the batch.
Rows / Periodsettlements.row_count · first/last_dateRow count and date span, from column A.
Statussettlements.statusreceivable / from Rule 1.
Disbursement · Received?settlements.transfer_receivedReceived if payout date ≤ month‑end − clearing‑lag; else in‑transit.
The clearing‑lag control. Raising or lowering the lag (in days) re‑decides which payouts count as received and re‑runs the calculation. This is the one business judgment in the whole close: a payout initiated a day or two before month‑end usually hasn’t cleared the bank yet, so its settlement stays receivable.

06A/R Aging & Reconciliation

Accounts Receivable Aging

The aging matrix mirrors the workbook’s bands (Current / 1–30 / 31–60 / 61–90 / 91–Over). Because Amazon settles roughly every two weeks, the month‑end receivable is always Current — every other band is 0. Values come from receivable_results per marketplace and land entirely in the Current column.

Reconciliation

LineSourceLogic
Total uploaded transaction valuereconciliation.uploaded_totalΣ total over every row read.
Receivable ordersreconciliation.receivable_ordersOpen‑settlement order totals.
Paid ordersreconciliation.paid_ordersSettled order totals.
Transfers / disbursementsreconciliation.transfers_totalAll payouts.
Net Closing Balance (reserve)reconciliation.reserve_totalYour reserve input.
Manual adjustmentssessions.manual_adjustmentOptional override you enter.
Final closing receivablereconciliation.final_receivable_usdRule 3 + adjustment.
Identity differencereconciliation.identity_differenceuploaded − (receivable + paid + transfers); must be ≈ 0.
Status reads Reconciled only when the identity difference is within the rounding tolerance (default $0.01).

07Transaction Details & Exceptions

Transaction Details

The full drill‑down: every row we read, filterable by settlement, type, and paid/receivable status. Each row keeps a pointer back to its origin so any figure can be traced to a specific file and row for audit.

ColumnSource
Date · Settlement · Type · Account · Order ID · SKU · Totaltransactions.* (from source columns A, B, C, I, D, E, AD)
Recv (receivable?)transactions.receivable_flag — set by Rule 1
Source (file : row)transactions.source_file · source_row — the audit trail

Validation & Exceptions

Nothing questionable is silently dropped — it’s surfaced here instead.

missing_column
error a required column wasn’t found — must be fixed before finalizing.
unmapped_column
warning a header we didn’t recognize (carried through, not used).
duplicate_rows
warning identical rows detected (same settlement+type+order+SKU+time+amount) — e.g. overlapping files.
in_transit_…
a payout not yet received; noting why its settlement stays receivable.

08Worked example — how Jan 2026 reaches $11,110,433

The three January files contain eight settlement batches. The engine sums each, checks each payout’s date against the clearing‑lag, and draws the line. Here is the actual chain (Standard account shown; Invoiced follows the same pattern).

Standard Orders settlement chain — every figure is a sum of column total
SettlementNet ordersPayout (Transfer)Received by Jan‑31?Status
25327934061+4,471,987−15,323,854 · Jan 8yes
25434014921+3,244,455−3,244,605 · Jan 16yes
25468048861+9,556,111−9,555,842 · Jan 30no — in transitreceivable
25546871121+1,486,342— (February)noreceivable

The Jan‑30 payout was initiated one day before month‑end, so with a 2‑day clearing‑lag it counts as in‑transit — which keeps settlement 25468048861 fully receivable. Summing the two receivable batches (and adding the Invoiced stream and reserve):

Standard receivable  = 9,556,111 + 1,486,342 = 11,042,453.21
Invoiced receivable   = 67,854.71 # settlements 25342616501 + 25564376091
additional_sales     = 11,110,307.92
receivable_local     = ROUND( 125.44 reserve + 11,110,307.92 ) = 11,110,433
Why this is trustworthy: an automated test processes the three real January files and asserts this equals the hand‑prepared workbook’s Detail!D11, C10, B10 and C9 — every cell matches to the penny.

09The Excel workbook it generates

“Download Full A/R Aging Excel” produces a complete month‑end working file with live formulas — the same structure as the manual workbook, not a flat table export. It re‑reads the source files and writes every receivable transaction row (~1.2M) so an auditor can follow any total back to its evidence.

SheetWhat it holds
SummaryA/R Aging Summary — per‑marketplace × aging band, TOTAL, allowance, Net Receivable. Pulls from Detail.
DetailThe roll‑forward: additional sales, reserve, ROUND, rate, and USD subtotal — with cross‑sheet formulas.
COAThe FX table (local amount × rate = USD) per marketplace.
USA (1), USA (2)…Every receivable transaction row, with the bottom SUMIFS subtotals the Detail sheet references. Split across sheets to stay under Excel’s row limit.
ReconciliationThe Rule‑4 breakdown and status.
ExceptionsEverything from the Validation screen.
Processing Audit TrailGeneration time, inputs, file names + SHA‑256 hashes, row counts, FX rates, reserves, app version.

10Key terms

Settlement

A batch of Amazon transactions paid out together. Its settlement id increases over time, so a higher id is newer.

Transfer

A row of type = Transfer — an actual bank payout. Negative. Excluded from the receivable; used as the “received payment”.

Clearing‑lag

Days before month‑end within which a payout is assumed not to have cleared the bank yet (default 2). It draws the paid/receivable line.

Additional sales after last payment

The receivable base — the summed total of all order rows in settlements not yet paid.

Reserve / Net Closing Balance

A small (~0) Finance‑maintained reconciling figure carried from the prior close. Entered by you; barely moves the total.

Account type

Amazon splits activity into Standard Orders and Invoiced Orders; each has its own settlement chain and its own paid/receivable boundary.