A proposed open standard for payment integration in Haiti
OpenFSP is the research project I propose for my MBDS master's degree: a single open contract between merchant applications and Haitian digital payment providers. It is academic work first; I will open it to contribution afterwards.
Without a common contract, each of L merchant applications integrates each of O
providers: O × L integrations. With OpenFSP, each application speaks one protocol and each
provider is integrated once, in the gateway: O + L.
flowchart LR
subgraph apps["L merchant applications"]
A1["PHP"]
A2["TypeScript"]
A3["Python"]
end
G["<b>OpenFSP gateway</b><br/><i>hosted by the merchant</i>"]
subgraph ops["O providers"]
P1["Provider 1"]
P2["Provider 2"]
end
A1 --> G
A2 --> G
A3 --> G
G --> P1
G --> P2
| Component | Role |
|---|---|
| Specification | The contract: data model, lifecycle, capabilities, errors, idempotency, webhooks. |
| Gateway | Server the merchant hosts: OpenFSP protocol in, provider APIs out. |
| Mock server | Reproduces providers, failures included, for testing without a merchant account. |
| Client libraries | Thin clients for TypeScript, PHP and Python; the protocol also works over plain HTTP. |
| Conformance suite | Checks that an implementation follows the specification; any third party can rerun it. |
Specification and ADRs: openfspht/adrs. Governance: GOVERNANCE.md. Licence: Apache-2.0.
Contributing: I welcome reviews and proposals through the ADR process, following CONTRIBUTING.md.