{
"status": "ok"
}
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'
{
"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
}
]
}
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
'
After signing up, every developer is assigned a personal API access key, a unique combination of letters and digits provided to access to our API endpoint. To authenticate with the Bolivia SIAT e-Invoice Validator API - SFV simply include your bearer token in the Authorization header.
| Header | Description |
|---|---|
Authorization
|
Required
Should be Bearer access_key. See "Your API Access Key" above when you are subscribed.
|
No long-term commitment. Upgrade, downgrade, or cancel anytime. Free Trial includes up to 50 requests.
(Save 2 months with annual billing 🎉)
Keyless Bolivia SFV/SIAT factura electronica validator: official SIN XSD, code ranges, totals math, CUF/CUFD reconstruction with Modulo 11 and Base16, XML-DSig signature check. Rule-coded JSON report.
The GET Health check endpoint returns a simple JSON object indicating the service status. The POST Validate e-invoice endpoint returns a detailed JSON validation report, including fields like "valid," "wellFormed," "documentType," and findings related to structure, code verification, and signature validity.
Key fields in the POST Validate e-invoice response include "valid" (boolean), "wellFormed" (boolean), "documentType" (string), "signatureValid" (boolean), "errorCount" (integer), "warningCount" (integer), and "findings" (array of detailed validation results).
The response data is structured in a JSON format. It includes a top-level object with validation status fields, followed by an array of "findings" that detail specific validation results, categorized by level (info, warning, error) and rule ID.
The GET Health check provides service status. The POST Validate e-invoice offers comprehensive validation results for electronic invoices, including compliance with official SIN XSDs, CUF verification, and signature checks, along with detailed findings.
Data accuracy is maintained through adherence to official SIN XSD standards and validation rules. The API checks invoice structure, code ranges, and signature validity, ensuring compliance with established regulations and algorithms like Modulo 11.
Typical use cases include validating electronic invoices for compliance with Bolivian tax regulations, ensuring proper formatting and structure, and verifying the authenticity of invoices through signature checks and CUF validation.
Users can utilize the returned data by checking the "valid" field to determine invoice compliance. They can also review "findings" for specific issues, such as structure or signature problems, allowing for targeted corrections before resubmission.
Standard data patterns include a boolean "valid" field indicating compliance, a "wellFormed" field confirming XML structure, and an array of "findings" that detail validation results. Users can expect a mix of informational messages and warnings based on the invoice's compliance status.
To obtain your API key, first sign in to your account and navigate to the API you want to use. From the API's Pricing section, choose a plan and complete the subscription process. Once subscribed, return to the API page and you will see your API Access Key displayed at the top of the documentation page. You can use this key to authenticate your requests.
You can’t switch APIs during the free trial. If you subscribe to a different API, your trial will end and the new subscription will start as a paid plan.
The free trial lasts for 7 days and allows you to make up to 50 API requests.
No, the free trial is available only once, so we recommend using it on the API that interests you the most. Most of our APIs offer a free trial, but some may not include this option.
Yes. If the API offers a free trial, you will see a "Free 7-Day Trial" option in its Pricing section. The trial lasts for 7 days and allows up to 50 API requests, enabling you to evaluate the API before subscribing to a paid plan.
Zyla API Hub is like a big store for APIs, where you can find thousands of them all in one place. We also offer dedicated support and real-time monitoring of all APIs. Once you sign up, you can pick and choose which APIs you want to use. Just remember, each API needs its own subscription. But if you subscribe to multiple ones, you'll use the same key for all of them, making things easier for you.
You can monitor your API usage through the response headers included with every request:
x-zyla-api-calls-monthly-used: Shows the total number of API requests you have used during the current billing period.
x-zyla-api-calls-monthly-remaining: Shows the number of API requests you have remaining for the current billing period.
Yes, you can cancel your subscription at any time. Simply go to the Pricing section of the API you're subscribed to and click the "Unsubscribe" button.
Please note that upgrades, downgrades, and cancellations take effect immediately. Once your subscription is canceled, access to the service will end immediately, regardless of any remaining API calls in your quota.
Please have a look at our Refund Policy: https://zylalabs.com/terms#refund