Aller au contenu principal

Patterns

API REST vs gRPC pour la facturation électronique

Pourquoi REST domine l'e-invoicing et gRPC reste marginal

Les standards de facturation électronique européens (Factur-X, UBL, Peppol BIS 3.0) reposent sur des échanges XML/JSON via HTTP REST. Aucun standard PDP ou Peppol n'impose ou même ne supporte gRPC : la sérialisation Protobuf rend le payload illisible par les outils fiscaux d'audit (Wireshark, curl, postman) et casse l'auditabilité ISCA. gRPC reste pertinent pour les communications internes haute fréquence (microservices, streaming bidirectionnel), mais les API publiques de PDP, du PPF et de Scell.io sont strictement REST + JSON. Choisir gRPC pour exposer une API e-invoicing externe est un anti-pattern : incompatibilité Peppol, audit fiscal complexe, pas de support des Access Points.

À retenir

  • Peppol BIS 3.0 et PDP imposent du XML over HTTP, pas de gRPC
  • Auditabilité fiscale : payloads JSON/XML lisibles, Protobuf opaque
  • Scell.io API : REST JSON sur https://api.scell.io/api/v1
  • gRPC pertinent pour services internes (worker → DB → cache)
  • OpenAPI 3.1 reste le standard de doc, gRPC n'a pas d'équivalent universel

Exemple de code

# OpenAPI 3.1 — Scell.io REST endpoint
paths:
  /api/v1/invoices:
    post:
      summary: Create invoice (Factur-X / UBL / CII)
      security:
        - apiKey: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InvoiceCreate'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema: { $ref: '#/components/schemas/Invoice' }

Voir aussi

Vos préférences cookies

Nous utilisons des cookies pour améliorer votre expérience. Les cookies essentiels sont toujours actifs. Politique cookies.