FacturPass

FPF 1.1 — un format ouvert pour l'identité de facturation

JSON + JSON Schema, licence AGPL-3.0. Conçu pour le QR code : les données sont compressées (deflate) et encodées en base64url dans le fragment d'URL — jamais envoyées à aucun serveur.

Exemple

{
  "fpf": "1.1",
  "kind": "buyer",
  "legal": { "country": "FR", "name": "ACME SAS",
             "ids": [{ "scheme": "0002", "value": "542051180" }] },
  "einvoice": { "eas": "0225", "address": "542051180_54205118000066" },
  "contact": { "buyerReference": "CDE-2026-4471" }
}

Versions

Il n'existe qu'une version, la 1.1. Un lecteur doit accepter toutes les versions publiées — un QR code imprimé n'a pas de date de péremption — et il lui suffit aujourd'hui de connaître celle-ci.

Une version 1.0 a été publiée brièvement puis retirée avant qu'aucun lien ne soit remis à personne. Un document portant "fpf": "1.0" doit être refusé, jamais lu.

Transport

https://facturpass.com/#2.<base64url(deflate-raw(JSON))>

Préfixe 1. = base64url sans compression ; 2. = deflate-raw + base64url (nominal). Décodage en 3 lignes avec DecompressionStream.

Pour les intégrateurs

Ce qu'un logiciel de caisse, un ERP ou une plateforme gagne à lire les pass FPF, ce que coûte l'implémentation et les pièges du profil France sont réunis sur une page dédiée : Implémenter FPF dans votre logiciel.

Schéma, spécification complète, profil France, exemples et implémentations de référence sont sur GitHub : github.com/FacturPass/fpf.

La licence AGPL-3.0 couvre le code de cette implémentation de référence et de ce site ; elle ne couvre pas le format FPF lui-même, que quiconque peut librement réimplémenter.