API de Validador de Factura Electrónica SIAT de Bolivia - SFV API

API ID 13426

Validador de factura electrónica Keyless Bolivia SFV/SIAT: XSD oficial de SIN, rangos de código, cálculo de totales, reconstrucción de CUF/CUFD con Módulo 11 y Base16, verificación de firma XML-DSig. Informe en JSON codificado por reglas

280 ms resp. promedio

Documentación de la API

Endpoints

Solicitud
Sonda de vitalidad simple para monitoreo y verificación de tiempo de actividad Devuelve {"status":"ok"} con HTTP 200 cuando el servicio de validación está activo y listo para aceptar documentos No se requieren parámetros ni cuerpo
Endpoint ID: 29085
GET https://zylalabs.com/api/13426/bolivia+siat+e-invoice+validator+api+-+sfv/29085/health+check
PARÁMETROS DE ENTRADA

Pruebas gratuitas restantes: 3 de 3.

Este endpoint no requiere parámetros de entrada.

RESPUESTA DE EJEMPLO DE LA API
JSON
{
    "status": "ok"
}
Chequeo de salud — CÓDIGOS DE EJEMPLO

curl --location --request GET 'https://zylalabs.com/api/13426/bolivia+siat+e-invoice+validator+api+-+sfv/29085/health+check' --header 'Authorization: Bearer YOUR_API_KEY' 


    
Solicitud
PUBLICA el XML de la factura electrónica en bruto como el cuerpo de la solicitud (Content-Type: application/xml) Devuelve un informe de validación JSON: válido bienFormado tipoDeDocumento firmaVálida conteoDeErrores conteoDeAdvertencias y hallazgos detallados codificados por regla (BO-STRUCT-* BO-CODE-* BO-CUF-* BO-MATH-* BO-SIG-*) que cubren los XSD oficiales de SIN rangos de códigos paramétricos de SIN el código de control CUF reconstruido a partir del encabezado de la factura mediante el algoritmo SIN Módulo 11 y codificación Base16 (CUFD recuperado) matemáticas de totales por Validaciones por Documento Sector y la firma XML-DSig encapsulada Una factura no conforme sigue siendo HTTP 200 el veredicto es "válido": falso dentro del JSON
Endpoint ID: 29086
POST https://zylalabs.com/api/13426/bolivia+siat+e-invoice+validator+api+-+sfv/29086/validate+e-invoice
PARÁMETROS DE ENTRADA

Validar factura electrónica — Características del Endpoint

Objeto Descripción
Cuerpo de la Solicitud Requerido Json

Pruebas gratuitas restantes: 3 de 3.


PARÁMETROS DE ENTRADA

RESPUESTA DE EJEMPLO DE LA API
JSON
{
    "valid": true,
    "wellFormed": true,
    "inputFormat": "xml",
    "documentType": "facturaElectronicaCompraVenta",
    "version": "1.0",
    "signatureValid": false,
    "errorCount": 0,
    "warningCount": 2,
    "findings": [
        {
            "level": "info",
            "ruleId": "BO-STRUCT-XSD",
            "text": "Document is valid against the official SIN facturaElectronicaCompraVenta XSD (ver. 23/08/2021).",
            "location": null,
            "occurrences": 1
        },
        {
            "level": "info",
            "ruleId": "BO-CUF-VERIFY",
            "text": "CUF VERIFIES: its Base16 prefix reproduces from the header via the SIN Modulo 11 self-check digit (modalidad=1, tipoEmision=1, tipoFactura=1); recovered CUFD control code = '67A75AC82F24C74'.",
            "location": "cabecera/cuf",
            "occurrences": 1
        },
        {
            "level": "warning",
            "ruleId": "BO-SIG-CERT-PARSE",
            "text": "Could not parse the embedded X.509 certificate: Could not parse certificate: java.io.IOException: Empty input",
            "location": "ds:X509Certificate",
            "occurrences": 1
        },
        {
            "level": "warning",
            "ruleId": "BO-SIG-DOC-DIGEST",
            "text": "Document digest MISMATCH: signed DigestValue WmFvnKBZIr9D37PaYuxM3aoXVu9nDZT+2MI1I+RUh8s= does not match the recomputed SHA-256 (inclusive z8Unw8lbp8Ab+GEUWpu5rdX0nY4y4HwiQBKb5yXdf0Y= / exclusive z8Unw8lbp8Ab+GEUWpu5rdX0nY4y4HwiQBKb5yXdf0Y=). The document content differs from what was signed, or a different canonicalization was used (the official SIN example ships a placeholder DigestValue and will land here).",
            "location": "ds:Reference[@URI='']",
            "occurrences": 1
        },
        {
            "level": "info",
            "ruleId": "BO-SIG-TRUST",
            "text": "Trust chain to a Bolivia digital-signature certification authority (the ADSIB / Entidad Certificadora hierarchy recognised for firma digital) is NOT verified here; that requires the national CA/root list and, for full assurance, an online revocation (CRL/OCSP) check. Structure and the embedded-certificate crypto are checked offline.",
            "location": null,
            "occurrences": 1
        }
    ]
}
Validar factura electrónica — CÓDIGOS DE EJEMPLO

