lomi.
Sessions de paiement

Créer une session de paiement

Créer une session de paiement

Aperçu

Créer une session de paiement

Crée une page de paiement hébergée pour que le client finalise son achat. La session expire après 60 minutes par défaut. Renvoie un identifiant de session et une URL de redirection.

Quand l’utiliser

Utilisez pour l’e-commerce, les factures ou tout flux où lomi. héberge l’encaissement et renvoie l’acheteur sur votre site.

À savoir

Préférez les sessions checkout aux encaissements ad hoc pour une expérience acheteur cohérente. Pour les produits pay_what_you_want, le montant doit respecter minimum_amount et maximum_amount du prix lié (unité × quantité). currency_code est optionnel et reprend la devise par défaut de l’organisation (Paramètres → Checkout → Paiements).

Voir aussi

Liens de paiement · Récupérer une session checkout

Authentification

Les routes marchandes nécessitent une clé API dans l’en-tête X-API-KEY (voir Vue d’ensemble). Utilisez une clé test avec https://sandbox.api.lomi.africa et une clé live avec https://api.lomi.africa.

Endpoint

POST /checkout-sessions

URLs de base :

  • https://sandbox.api.lomi.africa
  • https://api.lomi.africa

Requête

Paramètres d’URL

Pas d’autre paramètre dans l’URL.

Paramètres de requête

Aucun paramètre de requête.

En-têtes

NomEmplacementObligatoireSchémaDescription
Lomi-AccountheaderNon-Optional lomi. Network account id (acct_...). When present, the API key acts as the Operator and the request targets the connected Member Account.

Corps de la requête

Charge utile de session : indiquez amount (et champs produit optionnels) ou line_items pour un panier multi-produits.

Schéma: object

ChampObligatoireTypeDescription
amountNonnumber-
currency_codeNonenum ("XOF", "USD", "EUR")Optionnel. S’il est omis, utilise la default_currency de l’organisation (Paramètres → Checkout → Paiements). Doit figurer dans allowed_currencies.
titleNonstring-
descriptionNonstring-
customer_idNonstring-
customer_emailNonstring-
customer_nameNonstring-
customer_phoneNonstring-
customer_cityNonstring-
customer_countryNonstring-
customer_addressNonstring-
customer_postal_codeNonstring-
product_idNonstring-
price_idNonstring-
subscription_idNonstring-
allow_quantityNonboolean-
quantityNonnumber-
success_urlNonstring-
cancel_urlNonstring-
allow_coupon_codeNonboolean-
require_billing_addressNonbooleanSi true, affiche et exige l’adresse de facturation. Si omis, suit les paramètres checkout de l’organisation, puis false. Voir Champs du formulaire checkout.
require_nameNonbooleanSi true, affiche et exige le nom du client. Si false, masque le champ nom (le nom d’affichage repose sur l’e-mail ou le téléphone). Défaut si omis : true. Voir Champs du formulaire checkout.
require_emailNonbooleanSi true, affiche et exige l’e-mail. Si false, masque l’e-mail. Défaut si omis : true. Voir Champs du formulaire checkout.
require_phoneNonbooleanSi true, affiche et exige le téléphone. Si false, téléphone optionnel si l’e-mail est visible, ou masqué si l’e-mail est masqué. Défaut si omis : false. Voir Champs du formulaire checkout.
fieldsNonarray<object>Schéma ordonné optionnel des champs checkout. S’il est fourni, remplace les booléens require_*.
payment_link_idNonstring-
metadataNonobject-
line_itemsNonarray<object>-

Exemple de corps :

{
  "currency_code": "XOF"
}

Réponses

StatutDescription
201Session de paiement créée avec succès
400Entrée invalide ou erreur de validation
401Clé API invalide ou manquante

Erreurs

Les erreurs suivent un format JSON standard. 401 : clé manquante ou invalide. 404 : ressource introuvable. 429 : trop de requêtes. Pour les créations, envoyez une clé d’idempotence si votre flux le permet.

Exemple

Session minimale :

curl -sS -X POST "https://sandbox.api.lomi.africa/checkout-sessions" \
  -H "X-API-KEY: $LOMI_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{"currency_code":"XOF"}'

Checkout téléphone seul (nom, e-mail et adresse masqués) :

curl -sS -X POST "https://sandbox.api.lomi.africa/checkout-sessions" \
  -H "X-API-KEY: $LOMI_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 1000,
    "currency_code": "XOF",
    "require_name": false,
    "require_email": false,
    "require_phone": true,
    "require_billing_address": false
  }'

Voir Champs du formulaire checkout pour toutes les combinaisons.

OpenAPI

  • operationId: CheckoutSessionsController_create
  • Operation: POST /checkout-sessions

Schémas complets et Try it : référence API.

Sur cette page