niiko/developers

Kiipu · facturación v1 vigente

kiipu.draft_voided

Anula un BORRADOR de factura (uno creado con kiipu.invoice_proposed y todavía no emitido), por su id o por el nombre del cliente si es su único borrador. No anula facturas emitidas: eso es de una persona en Kiipu.

Última actualización

POST /api/v1/actions/kiipu.draft_voided
Alcance de la llave
kiipu.draft_voided@1
Permiso del workspace
api.kiipu.draft_voided apagado por defecto
Dos permisos, no uno

Hacen falta las dos cosas: una llave con ese alcance, y que el dueño del workspace haya encendido el permiso. Tener la llave no basta — son dos decisiones de personas distintas.

Petición

campotiporeglas
invoiceIdstring (uuid)opcional
clientstringopcionalmin 1 · max 200

Respuesta — output cuando status es done

campotiporeglas
invoiceIdstringobligatorio
clientIdstringobligatorio
clientNamestringobligatorio
totalUsdstringobligatorio
status"void"obligatorio

Ejemplo

# One request, one idempotency key: retrying with the same key never runs twice.
curl -X POST https://niiko.org/api/v1/actions/kiipu.draft_voided \
  -H "Authorization: Bearer nk_…" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
# 200 → done · 202 → pending_approval (a person signs later) · 4xx → refused, with a named reason

Por qué puede negarse

Cada motivo dice quién puede arreglarlo y cómo. Con motivo stale, detail.message dice qué hacer.

cliente_no_encontradocliente_ambiguodemasiados_clientesborrador_no_encontradovarios_borradoresno_es_borradorsin_permiso

En los clientes

@vorluno/niiko-sdkniiko.voidedDraft()
niiko (Python)niiko.voided_draft()
niiko-cliniiko run kiipu.draft_voided
n8n-nodes-niikokiipuDraftVoided
niiko-mcp-serverkiipu_draft_voided

Historial