Crear o actualizar un registro (idempotente por versión)
PUT
/emitters/{id}/fiscal/{resource}/{external_id}
const url = 'https://api.sudte.com/v1/emitters/example/fiscal/purchases/example';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"external_id":"odoo:<db_uuid>:account.move:1542","version":1,"source":"odoo","accounting_date":"2026-04-15","issue_date":"2026-04-15","doc_class":"1","doc_type":"example","generation_code":"example","control_number":"example","seal":"example","counterpart":{"name":"example","nit":"example","nrc":"example","dui":"example","country_code":"example"},"amounts":{"additionalProperty":"113.00"},"attributes":{},"exclude_from_books":false}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://api.sudte.com/v1/emitters/example/fiscal/purchases/example \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "external_id": "odoo:<db_uuid>:account.move:1542", "version": 1, "source": "odoo", "accounting_date": "2026-04-15", "issue_date": "2026-04-15", "doc_class": "1", "doc_type": "example", "generation_code": "example", "control_number": "example", "seal": "example", "counterpart": { "name": "example", "nit": "example", "nrc": "example", "dui": "example", "country_code": "example" }, "amounts": { "additionalProperty": "113.00" }, "attributes": {}, "exclude_from_books": false }'Autorización
Sección titulada « Autorización »Parámetros
Sección titulada « Parámetros »Parámetros de ruta
Sección titulada « Parámetros de ruta » id
obligatorio
string
resource
obligatorio
string
external_id
obligatorio
string
Cuerpo de la solicitudobligatorio
Sección titulada « Cuerpo de la solicitudobligatorio » Media type application/json
Compra recibida (purchases), retención/percepción recibida (withholdings-received) o venta no emitida
por sudte (external-sales). Campos por tipo en docs/research/reportes-fiscales.md §6.1.
object
external_id
obligatorio
string
version
obligatorio
integer
source
string
accounting_date
obligatorio
string format: date
issue_date
string format: date
doc_class
1 físico, 2 formulario único, 3 póliza/DUCA, 4 DTE
string
doc_type
CAT-002
string
generation_code
string
control_number
string
seal
string
counterpart
Proveedor, cliente o agente según el recurso
object
name
string
nit
string
nrc
string
dui
string
country_code
string
amounts
object
key
additional properties
string
attributes
Clasificaciones (gasto, origen, kind de retención, applied_to, etc.)
object
exclude_from_books
boolean
Respuestas
Sección titulada « Respuestas »Guardado
Media type application/json
Compra recibida (purchases), retención/percepción recibida (withholdings-received) o venta no emitida
por sudte (external-sales). Campos por tipo en docs/research/reportes-fiscales.md §6.1.
object
external_id
obligatorio
string
version
obligatorio
integer
source
string
accounting_date
obligatorio
string format: date
issue_date
string format: date
doc_class
1 físico, 2 formulario único, 3 póliza/DUCA, 4 DTE
string
doc_type
CAT-002
string
generation_code
string
control_number
string
seal
string
counterpart
Proveedor, cliente o agente según el recurso
object
name
string
nit
string
nrc
string
dui
string
country_code
string
amounts
object
key
additional properties
string
attributes
Clasificaciones (gasto, origen, kind de retención, applied_to, etc.)
object
exclude_from_books
boolean
Example
{ "external_id": "odoo:<db_uuid>:account.move:1542", "source": "odoo", "doc_class": "1", "amounts": { "additionalProperty": "113.00" }, "exclude_from_books": false}default
Sección titulada « default »Error (RFC 9457)
Media type application/problem+json
object
type
string format: uri
title
string
status
integer
detail
string
instance
string
request_id
string
errors
Array<object>
object
path
string
message
string
mh
object
codigoMsg
string
descripcionMsg
string
observaciones
Array<string>
Example generated
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "instance": "example", "request_id": "example", "errors": [ { "path": "example", "message": "example" } ], "mh": { "codigoMsg": "example", "descripcionMsg": "example", "observaciones": [ "example" ] }}