curl --location --request POST 'https://zylalabs.com/api/13426/bolivia+siat+e-invoice+validator+api+-+sfv/29086/validate+e-invoice' --header 'Authorization: Bearer YOUR_API_KEY' 

--data-raw '
    
        1003579028
        Carlos Loza
        La Paz
        2846005
        1
        44AAEC00DBD34C819B4D7AFD5F91900D3A059E06A467A75AC82F24C74
        BQUE+QytqQUDBKVUFOSVRPQkxVRFZNVFVJBMDAwMDAwM
        0
        AV. JORGE LOPEZ #123
        
        2021-10-07T09:01:24.178
        Mi razon social
        1
        5115889
        
        51158891
        1
        
        99
        99
        1
        1
        99
        
        1
        
        
        Ley N° 453: Tienes derecho a recibir información sobre las características y contenidos de los
            servicios que utilices.
        
        pperez
        1
    
    
        451010
        49111
        JN-131231
        JUGO DE NARANJA EN VASO
        1
        1
        100
        0
        100
        124548
        545454
    
    
        
            
            
            
                
                    
                    
                
                
                WmFvnKBZIr9D37PaYuxM3aoXVu9nDZT+2MI1I+RUh8s=
            
        
        
            itb123fGGhh12DpFDFas34ASDAPpSSSSadasDasAS1smkRsj5ksdjasd8asdkasjd8asdkas8asdk21v
            a1qf+kBKLwF39mj+5zKo1qf+kBKLD42qD/+yxSMMS6DM5SywPxO1oyjnSZtObIe/45fdS4sE9+aNOn
            UncYUlSDAPpSSSSadasgIMWwlX2XMJ4SDAPpSSSSadas6qihJt/3dEIdta1RETSDAPpSSSSadas9S2W
            ALbT3VV8pjLqikVLcSDAPpSSSSadaseCKG8abcdssM0Wm8p+5grNNpSDAPpSSSSadasy4TvT4C3xS
            70zSbKWeBUUglRcU8FECEcacu+UJaBCgRW0S3Q==
        
        
            
                
                    TIIEuzCCZ7OgZIZsdZsDSZDSsdZsdSZSDZSDZKoZIhvcNZQEZBQZgbUxCzZZBgNVBZYTZkZ
                    TIIEuzCCZ7OgZIZsdZsDSZDSsdZsdSZSDZSDZKoZIhvcNZQEZBQZgbUxCzZZBgNVBZYTZkZ
                    bnRhbTlsbGZZZ1dVzdG9zLTdvYi5ibzCCZSIDQYZKoZIhvcNZQEBBQZDgasdaACZQoCggEB
                    TIIEuzCCZ7OgZIZsdZsDSZDSsdZsdSZSDZSDZKoZIhvcNZQEZBQZgbUxCzZZBgNVBZYTZkZ
                    bnRhbTlsbGZZZ1dVzdG9zLTdvYi5ibzCCZSIDQYZKoZIhvcNZQEBBQZDgasdaACZQoCggEB
                    TIIEuzCCZ7OgZIZsdZsDSZDSsdZsdSZSDZSDZKoZIhvcNZQEZBQZgbUxCzZZBgNVBZYTZkZ
                    bnRhbTlsbGZZZ1dVzdG9zLTdvYi5ibzCCZSIDQYZKoZIhvcNZQEBBQZDgasdaACZQoCggEB
                    k/IsZZEBEETRTEQYDVQQZEoxTDZzNTc5TDI4TTITZYZKoZIhvcNZQkBZiNhcT5vbGQucXVp
                    bnRhbTlsbGZZZ1dVzdG9zLTdvYi5ibzCCZSIDQYZKoZIhvcNZQEBBQZDgasdaACZQoCggEB
                    bnRhbTlsbGZZZ1dVzdG9zLTdvYi5ibzCCZSIDQYZKoZIhvcNZQEBBQZDgasdaACZQoCggEB
                    kTIh+T9dIRZ9GghiSZbP2Zk082ycgic2ZepdZLu7p2LEUZUhTXSXGZQkO4o/ZNZZk0ZQKgi
                    bnRhbTlsbGZZZ1dVzdG9zLTdvYi5ibzCCZSIDQYZKoZIhvcNZQEBBQZDgasdaACZQoCggEB
                    V8ZVyTkIDRCTcBYZO4ZZ8oV1UTbQEiDZZOYTZDHT2ZRy+kS+OzCdpZZKZZyds0ZClCZRlTg
                    bnRhbTlsbGZZZ1dVzdG9zLTdvYi5ibzCCZSIDQYZKoZIhvcNZQEBBQZDgasdaACZQoCggEB
                    Z1UdDQEZIE8DZuBgNVHREEZzZlhiNhcT5vZZZXVpbnRhbTlsbGZZZ1dVzdG9zLTdvYi5i7Z
                    bzBRBgNVHR8ESZBITEZgRKBChkBodHRczovL2Rlc2ZycT9sbG8uYRzZIuZ29iLTZvL2Rlc2
                    bnRhbTlsbGZZZ1dVzdG9zLTdvYi5ibzCCZSIDQYZKoZIhvcNZQEBBQZDgasdaACZQoCggEB
                    NRrZKQl3YhKZKRSZyeegVZIiXlYeEyOe5qdn3XdyTCDkz4bTn02KbcsnZP7oVTqsodBSd0B
                    ptrxqoqeZHhGBzEl5/vxDS/Sx4eO7ZXd1T4HtZntETdsZXZuPZZt4Vr57R/hqdZeTkk7uO9
                    bnRhbTlsbGZZZ1dVzdG9zLTdvYi5ibzCCZSIDQYZKoZIhvcNZQEBBQZDgasdaACZQoCggEB
                    YB+PC1LO7gnh4Zz9UsYb0YBG
                
            
        
    
