Aller au contenu
Support

Confirmer un paiement (mode A)

Mode A (vous encaissez) : déclare votre encaissement. Le contrat est émis dans la même réponse.

POSThttps://api.coveraf.com/v1/souscriptions/{id}/confirmer-paiement
SignéIdempotentRéponse JSON 201Sandbox et production
Cette déclaration vous engage

La prime déclarée est due à OPTIMUS AFRICA selon votre convention (relevé de reversement). Un plafond de primes non reversées peut s'appliquer à votre compte : au-delà, erreur plafond_encours_atteint.

Réservé au mode A

Votre compte doit être en mode « vous encaissez ». Voir Mode A.

En-têtes

En-têteObligatoireValeur
AuthorizationouiBearer suivi de votre clé API (cvr_test_... ou cvr_live_...).
Content-Typeouiapplication/json
X-Coveraf-TimestampouiHeure actuelle, horodatage Unix en secondes.
X-Coveraf-Signatureouiv1= suivi du HMAC-SHA256 de la requête. Comment signer
Idempotency-KeyouiIdentifiant unique de l'opération (UUID). Idempotence

Paramètres de chemin

ChampTypeObligatoireDescription
idtexteouiIdentifiant de la souscription (sou_...).

Corps de la requête

ChampTypeObligatoireDescription
reference_transactiontexteouiVotre référence de l'encaissement, 4 à 100 caractères (lettres, chiffres, - _ . : /). Une référence ne sert qu'une fois.
operateur« orange » | « mtn » | « moov » | « wave » | « djamo » | « autre »ouiMoyen utilisé pour encaisser le client.
montantentier, FCFAouiExactement montant_a_payer.montant de la souscription.
date_paiementinstant ISO 8601nonHeure de l'encaissement. Maintenant par défaut. Ni dans le futur, ni avant la souscription.

Exemple de requête

IDEMPOTENCY_KEY=$(uuidgen) ./coveraf.sh POST /v1/souscriptions/sou_bd4094da89da4a2e0e6078de/confirmer-paiement '{"reference_transaction":"OM-13733933","operateur":"orange","montant":12980}'

Les fonctions appelCoveraf, appel_coveraf et le script coveraf.sh signent la requête pour vous : téléchargez-les.

Réponse

Succès (201), réponse réelle de la sandbox
{
  "id": "sou_8a1ab1eb752f13c8f09bb0b6",
  "objet": "souscription",
  "environnement": "test",
  "statut": "payee",
  "devis_id": "dev_68e56446d4b5c6875911f178",
  "montant_a_payer": {
    "montant": 12980,
    "devise": "XOF"
  },
  "mode_paiement": "encaissement_partenaire",
  "date_effet_prevue": "2026-11-04",
  "souscripteur": {
    "nom": "KONE",
    "prenom": "Awa",
    "telephone": "+2250701020304"
  },
  "reference_partenaire": "CMD-2026-0042",
  "paiement": null,
  "contrat": {
    "numero": "TEST-CVR-API-MW2EDTG6-F92441FC41",
    "adresse": "/v1/contrats/TEST-CVR-API-MW2EDTG6-F92441FC41"
  },
  "expire_le": "2026-11-19T17:35:33.439+00:00",
  "payee_le": "2026-11-04T17:35:36.2+00:00",
  "cree_le": "2026-11-04T17:35:33.887733+00:00"
}

Description de chaque champ : modèle Souscription.

Erreurs possibles

CodeHTTPSignification
mode_paiement_incompatible403Ce mode de paiement n'est pas celui prévu pour votre compte.
montant_incorrect422Le montant encaissé ne correspond pas au montant de la souscription.
reference_deja_utilisee409Cette référence de transaction a déjà servi pour une autre souscription.
souscription_deja_payee409Cette souscription est déjà payée : son contrat est émis.
souscription_expiree410Cette demande de souscription a expiré (son devis n'est plus valable). Demandez un nouveau devis.
emission_en_cours409Ce paiement est déjà en cours de traitement. Consultez GET /v1/souscriptions/{id} dans quelques secondes.
plafond_encours_atteint403Plafond de primes encaissées non reversées atteint. Effectuez un reversement à OPTIMUS AFRICA pour continuer.
validation422Certaines données sont manquantes ou incorrectes. Voir erreur.details.

S'y ajoutent les erreurs communes à tous les appels (clé, signature, limite de débit, service) : voir Codes d'erreur.