API

Financeiro

Controlar contas a pagar, receber, categorias e fornecedores via API.

Financeiro

Gerencie o módulo financeiro da sua incorporadora. Controle contas a pagar, contas a receber, categorias financeiras e fornecedores.

Contas a Pagar

GET /v1/financial/payables

Lista contas a pagar da organização.

Query Parameters

ParâmetroTipoPadrãoDescrição
pagenumber1Página atual
limitnumber20Itens por página (máx: 100)
statusstring-Filtrar: pendente, paga, vencida, cancelada
category_idstring-Filtrar por categoria
supplier_idstring-Filtrar por fornecedor
searchstring-Buscar na descrição
due_date_fromstring-Vencimento a partir de (YYYY-MM-DD)
due_date_tostring-Vencimento até (YYYY-MM-DD)
sortstring-due_dateOrdenação

Request

curl -X GET "https://api.octabuild.com.br/v1/financial/payables?status=pendente" \
  -H "Authorization: Bearer ea_live_sua_chave_aqui"

Response

{
  "success": true,
  "data": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "description": "Material de construção - Bloco A",
      "amount": 45000.00,
      "due_date": "2026-03-15",
      "issue_date": "2026-02-25",
      "status": "pendente",
      "payment_method": "boleto",
      "category": {
        "id": "cat-001",
        "name": "Material de Construção",
        "code": "MC-001"
      },
      "supplier": {
        "id": "sup-001",
        "name": "Construmix Ltda"
      },
      "created_at": "2026-02-25T10:00:00Z"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 23,
    "pages": 2
  }
}

POST /v1/financial/payables

Cria uma nova conta a pagar.

Request Body

CampoTipoObrigatórioDescrição
descriptionstringSimDescrição da despesa
amountnumberSimValor (deve ser > 0)
due_datestringSimData de vencimento (YYYY-MM-DD)
issue_datestringNãoData de emissão (padrão: hoje)
document_numberstringNãoNúmero do documento/NF
statusstringNãoStatus (padrão: pendente)
category_idstringNãoID da categoria
supplier_idstringNãoID do fornecedor
payment_methodstringNãoMétodo de pagamento
recurrencestringNãoRecorrência: nenhuma, mensal, semanal
tagsarrayNãoTags
internal_notesstringNãoNotas internas

Request

curl -X POST https://api.octabuild.com.br/v1/financial/payables \
  -H "Authorization: Bearer ea_live_sua_chave_aqui" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "Mão de obra - Fundação Bloco B",
    "amount": 85000.00,
    "due_date": "2026-04-01",
    "category_id": "cat-002",
    "supplier_id": "sup-003",
    "payment_method": "transferencia"
  }'

GET/PUT/DELETE /v1/financial/payables/:id

Buscar, atualizar ou remover (soft delete) uma conta a pagar específica.


Contas a Receber

GET /v1/financial/receivables

Lista contas a receber. Mesmos parâmetros de paginação e filtros similares a contas a pagar, com filtros adicionais:

ParâmetroTipoDescrição
client_idstringFiltrar por cliente

POST /v1/financial/receivables

CampoTipoObrigatórioDescrição
descriptionstringSimDescrição da receita
amountnumberSimValor (deve ser > 0)
due_datestringSimData de vencimento (YYYY-MM-DD)
category_idstringNãoID da categoria
client_idstringNãoID do cliente
client_namestringNãoNome do cliente (se não tiver client_id)
payment_methodstringNãoMétodo de pagamento
tagsarrayNãoTags

Request

curl -X POST https://api.octabuild.com.br/v1/financial/receivables \
  -H "Authorization: Bearer ea_live_sua_chave_aqui" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "Sinal - Unidade 101 Bloco A",
    "amount": 50000.00,
    "due_date": "2026-03-01",
    "client_name": "Maria Santos"
  }'

GET/PUT/DELETE /v1/financial/receivables/:id

Buscar, atualizar ou remover (soft delete) uma conta a receber específica.


Categorias Financeiras

GET /v1/financial/categories

Lista categorias financeiras.

ParâmetroTipoDescrição
directionstringFiltrar: receita ou despesa
is_activestringFiltrar: true ou false
searchstringBuscar por nome

Request

curl -X GET "https://api.octabuild.com.br/v1/financial/categories?direction=despesa" \
  -H "Authorization: Bearer ea_live_sua_chave_aqui"

POST /v1/financial/categories

CampoTipoObrigatórioDescrição
codestringSimCódigo único da categoria
namestringSimNome da categoria
directionstringSimDireção: receita ou despesa
descriptionstringNãoDescrição
dre_groupstringNãoGrupo no DRE
parent_idstringNãoID da categoria pai
display_ordernumberNãoOrdem de exibição (padrão: 0)

GET/PUT/DELETE /v1/financial/categories/:id

CRUD de categoria individual.


Fornecedores

GET /v1/financial/suppliers

Lista fornecedores com paginação.

ParâmetroTipoDescrição
searchstringBuscar por nome ou nome fantasia
is_activestringFiltrar: true ou false

POST /v1/financial/suppliers

CampoTipoObrigatórioDescrição
namestringSimRazão social
trading_namestringNãoNome fantasia
documentstringNãoCPF ou CNPJ
document_typestringNãoTipo: cpf ou cnpj
emailstringNãoEmail
phonestringNãoTelefone
contact_namestringNãoNome do contato
address_streetstringNãoLogradouro
address_citystringNãoCidade
address_statestringNãoEstado
address_zip_codestringNãoCEP
bank_namestringNãoBanco
bank_agencystringNãoAgência
bank_accountstringNãoConta
pix_keystringNãoChave PIX
default_category_idstringNãoCategoria padrão
notesstringNãoObservações

GET/PUT/DELETE /v1/financial/suppliers/:id

CRUD de fornecedor individual.


Dashboard Financeiro

GET /v1/financial/dashboard

Retorna um resumo financeiro consolidado.

Request

curl -X GET https://api.octabuild.com.br/v1/financial/dashboard \
  -H "Authorization: Bearer ea_live_sua_chave_aqui"

Response

{
  "success": true,
  "data": {
    "period": {
      "start": "2026-02-01",
      "end": "2026-02-28"
    },
    "payables": {
      "total": 450000.00,
      "pending": 280000.00,
      "paid": 150000.00,
      "overdue": 20000.00,
      "count": 23
    },
    "receivables": {
      "total": 680000.00,
      "pending": 400000.00,
      "confirmed": 250000.00,
      "overdue": 30000.00,
      "count": 15
    },
    "balance": 230000.00
  }
}

Status Financeiros

StatusDescrição
pendenteAguardando pagamento/recebimento
pagaConta paga
confirmadoRecebimento confirmado
vencidaPassou do vencimento sem pagamento
canceladaConta cancelada

Erros Comuns

CódigoErroSolução
400Field 'description' is requiredInforme a descrição
400Field 'amount' must be greater than 0Valor deve ser positivo
400Field 'due_date' is requiredInforme a data de vencimento
404Payable not foundVerifique o ID da conta
409Category code already existsCódigo de categoria já em uso

On this page