{
"success": false,
"error": {
"code": "FORBIDDEN",
"message": "The service is pending_review: it cannot collect payments in live mode.",
"details": {
"service_status": "pending_review"
}
},
"meta": {
"request_id": "a4f8e2c1b3d97056",
"timestamp": "2026-10-29T10:00:00+00:00",
"mode": "live"
}
}
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Some fields of the payment are missing or invalid.",
"details": {
"phone_number": "Required: the mobile money number with the country code, digits only, for example 237670000000."
}
},
"meta": {
"request_id": "a4f8e2c1b3d97056",
"timestamp": "2026-10-29T10:00:00+00:00",
"mode": "live"
}
}
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Some fields of the payment are missing or invalid.",
"details": {
"phone_number": "Required: the mobile money number with the country code, digits only, for example 237670000000."
}
},
"meta": {
"request_id": "a4f8e2c1b3d97056",
"timestamp": "2026-10-29T10:00:00+00:00",
"mode": "live"
}
}
{
"success": false,
"error": {
"code": "OPERATION_FAILED",
"message": "ORANGE_CMR is temporarily unavailable for collections. Offer another operator or try again later.",
"details": {
"failure_code": "operator_unavailable"
}
},
"meta": {
"request_id": "a4f8e2c1b3d97056",
"timestamp": "2026-10-29T10:00:00+00:00",
"mode": "live"
}
}
Collections
Request a Payment
Asks your customer to pay from their mobile money account: they receive a prompt on their phone and confirm
with their PIN. The result arrives by webhook (mobile_money.collection.completed or .failed).
reference is your unique reference. Sending the same request again returns the same payment with 200:
your customer is never charged twice. The same reference with another service, amount or phone number is refused.
webhook_url and callback_url sent here take priority over those of the service.
Returns 201 with status processing (or pending if the operator did not answer yet: we check it for you).
In test mode the result is immediate (see Test mode).
{
"success": false,
"error": {
"code": "FORBIDDEN",
"message": "The service is pending_review: it cannot collect payments in live mode.",
"details": {
"service_status": "pending_review"
}
},
"meta": {
"request_id": "a4f8e2c1b3d97056",
"timestamp": "2026-10-29T10:00:00+00:00",
"mode": "live"
}
}
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Some fields of the payment are missing or invalid.",
"details": {
"phone_number": "Required: the mobile money number with the country code, digits only, for example 237670000000."
}
},
"meta": {
"request_id": "a4f8e2c1b3d97056",
"timestamp": "2026-10-29T10:00:00+00:00",
"mode": "live"
}
}
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Some fields of the payment are missing or invalid.",
"details": {
"phone_number": "Required: the mobile money number with the country code, digits only, for example 237670000000."
}
},
"meta": {
"request_id": "a4f8e2c1b3d97056",
"timestamp": "2026-10-29T10:00:00+00:00",
"mode": "live"
}
}
{
"success": false,
"error": {
"code": "OPERATION_FAILED",
"message": "ORANGE_CMR is temporarily unavailable for collections. Offer another operator or try again later.",
"details": {
"failure_code": "operator_unavailable"
}
},
"meta": {
"request_id": "a4f8e2c1b3d97056",
"timestamp": "2026-10-29T10:00:00+00:00",
"mode": "live"
}
}
Beta. This endpoint is being rolled out in production. Available soon in production: you can already prepare your integration with this page.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"KemyPay API","colors":{"primary":"#15A877","light":"#27E0A0","dark":"#0E8A61"},"api":{"playground":{"display":"interactive","proxy":false}},"navbar":{"links":[{"href":"mailto:hi@kemypay.com","label":"Support"}],"primary":{"type":"button","label":"Website","href":"https://kemypay.com"}},"contextual":{"options":["copy","view","chatgpt","claude","cursor"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"API Reference","icon":"square-terminal","href":"/api-reference/overview"},{"anchor":"Support","icon":"envelope","href":"mailto:hi@kemypay.com"}]},"languages":[{"language":"en","href":""},{"language":"fr","navbar":{"links":[{"href":"mailto:hi@kemypay.com","label":"Support"}],"primary":{"type":"button","label":"Site web","href":"https://kemypay.com"}},"href":"fr"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"kemypay","hasAudioNarration":false,"actualSubdomain":"kemypay","customDomains":[],"gitSource":{"type":"github","owner":"kemite-group-llc","repo":"docs-kemypay","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":"","_id":"6ae2b282ce38425f644c14b1"},"chroma":{"latestBuiltDeploymentHistoryId":"6ae2b3f699a8486beefb6669","collectionId":"d8668bde-4c19-45c7-9ce2-3688e87db1eb","liveDeploymentHistoryId":"6ae2b3f699a8486beefb6669","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae2b4f9fe390ee50078873f","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"default","tag":"Guides","count":22},{"language":"default","tag":"API Reference","count":17},{"language":"default","tag":"Services","count":7},{"language":"default","tag":"Collections","count":5},{"language":"default","tag":"Get started","count":4},{"language":"default","tag":"Catalog","count":3},{"language":"default","tag":"Changelog","count":2},{"language":"default","tag":"Supported Countries","count":2},{"language":"default","tag":"Balances","count":1},{"language":"default","tag":"Overview","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/collections/create","slug":"/api-reference/collections/create","pageMetadata":{"title":"Request a Payment","tag":"BETA","openapi":"POST /mobile-money/collections","description":"Asks your customer to pay from their mobile money account: they receive a prompt on their phone and confirm\nwith their PIN. The result arrives by webhook (`mobile_money.collection.completed` or `.failed`).\n\n- `reference` is **your** unique reference. Sending the same request again returns the same payment with `200`:\n your customer is never charged twice. The same reference with another service, amount or phone number is refused.\n- `webhook_url` and `callback_url` sent here take priority over those of the service.\n- Returns `201` with status `processing` (or `pending` if the operator did not answer yet: we check it for you).\n- In test mode the result is immediate (see [Test mode](/test-mode)).\n","href":"/api-reference/collections/create"},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n a: \"a\",\n code: \"code\",\n li: \"li\",\n p: \"p\",\n strong: \"strong\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Asks your customer to pay from their mobile money account: they receive a prompt on their phone and confirm\\nwith their PIN. The result arrives by webhook (\", _jsx(_components.code, {\n children: \"mobile_money.collection.completed\"\n }), \" or \", _jsx(_components.code, {\n children: \".failed\"\n }), \").\"]\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.code, {\n children: \"reference\"\n }), \" is \", _jsx(_components.strong, {\n children: \"your\"\n }), \" unique reference. Sending the same request again returns the same payment with \", _jsx(_components.code, {\n children: \"200\"\n }), \":\\nyour customer is never charged twice. The same reference with another service, amount or phone number is refused.\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.code, {\n children: \"webhook_url\"\n }), \" and \", _jsx(_components.code, {\n children: \"callback_url\"\n }), \" sent here take priority over those of the service.\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"Returns \", _jsx(_components.code, {\n children: \"201\"\n }), \" with status \", _jsx(_components.code, {\n children: \"processing\"\n }), \" (or \", _jsx(_components.code, {\n children: \"pending\"\n }), \" if the operator did not answer yet: we check it for you).\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"In test mode the result is immediate (see \", _jsx(_components.a, {\n href: \"/test-mode\",\n children: \"Test mode\"\n }), \").\"]\n }), \"\\n\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={p:`p`,strong:`strong`,..._provideComponents(),...props.components},{Warning}=_components;if(!Warning)_missingMdxReference(`Warning`,true);return _jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Beta.`}),` This endpoint is being rolled out in production. Available soon in production: you can already prepare your integration with this page.`]})})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Request a Payment","tag":"BETA","openapi":"POST /mobile-money/collections","description":"Asks your customer to pay from their mobile money account: they receive a prompt on their phone and confirm\nwith their PIN. The result arrives by webhook (`mobile_money.collection.completed` or `.failed`).\n\n- `reference` is **your** unique reference. Sending the same request again returns the same payment with `200`:\n your customer is never charged twice. The same reference with another service, amount or phone number is refused.\n- `webhook_url` and `callback_url` sent here take priority over those of the service.\n- Returns `201` with status `processing` (or `pending` if the operator did not answer yet: we check it for you).\n- In test mode the result is immediate (see [Test mode](/test-mode)).\n","href":"/api-reference/collections/create"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"createCollection","tags":["Collections"],"summary":"Demander un paiement (bêta)","description":"Asks your customer to pay from their mobile money account: they receive a prompt on their phone and confirm\nwith their PIN. The result arrives by webhook (`mobile_money.collection.completed` or `.failed`).\n\n- `reference` is **your** unique reference. Sending the same request again returns the same payment with `200`:\n your customer is never charged twice. The same reference with another service, amount or phone number is refused.\n- `webhook_url` and `callback_url` sent here take priority over those of the service.\n- Returns `201` with status `processing` (or `pending` if the operator did not answer yet: we check it for you).\n- In test mode the result is immediate (see [Test mode](/test-mode)).\n","requestBody":"5d8dd7d5-a7f7-4f28-89fd-205e3dc359f7","responses":{"200":"4a1b605a-2cbc-4dc6-817d-57ba2e9b3d92","201":"d5858fd7-29ba-4882-9953-0ee196ac7bf4","403":"7be6e4a7-0bcb-47e7-a2ad-c02b21541f49","404":"70b7cedb-7e76-4d90-8bf3-b58205efda0f","422":"58b7bbcf-6ea7-4746-a04b-f0025200058e","503":"b6b436e8-6e0c-442b-934e-39d7fff7745a"},"method":"post","type":"path","servers":["b2798ba0-2e5a-4006-9b6b-5924c735b789"],"security":["cc41c1b2-f077-4ec7-90c4-d0ca0aafd0be"],"path":"/mobile-money/collections","baseUrlOptions":["https://api.kemypay.com/v1"],"title":"Demander un paiement (bêta)","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","disableProxy":true},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["service","amount","currency","phone_number","reference"],"properties":{"service":{"type":"string","format":"uuid","description":"Le code du service qui encaisse.","example":"019a8f2e-4c1b-7d3a-9e55-2b6f0c1d8a47","isRequired":true,"uniqueKey":"service","typeLabel":"string\u003cuuid>"},"amount":{"type":"string","description":"La valeur de la marchandise, en chaîne. Respectez les `decimals` de l'opérateur.","example":"1000","isRequired":true,"uniqueKey":"amount","typeLabel":"string"},"currency":{"type":"string","example":"XAF","isRequired":true,"uniqueKey":"currency","typeLabel":"string"},"phone_number":{"type":"string","description":"Numéro mobile money avec l'indicatif du pays. Les espaces, tirets et `+` sont retirés.","example":"237670000000","isRequired":true,"uniqueKey":"phone_number","typeLabel":"string"},"reference":{"type":"string","description":"Votre propre référence unique (1 à 100 lettres, chiffres, `.` `_` `:` `-`). Permet de renvoyer l'appel sans risque.","example":"order-2026-10-29-0001","isRequired":true,"uniqueKey":"reference","typeLabel":"string"},"country":{"type":"string","description":"Vérification facultative. Refusé si l'opérateur est dans un autre pays.","example":"CMR","uniqueKey":"country","typeLabel":"string"},"operator":{"type":"string","description":"Code de l'opérateur (`MTN_CMR`). Facultatif — deviné à partir du numéro s'il manque.","example":"MTN_CMR","uniqueKey":"operator","typeLabel":"string"},"fee_bearer":{"type":"string","enum":["merchant","customer"],"description":"Par défaut : le réglage du service.","uniqueKey":"fee_bearer","typeLabel":"enum\u003cstring>"},"description":{"type":"string","description":"Affiché à votre client sur la demande de paiement. 4 à 22 lettres, chiffres ou espaces.","example":"Afroyamo Premium","uniqueKey":"description","typeLabel":"string"},"metadata":{"type":"object","description":"Jusqu'à 10 clés avec des valeurs texte. Renvoyées dans les webhooks.","additionalProperties":{"type":"string","uniqueKey":"metadata.additionalProperties","typeLabel":"string"},"example":{"user_id":"42"},"uniqueKey":"metadata","typeLabel":"object"},"webhook_url":{"type":"string","format":"uri","description":"https. L'emporte sur la `webhook_url` du service pour ce paiement.","uniqueKey":"webhook_url","typeLabel":"string\u003curi>"},"callback_url":{"type":"string","format":"uri","description":"L'emporte sur la `callback_url` du service pour ce paiement.","uniqueKey":"callback_url","typeLabel":"string\u003curi>"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"service":"019a8f2e-4c1b-7d3a-9e55-2b6f0c1d8a47","amount":"1000","currency":"XAF","phone_number":"237670000000","reference":"order-2026-10-29-0001","country":"CMR","operator":"MTN_CMR","description":"Afroyamo Premium","metadata":{"user_id":"42"},"webhook_url":"\u003cstring>","callback_url":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"4a1b605a-2cbc-4dc6-817d-57ba2e9b3d92":{"description":"Même référence renvoyée — le paiement existant, inchangé","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"uniqueKey":"success","typeLabel":"boolean"},"data":{"type":"object","properties":{"code":{"type":"string","format":"uuid","example":"019a9c41-7e2d-4b8f-a1c3-5d6e7f8a9b0c","uniqueKey":"data.code","typeLabel":"string\u003cuuid>"},"reference":{"type":"string","example":"order-2026-10-29-0001","uniqueKey":"data.reference","typeLabel":"string"},"service_code":{"type":"string","format":"uuid","example":"019a8f2e-4c1b-7d3a-9e55-2b6f0c1d8a47","uniqueKey":"data.service_code","typeLabel":"string\u003cuuid>"},"status":{"type":"string","enum":["pending","processing","completed","failed"],"example":"processing","uniqueKey":"data.status","typeLabel":"enum\u003cstring>"},"country":{"type":"string","example":"CMR","uniqueKey":"data.country","typeLabel":"string"},"operator":{"type":"string","example":"MTN_CMR","uniqueKey":"data.operator","typeLabel":"string"},"phone_number":{"type":"string","example":"237670000000","uniqueKey":"data.phone_number","typeLabel":"string"},"currency":{"type":"string","example":"XAF","uniqueKey":"data.currency","typeLabel":"string"},"value":{"type":"string","description":"La valeur de la marchandise que vous avez envoyée.","example":"1000.00","uniqueKey":"data.value","typeLabel":"string"},"amount":{"type":"string","description":"Ce que paie le client.","example":"1033.00","uniqueKey":"data.amount","typeLabel":"string"},"fee":{"type":"string","example":"33.00","uniqueKey":"data.fee","typeLabel":"string"},"fee_bearer":{"type":"string","enum":["merchant","customer"],"example":"customer","uniqueKey":"data.fee_bearer","typeLabel":"enum\u003cstring>"},"net_amount":{"type":"string","description":"Crédité au solde du service quand le paiement réussit.","example":"1000.00","uniqueKey":"data.net_amount","typeLabel":"string"},"description":{"oneOf":[{"type":"string","example":"Afroyamo Premium","uniqueKey":"data.description.oneOf.0","typeLabel":"string"},{"type":"null","example":"Afroyamo Premium","uniqueKey":"data.description.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.description","typeLabel":"string | null"},"metadata":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"data.metadata.additionalProperties","typeLabel":"string"},"example":{"user_id":"42"},"uniqueKey":"data.metadata","typeLabel":"object"},"failure_code":{"oneOf":[{"type":"string","enum":["payer_not_found","payment_not_approved","insufficient_balance","payer_limit_reached","invalid_phone_number","invalid_amount","operator_unavailable","payment_in_progress","expired","unknown_error",null],"example":null,"uniqueKey":"data.failure_code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["payer_not_found","payment_not_approved","insufficient_balance","payer_limit_reached","invalid_phone_number","invalid_amount","operator_unavailable","payment_in_progress","expired","unknown_error",null],"example":null,"uniqueKey":"data.failure_code.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.failure_code","typeLabel":"enum\u003cstring> | null"},"failure_message":{"oneOf":[{"type":"string","example":null,"uniqueKey":"data.failure_message.oneOf.0","typeLabel":"string"},{"type":"null","example":null,"uniqueKey":"data.failure_message.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.failure_message","typeLabel":"string | null"},"operator_transaction_id":{"oneOf":[{"type":"string","description":"La référence de la transaction chez l'opérateur, une fois payé.","example":null,"uniqueKey":"data.operator_transaction_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"La référence de la transaction chez l'opérateur, une fois payé.","example":null,"uniqueKey":"data.operator_transaction_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.operator_transaction_id","typeLabel":"string | null"},"callback_url":{"oneOf":[{"type":"string","example":"https://afroyamo.com/payment/done","uniqueKey":"data.callback_url.oneOf.0","typeLabel":"string"},{"type":"null","example":"https://afroyamo.com/payment/done","uniqueKey":"data.callback_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.callback_url","typeLabel":"string | null"},"created_at":{"type":"string","format":"date-time","example":"2026-10-29T10:00:00+00:00","uniqueKey":"data.created_at","typeLabel":"string\u003cdate-time>"},"completed_at":{"oneOf":[{"type":"string","format":"date-time","example":null,"uniqueKey":"data.completed_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","example":null,"uniqueKey":"data.completed_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.completed_at","typeLabel":"string\u003cdate-time> | null"}},"uniqueKey":"data","typeLabel":"object"},"meta":{"type":"object","properties":{"request_id":{"type":"string","example":"a4f8e2c1b3d97056","uniqueKey":"meta.request_id","typeLabel":"string"},"timestamp":{"type":"string","format":"date-time","example":"2026-10-29T10:00:00+00:00","uniqueKey":"meta.timestamp","typeLabel":"string\u003cdate-time>"},"mode":{"type":"string","enum":["test","live"],"example":"live","uniqueKey":"meta.mode","typeLabel":"enum\u003cstring>"}},"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":true,"data":{"code":"019a9c41-7e2d-4b8f-a1c3-5d6e7f8a9b0c","reference":"order-2026-10-29-0001","service_code":"019a8f2e-4c1b-7d3a-9e55-2b6f0c1d8a47","status":"processing","country":"CMR","operator":"MTN_CMR","phone_number":"237670000000","currency":"XAF","value":"1000.00","amount":"1033.00","fee":"33.00","fee_bearer":"customer","net_amount":"1000.00","description":"Afroyamo Premium","metadata":{"user_id":"42"},"failure_code":null,"failure_message":null,"operator_transaction_id":null,"callback_url":"https://afroyamo.com/payment/done","created_at":"2026-10-29T10:00:00+00:00","completed_at":null},"meta":{"request_id":"a4f8e2c1b3d97056","timestamp":"2026-10-29T10:00:00+00:00","mode":"live"}}}},"exampleType":"generated"}},"exampleType":"generated"},"d5858fd7-29ba-4882-9953-0ee196ac7bf4":{"description":"Paiement demandé","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"uniqueKey":"success","typeLabel":"boolean"},"data":{"type":"object","properties":{"code":{"type":"string","format":"uuid","example":"019a9c41-7e2d-4b8f-a1c3-5d6e7f8a9b0c","uniqueKey":"data.code","typeLabel":"string\u003cuuid>"},"reference":{"type":"string","example":"order-2026-10-29-0001","uniqueKey":"data.reference","typeLabel":"string"},"service_code":{"type":"string","format":"uuid","example":"019a8f2e-4c1b-7d3a-9e55-2b6f0c1d8a47","uniqueKey":"data.service_code","typeLabel":"string\u003cuuid>"},"status":{"type":"string","enum":["pending","processing","completed","failed"],"example":"processing","uniqueKey":"data.status","typeLabel":"enum\u003cstring>"},"country":{"type":"string","example":"CMR","uniqueKey":"data.country","typeLabel":"string"},"operator":{"type":"string","example":"MTN_CMR","uniqueKey":"data.operator","typeLabel":"string"},"phone_number":{"type":"string","example":"237670000000","uniqueKey":"data.phone_number","typeLabel":"string"},"currency":{"type":"string","example":"XAF","uniqueKey":"data.currency","typeLabel":"string"},"value":{"type":"string","description":"La valeur de la marchandise que vous avez envoyée.","example":"1000.00","uniqueKey":"data.value","typeLabel":"string"},"amount":{"type":"string","description":"Ce que paie le client.","example":"1033.00","uniqueKey":"data.amount","typeLabel":"string"},"fee":{"type":"string","example":"33.00","uniqueKey":"data.fee","typeLabel":"string"},"fee_bearer":{"type":"string","enum":["merchant","customer"],"example":"customer","uniqueKey":"data.fee_bearer","typeLabel":"enum\u003cstring>"},"net_amount":{"type":"string","description":"Crédité au solde du service quand le paiement réussit.","example":"1000.00","uniqueKey":"data.net_amount","typeLabel":"string"},"description":{"oneOf":[{"type":"string","example":"Afroyamo Premium","uniqueKey":"data.description.oneOf.0","typeLabel":"string"},{"type":"null","example":"Afroyamo Premium","uniqueKey":"data.description.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.description","typeLabel":"string | null"},"metadata":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"data.metadata.additionalProperties","typeLabel":"string"},"example":{"user_id":"42"},"uniqueKey":"data.metadata","typeLabel":"object"},"failure_code":{"oneOf":[{"type":"string","enum":["payer_not_found","payment_not_approved","insufficient_balance","payer_limit_reached","invalid_phone_number","invalid_amount","operator_unavailable","payment_in_progress","expired","unknown_error",null],"example":null,"uniqueKey":"data.failure_code.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["payer_not_found","payment_not_approved","insufficient_balance","payer_limit_reached","invalid_phone_number","invalid_amount","operator_unavailable","payment_in_progress","expired","unknown_error",null],"example":null,"uniqueKey":"data.failure_code.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.failure_code","typeLabel":"enum\u003cstring> | null"},"failure_message":{"oneOf":[{"type":"string","example":null,"uniqueKey":"data.failure_message.oneOf.0","typeLabel":"string"},{"type":"null","example":null,"uniqueKey":"data.failure_message.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.failure_message","typeLabel":"string | null"},"operator_transaction_id":{"oneOf":[{"type":"string","description":"La référence de la transaction chez l'opérateur, une fois payé.","example":null,"uniqueKey":"data.operator_transaction_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"La référence de la transaction chez l'opérateur, une fois payé.","example":null,"uniqueKey":"data.operator_transaction_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.operator_transaction_id","typeLabel":"string | null"},"callback_url":{"oneOf":[{"type":"string","example":"https://afroyamo.com/payment/done","uniqueKey":"data.callback_url.oneOf.0","typeLabel":"string"},{"type":"null","example":"https://afroyamo.com/payment/done","uniqueKey":"data.callback_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.callback_url","typeLabel":"string | null"},"created_at":{"type":"string","format":"date-time","example":"2026-10-29T10:00:00+00:00","uniqueKey":"data.created_at","typeLabel":"string\u003cdate-time>"},"completed_at":{"oneOf":[{"type":"string","format":"date-time","example":null,"uniqueKey":"data.completed_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","example":null,"uniqueKey":"data.completed_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.completed_at","typeLabel":"string\u003cdate-time> | null"}},"uniqueKey":"data","typeLabel":"object"},"meta":{"type":"object","properties":{"request_id":{"type":"string","example":"a4f8e2c1b3d97056","uniqueKey":"meta.request_id","typeLabel":"string"},"timestamp":{"type":"string","format":"date-time","example":"2026-10-29T10:00:00+00:00","uniqueKey":"meta.timestamp","typeLabel":"string\u003cdate-time>"},"mode":{"type":"string","enum":["test","live"],"example":"live","uniqueKey":"meta.mode","typeLabel":"enum\u003cstring>"}},"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":true,"data":{"code":"019a9c41-7e2d-4b8f-a1c3-5d6e7f8a9b0c","reference":"order-2026-10-29-0001","service_code":"019a8f2e-4c1b-7d3a-9e55-2b6f0c1d8a47","status":"processing","country":"CMR","operator":"MTN_CMR","phone_number":"237670000000","currency":"XAF","value":"1000.00","amount":"1033.00","fee":"33.00","fee_bearer":"customer","net_amount":"1000.00","description":"Afroyamo Premium","metadata":{"user_id":"42"},"failure_code":null,"failure_message":null,"operator_transaction_id":null,"callback_url":"https://afroyamo.com/payment/done","created_at":"2026-10-29T10:00:00+00:00","completed_at":null},"meta":{"request_id":"a4f8e2c1b3d97056","timestamp":"2026-10-29T10:00:00+00:00","mode":"live"}}}},"exampleType":"generated"}},"exampleType":"generated"},"7be6e4a7-0bcb-47e7-a2ad-c02b21541f49":{"description":"`FORBIDDEN` : le service n'est pas `active` (en mode test, `pending_review` est accepté).","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":false,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string","example":"VALIDATION_ERROR","uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","example":"Some fields of the payment are missing or invalid.","uniqueKey":"error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"example":{"phone_number":"Required: the mobile money number with the country code, digits only, for example 237670000000."},"uniqueKey":"error.details","typeLabel":"object"}},"uniqueKey":"error","typeLabel":"object"},"meta":{"type":"object","properties":{"request_id":{"type":"string","example":"a4f8e2c1b3d97056","uniqueKey":"meta.request_id","typeLabel":"string"},"timestamp":{"type":"string","format":"date-time","example":"2026-10-29T10:00:00+00:00","uniqueKey":"meta.timestamp","typeLabel":"string\u003cdate-time>"},"mode":{"type":"string","enum":["test","live"],"example":"live","uniqueKey":"meta.mode","typeLabel":"enum\u003cstring>"}},"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"success":false,"error":{"code":"FORBIDDEN","message":"The service is pending_review: it cannot collect payments in live mode.","details":{"service_status":"pending_review"}},"meta":{"request_id":"a4f8e2c1b3d97056","timestamp":"2026-10-29T10:00:00+00:00","mode":"live"}},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"FORBIDDEN","message":"The service is pending_review: it cannot collect payments in live mode.","details":{"service_status":"pending_review"}},"meta":{"request_id":"a4f8e2c1b3d97056","timestamp":"2026-10-29T10:00:00+00:00","mode":"live"}}}},"exampleType":"examples"}},"exampleType":"examples"},"70b7cedb-7e76-4d90-8bf3-b58205efda0f":{"description":"`RESOURCE_NOT_FOUND` : aucun service ni paiement avec ce code dans votre compte et ce mode.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":false,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string","example":"VALIDATION_ERROR","uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","example":"Some fields of the payment are missing or invalid.","uniqueKey":"error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"example":{"phone_number":"Required: the mobile money number with the country code, digits only, for example 237670000000."},"uniqueKey":"error.details","typeLabel":"object"}},"uniqueKey":"error","typeLabel":"object"},"meta":{"type":"object","properties":{"request_id":{"type":"string","example":"a4f8e2c1b3d97056","uniqueKey":"meta.request_id","typeLabel":"string"},"timestamp":{"type":"string","format":"date-time","example":"2026-10-29T10:00:00+00:00","uniqueKey":"meta.timestamp","typeLabel":"string\u003cdate-time>"},"mode":{"type":"string","enum":["test","live"],"example":"live","uniqueKey":"meta.mode","typeLabel":"enum\u003cstring>"}},"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"VALIDATION_ERROR","message":"Some fields of the payment are missing or invalid.","details":{"phone_number":"Required: the mobile money number with the country code, digits only, for example 237670000000."}},"meta":{"request_id":"a4f8e2c1b3d97056","timestamp":"2026-10-29T10:00:00+00:00","mode":"live"}}}},"exampleType":"generated"}},"exampleType":"generated"},"58b7bbcf-6ea7-4746-a04b-f0025200058e":{"description":"`VALIDATION_ERROR` : un ou plusieurs champs manquent ou sont invalides. `details` explique chaque champ.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":false,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string","example":"VALIDATION_ERROR","uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","example":"Some fields of the payment are missing or invalid.","uniqueKey":"error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"example":{"phone_number":"Required: the mobile money number with the country code, digits only, for example 237670000000."},"uniqueKey":"error.details","typeLabel":"object"}},"uniqueKey":"error","typeLabel":"object"},"meta":{"type":"object","properties":{"request_id":{"type":"string","example":"a4f8e2c1b3d97056","uniqueKey":"meta.request_id","typeLabel":"string"},"timestamp":{"type":"string","format":"date-time","example":"2026-10-29T10:00:00+00:00","uniqueKey":"meta.timestamp","typeLabel":"string\u003cdate-time>"},"mode":{"type":"string","enum":["test","live"],"example":"live","uniqueKey":"meta.mode","typeLabel":"enum\u003cstring>"}},"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"VALIDATION_ERROR","message":"Some fields of the payment are missing or invalid.","details":{"phone_number":"Required: the mobile money number with the country code, digits only, for example 237670000000."}},"meta":{"request_id":"a4f8e2c1b3d97056","timestamp":"2026-10-29T10:00:00+00:00","mode":"live"}}}},"exampleType":"generated"}},"exampleType":"generated"},"b6b436e8-6e0c-442b-934e-39d7fff7745a":{"description":"`OPERATION_FAILED` : l'opérateur est fermé aux encaissements en ce moment. Proposez un autre opérateur.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":false,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string","example":"VALIDATION_ERROR","uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","example":"Some fields of the payment are missing or invalid.","uniqueKey":"error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":true,"example":{"phone_number":"Required: the mobile money number with the country code, digits only, for example 237670000000."},"uniqueKey":"error.details","typeLabel":"object"}},"uniqueKey":"error","typeLabel":"object"},"meta":{"type":"object","properties":{"request_id":{"type":"string","example":"a4f8e2c1b3d97056","uniqueKey":"meta.request_id","typeLabel":"string"},"timestamp":{"type":"string","format":"date-time","example":"2026-10-29T10:00:00+00:00","uniqueKey":"meta.timestamp","typeLabel":"string\u003cdate-time>"},"mode":{"type":"string","enum":["test","live"],"example":"live","uniqueKey":"meta.mode","typeLabel":"enum\u003cstring>"}},"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"success":false,"error":{"code":"OPERATION_FAILED","message":"ORANGE_CMR is temporarily unavailable for collections. Offer another operator or try again later.","details":{"failure_code":"operator_unavailable"}},"meta":{"request_id":"a4f8e2c1b3d97056","timestamp":"2026-10-29T10:00:00+00:00","mode":"live"}},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"OPERATION_FAILED","message":"ORANGE_CMR is temporarily unavailable for collections. Offer another operator or try again later.","details":{"failure_code":"operator_unavailable"}},"meta":{"request_id":"a4f8e2c1b3d97056","timestamp":"2026-10-29T10:00:00+00:00","mode":"live"}}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"cc41c1b2-f077-4ec7-90c4-d0ca0aafd0be":{"BearerAuth":{"type":"http","scheme":"bearer","description":"Votre clé API secrète : `sk_live_…` (argent réel) ou `sk_test_…` (mode test).","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"b2798ba0-2e5a-4006-9b6b-5924c735b789":{"url":"https://api.kemypay.com/v1","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Votre clé API secrète : `sk_live_…` (argent réel) ou `sk_test_…` (mode test).","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Votre clé API secrète : `sk_live_…` (argent réel) ou `sk_test_…` (mode test).","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"}]},"originalFileLocation":"fr/openapi.yaml"},"subdomain":"kemypay","siteName":"KemyPay API","title":"Request a Payment - KemyPay API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api-reference/collections/create","matchLevel":0},"fr":{"href":"/fr/api-reference/collections/create","matchLevel":1}}},"lastModified":"2026-10-29T02:43:08.230Z","originalFileLocation":"api-reference/collections/create.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Asks your customer to pay from their mobile money account: they receive a prompt on their phone and confirm with their PIN. The result arrives by webhook (mobile_money.collection.completed or .failed). - reference is your unique reference. Sending the same request again returns the same payment with 200: your customer is never charged twice. The same reference with another service, amount or phone number is refused. - webhook_url and callback_url sent here take priority over those of the service. - Returns 201 with status processing (or pending if the operator did not answer yet: we check it for you). - In test mode the result is immediate (see Test mode).\">\u003cmeta data-mint-head name=\"application-name\" content=\"KemyPay API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/kemypay/_generated/favicon/apple-touch-icon.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/kemypay/_generated/favicon/favicon-32x32.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/kemypay/_generated/favicon/favicon-16x16.png?v=3\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/kemypay/_generated/favicon/favicon.ico?v=3\">\u003cmeta data-mint-head property=\"og:title\" content=\"Request a Payment - KemyPay API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Asks your customer to pay from their mobile money account: they receive a prompt on their phone and confirm with their PIN. The result arrives by webhook (mobile_money.collection.completed or .failed). - reference is your unique reference. Sending the same request again returns the same payment with 200: your customer is never charged twice. The same reference with another service, amount or phone number is refused. - webhook_url and callback_url sent here take priority over those of the service. - Returns 201 with status processing (or pending if the operator did not answer yet: we check it for you). - In test mode the result is immediate (see Test mode).\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"KemyPay API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://kemypay.mintlify.app/api-reference/collections/create\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://kemypay.mintlify.app/_mintlify/api/og/v2?division=Collections\u0026amp;title=Request+a+Payment\u0026amp;description=Asks+your+customer+to+pay+from+their+mobile+money+account%3A+they+receive+a+prompt+on+their+phone+and+confirm%0Awith+their+PIN.+The+result+arrives+by+webhook+%28%60mobi\u0026amp;theme=beb2db222dce19c31cbb4877\u0026amp;signature=87e6f444d9fb5d3899b6a6e842302285fd3b4ae1d810bf82849b301d8e6bdecd\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Request a Payment - KemyPay API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Asks your customer to pay from their mobile money account: they receive a prompt on their phone and confirm with their PIN. The result arrives by webhook (mobile_money.collection.completed or .failed). - reference is your unique reference. Sending the same request again returns the same payment with 200: your customer is never charged twice. The same reference with another service, amount or phone number is refused. - webhook_url and callback_url sent here take priority over those of the service. - Returns 201 with status processing (or pending if the operator did not answer yet: we check it for you). - In test mode the result is immediate (see Test mode).\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://kemypay.mintlify.app/_mintlify/api/og/v2?division=Collections\u0026amp;title=Request+a+Payment\u0026amp;description=Asks+your+customer+to+pay+from+their+mobile+money+account%3A+they+receive+a+prompt+on+their+phone+and+confirm%0Awith+their+PIN.+The+result+arrives+by+webhook+%28%60mobi\u0026amp;theme=beb2db222dce19c31cbb4877\u0026amp;signature=87e6f444d9fb5d3899b6a6e842302285fd3b4ae1d810bf82849b301d8e6bdecd\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/kemypay/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"KemyPay API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#15A877\">\u003clink data-mint-head rel=\"canonical\" href=\"https://kemypay.mintlify.app/api-reference/collections/create\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/collections/create.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://kemypay.mintlify.app/api-reference/collections/create\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://kemypay.mintlify.app/fr/api-reference/collections/create\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://kemypay.mintlify.app/api-reference/collections/create\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://kemypay.mintlify.app/#organization\",\"name\":\"KemyPay API\",\"url\":\"https://kemypay.mintlify.app\"},{\"@type\":\"WebSite\",\"@id\":\"https://kemypay.mintlify.app#website\",\"name\":\"KemyPay API\",\"url\":\"https://kemypay.mintlify.app\",\"publisher\":{\"@id\":\"https://kemypay.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://kemypay.mintlify.app/api-reference/collections/create#webpage\",\"url\":\"https://kemypay.mintlify.app/api-reference/collections/create\",\"name\":\"Request a Payment\",\"description\":\"Asks your customer to pay from their mobile money account: they receive a prompt on their phone and confirm with their PIN. The result arrives by webhook (mobile_money.collection.completed or .failed). - reference is your unique reference. Sending the same request again returns the same payment with 200: your customer is never charged twice. The same reference with another service, amount or phone number is refused. - webhook_url and callback_url sent here take priority over those of the service. - Returns 201 with status processing (or pending if the operator did not answer yet: we check it for you). - In test mode the result is immediate (see Test mode).\",\"dateModified\":\"2026-10-29T02:43:08.230Z\",\"isPartOf\":{\"@id\":\"https://kemypay.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://kemypay.mintlify.app/api-reference/collections/create#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://kemypay.mintlify.app/api-reference/collections/create#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Collections\",\"item\":\"https://kemypay.mintlify.app/api-reference/collections/quote\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Request a Payment\",\"item\":\"https://kemypay.mintlify.app/api-reference/collections/create\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://kemypay.mintlify.app/api-reference/collections/create#apireference\",\"headline\":\"Request a Payment\",\"name\":\"Request a Payment\",\"description\":\"Asks your customer to pay from their mobile money account: they receive a prompt on their phone and confirm with their PIN. The result arrives by webhook (mobile_money.collection.completed or .failed). - reference is your unique reference. Sending the same request again returns the same payment with 200: your customer is never charged twice. The same reference with another service, amount or phone number is refused. - webhook_url and callback_url sent here take priority over those of the service. - Returns 201 with status processing (or pending if the operator did not answer yet: we check it for you). - In test mode the result is immediate (see Test mode).\",\"url\":\"https://kemypay.mintlify.app/api-reference/collections/create\",\"mainEntityOfPage\":{\"@id\":\"https://kemypay.mintlify.app/api-reference/collections/create#webpage\"},\"dateModified\":\"2026-10-29T02:43:08.230Z\",\"publisher\":{\"@id\":\"https://kemypay.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://kemypay.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"KemyPay API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"KemyPay API","nav":{"global":{"anchors":[{"anchor":"API Reference","icon":"square-terminal","href":"/api-reference/overview"},{"anchor":"Support","icon":"envelope","href":"mailto:hi@kemypay.com"}]},"languages":[{"language":"en","tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API overview","href":"/api-reference/overview"}]},{"group":"Catalog","pages":[{"title":"List Countries and Operators","openapi":"GET /mobile-money/countries","href":"/api-reference/catalog/countries"},{"title":"Get a Country","openapi":"GET /mobile-money/countries/{country}","href":"/api-reference/catalog/country"},{"title":"List Service Categories","openapi":"GET /mobile-money/categories","href":"/api-reference/catalog/categories"}]},{"group":"Services","pages":[{"title":"Create a Service","openapi":"POST /mobile-money/services","href":"/api-reference/services/create"},{"title":"List Services","openapi":"GET /mobile-money/services","href":"/api-reference/services/list"},{"title":"Get a Service","openapi":"GET /mobile-money/services/{code}","href":"/api-reference/services/get"},{"title":"Update a Service","openapi":"PATCH /mobile-money/services/{code}","href":"/api-reference/services/update"},{"title":"Disable a Service","openapi":"POST /mobile-money/services/{code}/disable","href":"/api-reference/services/disable"},{"title":"Enable a Service","openapi":"POST /mobile-money/services/{code}/enable","href":"/api-reference/services/enable"},{"title":"Rotate the Webhook Secret","openapi":"POST /mobile-money/services/{code}/rotate-secret","href":"/api-reference/services/rotate-secret"}]},{"group":"Collections","pages":[{"title":"Quote a Payment","tag":"BETA","openapi":"POST /mobile-money/quote","href":"/api-reference/collections/quote"},{"title":"Predict the Operator","tag":"BETA","openapi":"POST /mobile-money/predict-operator","description":"Returns the country and the operator code of a mobile money number, with the number cleaned up.","href":"/api-reference/collections/predict-operator"},{"title":"Request a Payment","tag":"BETA","openapi":"POST /mobile-money/collections","href":"/api-reference/collections/create"},{"title":"List Payments","tag":"BETA","openapi":"GET /mobile-money/collections","description":"Your payments, newest first. Test keys list test payments only, live keys live payments only.","href":"/api-reference/collections/list"},{"title":"Get a Payment","tag":"BETA","openapi":"GET /mobile-money/collections/{code}","href":"/api-reference/collections/get"}]},{"group":"Balances","pages":[{"title":"List Balances","openapi":"GET /mobile-money/balances","href":"/api-reference/balances/list"}]},{"group":"Catalog","pages":[{"title":"List countries and operators","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mobile-money/countries","href":"/api-reference/catalog/list-countries-and-operators"},{"title":"Get a country","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mobile-money/countries/{country}","href":"/api-reference/catalog/get-a-country"},{"title":"List service categories","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mobile-money/categories","href":"/api-reference/catalog/list-service-categories"}]},{"group":"Services","pages":[{"title":"List your services","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mobile-money/services","href":"/api-reference/services/list-your-services"},{"title":"Create a service","deprecated":null,"version":null,"openapi":"/openapi.yaml post /mobile-money/services","href":"/api-reference/services/create-a-service"},{"title":"Get a service","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mobile-money/services/{code}","href":"/api-reference/services/get-a-service"},{"title":"Update the settings of a service","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /mobile-money/services/{code}","href":"/api-reference/services/update-the-settings-of-a-service"},{"title":"Disable a service","deprecated":null,"version":null,"openapi":"/openapi.yaml post /mobile-money/services/{code}/disable","href":"/api-reference/services/disable-a-service"},{"title":"Enable a service again","deprecated":null,"version":null,"openapi":"/openapi.yaml post /mobile-money/services/{code}/enable","href":"/api-reference/services/enable-a-service-again"},{"title":"Rotate the webhook secret","deprecated":null,"version":null,"openapi":"/openapi.yaml post /mobile-money/services/{code}/rotate-secret","href":"/api-reference/services/rotate-the-webhook-secret"}]},{"group":"Collections","pages":[{"title":"Quote a payment (beta)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /mobile-money/quote","href":"/api-reference/collections/quote-a-payment-beta"},{"title":"Find the operator of a phone number (beta)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /mobile-money/predict-operator","href":"/api-reference/collections/find-the-operator-of-a-phone-number-beta"},{"title":"List payments (beta)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mobile-money/collections","href":"/api-reference/collections/list-payments-beta"},{"title":"Request a payment (beta)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /mobile-money/collections","href":"/api-reference/collections/request-a-payment-beta"},{"title":"Get a payment (beta)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mobile-money/collections/{code}","href":"/api-reference/collections/get-a-payment-beta"}]},{"group":"Balances","pages":[{"title":"List your balances","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mobile-money/balances","href":"/api-reference/balances/list-your-balances"}]}]},{"tab":"Supported Countries","pages":[{"title":"Supported Countries","href":"/supported-countries/mobile-money"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},{"language":"fr","navbar":{"links":[{"href":"mailto:hi@kemypay.com","label":"Support"}],"primary":{"type":"button","label":"Site web","href":"https://kemypay.com"}},"pages":[{"title":"fr","href":"/fr/api-reference/collections/create"}]}]},"title":"Request a Payment - KemyPay API","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DmVyH30O.js","utils-BHQqGGOd.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CD-E4BIt.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp5Lq9Ds.js","snippetPresets-C4xAVCFP.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CgXVLxUC.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BF8I5oUf.js","shallow-Byd0lWnC.js","getApiPlaygroundDisplay-BGOZG1OK.js","CodeSnippet-CpvQL0CY.js","CodeSnippets-B8wkBKXa.js","Page-CBCH2P7b.js","getPastedJson-Ry3scI3Y.js","icon-D7a9HcdD.js","MethodPill-CJ8pmHhz.js","DuplicateIcon-rh1HJF0t.js","createIcon-DvGznqYs.js","DynamicMarkdown-Cc6AuSHS.js","SectionHeading-B4A0S-ep.js","axios-vUo_bRtp.js","Markdown-Cc16CX65.js","clsx-Cs6nMGht.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-zbf22OZA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-C_fs-y5n.js"]}