code est stable et en snake_case — branchez-vous dessus, pas sur le message.
message est lisible et loggable. Aucune stack trace n’est jamais renvoyée.
Général
422
Corps ou paramètre refusé par la validation de schéma ; message au format
champ: raison.400
Valeur inconnue dans un filtre de liste (aussi :
language inconnu sur les
listes de référence, format inconnu au téléchargement d’un fichier).422
Paramètre de query qui ne s’applique pas à la ressource visée (ex.
?ignore_duplicate sur un contact).422
Champ en lecture seule dans un
PATCH — bic/reference d’un compte bancaire
non manuel, code/category/sequence_scope d’un journal, type/journal_id
d’un document — ou champ qui n’existe pas pour le type de la relation.404
Route inconnue ou UUID inconnu (y compris un UUID d’une autre entreprise).
500
Erreur serveur inattendue, loggée de notre côté. Réessayez plus tard ; si elle
persiste, contactez le support en indiquant le
X-Request-ID de l’en-tête de
réponse — il nous permet de récupérer la trace de cette requête immédiatement et
d’accélérer le traitement (voir Conventions).Authentification
400
Champ d’identification manquant sur
/auth/token.401
client_id inconnu ou client_secret erroné.401
refresh_token inconnu, déjà utilisé ou révoqué.401
Le client a été désactivé.
401
access_token absent, malformé ou expiré.403
L’
access_token ne porte pas le droit requis.429
Trop d’authentifications échouées sur ce
client_id.Documents
422
relation_id inconnu, d’une autre entreprise, ou sans adresse.422
Journal inconnu, inactif, d’une autre entreprise, ou de la mauvaise catégorie
pour le type du document.
422
Pas de
journal_id fourni et aucun journal par défaut pour la catégorie.422
Adresse de livraison inconnue ou appartenant à un autre tiers que celui du
document.
422
Total du document négatif.
422
paid_amount déclaré au-dessus du total du document.422
Remise/majoration de document sur des lignes totalisant 0, ou taux de TVA dont
les lignes totalisent un montant négatif.
422
Date hors de l’encadrement des documents numérotés voisins, ou hors de la
fenêtre de numérotation.
422
Lignes stockées inutilisables pour un recalcul — envoyer le tableau
lines
complet en remplacement.422
Création d’un document d’achat alors que l’auto-facturation n’est pas activée
pour la société.
422
Envoi d’un type que Peppol ne transporte pas (ex. un proforma). En
409 : envoi
d’un document reçu.422
Le workflow d’envoi n’a pas pu démarrer. Avec
?send_peppol=true le document
est créé — le message donne son id ; la reprise est
POST /documents/{id}/send, jamais une seconde création.409
Envoi Peppol d’un document déjà parti — seul un envoi en échec (
peppol_status
failed ou rejected) se relance.409
Nom de pièce jointe déjà porté par le document.
409
PATCH d’un document déjà envoyé au client, déjà transmis à la comptabilité, ou
reçu.409
DELETE d’un document qui n’est pas le dernier de sa séquence, déjà envoyé,
transmis, ou reçu.409
DELETE d’un document lié à un rapprochement, une ligne de prestation facturée
ou une intention de paiement.413
(fichier trop gros) et 415 (extension refusée).
Relations
409
Société dont le
vat, l’identifier ou l’electronic_address existe déjà —
contournable avec ?ignore_duplicate=true ; le message donne l’id existant.422
Adresse sans
country_code, ou street_number sans street.409
DELETE d’un tiers encore référencé (document, abonnement, projet, ligne de
prestation, correspondance comptable…). Le message dit ce qui bloque.Adresses de livraison
422
Adresse sans
country_code, ou street_number sans street — les mêmes règles
que l’adresse d’un tiers.422
Paire
identifier / identifier_scheme à moitié remplie.422
Sur un document : adresse inconnue ou appartenant à un autre tiers que celui du
document.
409
DELETE d’une adresse de livraison à laquelle un document est livré.Comptes bancaires
409
Compte avec la même
reference (IBAN) déjà présent.422
Rétrogradation du compte bancaire par défaut sans en promouvoir un autre.
Journaux
409
code de journal déjà porté dans l’entreprise.422
Journal par défaut créé ou laissé inactif, ou rétrogradation du dernier défaut
d’une catégorie.
422
bank_account_id ne correspondant à aucun compte de l’entreprise.Brandings
422
Rétrogradation du branding par défaut — en promouvoir un autre à la place.