Aller au contenu principal

VeriFactu Phase 3 : Envoi à l'AEAT

Qu'est-ce que la Phase 3

La Phase 3 de VeriFactu est l'envoi automatique des enregistrements de facturation à l'Agence Fiscale (AEAT) via des messages SOAP/XML. Elle complète les phases précédentes (hachage SHA-256 et QR) par la transmission effective de chaque ajout et annulation de facture au système SII de l'AEAT.

Avec cette phase active, Frihet génère le XML conformément à l'Ordre HAC/1177/2024, le signe avec votre certificat numérique et l'envoie directement aux serveurs de l'AEAT. Tout se déroule en arrière-plan, sans intervention manuelle.

Certificat numérique

Pour envoyer des enregistrements à l'AEAT, vous avez besoin d'un certificat numérique valide. Frihet accepte les certificats aux formats .pfx ou .p12.

Où obtenir un certificat

ÉmetteurTypeCoût
FNMT (Fabrica Nacional de Moneda y Timbre)Personne physique ou moraleGratuit
CamCert (Camaras de Comercio)EntrepriseVariable
ACCV (Comunitat Valenciana)RégionalGratuit

Télécharger le certificat

  1. Allez dans Paramètres > Conformité
  2. Dans la section Certificat Numérique, cliquez sur Télécharger le certificat
  3. Sélectionnez votre fichier .pfx ou .p12
  4. Saisissez le mot de passe du certificat
Chiffrement du mot de passe

Le mot de passe de votre certificat est chiffré avec AES-256-GCM avant d'être stocké. Il n'est jamais conservé en texte clair.

Sandbox vs Production

Le bouton bascule Mode sandbox dans Paramètres > Conformité permet d'envoyer des enregistrements à l'environnement de test de l'AEAT avant d'activer l'envoi réel.

  • Sandbox : les enregistrements sont envoyés au point d'accès de test (endpoint). L'AEAT les valide mais ne les enregistre pas officiellement. Utile pour vérifier que le certificat et les données sont corrects.
  • Production : les enregistrements sont envoyés au point d'accès officiel (endpoint). Les factures sont enregistrées dans le système SII de l'AEAT.
astuce

Activez le mode sandbox pendant les premiers jours pour confirmer que votre certificat fonctionne correctement et que les données sont générées sans erreurs.

Envoi automatique

Activation

  1. Allez dans Paramètres > Conformité
  2. Activez le bouton bascule Envoyer automatiquement à l'AEAT

Avec ce bouton bascule actif, chaque facture émise ou annulée est envoyée automatiquement :

Flux d'ajout (facture émise)

  1. Le hachage SHA-256 de la facture est calculé (chaîne immuable)
  2. Le XML d'ajout est généré conformément à la spécification AEAT
  3. Le XML est signé avec votre certificat numérique
  4. Il est envoyé via SOAP au point d'accès (endpoint) de l'AEAT
  5. La réponse est stockée (CSV attribué ou erreur)

Flux d'annulation (facture annulée)

  1. Le hachage d'annulation est calculé avec les 5 champs requis
  2. Le XML d'annulation est généré
  3. Il est signé et envoyé au point d'accès (endpoint) de l'AEAT
  4. La réponse et l'état d'annulation sont stockés

Les deux flux sont "fire-and-forget" : l'utilisateur peut continuer à travailler pendant que l'envoi est traité en arrière-plan.

Envoi manuel

Si l'envoi automatique n'est pas actif, ou si vous avez besoin de renvoyer une facture spécifique :

  1. Ouvrez la facture en question
  2. Cliquez sur le menu d'actions (trois points)
  3. Sélectionnez Envoyer à l'AEAT
  4. Une boîte de dialogue de confirmation s'affiche avec la prévisualisation du hachage
  5. Confirmez pour initier l'envoi

L'envoi manuel suit le même flux technique que l'envoi automatique.

États d'envoi

Chaque facture affiche un badge avec son état d'envoi à l'AEAT :

ÉtatBadgeDescription
En attenteContour (sans couleur)Hachage calculé, envoi non initié
EnvoyéGrisMessage SOAP envoyé, en attente de réponse de l'AEAT
AcceptéVertL'AEAT a accepté l'enregistrement et a attribué un code CSV
RejetéRougeL'AEAT a rejeté l'enregistrement. Voir le détail de l'erreur
ErreurRougeErreur technique lors de l'envoi (réseau, certificat, délai d'attente)

