Devis
Statuts : DRAFTSENTACCEPTEDDECLINEDEXPIREDCONVERTED
Un devis CONVERTED a été converti en facture et est en lecture seule.
GETLister les devis
GET/quotes
| Paramètre | Type | Description |
|---|---|---|
| page | integer | Numéro de page (défaut : 1) |
| limit | integer | Éléments par page, max 100 (défaut : 20) |
| search | string | Recherche dans numéro et titre du devis |
| status | string | Filtrer par statut |
| customerId | string | Filtrer par ID client |
| sort | string | createdAt | -createdAt | validUntil | -validUntil |
curl "https://paymavo.com/api/v1/quotes?status=ACCEPTED" \
-H "Authorization: Bearer sk_live_xxx"GETObtenir un devis
GET/quotes/{id}
curl https://paymavo.com/api/v1/quotes/clx456 \
-H "Authorization: Bearer sk_live_xxx"POSTCréer un devis
POST/quotes
| Paramètre | Type | Description |
|---|---|---|
| customerId* | string | ID client |
| title* | string | Titre du devis (max 200 car.) |
| items* | array | Lignes — description, quantity, unitPrice (cents) |
| description | string | Description du devis |
| validUntil | date-time | Date de validité (par défaut : 30 jours à partir de maintenant) |
| terms | string | Conditions générales |
| notes | string | Notes internes |
| discountType | string | percentage | fixed |
| discountValue | integer | Montant de la remise |
curl -X POST https://paymavo.com/api/v1/quotes \
-H "Authorization: Bearer sk_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"customerId": "clx...",
"title": "Brand redesign proposal",
"validUntil": "2026-04-01T00:00:00.000Z",
"items": [
{ "description": "Discovery & strategy", "quantity": 1, "unitPrice": 150000 },
{ "description": "Design system", "quantity": 1, "unitPrice": 350000 }
]
}'PATCHModifier un devis
PATCH/quotes/{id}
Impossible de modifier un devis CONVERTED — l'API renvoie 409.
curl -X PATCH https://paymavo.com/api/v1/quotes/clx456 \
-H "Authorization: Bearer sk_live_xxx" \
-H "Content-Type: application/json" \
-d '{ "validUntil": "2026-05-01T00:00:00.000Z" }'DELETESupprimer un devis
DELETE/quotes/{id}
Impossible de supprimer un devis CONVERTED.
curl -X DELETE https://paymavo.com/api/v1/quotes/clx456 \
-H "Authorization: Bearer sk_live_xxx"POSTEnvoyer un devis par courriel
POST/quotes/{id}/send
Génère le PDF et l'envoie au client (ou à une adresse courriel personnalisée). Statut SENT.
curl -X POST https://paymavo.com/api/v1/quotes/clx456/send \
-H "Authorization: Bearer sk_live_xxx" \
-H "Content-Type: application/json" \
-d '{ "email": "client@example.com" }'POSTConvertir un devis en facture
POST/quotes/{id}/convert-to-invoice
Crée une facture à partir du devis et marque le devis comme CONVERTED. L'API renvoie 409 si déjà converti.
curl -X POST https://paymavo.com/api/v1/quotes/clx456/convert-to-invoice \
-H "Authorization: Bearer sk_live_xxx" \
-H "Content-Type: application/json" \
-d '{ "dueDate": "2026-05-01", "paymentMethod": "ONLINE_PAYMENT" }'GETObtenir le PDF du devis
GET/quotes/{id}/pdf
Renvoie l'URL Cloudinary du PDF du devis. Le PDF est généré à la volée s'il n'a pas encore été créé.
curl "https://paymavo.com/api/v1/quotes/clx456/pdf" \
-H "Authorization: Bearer sk_live_xxx"Docs
Guides
Documentation API