'

    

Clave de Acceso a la API y Autenticación

Después de registrarte, a cada desarrollador se le asigna una clave de acceso a la API personal, una combinación única de letras y dígitos proporcionada para acceder a nuestro endpoint de la API. Para autenticarte con el API de Validador de Factura Electrónica SIAT de Bolivia - SFV API simplemente incluye tu token de portador en el encabezado de Autorización.

Encabezados
Encabezado Descripción
Autorización Requerido Debería ser Bearer access_key. Consulta "Tu Clave de Acceso a la API" arriba cuando estés suscrito.

Sin compromiso a largo plazo. Mejora, reduce o cancela en cualquier momento. La Prueba Gratuita incluye hasta 50 solicitudes.

(Ahorra 2 meses pagando anualmente 🎉)

🚀 PLAN CORPORATIVO A MEDIDA

Comienza en
$ 10.000/Año


  • Volumen Personalizado
  • Límite de solicitudes personalizado
  • Soporte al Cliente Especializado
  • Monitoreo de API en Tiempo Real

Resumen

Validador de factura electrónica Keyless Bolivia SFV/SIAT: XSD oficial de SIN, rangos de códigos, matemáticas de totales, reconstrucción de CUF/CUFD con Módulo 11 y Base16, verificación de firma XML-DSig. Informe en JSON codificado por reglas

API de Validador de Factura Electrónica SIAT de Bolivia - SFV API FAQs

El endpoint de verificación de salud GET devuelve un objeto JSON simple que indica el estado del servicio El endpoint POST Validar e-factura devuelve un informe de validación JSON detallado incluyendo campos como "válido," "bienFormado," "tipoDeDocumento," y hallazgos relacionados con la estructura, verificación de código y validez de firma

