Integrations

Public implementation notes for payment routing, notifications, webhooks, and production rollout.

Integration Notes

What the backend currently supports and how routing is handled.

  • Payment provider routing is configured per account. Shared SparkGlim provider defaults are only used if the tenant settings explicitly allow them.
  • Notification delivery can use tenant email and SMS providers with custom sender identity and branding.
  • Admin users manage provider secrets, key rotation, and account-level operational controls.
  • USSD routing already has a separate white-label foundation in the repo. The white-label account should align service routing, campaign mapping, and brand settings before production rollout.
  • For support, always capture the tenant API `requestId` and the payment provider reference returned during initialization.

Webhook Guidance

Current backend security expectations:
- keep payment and notification provider secrets server-side only
- verify provider webhook signatures before mutating state
- log webhook failures without leaking secrets
- reconcile white-label and SparkGlim records if a provider callback succeeds after a client timeout

Webhook routes:
- POST /api/white-label/webhooks/paystack
- POST /api/white-label/webhooks/expresspay
- POST /api/white-label/webhooks/hubtel

Portal routes forwarded through the backend:
- GET /api/white-label/portal/organizer/me
- GET /api/white-label/portal/vendor/me
- PATCH /api/white-label/portal/vendor/registrations
- GET /api/white-label/portal/nominee/me