Lee el código SwissQR - Extractor de datos de pago API
PDF4me Lea el código SwissQR le permite extraer y leer códigos SwissQR de PDF documentos que utilizan tecnología avanzada OCR y tecnología de reconocimiento de códigos de barras. API procesos de servicio PDF archivos y extrae información de pago estructurada que incluye importes, moneda, IBAN, detalles del acreedor y referencias de pago para un procesamiento de pagos digitales sin problemas. API recibe PDF contenido a través de REST API llamadas, utilizando Base64 Codificación para una transmisión segura. Esta solución es ideal para el procesamiento de facturas, la integración bancaria, la automatización de pagos y la elaboración de informes financieros.
Autenticando su API Pedido
Para acceder al PDF4me REST APICada solicitud debe incluir las credenciales de autenticación adecuadas. La autenticación garantiza una comunicación segura y valida su identidad como usuario autorizado del sistema. REST API.
Características principales
- Reconocimiento de códigos SwissQR: Extraer y leer códigos SwissQR de PDF documentos que utilizan tecnología avanzada OCR y tecnología de reconocimiento de códigos de barras
- Datos de pago estructurados: Extraer información de pago estructurada que incluye importes, moneda, IBAN, datos del acreedor y referencias de pago
- Estándar de pago suizo: Soporte para Suiza QR-Estándar de pago digital de facturas (junio de 2020)
- Procesamiento asíncrono: Soporte para async procesamiento con sondeo para operaciones de larga duración
Soporte de códigos QR suizos
El API admite la lectura de códigos SwissQR desde PDF documentos. Los códigos SwissQR contienen información de pago estructurada que incluye importe, moneda, IBAN, detalles del acreedor y referencias de pago. Los datos extraídos se devuelven en un formato estandarizado para su integración con los sistemas de procesamiento de pagos.
Punto final de la API REST
El PDF4me REST API utiliza estándar HTTP métodos para interactuar con los recursos. Todas las operaciones de lectura de códigos SwissQR se realizan a través de un único punto final:
- Método: POST
- Punto final:
/api/v2/ReadSwissQRBill
Parámetros de la API REST
Lista completa de parámetros para la lectura del código SwissQR REST APILos parámetros están organizados por categoría para una mejor comprensión e implementación.
Importante: Los parámetros marcados con un asterisco (*) son obligatorios y deben proporcionarse para la API para que funcione correctamente.
Parámetros requeridos
| Parámetro | Tipo | Descripción | Ejemplo |
|---|---|---|---|
| docContent* | Base64 | PDF contenido del archivo codificado en Base64 que contienen códigos SwissQR | JVBERi... |
| docName* | String | PDF Nombre del archivo con extensión .pdf | invoice.pdf |
| async* | Boolean | Habilitar el procesamiento asíncrono. Cuando true, el API devuelve un estado 202 y proporciona una encuesta URL en el Location encabezado | true |
Producción
El PDF4me Lea el código SwissQR REST API devuelve diferentes respuestas según el modo de procesamiento. API devoluciones estructuradas JSON Datos con información del código SwissQR.
- Success Response
- Asynchronous Processing
- Error Responses
- Response Format Details
Procesamiento síncrono (predeterminado)
Cuando async no está configurado o está configurado false, el API procesa la solicitud inmediatamente:
Código de estado: 200 OK
Content-Type: application/json
Cuerpo de la respuesta:
{
"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"
}
}
Campos de respuesta:
- Nombre del archivo (cadena): El PDF Nombre del archivo
- tipo mime (cadena): MIME Tipo de archivo (application/pdf)
- Tamaño del archivo (número): Tamaño del PDF archivo en bytes
- éxito (booleano): Indica si el código SwissQR se leyó correctamente.
- Datos de código QR suizo (objeto): Información de pago con código SwissQR extraída
- cantidad (cadena): Importe del pago
- divisa (cadena): Código de moneda (CHF, EUR, USD)
- iban (cadena): IBAN del acreedor
- Nombre del acreedor (cadena): Nombre o empresa del acreedor
- Referencia de pago (cadena): Número de referencia de pago
- fecha de vencimiento (cadena): Fecha de vencimiento del pago (si está disponible)
- objetivo (cadena): Finalidad o descripción del pago
Ejemplo (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}`);
}
Procesamiento asíncrono
Cuando async: true está establecido, el API procesa la solicitud de forma asíncrona:
Código de estado: 202 Accepted
Encabezados de respuesta:
Location: https://api.pdf4me.com/api/v2/ReadSwissQRBill/poll/12345-abcde-67890
Proceso de votación:
- Extraer el
Locationencabezado de la respuesta 202 - Encuesta la URL usando GET solicitudes
- Continúe realizando encuestas hasta que reciba una 200 OK estado
- La respuesta final contiene lo mismo JSON formato con datos de código SwissQR
Ejemplo de encuesta:
// 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
}
Respuestas de error
El API devuelve estándar HTTP Códigos de error con detalles del error:
- Parámetros de solicitud no válidos
- Faltan campos obligatorios (
docContent,Nombre del documento,asíncrono) - Inválido Base64 codificación en
docContent - PDF No contiene códigos SwissQR.
- Inválido o faltante API llave
- API La llave no funciona correctamente. Base64 codificado en Authorization encabezado
- Desaparecido
Authorization: Básicoencabezado
- Error de procesamiento del servidor
- PDF fallo de procesamiento
- Fallo en el reconocimiento del código SwissQR
Formato de respuesta de error:
{
"error": "Error message describing what went wrong"
}
Detalles del formato de respuesta
Importante: El API siempre regresa JSON con datos de código SwissQR estructurados.
Estructura de respuesta:
{
"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 Encabezado:
- Éxito:
application/json
No se encontró ningún código SwissQR:
Si no se encuentra ningún código SwissQR en el PDFLa respuesta puede indicar success: false o el swissQrCodeData El campo puede ser nulo o estar vacío.
Ejemplo de solicitud
Encabezamiento
Content-Type: application/json
Authorization: Basic YOUR_BASE64_ENCODED_API_KEY
Nota:
- Consigue tu API clave del PDF4me Panel
- El API La clave debe ser Base64 codificado y prefijado con "Basic" en el Authorization encabezado
- Ejemplo: Si su API La clave es
abc123, codificarlo a Base64 y usarAuthorization: Basic YWJjMTIz
Carga útil
Ejemplo:
{
"docContent": "JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwovUGFnZXMgMiAwIFIKPj4KZW5kb2JqCjIgMCBvYmoKPDwKL1R5cGUgL1BhZ2VzCi9LaWRzIFszIDAgUl0KL0NvdW50IDEKPD4KZW5kb2JqCjMgMCBvYmoKPDwKL1R5cGUgL1BhZ2UKL1BhcmVudCAyIDAgUgovTWVkaWFCb3ggWzAgMCA2MTIgNzkyXQovUmVzb3VyY2VzIDw8Ci9Gb250IDw8Ci9GMSA0IDAgUgo+Pgo+PgovQ29udGVudHMgNSAwIFIKPj4KZW5kb2JqCjQgMCBvYmoKPDwKL1R5cGUgL0ZvbnQKL1N1YnR5cGUgL1R5cGUxCi9CYXNlRm9udCAvSGVsdmV0aWNhCj4+CmVuZG9iago1IDAgb2JqCjw8Ci9MZW5ndGggNDQKPj4Kc3RyZWFtCkJUCi9GMSAxMiBUZgoxMDAgNzAwIFRkCihIZWxsbyBXb3JsZCkgVGoKRVQKZW5kc3RyZWFtCmVuZG9iagp4cmVmCjAgNgowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMDAwMDkgMDAwMDAgbiAKMDAwMDAwMDA1NCAwMDAwMCBuIAowMDAwMDAwMTAxIDAwMDAwIG4gCjAwMDAwMDAxNzAgMDAwMDAgbiAKMDAwMDAwMDI0NCAwMDAwMCBuIAp0cmFpbGVyCjw8Ci9TaXplIDYKL1Jvb3QgMSAwIFIKPj4Kc3RhcnR4cmVmCjM0MQolJUVPRg==",
"docName": "invoice.pdf",
"async": true
}
Ejemplos de código
El PDF4me Lea el código SwissQR REST API Proporciona ejemplos de código en varios lenguajes de programación. Elija el lenguaje que mejor se adapte a su entorno de desarrollo:
- C#
- Java
- JavaScript
- Python
- Salesforce
- n8n
- Google Script
- AWS Lambda
C# (CSharp) Muestra
Completo C# implementación para leer códigos SwissQR desde PDF documentos:
Java Muestra
Java Implementación con manejo completo de errores y procesamiento de respuestas:
JavaScript Muestra
Node.js y compatible con navegadores JavaScript implementación:
Google Script Muestra
Google Apps Script implementación para Google Workspace integración:
Casos de uso y aplicaciones en la industria
- Finance & Banking
- Business & Enterprise
- Government & Compliance
Casos de uso en finanzas y banca
- Procesamiento de facturas: Extraer información de pago de Swiss QR facturas para procesamiento de pagos automatizado
- Integración bancariaIntegrar la lectura de códigos SwissQR en aplicaciones bancarias y sistemas de pago.
- Automatización de pagosOptimizar los flujos de trabajo de pago y reducir la entrada manual de datos.
- Procesamiento de facturas: Automatizar suizo QR procesamiento de facturas y verificación de pagos
- Conciliación de pagos: Automatizar los procesos de comparación y conciliación de pagos
- Información financiera: Extraer datos de pago de Suiza QR códigos para informes y análisis financieros
Casos de uso para empresas y negocios
- Gestión de facturas: Automatizar el procesamiento de facturas y el seguimiento de pagos
- Sistemas contables: Integrar la lectura del código SwissQR en la contabilidad y ERP sistemas
- Documentos financieros: Procesar documentos financieros que contengan información suiza QR códigos
- Integración de pagosIntegrar Suiza QR códigos en sistemas de procesamiento de pagos existentes
- Transformación digitalModernizar los flujos de trabajo de procesamiento de pagos.
- Automatización de procesos empresariales: Automatizar los flujos de trabajo de pago para las operaciones empresariales
Casos de uso en materia de gobierno y cumplimiento normativo
- Gestión del cumplimientoGarantizar el cumplimiento de las normativas bancarias y los estándares de pago suizos.
- Cumplimiento normativoProceso suizo QR códigos para el cumplimiento normativo y la auditoría
- Pagos gubernamentales: Tramitar documentos de pago gubernamentales con Suiza QR códigos
- Cumplimiento financieroGarantizar el cumplimiento de la normativa financiera suiza.