Protheus / ContasPagar rev3-2026-05-13 · https://erpapi.jetme.com.br/api/99/01 Empresa 99 · Filial 01
rev3-2026-05-13 Protheus 12.1.33

ContasPagar

CRUD de Título a Pagar (tabela SE2) via rotina automática FINA050 (MsExecAuto). Cobre títulos comuns (NF, PRV, CHQ) e adiantamentos (PA) — o que muda é o tipo do payload. O identificador externo é a chave composta natural da SE2 com 7 partes: filial-prefixo-num-parcela-tipo-fornece-loja. No POST sem {key} o servidor gera E2_NUM via GetSXENum (avança SX8 em caso de gap). Esta revisão adiciona validação de domínio (fValDom) sobre E2_FLUXO antes do FINA050.

Bloqueio TOTVS: a SE2 nao expoe MSBLQL/MSBLQD; o bloqueio relevante esta em SA2 (fornecedor) e e enforcado pelo proprio FINA050.
Tabela mestre SE2 Contas a Pagar (títulos)
Rotina automática FINA050 MsExecAuto · Financeiro
Wrapper AdvPL U_FN050Exc src/lib/FIN/FN050EXC.prw
Operações & modos
POST modo 3 PUT modo 4 DEL modo 5
Dependências de ambiente
Cadastro · obrigatório
Fornecedor (SA2)
o par fornece/loja precisa existir em SA2 e não pode estar bloqueado (A2_MSBLQL != "1").
Sem fornecedor, FINA050 rejeita com "Fornecedor inexistente".
Cadastro · condicional
Natureza financeira (SED)
quando E2_NATUREZ é informada, o código precisa existir em SED.
U_FN050Exc enriquece E2_CODRET automaticamente via SED->ED_CODRET.
Parametrização · obrigatório
Tipo de título (E2_TIPO)
enum dependente da parametrização: NF, PRV, CHQ, BOL, ...
Para adiantamento ao fornecedor, usar tipo PA (compatível com a tabela SX5/05 do ambiente).
Dominio · combobox
E2_FLUXO (Pertence "SN")
static fValDom valida E2_FLUXO antes do FINA050.
Aceitos: S (gera fluxo de caixa) e N (não). Outros valores retornam 422 com mensagem editorial — sem disparar HELP da rotina.
Sequência
Numeração SX8 (E2_NUM)
GetSXENum("SE2","E2_NUM") + Soma1 + ConfirmSX8 em loop até gap.
Disparada no POST /INCLUIR (sem {key}); retorna data.auto=true.
Quirk · FINA050
Pergunte / closure ExecAuto
o wrapper aplica Pergunte("FIN050",.F.) e força MV_PAR02=2/MV_PAR04=2 (suprime perguntas de rateio/movimento). Closure usa 3 argumentos ({|x,y,z| FINA050(x,y,z)}) — variante com 2 args faz nOpc cair em default 3 e gera erro FA050NUM falso em PUT/DELETE.
Quirk · build 240223P
Dispatcher único de GET
WSMETHOD GET com WSSYNTAX "/WsContasPagar/{path}" + dispatcher AdvPL (_list / _byid / chave). O build não distingue múltiplos GET por WSSYNTAX, então a separação é feita no AdvPL pelo último segmento da URL.

ContasPagar

CRUD por chave composta — título normal e adiantamento (PA)

Listagem

Paginação por filtros e delta-sync

Schemas

Definições canônicas — campos com origem SX3 rastreável

Cenários

Catálogo de combinações de payload/query reconhecidas pelos métodos. Cada cenário usa o mesmo schema mas demonstra um uso típico distinto. Tier semântico no slug; endpoint no type-pill.