Los campos clave en la respuesta de Validación de e-factura POST incluyen "válido" (booleano), "bienFormado" (booleano), "tipoDeDocumento" (cadena), "firmaVálida" (booleano), "contadorDeErrores" (entero), "contadorDeAdvertencias" (entero) y "hallazgos" (array de resultados de validación detallados)

Los datos de respuesta están estructurados en un formato JSON Incluye un objeto de nivel superior con campos de estado de validación seguido de un arreglo de "hallazgos" que detallan resultados de validación específicos categorizados por nivel (información advertencia error) y ID de regla

La verificación de salud GET proporciona el estado del servicio La validación POST de la factura electrónica ofrece resultados de validación exhaustivos para facturas electrónicas que incluyen cumplimiento con los XSD oficiales de SIN verificación de CUF y verificaciones de firma junto con hallazgos detallados

La precisión de los datos se mantiene mediante la adherencia a los estándares oficiales de SIN XSD y las reglas de validación La API verifica la estructura de la factura los rangos de códigos y la validez de la firma asegurando el cumplimiento de las regulaciones establecidas y algoritmos como Modulo 11

Los casos de uso típicos incluyen validar facturas electrónicas para cumplir con las regulaciones fiscales bolivianas asegurando el formato y la estructura adecuados y verificando la autenticidad de las facturas mediante controles de firma y validación de CUF

Los usuarios pueden utilizar los datos devueltos al verificar el campo "válido" para determinar la conformidad de la factura También pueden revisar "hallazgos" para problemas específicos como problemas de estructura o firma lo que permite correcciones específicas antes de la reenvío

Los patrones de datos estándar incluyen un campo booleano "válido" que indica el cumplimiento, un campo "bienFormado" que confirma la estructura XML y un array de "resultados" que detallan los resultados de la validación. Los usuarios pueden esperar una mezcla de mensajes informativos y advertencias según el estado de cumplimiento de la factura

General FAQs

Zyla API Hub es como una gran tienda de APIs, donde puedes encontrar miles de ellas en un solo lugar. También ofrecemos soporte dedicado y monitoreo en tiempo real de todas las APIs. Una vez que te registres, puedes elegir qué APIs quieres usar. Solo recuerda que cada API necesita su propia suscripción. Pero si te suscribes a varias, usarás la misma clave para todas, lo que hace todo más fácil para ti.
Los precios se muestran en USD (dólar estadounidense), EUR (euro), CAD (dólar canadiense), AUD (dólar australiano) y GBP (libra esterlina). Aceptamos todas las principales tarjetas de débito y crédito. Nuestro sistema de pago utiliza la última tecnología de seguridad y está respaldado por Stripe, una de las compañías de pago más confiables del mundo. Si tienes algún problema para pagar con tarjeta, contáctanos en [email protected]

