Extraction des données de paiement du code SwissQR API
PDF4me Lire le code SwissQR permet d'extraire et de lire les codes SwissQR à partir de PDF documents utilisant des techniques avancées OCR et la technologie de reconnaissance des codes-barres. API processus de service PDF fichiers et extrait des informations de paiement structurées, notamment les montants, la devise, IBAN, les coordonnées du créancier et les références de paiement pour un traitement des paiements numériques sans faille. API reçoit PDF contenu via REST API appels, utilisant Base64 Encodage pour une transmission sécurisée. Cette solution est idéale pour le traitement des factures, l'intégration bancaire, l'automatisation des paiements et les rapports financiers.
Authentification de votre API Demande
Pour accéder au PDF4me REST APIChaque requête doit inclure des informations d'authentification valides. L'authentification garantit la sécurité des communications et confirme votre identité en tant qu'utilisateur autorisé. REST API.
Caractéristiques principales
- Reconnaissance des codes SwissQRExtraire et lire les codes SwissQR à partir de PDF documents utilisant des techniques avancées OCR et la technologie de reconnaissance des codes-barres
- Données de paiement structuréesExtraire les informations de paiement structurées, notamment les montants, la devise, IBAN, les coordonnées du créancier et les références de paiement
- Norme de paiement suisseSoutien aux Suisses QR-Norme de paiement numérique des factures (juin 2020)
- Traitement asynchrone: Soutien à async traitement par interrogation pour les opérations de longue durée
Assistance pour les codes SwissQR
Le API prend en charge la lecture des codes SwissQR depuis PDF documents. Les codes SwissQR contiennent des informations de paiement structurées, notamment le montant, la devise, IBANLes données extraites comprennent les informations relatives au créancier et les références de paiement. Elles sont restituées dans un format standardisé pour leur intégration aux systèmes de traitement des paiements.
Point de terminaison de l'API REST
Le PDF4me REST API utilise la norme HTTP méthodes d'interaction avec les ressources. Toutes les opérations de lecture des codes SwissQR sont effectuées via un point de terminaison unique :
- Méthode: POST
- Point final :
/api/v2/ReadSwissQRBill
Paramètres de l'API REST
Liste complète des paramètres pour la lecture du code SwissQR REST APILes paramètres sont organisés par catégorie pour une meilleure compréhension et une mise en œuvre plus aisée.
Important: Les paramètres marqués d'un astérisque (*) sont obligatoires et doivent être fournis pour le API pour fonctionner correctement.
Paramètres requis
| Paramètre | Taper | Description | Exemple |
|---|---|---|---|
| docContent* | Base64 | PDF contenu du fichier encodé en Base64 contenant des codes SwissQR | JVBERi... |
| docName* | String | PDF Nom de fichier avec l'extension .pdf | invoice.pdf |
| async* | Boolean | Activer le traitement asynchrone. Lorsque true, le API renvoie un statut 202 et fournit un système d'interrogation URL dans le Location en-tête | true |
Sortir
Le PDF4me Lire le code SwissQR REST API renvoie des réponses différentes selon le mode de traitement. API rendements structurés JSON données contenant des informations de code SwissQR.
- Success Response
- Asynchronous Processing
- Error Responses
- Response Format Details
Traitement synchrone (par défaut)
Quand async n'est pas défini ou est défini sur false, le API traite la demande immédiatement :
Code d'état : 200 OK
Content-Type: application/json
Corps de la réponse :
{
"fileName": "invoice.pdf",
"mimeType": "application/pdf",
"fileSize": 2456789,
"success": true,
"swissQrCodeData": {
"amount": "100.00",
"currency": "CHF",
"iban": "CH9300762011623852957",
"creditorName": "Swiss Company AG",
"paymentReference": "INV-2024-001",
"dueDate": "2024-12-31",
"purpose": "Invoice payment"
}
}
Champs de réponse :
- nom de fichier (chaîne de caractères) : Le PDF nom de fichier
- type mime (chaîne): MIME type de fichier (application/pdf)
- taille du fichier (nombre) : Taille de la PDF fichier en octets
- succès (booléen) : Indique si le code SwissQR a été lu avec succès.
- données de code QR suisse (objet) : Informations de paiement extraites du code SwissQR
- montant (chaîne de caractères) : Montant du paiement
- devise (chaîne de caractères) : Code de devise (CHF, EUR, USD)
- ils allaient (chaîne): IBAN du créancier
- nom du créancier (chaîne de caractères) : Nom ou nom du créancier
- Référence de paiement (chaîne de caractères) : Numéro de référence de paiement
- date d'échéance (chaîne de caractères) : Date d'échéance du paiement (si disponible)
- but (chaîne de caractères) : Objet ou description du paiement
Exemple (JavaScript):
const response = await fetch(url, options);
const data = await response.json();
if (data.success) {
console.log(`Amount: ${data.swissQrCodeData.amount} ${data.swissQrCodeData.currency}`);
console.log(`IBAN: ${data.swissQrCodeData.iban}`);
}
Traitement asynchrone
Quand async: true est réglé, le API traite la requête de manière asynchrone :
Code d'état : 202 Accepted
En-têtes de réponse :
Location: https://api.pdf4me.com/api/v2/ReadSwissQRBill/poll/12345-abcde-67890
Processus de sondage :
- Extraire le
LocationEn-tête de la réponse 202 - Sondage URL en utilisant GET demandes
- Continuez à sonder jusqu'à ce que vous receviez un 200 OK statut
- La réponse finale contient la même chose JSON format avec données de code SwissQR
Exemple de sondage :
// Initial request returns 202 with Location header
const response = await fetch(url, options);
const location = response.headers.get('Location');
// Poll until complete
while (true) {
const pollResponse = await fetch(location, { headers: { 'Authorization': 'Basic ' + apiKey } });
if (pollResponse.status === 200) {
const data = await pollResponse.json();
// Process data.swissQrCodeData
break;
}
await new Promise(resolve => setTimeout(resolve, 2000)); // Wait 2 seconds
}
Réponses d'erreur
Le API retours standard HTTP codes d'erreur avec détails de l'erreur :
- Paramètres de requête invalides
- Champs obligatoires manquants (
docContent,Nom du document,asynchrone) - Invalide Base64 encodage dans
docContent - PDF ne contient pas de codes SwissQR
- Invalide ou manquant API clé
- API clé non correctement Base64 encodé dans Authorization en-tête
- Manquant
Authorization: Basiqueen-tête
- Erreur de traitement côté serveur
- PDF échec du traitement
- Échec de la reconnaissance du code SwissQR
Format de réponse en cas d'erreur :
{
"error": "Error message describing what went wrong"
}
Détails du format de réponse
Important: Le API toujours retourne JSON avec des données de code SwissQR structurées.
Structure de la réponse :
{
"fileName": "string", // PDF filename
"mimeType": "string", // MIME type
"fileSize": number, // File size in bytes
"success": boolean, // Success indicator
"swissQrCodeData": { // SwissQR code data object
"amount": "string", // Payment amount
"currency": "string", // Currency code
"iban": "string", // IBAN
"creditorName": "string", // Creditor name
"paymentReference": "string", // Payment reference
"dueDate": "string", // Due date (optional)
"purpose": "string" // Payment purpose (optional)
}
}
Content-Type En-tête :
- Succès:
application/json
Aucun code SwissQR trouvé :
Si aucun code SwissQR n'est trouvé dans le PDF, la réponse peut indiquer success: false ou le swissQrCodeData Ce champ peut être nul ou vide.
Exemple de requête
En-tête
Content-Type: application/json
Authorization: Basic YOUR_BASE64_ENCODED_API_KEY
Note:
- Obtenez votre API clé de la PDF4me Tableau de bord
- Le API La clé doit être Base64 encodé et préfixé par « Basic » dans le Authorization en-tête
- Exemple : Si votre API La clé est
abc123, encodez-le en Base64 et utiliserAuthorization: Basic YWJjMTIz
Charge utile
Exemple:
{
"docContent": "JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwovUGFnZXMgMiAwIFIKPj4KZW5kb2JqCjIgMCBvYmoKPDwKL1R5cGUgL1BhZ2VzCi9LaWRzIFszIDAgUl0KL0NvdW50IDEKPD4KZW5kb2JqCjMgMCBvYmoKPDwKL1R5cGUgL1BhZ2UKL1BhcmVudCAyIDAgUgovTWVkaWFCb3ggWzAgMCA2MTIgNzkyXQovUmVzb3VyY2VzIDw8Ci9Gb250IDw8Ci9GMSA0IDAgUgo+Pgo+PgovQ29udGVudHMgNSAwIFIKPj4KZW5kb2JqCjQgMCBvYmoKPDwKL1R5cGUgL0ZvbnQKL1N1YnR5cGUgL1R5cGUxCi9CYXNlRm9udCAvSGVsdmV0aWNhCj4+CmVuZG9iago1IDAgb2JqCjw8Ci9MZW5ndGggNDQKPj4Kc3RyZWFtCkJUCi9GMSAxMiBUZgoxMDAgNzAwIFRkCihIZWxsbyBXb3JsZCkgVGoKRVQKZW5kc3RyZWFtCmVuZG9iagp4cmVmCjAgNgowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMDAwMDkgMDAwMDAgbiAKMDAwMDAwMDA1NCAwMDAwMCBuIAowMDAwMDAwMTAxIDAwMDAwIG4gCjAwMDAwMDAxNzAgMDAwMDAgbiAKMDAwMDAwMDI0NCAwMDAwMCBuIAp0cmFpbGVyCjw8Ci9TaXplIDYKL1Jvb3QgMSAwIFIKPj4Kc3RhcnR4cmVmCjM0MQolJUVPRg==",
"docName": "invoice.pdf",
"async": true
}
Exemples de code
Le PDF4me Lire le code SwissQR REST API propose des exemples de code dans plusieurs langages de programmation. Choisissez le langage qui convient le mieux à votre environnement de développement :
- C#
- Java
- JavaScript
- Python
- Salesforce
- n8n
- Google Script
- AWS Lambda
C# (CSharp) Échantillon
Complet C# implémentation pour la lecture des codes SwissQR à partir de PDF documents :
Java Échantillon
Java implémentation avec gestion complète des erreurs et traitement des réponses :
JavaScript Échantillon
Node.js et compatible avec les navigateurs JavaScript mise en œuvre:
Python Échantillon
Python implémentation avec la bibliothèque requests et JSON manutention:
Google Script Échantillon
Google Apps Script mise en œuvre pour Google Workspace intégration :
Cas d'utilisation et applications industrielles
- Finance & Banking
- Business & Enterprise
- Government & Compliance
Cas d'utilisation dans le secteur financier et bancaire
- Traitement des facturesExtraire les informations de paiement de Suisse QR factures pour le traitement automatisé des paiements
- Intégration bancaireIntégrer la lecture des codes SwissQR dans les applications bancaires et les systèmes de paiement.
- Automatisation des paiementsRationalisez les flux de paiement et réduisez la saisie manuelle des données.
- Traitement des facturesAutomatisation suisse QR traitement des factures et vérification des paiements
- Rapprochement des paiementsAutomatiser les processus de rapprochement et d'appariement des paiements
- Information financièreExtraire les données de paiement de Suisse QR codes de reporting et d'analyse financière
Cas d'utilisation en entreprise
- Gestion des facturesAutomatisez le traitement des factures et le suivi des paiements.
- Systèmes comptablesIntégrer la lecture des codes SwissQR dans la comptabilité et ERP systèmes
- Documents financiers: Traiter les documents financiers contenant des éléments suisses QR codes
- Intégration des paiementsIntégrer la Suisse QR codes dans les systèmes de traitement des paiements existants
- Transformation numériqueModerniser les flux de traitement des paiements
- Automatisation des processus métierAutomatiser les flux de paiement pour les opérations d'entreprise
Cas d'utilisation gouvernementaux et de conformité
- Gestion de la conformité: Assurer la conformité avec la réglementation bancaire suisse et les normes de paiement
- Conformité réglementaire: Processus suisse QR codes de conformité réglementaire et d'audit
- Paiements gouvernementauxTraiter les documents de paiement gouvernementaux avec la Suisse QR codes
- Conformité financière: Assurer la conformité avec la réglementation financière suisse