network_timeout
Firewall bloquant l'API sortante.
💡 Autoriser api.facturxapi.com sur votre proxy/SASE.
Traitement sidekiq-like, idéal pour ERP custom et portails fournisseurs.
Utilisez HttpClient, Messenger et Notifier pour piloter la validation.
curl -X POST https://api.facturxapi.com/api/v1/validate \
-H "Authorization: Bearer $FACTURX_API_KEY" \
-F "[email protected]" \
-F "lang=fr" $client = HttpClient::create();
$response = $client->request('POST', 'https://api.facturxapi.com/api/v1/validate', [
'headers' => [
'Authorization' => 'Bearer ' . $_ENV['FACTURX_API_KEY'],
],
'timeout' => 15,
'body' => [
'file' => fopen('/srv/app/var/FX-2024-0001.pdf', 'r'),
'lang' => 'fr',
],
]);
$data = $response->toArray(false);
if (!($data['valid'] ?? false)) {
$this->notifier->send(new ChatMessage('Erreur FacturX: ' . ($data['errors'][0]['message'] ?? 'inconnue')));
} Utiliser la pool de transport Async pour ne pas bloquer le worker
Ajouter un middleware Messenger pour tracer request_id
Stocker les rapports dans un storage chiffré (S3 SSE)
Configurer Messenger pour rejouer 3 fois avec délai progressif (1/4/15 min).
Mappez vos logs aux codes pour des corrections rapides.
Firewall bloquant l'API sortante.
💡 Autoriser api.facturxapi.com sur votre proxy/SASE.
Paramètre lang invalide.
💡 Utiliser fr ou en (default fr).
Flux tronqué lors de l'envoi.
💡 Toujours streaming via fopen et éviter file_get_contents sur gros PDF.
Oui, déclarez un provider custom qui appelle l'API FacturX.
Ajoutez un middleware PSR pour logger X-Request-Id dans Monolog.
Comprendre les règles métier
Trouver l'origine d'un BR-xx
Prévoir votre budget
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.