Crée une nouvelle facture.
Numérotation automatique:
- Si l'état est 'waiting', 'paid', 'notpaid' ou 'late', un numéro est automatiquement attribué
- Le système verrouille la numérotation pendant l'attribution pour éviter les doublons
- Un numéro d'enregistrement FEC (numberRecord) est aussi généré
Types de factures:
invoice: Facture standardinvoice_credit: Avoirexternal: Facture externe (client fournisseur)external_credit: Avoir externeproforma: Facture proformaadvance: Acompte
Calculs automatiques:
- Les totaux HT, TVA et TTC sont calculés automatiquement
- Les réductions globales sont appliquées
- La date d'échéance est calculée selon les paramètres de l'entreprise
Événements déclenchés:
- CREATE_INVOICE
- Mise à jour du stock si nécessaire
Réponse:
- Inclut les liens
pdf_linkethtml_linkpour accéder aux documents
Body
Required
-
ID du client
-
Nom du client (si pas de client référencé)
-
Default value is
France. -
Email pour l'envoi de la facture
-
Date de la facture (défaut = maintenant)
-
Date d'échéance (calculée automatiquement si non fournie)
-
État initial (draft = brouillon sans numéro)
Values are
draft,waiting,paid,notpaid, orlate. Default value isdraft. -
Values are
invoice,invoice_credit,external,external_credit,proforma, oradvance. Default value isinvoice. -
Titre/objet de la facture
-
Lignes de la facture
POST
/invoice
curl \
--request POST 'https://wuro.pro/api/v3.2/invoice' \
--header "X-APP-ID: $API_KEY" \
--header "X-APP-SECRET: $API_KEY" \
--header "Content-Type: application/json" \
--data '{"client":"string","client_name":"string","client_address":"string","client_city":"string","client_zip_code":"string","client_country":"France","client_email":"hello@example.com","date":"2025-05-04T09:42:00Z","payment_expiry_date":"2025-05-04T09:42:00Z","state":"draft","type":"invoice","title":"string","invoice_lines":[{"title":"string","description":"string","reference":"string","product":"string","price_ht":42.0,"quantity":1,"tva_rate":42.0,"unit":"string","type":"product","discount":42.0}]}'
Request examples
{
"client": "string",
"client_name": "string",
"client_address": "string",
"client_city": "string",
"client_zip_code": "string",
"client_country": "France",
"client_email": "hello@example.com",
"date": "2025-05-04T09:42:00Z",
"payment_expiry_date": "2025-05-04T09:42:00Z",
"state": "draft",
"type": "invoice",
"title": "string",
"invoice_lines": [
{
"title": "string",
"description": "string",
"reference": "string",
"product": "string",
"price_ht": 42.0,
"quantity": 1,
"tva_rate": 42.0,
"unit": "string",
"type": "product",
"discount": 42.0
}
]
}
Response examples (201)
{
"newInvoice": {
"_id": "string",
"VATRates": [
{
"amount": 42.0,
"rate": "string",
"total": 42.0
}
],
"acomptes": [
{
"_id": "string",
"amount": 42.0,
"amount_ht": 42.0,
"credit": false,
"date": "2025-05-04T09:42:00Z"
}
],
"base_currency": "EUR",
"client": "string",
"client_name": "string",
"client_address": "string",
"client_city": "string",
"client_zip_code": "string",
"client_country": "France",
"client_email": "string",
"client_phone": "string",
"company": "string",
"company_name": "string",
"date": "2025-05-04T09:42:00Z",
"payment_expiry_date": "2025-05-04T09:42:00Z",
"invoice_lines": [
{
"_id": "string",
"description": "string",
"price_ht": 0,
"quantity": 1,
"reference": "string",
"title": "string",
"total_ht": 0,
"total_ttc": 0,
"tva_rate": 42.0,
"type": "product",
"unit": "string"
}
],
"number": "string",
"state": "draft",
"title": "string",
"total_ht": 42.0,
"total_ttc": 42.0,
"total_tva": 42.0,
"type": "invoice",
"payments": [
{
"_id": "string",
"mode": "string",
"method_name": "string",
"amount": 42.0,
"date": "2025-05-04T09:42:00Z",
"check_number": "string"
}
],
"pdf_link": "string",
"html_link": "string"
}
}