Security
Protect credentials
Rotate safely
Separate webhook secret
Consent
Obtain lawful authorisation
Use exact consent wording
POST /verifications/consent using the same fields you intend to submit. Present that wording for genuine confirmation and submit it verbatim. If the identity details change, request fresh wording.Verifications
Confirm catalog and fields
GET /catalog to review the current product list, required fields, allowed selections, and prices. See Products for a full reference.Check wallet balance
GET /wallet before submitting checks to confirm sufficient funds.Store every session ID
sessionId returned from POST /verifications. It is different from the API request ID and is required to retrieve results later.Handle pending states
Handle failed checks
failed means no completed result was obtained and no charge is applied. Do not auto-retry a failed check without reviewing the cause.Collections
Activate merchant account
Use your own Merchant ID
merchantId in a collection request must belong to the same workspace that issued the API credentials. A different Merchant ID is rejected with HTTP 403.Do not report success from initiation
POST /collections response only confirms a pending request. Wait for the final status via GET /collections/{reference} or the webhook before recording a completed payment.Respect phone-level limits
Webhooks
Configure a public HTTPS URL
Verify signatures
timestamp + "." + rawBody using your signing secret. Compare the result in constant time with the X-MasterID-Signature header. Reject timestamps older than 5 minutes.Parse after verification
Deduplicate events
payload.id to ignore duplicates. Return any HTTP 2xx after accepting the event durably.Resilience
Use idempotency keys
Idempotency-Key for every POST /verifications and POST /collections. Retry with the same key and identical body. See Idempotency.Back off after throttling
Retry-After header. On 500/503, retry with exponential backoff and reuse the same idempotency key.Poll as a recovery path
Data handling
Scope all reads to your workspace
Keep logs free of secrets
Support
If you need help during go-live, contact MasterID support:- Email: sales@masterid.co.ug
- Phone: +256 771 922 513

