Global Payments

Billing 2.0

250+ countries. One coherent system.

Problem
250+ country selectors. Each with unique payment rules, legal requirements, and user expectations.
Insight
The differences are smaller than they appear. The shared infrastructure is larger than anyone had mapped.
Result
A unified architecture serving global complexity without multiplying maintenance burden.

The full story

Google's billing surface serves advertisers in more than 250 countries and territories. Each market carries its own payment methods, legal requirements, tax rules, and user expectations, and the documentation had grown the same way the markets had: one selector at a time, each treated as its own problem.

The work began with an audit of what actually differed between markets. The finding that shaped everything: the differences were smaller than they appeared, and the shared infrastructure was far larger than anyone had mapped. Most markets shared 80% of their structure; the remaining 20% followed a small number of repeating patterns.

The resulting architecture defines one canonical content structure with market-level variation expressed as controlled overrides, not forks. Writers author once; markets inherit; exceptions are explicit and auditable. The maintenance burden stopped multiplying with each new market.

Key decisions

  • Map the shared structure before documenting any single market, so the architecture reflects reality rather than history.
  • Express market differences as explicit overrides on a canonical source, never as full copies, so a fix lands everywhere at once.
  • Make exceptions auditable: every market deviation is listed, owned, and justified, which turned tribal knowledge into structure.

What it taught me

Global complexity is usually local complexity repeated with variations. Find the repetition first and the problem shrinks by an order of magnitude.

← Back to Portfolio