Documentação da API

API de Contas a Pagar

Notas fiscais de entrada / contas a pagar

5 endpoints · base https://api.comando.one/v1 · autenticação por chave cmd_live_…

GET/purchase-invoices

Listar contas a pagar

purchase_invoices:read

Parâmetros, corpo, resposta e exemplo

Parâmetros

page(query)integerNúmero da página (default: 1)
per_page(query)integerItens por página (default: 20, máx: 100)
status(query)"rascunho" | "recebida" | "aprovada" | "cancelada"
payment_status(query)"pendente" | "parcial" | "pago" | "vencido"
supplier_id(query)string (uuid)
invoice_number(query)string
due_date_from(query)string (date)
due_date_to(query)string (date)
overdue(query)"true" | "false"true = contas a pagar com parcela vencida e não paga. O vencimento mora nas parcelas, então o status agregado da fatura não responde isso.
sort_by(query)"amount" | "issue_date" | "created_at" | "updated_at" | "invoice_number"Coluna de ordenação. Use com sort_order para responder 'as maiores' ou 'as mais recentes'.
sort_order(query)"asc" | "desc"Direção da ordenação. Padrão: desc quando sort_by é informado.

Resposta 200 — Listagem paginada

idstring (uuid)
supplier_idstring (uuid)
status"rascunho" | "recebida" | "aprovada" | "cancelada"
payment_status"pendente" | "parcial" | "pago" | "vencido"
invoice_numberstring | null
amountnumber
issue_datestring | null (date)
notesstring | null
created_atstring (date-time)
updated_atstring (date-time)
purchase_invoice_chargesarray de objectParcelas a pagar (o vencimento mora aqui, não na fatura).

Exemplo

curl -X GET "https://api.comando.one/v1/purchase-invoices" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
POST/purchase-invoices

Criar conta a pagar

purchase_invoices:create

Parâmetros, corpo, resposta e exemplo

Corpo (JSON)

supplier_idobrigatóriostring (uuid)
status"rascunho" | "recebida" | "aprovada" | "cancelada"
payment_status"pendente" | "parcial" | "pago" | "vencido"
invoice_numberstring
amountnumber
issue_datestring (date)
due_datestring (date)Atalho: cria uma única parcela com este vencimento e o valor de 'amount'. Ignorado se 'charges' for informado.
chargesarray de objectParcelas a pagar. Cada uma exige 'due_date'.
itemsarray de objectItens da fatura. Se omitido, o valor de 'amount' vira um item único — a fatura não pode ficar sem item (o formulário do app não salva assim).
titlestringDescrição da fatura; vira o nome do item quando 'items' não é informado.
descriptionstringApelido de 'title' na hora de nomear o item único. Precedência: title > description > notes > invoice_number.
digitable_linestringAtalho: grava o boleto na parcela única criada por 'due_date'.
boleto_barcodestringApelido de 'digitable_line' no nível raiz. Vale para as parcelas que não trouxerem o seu próprio.
barcodestringApelido de 'digitable_line'. Precedência: o da parcela > boleto_barcode > digitable_line > barcode.
pix_keystringAtalho: grava a chave Pix na parcela única.
pix_copia_e_colastringPix copia-e-cola no nível raiz. Vale para as parcelas que não trouxerem o seu próprio.
pix_payloadstringApelido de 'pix_copia_e_cola'. Precedência: o da parcela > pix_copia_e_cola > pix_payload.
notesstring
attachment_idsarray de string (uuid)Ids de anexos já enviados que devem ser vinculados à fatura criada. É o fluxo 'lance esse imposto e anexe o PDF' numa chamada só.

Resposta 201 — Conta a pagar criada

idstring (uuid)
supplier_idstring (uuid)
status"rascunho" | "recebida" | "aprovada" | "cancelada"
payment_status"pendente" | "parcial" | "pago" | "vencido"
invoice_numberstring | null
amountnumber
issue_datestring | null (date)
notesstring | null
created_atstring (date-time)
updated_atstring (date-time)
purchase_invoice_chargesarray de objectParcelas a pagar (o vencimento mora aqui, não na fatura).

Exemplo

curl -X POST "https://api.comando.one/v1/purchase-invoices" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE" \
  -H "Content-Type: application/json" \
  -d '{"supplier_id":"<string (uuid)>"}'
DELETE/purchase-invoices/{id}

Excluir conta a pagar

Exclusão definitiva. Recusa (409) contas com pagamento registrado ou parcela paga — nesses casos use o cancelamento, que preserva o histórico.

purchase_invoices:delete

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)

Resposta 204 — Excluída

Sem corpo.

Exemplo

curl -X DELETE "https://api.comando.one/v1/purchase-invoices/{id}" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
GET/purchase-invoices/{id}

Obter conta a pagar (com itens e parcelas)

purchase_invoices:read

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)

Resposta 200 — Conta a pagar

idstring (uuid)
supplier_idstring (uuid)
status"rascunho" | "recebida" | "aprovada" | "cancelada"
payment_status"pendente" | "parcial" | "pago" | "vencido"
invoice_numberstring | null
amountnumber
issue_datestring | null (date)
notesstring | null
created_atstring (date-time)
updated_atstring (date-time)
purchase_invoice_chargesarray de objectParcelas a pagar (o vencimento mora aqui, não na fatura).

Exemplo

curl -X GET "https://api.comando.one/v1/purchase-invoices/{id}" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"
PATCH/purchase-invoices/{id}/cancel

Cancelar conta a pagar

purchase_invoices:cancel

Parâmetros, corpo, resposta e exemplo

Parâmetros

idobrigatório(path)string (uuid)

Resposta 200 — Cancelada

idstring (uuid)
supplier_idstring (uuid)
status"rascunho" | "recebida" | "aprovada" | "cancelada"
payment_status"pendente" | "parcial" | "pago" | "vencido"
invoice_numberstring | null
amountnumber
issue_datestring | null (date)
notesstring | null
created_atstring (date-time)
updated_atstring (date-time)
purchase_invoice_chargesarray de objectParcelas a pagar (o vencimento mora aqui, não na fatura).

Exemplo

curl -X PATCH "https://api.comando.one/v1/purchase-invoices/{id}/cancel" \
  -H "Authorization: Bearer cmd_live_SUA_CHAVE"

Início rápido, autenticação, SDK, servidor MCP e o playground para testar sem escrever código estão na documentação completa. A especificação em OpenAPI está em api.comando.one/openapi.json.

Outros recursos da API

Ou deixe a IA usar a API por você

O servidor MCP expõe estes mesmos recursos ao ChatGPT, Claude ou Gemini — com OAuth, sem chave de API.

Conectar um assistente