Create payment request
Create payment request
Overview
Create payment request
Creates a payer-facing request with amount, expiry, and metadata for reconciliation.
When to use this
Use for “pay this invoice” or POS-style requests where the payer confirms on their device.
See also
Retrieve payment request · Transactions
Authentication
Merchant routes require an API key in the X-API-KEY header (see Integration overview). Use a test key against https://sandbox.api.lomi.africa and a live key against https://api.lomi.africa.
Endpoint
POST /payment-requests
Base URLs:
https://sandbox.api.lomi.africahttps://api.lomi.africa
Request
Path parameters
No path parameters beyond the URL pattern.
Query parameters
No query parameters.
Request body
JSON request payload.
Schema: object
| Field | Required | Type | Description |
|---|---|---|---|
amount | Yes | number | - |
currency_code | Yes | enum ("XOF", "USD", "EUR") | - |
description | No | string | - |
customer_id | No | string | - |
expiry_date | Yes | string | - |
payment_reference | No | string | - |
metadata | No | object | - |
Example body:
{
"amount": 0,
"currency_code": "XOF",
"expiry_date": "string"
}Responses
| Status | Description |
|---|---|
201 | Created successfully |
400 | Bad request, invalid or missing parameters |
401 | Invalid or missing API key |
Errors
Errors follow the standard JSON error format (status code and machine-readable message). Validate inputs before calling; 401 indicates a missing/invalid key, 404 a missing resource for this organization, 429 rate limiting. For safe retries on create-style calls, send an idempotency key when your flow supports it.
Example
curl -sS -X POST "https://sandbox.api.lomi.africa/payment-requests" \
-H "X-API-KEY: $LOMI_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{"amount":0,"currency_code":"XOF","expiry_date":"string"}'OpenAPI
- operationId:
PaymentRequestsController_create - Operation:
POST /payment-requests
Full schemas and Try it: API reference. Machine-readable contract: repo apps/docs/openapi.json.