validation_start_failed
Fichier manquant (Storage path incorrect).
💡 Vérifier les disques et la visibilité des fichiers temporaires.
Support Horizon/Octane, Observabilité intégrée (events, logs, notifications).
Utilisez les facades Http, Jobs et Notifications pour monitorer vos validations.
curl -X POST https://api.facturxapi.com/api/v1/validate \
-H "Authorization: Bearer $FACTURX_API_KEY" \
-F "[email protected]" \
-F "lang=fr" use Illuminate\Support\Facades\Http;
$response = Http::withToken(config('services.facturx.key'))
->timeout(20)
->attach('file', fopen($path, 'r'), basename($path))
->post('https://api.facturxapi.com/api/v1/validate', [
'lang' => 'fr',
]);
$payload = $response->json();
if (! $payload['valid']) {
Notification::route('slack', config('services.facturx.slack'))
->notify(new FacturxSchemaError($payload));
} Centraliser la clé dans config/services.php
Programmer un job hebdo pour monitorer les quotas
Envoyer les erreurs Schematron sur Slack/Teams
Utilisez retryUntil dans vos jobs + backoff progressif.
Mappez vos logs aux codes pour des corrections rapides.
Fichier manquant (Storage path incorrect).
💡 Vérifier les disques et la visibilité des fichiers temporaires.
Plan Free saturé.
💡 Afficher une bannière upgrade + déclencher Analytics.quota_exceeded.
XML compressé ou encodé ISO-8859-1.
💡 Convertir en UTF-8 avant upload (Str::of($xml)->squish()).
Oui, déclenchez un batch de jobs (up to 3 simultanés) toutes les minutes.
Stockez uniquement le JSON (colonne JSONB) + le hash du fichier pour rester RGPD.
Activation en 30 secondes
Comprendre la pipeline complète
Scale sans surprise
Et après ?
Choisissez l'étape suivante pour activer FacturX API sur votre stack. Tous les liens sont internes pour garder le suivi clair.
10 validations gratuites + clés distinctes pour dev/staging.
Free, Pro ou Scale selon vos appels mensuels et SLA requis.
Endpoints détaillés + schémas JSON pour parser les réponses.
Uploader un fichier depuis l'UI pour comparer avec la réponse API.