Skip to content

feat(channels): add cash channels for Eastern Caribbean and Eurozone Caribbean markets - #40

Merged
okjodom merged 3 commits into
minmoto:mainfrom
altradits:feat/cash-channels-caribbean-part1
Sep 24, 2026
Merged

okjodom merged 3 commits into
minmoto:mainfrom
altradits:feat/cash-channels-caribbean-part1

Conversation

@altradits

Copy link
Copy Markdown
Contributor

Summary

Toward #29.

Adds built-in cash channels for Part 1 of the Caribbean (UN M49: 029) regional batch, covering all 8 Eastern Caribbean Currency Union (ECCU) markets using the Eastern Caribbean Dollar (XCD) and 4 French Caribbean collectivities/departments using the Euro (EUR):

Eastern Caribbean Currency Union (XCD)

Authority: Eastern Caribbean Central Bank (ECCB) (Eastern Caribbean Central Bank Agreement Act 1983).

  1. Anguilla (AI / XCD): cash_ai_xcd
  2. Antigua and Barbuda (AG / XCD): cash_ag_xcd
  3. Dominica (DM / XCD): cash_dm_xcd
  4. Grenada (GD / XCD): cash_gd_xcd
  5. Montserrat (MS / XCD): cash_ms_xcd
  6. Saint Kitts and Nevis (KN / XCD): cash_kn_xcd
  7. Saint Lucia (LC / XCD): cash_lc_xcd
  8. Saint Vincent and the Grenadines (VC / XCD): cash_vc_xcd

French Caribbean (EUR)

Authority: Institut d'Émission des Départements d'Outre-Mer (IEDOM) / European Central Bank (Code monétaire et financier, Art. L711-2; Treaty on the Functioning of the European Union, Art. 349).

  1. Guadeloupe (GP / EUR): cash_gp_eur
  2. Martinique (MQ / EUR): cash_mq_eur
  3. Saint Barthélemy (BL / EUR): cash_bl_eur
  4. Saint Martin (French part) (MF / EUR): cash_mf_eur

Implementation Details

• Uses canonical createCashPaymentChannel helper (schema version 2, automation: PaymentChannelAutomation.None, no collection fields).
• Grouped by country in src/channels/<country>/cash.ts.
• Re-exports all schemas from src/index.ts and registers them in builtinPaymentChannels.
• Adds discovery contract tests in test/payment-channels.test.mjs verifying Eastern Caribbean and Eurozone Caribbean markets resolution.
• Refreshes generated registry documentation via npm run docs:generate.

Verification

• npm run check (formatter, TypeScript typecheck, docs check, examples check, and 43/43 tests pass)
• npm pack --dry-run (clean tarball with runtime artifacts only)
• npm run verify:pack (verified on isolated ESM and CommonJS consumers)

@okjodom okjodom left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed: changes follow the declarative cash-channel schema and registry conventions. CI check passes.

@okjodom
okjodom force-pushed the feat/cash-channels-caribbean-part1 branch from ace8a3e to 94dc30f Compare September 24, 2026 10:04
@altradits
altradits force-pushed the feat/cash-channels-caribbean-part1 branch from 94dc30f to e6f3c66 Compare September 24, 2026 10:15
@altradits
altradits force-pushed the feat/cash-channels-caribbean-part1 branch from e6f3c66 to c4d0d63 Compare September 24, 2026 10:34
@okjodom
okjodom merged commit ecc3df4 into minmoto:main Sep 24, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants