OCR de bon de commande
Cette capacité lit un bon de commande — PDF ou scan — et en extrait la structure : numéro et date de commande, client, puis chaque ligne avec sa référence, sa quantité et son prix. Vous récupérez des données prêtes à rapprocher d’une facture ou à intégrer dans un suivi, sans ressaisir article après article.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
Du bon de commande aux lignes de données
Un bon de commande, c’est avant tout un tableau d’articles : références, désignations, quantités, prix unitaires, total. Le retaper pour le suivre ou le rapprocher d’une facture est fastidieux et propice aux fautes. La capacité isole l’en-tête — numéro, date, client — puis restitue chaque ligne d’article proprement séparée. Vous obtenez de quoi vérifier une livraison, contrôler une facturation ou alimenter un outil de gestion, sans repointer une seule quantité à la main.
Une fonction en bêta, annoncée telle quelle
Cette capacité est en bêta : elle est utilisable dès maintenant, mais les mises en page de bons de commande varient énormément d’une entreprise à l’autre, et certaines grilles complexes demandent une vérification. Nous préférons le dire plutôt que promettre une exactitude parfaite sur tous les formats. Contrôlez les quantités et les prix sensibles avant de valider une commande ou un rapprochement. La capacité traite jusqu’à 10 pages et 25 Mo par document.
Prix et canaux d’accès
Le tarif est public : $0.010 par requête, plus $0.0575 par page, en dollars US, sans engagement. Le traitement est asynchrone : vous envoyez le bon de commande, une tâche démarre, les lignes structurées reviennent une fois l’analyse terminée. L’outil s’exécute sur cette page et par l’API, pour traiter en flux les commandes qui arrivent chaque jour, avec une disponibilité mobile prévue.
Cas d’usage
Rapprocher commande et facture
Atelier Garnier SARL extrait les lignes d’un bon de commande reçu par e-mail pour les comparer à la facture correspondante. L’écart sur une quantité saute aux yeux, sans relire deux documents ligne à ligne.
Alimenter un suivi de commandes
Menuiserie Rousseau & Fils convertit les bons de commande papier de ses clients en lignes exploitables, intégrées à leur tableau de suivi de production sans double saisie.
Contrôler une livraison reçue
À réception, Thomas Rousseau extrait les références et quantités d’un bon de commande scanné pour les pointer face aux articles livrés, et repérer d’un coup ce qui manque.
Questions fréquentes
Quelles informations sont extraites du bon de commande ?
L’en-tête — numéro, date, client — et chaque ligne d’article avec sa référence, sa quantité et son prix unitaire, plus le total quand il figure. De quoi rapprocher ou suivre une commande sans ressaisie.
Pourquoi cette capacité est-elle en bêta ?
Parce que les formats de bons de commande sont très variés et que certaines grilles complexes restent délicates. Elle est pleinement utilisable, mais nous invitons à vérifier les lignes sensibles avant de valider.
Gère-t-elle les commandes sur plusieurs pages ?
Oui, jusqu’à 10 pages et 25 Mo par document. Les lignes réparties sur plusieurs pages sont traitées dans l’ordre, ce qui préserve la continuité d’une longue commande.
Peut-on rapprocher automatiquement d’une facture ?
La capacité fournit les données structurées ; le rapprochement lui-même se fait dans votre outil ou votre tableur. En sortie homogène, comparer un bon de commande à sa facture devient une opération simple.
Quel est le coût par bon de commande ?
$0.010 par requête et $0.0575 par page, en dollars US, sans abonnement. Le paiement passe par PayPal et une facture vous est remise sur demande.
Mes documents commerciaux sont-ils protégés ?
Oui. L’échange est chiffré pendant le transfert, le bon de commande n’est traité que le temps de l’extraction, puis supprimé. Aucune donnée n’est conservée ni relue par une personne.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/ocr/purchase-order \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/ocr/purchase-order", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/ocr/purchase-order",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/ocr/purchase-order", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/ocr/purchase-order", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"input": "…"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "ocr.purchase_order",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_mb | 25 |
max_pages | 10 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
413 | input_too_large | Entrée trop volumineuse : consultez la limite de taille de cette capacité. |
422 | task_failed | La tâche a échoué : elle ne vous est pas facturée. |