Créer une souscription
Enregistre une demande de souscription à partir d'un devis et renvoie le montant à payer. Aucun contrat n'est créé à ce stade.
POSThttps://api.coveraf.com/v1/souscriptions
SignéIdempotentRéponse JSON 201Sandbox et production
Aucun contrat à ce stade
La souscription enregistre la demande et fixe le montant à payer. Le contrat n'existe qu'une fois le paiement confirmé. Un devis ne donne qu'une souscription.
En-têtes
| En-tête | Obligatoire | Valeur |
|---|---|---|
Authorization | oui | Bearer suivi de votre clé API (cvr_test_... ou cvr_live_...). |
Content-Type | oui | application/json |
X-Coveraf-Timestamp | oui | Heure actuelle, horodatage Unix en secondes. |
X-Coveraf-Signature | oui | v1= suivi du HMAC-SHA256 de la requête. Comment signer |
Idempotency-Key | oui | Identifiant unique de l'opération (UUID). Idempotence |
Corps de la requête
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
devis_id | texte | oui | Identifiant du devis (dev_...), encore valable. |
souscripteur | objet | oui | Le client final (voir tableau ci-dessous). |
informations | objet | selon l'offre | Informations propres au produit (voir chaque offre). |
date_effet | date AAAA-MM-JJ | non | Début de la couverture, aujourd'hui par défaut, au plus tard dans 90 jours. Si le paiement arrive après cette date, la couverture démarre le jour du paiement. |
reference_partenaire | texte | non | Votre propre référence (commande, client...), 100 caractères max. Reprend celle du devis par défaut. |
Les champs de souscripteur et de informations sont détaillés dans Modèles de données et sur la page de chaque produit.
Exemple de requête
IDEMPOTENCY_KEY=$(uuidgen) ./coveraf.sh POST /v1/souscriptions '{"devis_id":"dev_68e56446d4b5c6875911f178","souscripteur":{"nom":"KONE","prenom":"Awa","telephone":"+2250701020304","email":"awa.kone@example.com","adresse":"Cocody, Abidjan","date_naissance":"1990-04-12"},"date_effet":"2026-11-04","informations":{"profession":"Commerçante","beneficiaires":[{"nom":"KONE Moussa","lien":"Conjoint","contact":"0707070707","part":100}]}}'Les fonctions appelCoveraf, appel_coveraf et le script coveraf.sh signent la requête pour vous : téléchargez-les.
Réponse
{
"id": "sou_8a1ab1eb752f13c8f09bb0b6",
"objet": "souscription",
"environnement": "test",
"statut": "en_attente_paiement",
"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": null,
"expire_le": "2026-11-19T17:35:33.439+00:00",
"payee_le": null,
"cree_le": "2026-11-04T17:35:33.887733+00:00"
}Description de chaque champ : modèle Souscription.
Erreurs possibles
| Code | HTTP | Signification |
|---|---|---|
validation | 422 | Certaines données sont manquantes ou incorrectes. Voir erreur.details. |
introuvable | 404 | Ressource introuvable. |
devis_expire | 410 | Ce devis a expiré. Demandez un nouveau devis. |
devis_deja_souscrit | 409 | Ce devis fait déjà l'objet d'une souscription en cours ou payée. |
offre_non_autorisee | 403 | Cette offre n'est pas ouverte à votre compte. |
idempotence_requise | 400 | En-tête Idempotency-Key obligatoire pour cette opération. |
S'y ajoutent les erreurs communes à tous les appels (clé, signature, limite de débit, service) : voir Codes d'erreur.