Consulter l'état

L'état d'envoi est visible dans :

  • La vue détaillée de chaque facture (badge à côté du numéro)
  • La liste générale des factures (colonne d'état)
  • Le livre de registre étendu (colonnes supplémentaires)

Tentatives automatiques

Lorsqu'un envoi échoue en raison d'une erreur technique (délai d'attente, erreur réseau, service AEAT indisponible), Frihet réessaie automatiquement :

  • Fréquence : toutes les 15 minutes
  • Nombre maximum de tentatives : 3
  • Après 3 échecs : l'état reste en Erreur et nécessite une intervention manuelle

Pour relancer manuellement une facture avec l'état Erreur :

  1. Ouvrez la facture
  2. Sur le badge d'état rouge, cliquez sur Réessayer
  3. Une nouvelle tentative d'envoi est exécutée

Indicateurs dans le PDF

Les factures acceptées par l'AEAT incluent des informations supplémentaires dans le PDF généré :

  • Badge "Enregistrée à l'AEAT" dans l'en-tête du document
  • Code CSV attribué par l'AEAT, à côté du QR de vérification

Ces indicateurs n'apparaissent que lorsque l'état d'envoi est Accepté.

Livre de registre étendu

Avec la Phase 3 active, le livre de registre des factures émises inclut 3 colonnes supplémentaires :

ColonneDescription
État Envoi AEATÉtat de l'envoi de l'enregistrement d'ajout (En attente, Envoyé, Accepté, Rejeté, Erreur)
CSV AEATCode de vérification sécurisé attribué par l'AEAT lors de l'acceptation de l'enregistrement
État Annulation AEATÉtat de l'envoi de l'enregistrement d'annulation (le cas échéant)

Ces colonnes sont ajoutées à la fin du CSV exporté, après les 12 colonnes standard.

Dépannage

"Certificat non configuré"

Aucun certificat numérique n'a été téléchargé. Allez dans Paramètres > Conformité et téléchargez votre fichier .pfx ou .p12.

"NIF non configuré"

Le profil fiscal n'a pas de NIF. Allez dans Paramètres > Profil Fiscal et complétez votre identifiant fiscal.

Erreur SOAP / Erreur de connexion

Causes possibles :

  • Certificat expiré : vérifiez la date de validité de votre certificat. Les certificats FNMT ont une validité de 4 ans.
  • Mot de passe incorrect : téléchargez à nouveau le certificat avec le mot de passe correct.
  • Service AEAT non disponible : l'AEAT a des fenêtres de maintenance. Le système réessayera automatiquement.
  • Données fiscales incomplètes : vérifiez que votre NIF, adresse fiscale et informations d'entreprise sont complètes.
Certificat expiré

Un certificat expiré bloque tous les envois. Renouvelez votre certificat auprès de la FNMT ou de CamCert avant la date d'échéance.

Facture rejetée par l'AEAT

L'AEAT peut rejeter un enregistrement pour les raisons suivantes :

  • Le NIF de l'émetteur ne correspond pas au certificat
  • Format de date incorrect
  • Type de facture non valide pour l'opération

Vérifiez le message d'erreur dans le détail de la facture. Corrigez les données et utilisez Réessayer pour envoyer à nouveau.

Calendrier légal

L'obligation d'envoi à l'AEAT a des délais échelonnés selon le RDL 15/2025 :

Type de contribuableDate limite
Sociétés (S.L., S.A.)1er janvier 2027
Auto-entrepreneurs (personne physique)1er juillet 2027
info

Frihet prend déjà en charge l'envoi à l'AEAT. Il est recommandé d'activer le mode sandbox à l'avance pour valider la configuration avant que l'obligation n'entre en vigueur.

Relation avec d'autres phases

  • Phase 1 (Hachage SHA-256) : est calculée automatiquement sur chaque facture. C'est la base de l'enregistrement. Voir VeriFactu.
  • Phase 2 (QR AEAT) : le code QR sur le PDF renvoie au siège électronique de l'AEAT pour vérification.
  • Phase 3 (Envoi AEAT) : cette page. Transmission effective de l'enregistrement à l'AEAT via SOAP/XML.

Précédent : VeriFactu | Suivant : Immuabilité et enregistrement