Payments / Methodology
Payment Systems: methodology
This page documents /payments: where every series comes from, the exact
dataset codes and filter cuts, the population and GDP denominators, the
build-time verification anchors, and the license posture. Nothing on the page
is typed; every displayed number is computed at build from the parquet estate
by functions in src/lib/payments.ts.
What this layer is, and is not
/payments measures how money moves, on two layers. The retail layer is
the cashless instrument mix (cards and e-money, credit transfers, direct
debits, cheques) and per-capita cashless transaction counts across the BIS
CPMI reporting countries. The wholesale layer is the US large-value
rails: the Fedwire Funds Service (the Federal Reserve's real-time gross
settlement system) and CHIPS (The Clearing House's private-sector netting
system). The page carries volumes and values only: no fees, no
interchange economics, no card-network market shares, and no payment-rail
pricing, none of which these sources publish.
Coverage caveat, stated up front: the CPMI collection covers roughly 27 jurisdictions (26 reporting countries plus the euro-area aggregate in the systems and macro tables), not the world. Nothing on this page is a global total.
Sources
1. BIS CPMI payments statistics (the former Red Book)
Bank for International Settlements, Committee on Payments and Market
Infrastructures, payments and financial market infrastructures statistics
(https://data.bis.org/topics/CPMI), via the same data.bis.org static bulk
route as the estate's other BIS pulls:
https://data.bis.org/static/bulk/WS_CPMI_CASHLESS_csv_flat.zip: cashless payment volumes and values per country per instrument, annual 2012-2024, 26 reporting countries. Values in millions of domestic currency; volumes in millions of transactions.https://data.bis.org/static/bulk/WS_CPMI_SYSTEMS_csv_flat.zip: per-system annual volume/value for large-value systems (Fedwire Funds, CHIPS, T2, CHAPS and peers), retail systems, fast-payment systems, CCPs, CSDs and Swift. 26 countries plus euro area (XM) and world (XW) rows.https://data.bis.org/static/bulk/WS_CPMI_MACRO_csv_flat.zip: the CPMI's own comparative-table denominators (population, GDP at market prices), kept in the parquet so system values can be scaled by same-currency GDP without an exchange-rate step.
The BIS dataflow catalog
(https://stats.bis.org/api/v2/structure/dataflow/BIS/all/latest) lists
eight WS_CPMI_* dataflows; the other five (comparative tables 1 and 2,
payment devices, institutions, participants) are not fetched because no
exhibit uses them.
Built by scripts/build_bis_cpmi.py into data/parquet/bis_cpmi.parquet
(one long table, dataset in cashless / systems / macro; raw zips
under data/raw/bis_cpmi/ with a fetch manifest). Reporting-country codes
are mapped to ISO3 (estate convention); the euro-area and world rows carry a
NULL ISO3 and are excluded from country exhibits.
2. Fedwire Funds Service volume and value statistics
Federal Reserve Banks, Fedwire Funds Service (https://www.frbservices.org/resources/financial-services/wires/volume-value-stats), two public HTML tables, no authentication:
- annual statistics, 1987-present: transfers originated, value of transfers originated ($ millions), growth rates, average value per transfer, average daily volume and value;
- monthly statistics, January 2015-present, same columns.
Built by scripts/build_fedwire.py into data/parquet/fedwire.parquet
(period_type = annual | monthly; raw HTML under data/raw/fedwire/).
Accounting-parenthesis negatives, e.g. (1.4) = -1.4, are parsed as such.
3. CHIPS
The Clearing House Interbank Payments System. TCH's public site no
longer serves a downloadable statistics table (the resources page carries
rules, disclosures and press articles; historical stats-PDF URLs soft-404).
The CHIPS annual series on this page is therefore the one The Clearing
House reports to the BIS CPMI (WS_CPMI_SYSTEMS, system code US1P,
2012-2024, values in USD millions), displayed with attribution to both TCH
and the BIS. Cross-check against TCH's own published summary (article
"CHIPS Delivers Record Value and Resilience for Participants in 2025",
theclearinghouse.org, April 2026): TCH states 2025 average daily value of
$2.014 trillion, up nine percent year over year, implying roughly $1.85T
per day in 2024; the CPMI 2024 total of $463.3T over the 251 US business
days of 2024 is $1.85T per day. The 2025 CHIPS total is not yet in the CPMI
collection and is not shown as a series point.
4. Denominators
- Population: World Bank, World Development Indicators,
SP.POP.TOTL(midyear population), from the estate'swdi_coreparquet. Bulk vintage 2026-06-30 (retrieved 2026-07-10, CC BY-4.0; seedata/raw/wdi_core/SOURCE.md). Each country's per-capita figure divides its cashless volume by the same-year population. - US GDP: WDI
NY.GDP.MKTP.CD(GDP, current US$), same vintage, used for the Fedwire and CHIPS multiples of GDP. The CPMI macro table's own GDP series is retained in the parquet but the page states WDI as its GDP source for a single, consistent denominator family.
The canonical instrument-total cut
The CPMI cashless flat file mixes country-year instrument totals with device/terminal/card-function sub-splits along nine dimensions. The canonical totals used for every instrument-mix and per-capita exhibit are:
- instruments A (all cashless), B (credit transfers), C (direct debits), D (cheques), E (other): direction All, terminal location and card issuance location Not applicable, device/technology All, terminal type All, card function Not applicable, payment speed All, issuer/on-us All;
- instrument F (card and e-money payments): as above but terminal location All and card issuance location Inside the country, the only F cut under which B+C+D+E+F sums to A.
These rows are flagged canon_total in the parquet at build time. Verified
against the 2026-07-15 vintage: 275 of 321 country-year volume totals sum
exactly (the rest have published-NaN sub-components); the US 2024 check is
exact (16,851 + 21,534 + 8,993 + 172,361.066 = 219,739.066 million
transactions) and is asserted for both volume and value on every build.
Shares are shares of the number of transactions, not value: volume shares need no exchange-rate conversion (CPMI values are domestic-currency) and match the comparison the CPMI's own comparative tables lead with.
Known reporting gaps (displayed, never interpolated)
- Russia last reported 2020; the Netherlands' latest all-instrument total is 2021. Both are ranked at those years, with the year stated in the table.
- Hong Kong SAR reports only fast-payment-speed and card-function splits (no all-speed instrument totals) and is excluded from the ranking, stated on-page.
- The UK cashless series enters in 2014; the gap is a real gap on the cheque chart.
- Switzerland's cheque series ends in 2013 and Japan reports no direct-debit split in recent years; missing sub-instruments render as line breaks, and the mix panels chart only the four named instruments (residual "other" instruments are not drawn).
Build-time verification
scripts/build_bis_cpmi.py and scripts/build_fedwire.py fail the build
(never write a partial parquet) unless:
- all three CPMI datasets produce rows, all 26 reporting countries map to ISO3, and every canonical row is unit-multiplier "millions";
- US 2024 instrument additivity is exact for both measures;
- the CPMI's Fedwire Funds annual values equal the Fed's own frbservices annual table in every overlapping year (2012-2024; at the 2026-07-18 build the worst relative difference was 0.0, i.e. byte-identical values, e.g. 2024 = 1,133,419,684 USD millions in both);
- the Fedwire annual table starts in 1987, is year-contiguous, and the re-derived average value per transfer matches the published column at published precision;
src/lib/payments.tsthrows (failing the page build) if any headline query returns null or fewer rows than expected.
Parquets are written atomically (tmp file + rename), and both fetches are idempotent full re-pulls.
Refresh cadence and publication lags
- BIS CPMI: annual collection. Reference-year T data appear on
data.bis.org in stages, with most series arriving in the (northern)
autumn/winter of T+1; the 2026-07-15 vintage used here runs through 2024.
Registered in the estate's
refresh.shannual tier. - Fedwire: the monthly table adds a month within a few business days of month-end; the annual table adds a year each January. Registered in the quarterly tier (and therefore also runs in the annual tier).
- CHIPS via CPMI: follows the CPMI lag above (about one year); TCH press summaries appear each spring but are not machine-readable series.
License and redistribution posture
- BIS: BIS statistics are used under the BIS terms and conditions (https://www.bis.org/terms_conditions.htm), displayed with attribution.
- Fedwire: public statistics published by the Federal Reserve Banks' financial services arm, displayed with attribution to frbservices.org.
- TCH: CHIPS figures as reported to the BIS CPMI, attributed to The Clearing House.
- FinObservatory's standing no-redistribution ruling applies to this layer as to all others: charts and computed statistics are displayed with attribution; no bulk download, CSV export, or API re-serving of any of these series is offered.