Docs

3 API3.5

3.5

Annuler avant la transmission

Arrêter une facture avant sa transmission.

  • Dans le bac à sable

En termes simples

Cet appel arrête une facture qui n’a pas encore atteint le canal ; au-delà, la correction passe par un avoir.

POST /invoices/{id}/cancel arrête une facture que le canal n’a pas encore reçue. Il fonctionne tant que la facture est received, validated ou queued et qu’aucun envoi n’est en cours. Au-delà, l’annulation relève d’un document commercial : émettez un avoir.

L’appel nécessite une clé dotée de la portée submit et un en-tête Idempotency-Key (de 8 à 100 caractères). La requête n’a pas de corps.

Annulée à temps

La facture passe à cancelled, et sa tâche en file d’attente est abandonnée.

curl -X POST "https://api-sandbox-eu.eurinvoice.com/invoices/inv_ae4d9834bf251353532fe5ee/cancel" \
  -H "Authorization: Bearer <your-api-key>" \
  -H "Idempotency-Key: cancel-2026-0001"
Réponse200 OK
{
  "invoice_ref": "FRESH-mux3dlqm-0",
  "environment": "sandbox",
  "document_sha256": "b341c81da6fe297787829a8c26fd4b25106b5b34e67482d38c1039651bbfed65",
  "route": "DE-XRECHNUNG",
  "updated_at": "2026-10-06T19:49:10.992Z",
  "client": "acme-srl",
  "created_at": "2026-10-06T19:49:10.816Z",
  "id": "inv_ae4d9834bf251353532fe5ee",
  "state": "cancelled",
  "invoice_number": "FRESH-mux3dlqm-0"
}
Enregistré le 7 oct. 2026, alors que la facture était encore en file d’attente.

Trop tard

Une fois que le canal a reçu la facture, ou qu’un envoi est en cours, la réponse est 409.

curl -X POST "https://api-sandbox-eu.eurinvoice.com/invoices/inv_936a93e38de84e7b0a1d7681/cancel" \
  -H "Authorization: Bearer <your-api-key>" \
  -H "Idempotency-Key: cancel-2026-0002"
Réponse409 Conflict
{
  "type": "https://eurinvoice.com/problems/already-submitted",
  "title": "Already submitted to the route; issue a credit note instead",
  "status": 409
}
Enregistré le 7 oct. 2026.

Réponses

StatutSignification
200Annulée. Le corps est la facture.
400L’en-tête Idempotency-Key est absent ou ne compte pas de 8 à 100 caractères.
401Aucune clé, ou une clé inconnue.
403La clé n’a pas la portée submit.
404Cette facture n’existe pas pour ce client.
409Déjà transmise (already-submitted), ou un envoi est en cours (send-in-progress). Émettez un avoir, ou attendez le résultat. Pour une facture dead_letter, la clé d’un client reçoit dead-letter : c’est à nous de trancher.
429Trop de requêtes pour la clé. Attendez Retry-After secondes.

Annuler une facture déjà annulée renvoie 200 avec la même facture : un nouvel essai après une réponse perdue est donc sans risque. Une facture en file d’attente est prise en charge en quelques secondes : la fenêtre d’annulation est donc courte. Si un envoi a été tenté et que sa réponse s’est perdue, la facture est en submitting et l’annulation répond send-in-progress, car le canal peut l’avoir reçue.

Sur cette page