Skip to content

facturaBoContingencia

Manages contingency when the SIAT does not respond: 1) register the event AFTER the outage, 2) issue invoices with “contingency” on (they stay OFFLINE), 3) send the package (max 500) and 4) validate it with the reception code; only then they become EMITIDA and consume credit. Events 5, 6 and 7 require a CAFC requested from the SIN.

Part of the Bolivia Fiscal Hub as an alternative to connecting directly to the SIAT: factura.bo (SimplifyIT S.R.L.) is a provider that builds and signs the XML and sends it to the SIN. Node: «Contingencia (SIAT caído)».

FieldTypeRequiredDescription
credentials_idcredentialsYesfacturabo credential
operationselectNoOperation — start_event, send_package, validate_package, list_events
branch_codenumberNoBranch (SIAT code) — 0 = head office. Empty = the credential default branch
point_of_sale_codenumberNoPoint of sale (SIAT code) — 0 = main point. Empty = the credential one
event_typeselectNoEvent type — 1, 2, 3, 4, 5, 6, 7
descriptiontextNoEvent description
start_datetextNoOutage start — ISO 8601, Bolivia time, no zone
end_datetextNoOutage end — Cannot be in the future (the SIAT rejects it with 981). Use the invoices fecha_emision, not the local clock
reception_codetextNoReception code — The one returned by “Send package”. Validation can be repeated without charging twice
document_sectornumberNoDocuments sector
event_datetextNoDate (list)
output_keytextNoOutput key — The result is added to data[key] keeping the rest of the data

This module requires a credential of type facturabo with the fields:

  • API key: get it at app.factura.bo → More → API Key
  • Environment: testing (sandbox, pilot SIAT) or production; the key does not reveal it, you choose
  • NIT and SIAT system code: to sync CUIS/CUFD and catalogs
  • Default branch and point of sale: 0 = head office / main point
  • Webhook secret (whsec_…): to verify event signatures
{
"success": true,
"operation": "validate_package",
"data": {
"mensajes": []
},
"warnings": [],
"environment": "production"
}

The output is stored under the configured key (output_key, default facturabo) and the rest of data is kept. On error: error.message, error.type and, where applicable, status and siat_code.

{
"credentials_id": "cred-facturabo",
"operation": "start_event",
"event_type": 1,
"description": "Corte de internet en la oficina",
"start_date": "2026-10-26T10:00:00",
"end_date": "2026-10-26T12:30:00"
}
  • Flow: 1) register the event AFTER the outage, 2) issue invoices with “contingency” (they stay OFFLINE), 3) send the package (max 500) and 4) validate it with the reception code; only then they become EMITIDA and consume credit. Validation can be repeated without charging twice.
  • The outage end cannot be in the future in Bolivia time (the SIAT rejects with 981) and is built from the invoices fecha_emision, not the local clock.
  • Events 5, 6 and 7 require a CAFC on every invoice; it is requested from the SIN, not self-service.