Quotes

Créer un brouillon de facture depuis un devis

Convertit un devis (au moins validé, total HT non nul) en BROUILLON de facture relié au devis. Lignes, objet, remises et totaux sont repris du devis ; le devis reste inchangé. Sans émission : ni numéro officiel, ni PDF, ni transmission ; le brouillon se finalise dans l'app. Scopes requis : quotes:read ET invoices:draft.

post/quotes/{id}/invoice-draft

Request

  • Base URL: https://api.swipify.fr/api/v1
  • URL: https://api.swipify.fr/api/v1/quotes/{id}/invoice-draft
  • Auth: API key in header X-API-Key

Path parameters

idinteger required

Headers

Idempotency-Keystring

Clé d'idempotence (un UUID est recommandé). Optionnelle mais conseillée sur les retries réseau : la première réponse 2xx est mémorisée par (organisation, clé) ~24 h et rejouée au lieu de recréer la ressource (évite les doublons de facture/devis/client). Réutiliser la même clé pour une autre requête (méthode/chemin différents) renvoie 422. L'en-tête X-Idempotency-Key est accepté comme alias équivalent.

Response

Brouillon de facture créé

idinteger
numberstring nullable
draftNumberstring nullable
statusstring
objectstring nullable
datestring date-time nullable
dueDatestring date-time nullable
paidDatestring date-time nullable
totalHTstring
totalVATstring
totalTTCstring
einvoiceStatus'pending' | 'delivered' | 'accepted' | 'rejected' | 'paid' | 'reported' | 'error' | 'null' nullable

Statut de cycle de vie e-invoice (PA). null si pas de cycle (brouillon/non conforme). rejected = refusée par la plateforme. reported = vente à un particulier, transmise en e-reporting : pas d'e-facture, donc ni remise ni acceptation client.

brandProfileKeystring nullable

Profil de marque du document. null = profil par défaut.

reminderCountinteger

Nombre de relances d'impayé envoyées (manuelles et automatiques). L'envoi d'une relance reste un geste dans l'application, jamais un appel API.

reminderLastSentAtstring date-time nullable

Date de la dernière relance d'impayé, null si jamais relancée.

remindersPausedboolean

true si les relances automatiques sont suspendues pour cette facture.

recurringboolean

true si la facture a été générée par une facture récurrente.

createdAtstring date-time

Example response

{
  "id": 1234,
  "number": "FAC-2026-0042",
  "status": "paid",
  "totalHT": "850.00",
  "totalVAT": "170.00",
  "totalTTC": "1020.00",
  "brandProfileKey": "boutique-lyon",
  "reminderCount": 1
}

Changes

No recorded changes to this operation across all 1 revision of this API.