Docs / Sandbox

Tout ce qu'il faut pour integrer l'API Compliance en sandbox.

Règles évolutivesRésultats structurésItération rapide

Vue d'ensemble

Utilisez la sandbox pour valider des factures canoniques avant la production.

Cas d'usage

ScenarioDescription
Integration editeurValidez les factures lors du draft ou de la soumission.
Pre-audit cabinetStandardisez les controles sur les dossiers clients.
QA en masseLancez des lots pour evaluer la qualite des donnees.

Démarrage rapide

Etape 1

Obtenir une clé sandbox

Demandez un acces et recevez une X-API-Key sandbox.

Etape 2

Envoyer une requete /v1/validate

Postez un payload canonique et lisez le rapport.

Etape 3

Iterer sur les retours

Corrigez et relancez jusqu'au PASS.

Environnements & auth

Utilisez les base URLs ci-dessous et passez les clés API en en-tetes.

Base URLs

  • Sandboxhttps://sandbox.api.akabar.io
  • Productionhttps://api.akabar.io

En-tetes d'auth

  • API publique

    X-API-Key

Idempotence

Fournissez un Idempotency-Key pour rejouer sans doublon.

Idempotency-Key: <uuid>

Limites de debit

Les limites sont retournées via les en-têtes de réponse.

X-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-ResetRetry-After

Endpoints

Les endpoints ci-dessous sont générés depuis l'OpenAPI.

API publique

GET/v1/rulesetsList available validation rulesets

En-tete d'auth

X-API-Key

Reponses

  • 200List of available rulesets
  • 401Missing/invalid API key
  • 500Server error

cURL

curl -X GET https://sandbox.api.akabar.io/v1/rulesets \
  -H "X-API-Key: <api_key>"
POST/v1/transform/ciiTransform canonical invoice JSON to CII XML

En-tete d'auth

X-API-Key

Corps de requete

application/json

Reponses

  • 200CII artifact
  • 400Invalid request payload

cURL

curl -X POST https://sandbox.api.akabar.io/v1/transform/cii \
  -H "X-API-Key: <api_key>" \
  -H "Content-Type: application/json" \
  -d '{}'
POST/v1/transform/ublTransform canonical invoice JSON to UBL XML

En-tete d'auth

X-API-Key

Corps de requete

application/json

Reponses

  • 200UBL artifact
  • 400Invalid request payload

cURL

curl -X POST https://sandbox.api.akabar.io/v1/transform/ubl \
  -H "X-API-Key: <api_key>" \
  -H "Content-Type: application/json" \
  -d '{}'
POST/v1/validateValidate a canonical invoice JSON

En-tete d'auth

X-API-Key

Parametres

  • headerIdempotency-Key(string)

    Idempotency key to prevent duplicate processing.

  • headerX-Ruleset-Version(string)

    Optional ruleset version (e.g. "v0.1"). If omitted, server default is used.

Corps de requete

application/json

Reponses

  • 200Validation report (schema violations return FAIL with SCHEMA_INVALID findings)
    Idempotency-ReplayedX-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-Reset
  • 400Malformed JSON payload
  • 401Missing/invalid API key
  • 409Idempotency key reused with a different payload
  • 429Rate limit exceeded
    Retry-AfterX-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-Reset
  • 500Server error

cURL

curl -X POST https://sandbox.api.akabar.io/v1/validate \
  -H "X-API-Key: <api_key>" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: <uuid>" \
  -d '{
  "invoice": {
    "invoiceNumber": "INV-2026-0001",
    "issueDate": "2026-01-05",
    "currency": "MAD",
    "seller": { "name": "Akabar SARL", "taxId": "ICE123456789000" },
    "buyer": { "name": "Client SA", "taxId": "ICE987654321000" },
    "lines": [
      { "description": "Service X", "quantity": 1, "unitPriceMinor": 100000, "taxRateBps": 2000 }
    ]
  },
  "options": { "strict": false }
}'

Endpoints partenaires (sur demande)

Les endpoints partenaires sont disponibles sur demande. Contactez-nous pour l'accès.

Demander une clé sandbox

Schéma

Téléchargez le schéma JSON Core utilisé pour la validation de base.

Schéma core

Postman

Utilisez Postman pour tester rapidement l'API.

Vue d'ensemble du ruleset

Ruleset : ce que valide ACAPI (sans exposer les règles internes)

  • Structure & complĂ©tude : champs obligatoires, cohĂ©rence globale du document, types et formats.
  • Identifiants & parties : vendeur/acheteur (taxId/ICE/IF...), adresses, rĂ©fĂ©rences mĂ©tier.
  • Dates & sĂ©quencement : date d'Ă©mission, pĂ©riodes, contraintes de chronologie.
  • Totaux & calculs : HT/TVA/TTC, arrondis, cohĂ©rence entre lignes et totaux.
  • Lignes & taxes : quantitĂ©s, prix unitaires, remises, taux, ventilation TVA.
  • Devise & unitĂ©s : devise, conversions (si applicables), unitĂ©s de mesure.
  • Règles "mĂ©tier" : contraintes de bon sens (ex. valeurs nĂ©gatives, zĂ©ros, combinaisons invalides).
  • QualitĂ© des donnĂ©es : normalisation (trim, formats), contrĂ´les de plausibilitĂ©.

Résultat

  • Retour actionnable : erreurs et avertissements en français, avec la zone concernĂ©e (path) et une suggestion de correction.
  • Compatible batch : mĂŞmes règles, mĂŞmes outputs, en validation unitaire ou par lot.

Note : ce document présente des catégories de contrôles. Les règles détaillées et cas limites sont disponibles dans le Partner Pack.

ACAPI ne fait pas que dire "non conforme" : il explique quoi corriger et où, pour réduire les allers-retours avec le cabinet / l'intégrateur.

La sandbox expose le strict nécessaire pour intégrer. Les détails avancés (règles complètes, cas limites, fixtures) sont fournis aux partenaires.

Limitations

  • Les donnees sandbox peuvent etre reinitialisees.
  • Certains champs evoluent avec les rulesets.
  • Le debit est plus faible qu'en production.