Emitir liquidación de compra
const url = 'https://api.chaski.ec/v1/purchase-settlements';const options = { method: 'POST', headers: { 'Idempotency-Key': 'example', Authorization: 'Bearer <token>', 'Content-Type': 'application/json' }, body: '{"issuer":"example","emission_point":"example","external_ref":"example","supplier":{"id_type":"ruc","id":"example","name":"example","address":"example","email":"[email protected]"},"items":[{"code":"example","auxiliary_code":"example","description":"example","unit_of_measure":"example","quantity":"example","unit_price":"example","discount":"example","taxes":[{"type":"iva","rate":"0","percent":"example"}],"details":{"additionalProperty":"example"}}],"payments":[{"method":"no_financial_system","amount":"example","term":"example","time_unit":"example"}],"additional_info":{"additionalProperty":"example"},"metadata":{"additionalProperty":"example"},"send_email":true}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.chaski.ec/v1/purchase-settlements \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'Idempotency-Key: example' \ --data '{ "issuer": "example", "emission_point": "example", "external_ref": "example", "supplier": { "id_type": "ruc", "id": "example", "name": "example", "address": "example", "email": "[email protected]" }, "items": [ { "code": "example", "auxiliary_code": "example", "description": "example", "unit_of_measure": "example", "quantity": "example", "unit_price": "example", "discount": "example", "taxes": [ { "type": "iva", "rate": "0", "percent": "example" } ], "details": { "additionalProperty": "example" } } ], "payments": [ { "method": "no_financial_system", "amount": "example", "term": "example", "time_unit": "example" } ], "additional_info": { "additionalProperty": "example" }, "metadata": { "additionalProperty": "example" }, "send_email": true }'Liquidación de compra de bienes y prestación de servicios (03), esquema 1.1.0: la emites cuando le compras a alguien que no puede darte factura (una persona natural sin RUC, un no residente…). Tu emisor es el comprador y supplier es el proveedor (no puede ser consumidor final). Los ítems, el IVA, los descuentos y los pagos funcionan igual que en la factura, sin propina. Con supplier.email el RIDE y el XML se envían al proveedor cuando el SRI autoriza. Responde 202 con status: "pending" y se notifica con purchase_settlement.authorized o purchase_settlement.rejected. En producción consume cuota igual que una factura (402 quota_exceeded).
Authorizations
Sección titulada «Authorizations»Parameters
Sección titulada «Parameters»Header Parameters
Sección titulada «Header Parameters»Una clave única por petición (por ejemplo un UUID). Vale 24 h: reintentar con la misma clave y el mismo body devuelve la misma respuesta.
Request Bodyrequired
Sección titulada «Request Bodyrequired»object
object
object
object
object
object
object
Responses
Sección titulada «Responses»OK
object
Clave de acceso de 49 dígitos
object
object
object
object
object
Example
{ "id": "ps_01jbx3k9q2f8m4tn6vwz0yh5ce", "status": "pending", "environment": "test", "emission_point": "001-001", "number": "001-001-000000008", "supplier": { "id_type": "ruc" }, "totals": { "taxes": [ { "type": "iva" } ] }}Petición inválida
object
object
Example
{ "error": { "code": "invalid_request" }}Falta la API key o no es válida
object
object
Example
{ "error": { "code": "invalid_request" }}Cuota de comprobantes agotada (quota_exceeded)
object
object
Example
{ "error": { "code": "invalid_request" }}Sin permiso (cuenta suspendida, emisor no habilitado en producción, límite del plan…)
object
object
Example
{ "error": { "code": "invalid_request" }}No se puede procesar (certificado vencido, Idempotency-Key reutilizada…)
object
object
Example
{ "error": { "code": "invalid_request" }}Demasiadas peticiones
object
object
Example
{ "error": { "code": "invalid_request" }}