Skip to content

feat(connector-fedapay): add FedaPay mobile money connector - #4

Merged
jules-mahounou merged 1 commit into
mainfrom
feat/connector-fedapay
Sep 26, 2026
Merged

jules-mahounou merged 1 commit into
mainfrom
feat/connector-fedapay

Conversation

@jules-mahounou

Copy link
Copy Markdown
Collaborator
  • Collections in Benin (XOF): MTN (mtn_open), Moov (moov), Celtiis (sbin), using the verified 3-step flow: create transaction, token, push
  • Errors before the push are safe to fall back (no customer prompt exists); errors during the push are ambiguous and resolved by a status lookup
  • Status mapping, HTTP error mapping, configurable operators per country
  • Webhook signature verification (HMAC-SHA256, anti-replay, constant-time comparison) using Web Crypto, so it runs on any runtime
  • Opt-in sandbox test driven by a local .env file
  • QUIRKS.md separating verified behaviors from points to verify

core: add AttemptContext.reportProviderRef so an attempt that times out after the provider created the transaction can still be resolved.

docs: roadmap entry for the PHP / Laravel ecosystem.

What & why

Checklist

  • Commits are signed off (git commit -s) — see DCO
  • Tests added or updated
  • If this touches routing/fallback: tests prove no double charge is possible
  • Docs and CHANGELOG.md (Unreleased) updated if behavior changed
  • No real secrets or personal data in code, tests, or fixtures

- Collections in Benin (XOF): MTN (mtn_open), Moov (moov), Celtiis (sbin),
  using the verified 3-step flow: create transaction, token, push
- Errors before the push are safe to fall back (no customer prompt exists);
  errors during the push are ambiguous and resolved by a status lookup
- Status mapping, HTTP error mapping, configurable operators per country
- Webhook signature verification (HMAC-SHA256, anti-replay, constant-time
  comparison) using Web Crypto, so it runs on any runtime
- Opt-in sandbox test driven by a local .env file
- QUIRKS.md separating verified behaviors from points to verify

core: add AttemptContext.reportProviderRef so an attempt that times out
after the provider created the transaction can still be resolved.

docs: roadmap entry for the PHP / Laravel ecosystem.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Signed-off-by: Jules Mahounou <234069818+jules-mahounou@users.noreply.github.com>
@jules-mahounou
jules-mahounou merged commit d768f74 into main Sep 26, 2026
4 checks 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.

1 participant