Además, si ya tienes una suscripción activa en cualquiera de estas monedas (USD, EUR, CAD, AUD, GBP), esa moneda se mantendrá para suscripciones posteriores. Puedes cambiar la moneda en cualquier momento siempre que no tengas suscripciones activas.
La moneda local que aparece en la página de precios se basa en el país de tu dirección IP y se proporciona solo como referencia. Los precios reales están en USD (dólar estadounidense). Cuando realices un pago, el cargo aparecerá en tu estado de cuenta en USD, incluso si ves el monto equivalente en tu moneda local en nuestro sitio web. Esto significa que no puedes pagar directamente en tu moneda local.
Ocasionalmente, un banco puede rechazar el cargo debido a sus configuraciones de protección contra fraude. Te sugerimos comunicarte con tu banco primero para verificar si están bloqueando nuestros cargos. También puedes acceder al Portal de Facturación y cambiar la tarjeta asociada para realizar el pago. Si esto no funciona y necesitas más ayuda, por favor contacta a nuestro equipo en [email protected]
Los precios se determinan mediante una suscripción recurrente mensual o anual, dependiendo del plan elegido.
Las llamadas a la API se descuentan de tu plan en base a solicitudes exitosas. Cada plan incluye una cantidad específica de llamadas que puedes realizar por mes. Solo las llamadas exitosas, indicadas por una respuesta con estado 200, se contarán en tu total. Esto asegura que las solicitudes fallidas o incompletas no afecten tu cuota mensual.
Zyla API Hub funciona con un sistema de suscripción mensual recurrente. Tu ciclo de facturación comenzará el día en que compres uno de los planes de pago, y se renovará el mismo día del mes siguiente. Así que recuerda cancelar tu suscripción antes si quieres evitar futuros cargos.
Para actualizar tu plan de suscripción actual, simplemente ve a la página de precios de la API y selecciona el plan al que deseas actualizarte. La actualización será instantánea, permitiéndote disfrutar inmediatamente de las funciones del nuevo plan. Ten en cuenta que las llamadas restantes de tu plan anterior no se transferirán al nuevo plan, por lo que debes considerar esto al actualizar. Se te cobrará el monto total del nuevo plan.
Para verificar cuántas llamadas a la API te quedan en el mes actual, revisa el campo 'X-Zyla-API-Calls-Monthly-Remaining' en el encabezado de la respuesta. Por ejemplo, si tu plan permite 1,000 solicitudes por mes y has usado 100, este campo mostrará 900 llamadas restantes.
Para ver el número máximo de solicitudes a la API que permite tu plan, revisa el encabezado de la respuesta 'X-Zyla-RateLimit-Limit'. Por ejemplo, si tu plan incluye 1,000 solicitudes por mes, este encabezado mostrará 1,000.
El encabezado 'X-Zyla-RateLimit-Reset' muestra el número de segundos hasta que tu límite se restablezca. Esto te indica cuándo tu conteo de solicitudes se reiniciará. Por ejemplo, si muestra 3,600, significa que faltan 3,600 segundos para que el límite se restablezca.
Sí, puedes cancelar tu plan en cualquier momento desde tu cuenta, seleccionando la opción de cancelación en la página de Facturación. Ten en cuenta que las actualizaciones, degradaciones y cancelaciones tienen efecto inmediato. Además, al cancelar ya no tendrás acceso al servicio, incluso si te quedaban llamadas en tu cuota.
Para darte la oportunidad de probar nuestras APIs sin compromiso, ofrecemos una prueba gratuita de 7 días que te permite realizar hasta 50 llamadas a la API sin costo. Esta prueba solo se puede usar una vez, por lo que recomendamos aplicarla a la API que más te interese. Aunque la mayoría de nuestras APIs ofrecen prueba gratuita, algunas pueden no hacerlo. La prueba finaliza después de 7 días o cuando realices 50 solicitudes, lo que ocurra primero. Si alcanzas el límite de 50 solicitudes durante la prueba, deberás "Iniciar tu Plan de Pago" para continuar haciendo solicitudes. Puedes encontrar el botón "Iniciar tu Plan de Pago" en tu perfil bajo Suscripción -> Elige la API a la que estás suscrito -> Pestaña de Precios. Alternativamente, si no cancelas tu suscripción antes del día 7, tu prueba gratuita finalizará y tu plan se cobrará automáticamente, otorgándote acceso a todas las llamadas a la API especificadas en tu plan. Ten esto en cuenta para evitar cargos no deseados.
Después de 7 días, se te cobrará el monto total del plan al que estabas suscrito durante la prueba. Por lo tanto, es importante cancelar antes de que finalice el periodo de prueba. No se aceptan solicitudes de reembolso por olvidar cancelar a tiempo.
Cuando te suscribes a una prueba gratuita de una API, puedes realizar hasta 50 llamadas. Si deseas realizar más llamadas después de este límite, la API te pedirá que "Inicies tu Plan de Pago". Puedes encontrar el botón "Iniciar tu Plan de Pago" en tu perfil bajo Suscripción -> Elige la API a la que estás suscrito -> Pestaña de Precios.
Las Órdenes de Pago se procesan entre el día 20 y el 30 de cada mes. Si envías tu solicitud antes del día 20, tu pago será procesado dentro de ese período.
Puedes contactarnos a través de nuestro canal de chat para recibir asistencia inmediata. Siempre estamos en línea de 8 a. m. a 5 p. m. (EST). Si nos contactas fuera de ese horario, te responderemos lo antes posible. Además, puedes escribirnos por correo electrónico a [email protected]

APIs Relacionadas