https://api.morapay.io/api/v1/merchant unless noted. Public catalog and checkout paths use /api/public/*.
HTTP methods
Signed headers are required on every Merchant API call. See Authentication.
Pagination
List endpoints accept:
Paginated success responses include
meta:
Success envelope
Error envelope
Every failed JSON response uses the same shape:requestId and include it when contacting support.
Common HTTP status codes
Portal RBAC
Some mutating routes require a BusinessMember role when using portal JWT auth. Merchant API keys skip role checks.
On denial: 403 with
FORBIDDEN_MERCHANT_ROLE.

