ecocash-instant-paymentlisted
Install: claude install-skill 67even/ecocash-instant-payment-api
# EcoCash Instant Payment (EIP)
EIP lets a merchant's **server** charge a customer's EcoCash wallet. EcoCash sends the customer a
**USSD PIN prompt**, the customer approves on their phone, and the merchant learns the outcome by
callback or by looking the transaction up. Money moves, so correctness beats speed: most rules
below exist because breaking them loses a payment, charges someone twice, or leaks the merchant PIN.
This skill knows exactly what the EcoCash EIP guide at
https://67even.github.io/ecocash-instant-payment-api/ knows (portal checked 21 Sep 2026). The
`references/` files are generated from that guide; `references/portal-documentation-tab.md` and
`references/portal-sdk-samples.md` are the portal's own pages, verbatim.
## 1. Setup and authentication
1. **Sandbox access comes from the EcoCash Developer Portal** (https://developers.ecocash.co.zw/portal):
register → EcoCash Instant Payment → **Authentication** → *Request Sandbox Access* → username
and password arrive in the portal **Inbox** (username starts `sbx_`) → *Save & Activate* →
**Test Numbers** → add and OTP-verify an EcoCash-registered MSISDN. Walk a newcomer through
`references/portal-onboarding.md`.
2. **Auth is HTTP Basic on every request**: `Authorization: Basic base64(username:password)`, plus
`Content-Type: application/json`. No tokens, no expiry, no refresh. `401` (`E006`) = bad or
malformed header; `403` (`E007`) = sandbox not activated (`references/authentication.md`).
3. **S