OCR de relevé bancaire
Cette capacité lit un relevé de compte — PDF ou scan — et en extrait la liste des opérations : date, libellé, débit, crédit et solde, ligne après ligne. Vous récupérez un tableau exploitable pour le rapprochement ou le suivi de trésorerie, au lieu de recopier des dizaines de mouvements à la main.
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.
Des mouvements en tableau, pas en bloc
Un relevé bancaire est une longue liste d’opérations qu’un OCR ordinaire réduirait en texte confus. Cette capacité en reconnaît la structure : chaque opération devient une ligne, avec sa date, son libellé, son montant au débit ou au crédit et le solde qui suit. Vous obtenez un tableau propre, prêt à trier, additionner ou rapprocher. Suivre une trésorerie ou pointer des dépenses cesse d’être une recopie fastidieuse pour redevenir une simple lecture de données.
Une fonction en bêta, sur des documents sensibles
Cette capacité est en bêta, et le domaine ne pardonne pas l’à-peu-près : un chiffre mal lu sur un relevé n’a rien d’anodin. Les mises en page diffèrent d’une banque à l’autre, et certains libellés serrés restent délicats. Contrôlez les montants avant tout usage comptable. Comme il s’agit de données personnelles au sens du RGPD, sachez ce qui suit : le relevé est traité côté serveur puis supprimé, jamais conservé. La limite est de 10 pages et 25 Mo.
Tarif et fonctionnement
Le prix est public: $0.010 par requête, plus $0.0575 par page, en dollars US, sans abonnement. Le traitement est asynchrone — vous envoyez le relevé, une tâche démarre, le tableau d’opérations revient une fois l’analyse terminée. L’outil s’utilise sur cette page comme par l’API, pour intégrer l’extraction à un suivi régulier, avec une arrivée prévue sur les applications mobiles.
Cas d’usage
Un suivi de trésorerie à jour
Studio Lumen SAS extrait les opérations de son relevé mensuel pour les verser dans un tableau de trésorerie. Les mouvements y sont triés et catégorisés sans ressaisir chaque ligne à la main.
Le rapprochement avec la comptabilité
Nadia Benali compare les opérations extraites de son relevé aux écritures attendues, et repère aussitôt un prélèvement oublié plutôt que de pointer soixante lignes une par une.
Un justificatif de revenus à préparer
Pour un dossier, Élodie Garnier tire d’un relevé scanné la liste ordonnée de ses mouvements, afin d’en présenter un récapitulatif clair sans retaper chaque date et chaque montant.
Questions fréquentes
Quelles colonnes obtient-on d’un relevé ?
Pour chaque opération : la date, le libellé, le montant au débit ou au crédit et, quand il figure, le solde. L’ensemble est restitué en lignes exploitables, prêtes pour un tableur.
Pourquoi la mention « bêta » sur cette capacité ?
Parce que les formats de relevés varient beaucoup selon les banques et que l’exactitude d’un montant est ici cruciale. Elle est utilisable dès à présent, mais un contrôle des chiffres reste indispensable.
Un relevé est une donnée sensible : comment est-il traité ?
Le fichier est chiffré durant le transfert, analysé le temps de l’extraction côté serveur, puis supprimé. Il n’est ni conservé ni relu par une personne : il ne sert qu’à produire votre tableau.
Est-ce conforme au RGPD ?
Nous ne traitons vos données que pour réaliser l’extraction que vous demandez, sans les conserver au-delà ni les réutiliser. Nous décrivons des faits plutôt que de brandir un label : traitement limité, puis suppression.
Combien coûte l’extraction d’un relevé ?
$0.010 par requête et $0.0575 par page, en dollars US, sans abonnement. Un relevé de plusieurs pages est facturé au nombre de pages ; règlement par PayPal, facture sur demande.
Puis-je traiter un relevé de plusieurs pages ?
Oui, jusqu’à 10 pages et 25 Mo. Les opérations réparties sur plusieurs pages sont extraites dans l’ordre, ce qui préserve la continuité du solde d’une page à l’autre.
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/bank-statement \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/ocr/bank-statement", {
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/bank-statement",
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/bank-statement", 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/bank-statement", 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.bank_statement",
"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. |