Ir para o conteúdo

Gerenciamento do vínculo entre o cedente e as operações do fundo.

O vínculo do cedente a uma operação é pré-requisito para a importação de títulos: a importação de títulos avulsos (POST /public/api/v1/recebiveis/lotes/{idOperacao}/titulos/avulsos) rejeita o cedente que não estiver previamente vinculado à operação, com a mensagem "Cedente não vinculado à operação.".

Fluxo de auto-serviço recomendado:

  1. Localize o idEmpresa do cedente (via Criar Cedente ou Consultar Cedente por CNPJ).
  2. Garanta uma conta corrente cadastrada e escolha o idContaCorrente em Listar Contas Correntes.
  3. Descubra a operação no catálogo do grupo econômico ou em Listar Operações Disponíveis (específica do cedente).
  4. Vincule o cedente à operação.
  5. Operações Risco Sacado: cadastre e vincule cada sacado ao cedente.
  6. Importe os títulos.

Acompanhar o limite de crédito

Após cadastrar o limiteCredito no vínculo, acompanhe o consumo (total / tomado / disponível) e os títulos que o compõem em Consultar Limite de Crédito.


Listar Operações Disponíveis

Método URL
GET https://BASE_URL/public/api/v1/cedentes/{idEmpresa}/operacoes-disponiveis

Lista as operações ativas às quais o cedente ainda pode ser vinculado.

Response Body — 200 OK
[
  { "idOperacao": 7, "nome": "Desconto Próprio", "idModalidadeOperacao": 1 },
  { "idOperacao": 9, "nome": "Risco Sacado Varejo", "idModalidadeOperacao": 2 }
]
Campo Tipo Descrição
idOperacao Número Identificador da operação (usar no vínculo).
nome Texto Nome da operação.
idModalidadeOperacao Número Modalidade da operação. Quando 2 (Risco Sacado), vincule também os sacados.

Listar Operações do Grupo Econômico

Método URL
GET https://BASE_URL/public/api/v1/operacoes

Lista todas as operações ativas do grupo econômico, de forma achatada (flat) e sem paginação, independentemente de estarem vinculadas a algum cedente. Útil para descobrir as operações antes mesmo de cadastrar ou escolher um cedente.

Diferença para Operações Disponíveis

Listar Operações Disponíveis é específica de um cedente e retorna apenas as operações às quais ele ainda pode ser vinculado. Já este endpoint retorna o catálogo completo de operações ativas do grupo, sem depender de um cedente.

Response Body — 200 OK
[
  { "idOperacao": 99, "nome": "Desconto de Duplicatas", "idModalidadeOperacao": 1 },
  { "idOperacao": 87, "nome": "Risco Sacado", "idModalidadeOperacao": 2 }
]
Campo Tipo Descrição
idOperacao Número Identificador da operação.
nome Texto Nome da operação.
idModalidadeOperacao Número Modalidade da operação (1 = Desconto de Duplicatas, 2 = Risco Sacado).

Consultar Operação por Id

Método URL
GET https://BASE_URL/public/api/v1/operacoes/{id}

Consulta uma operação ativa do grupo econômico pelo identificador.

Path Params

Campo Tipo Descrição
id Número Identificador da operação.
Response Body — 200 OK
{ "idOperacao": 87, "nome": "Risco Sacado", "idModalidadeOperacao": 2 }
Response Body — 404 Not Found
{ "status": "erro", "mensagem": "Operação com ID 999999 não encontrada." }

Vincular Cedente a Operação

Método URL
POST https://BASE_URL/public/api/v1/cedentes/{idEmpresa}/operacoes/{idOperacao}

Vincula o cedente à operação. Em operações Risco Sacado, este vínculo é a linha base do cedente (sem sacado); os sacados são cadastrados e vinculados em Risco Sacado — Sacados. A operação é idempotente: repetir a chamada para um vínculo já existente devolve 200 OK com jaExistia = true, sem criar novo registro.

Deságio por Fonte Externa

Quando a operação calcula o deságio por Fonte Externa (ex.: Q'Prof), não envie percentualDesagio — a requisição é rejeitada com 400. Envie apenas a conta (opcional) e o limite de crédito; o deságio é recalculado pelo backend.

Path Params

Campo Tipo Descrição
idEmpresa Número Identificador da empresa cedente.
idOperacao Número Identificador da operação.
Request Body
{
  "idContaCorrente": 10,
  "coobrigacao": false,
  "percentualDesagio": 1.5,
  "limiteCredito": 100000.00,
  "numeroContrato": 55012,
  "dataContrato": "2025-01-15"
}
Response Body — 200 OK
{
  "jaExistia": false,
  "mensagem": "Vínculo criado com sucesso.",
  "vinculo": {
    "idVinculo": 42,
    "idOperacao": 7,
    "nomeOperacao": "Desconto Próprio",
    "idEmpresa": 123,
    "idSacado": null,
    "idModalidadeOperacao": 1,
    "status": "Em avaliação",
    "coobrigacao": false,
    "limiteCredito": 100000.00,
    "percentualDesagio": 1.5,
    "idContaCorrente": 10,
    "prazoTac": null,
    "prazoLimiteNegociacao": null,
    "taxaTac": null,
    "taxaJurosDia": null,
    "numeroContrato": 55012,
    "dataContrato": "2025-01-15"
  }
}
Response Body — 400 Bad Request
{
  "status": "erro",
  "mensagem": "Conta corrente informada não pertence ao cedente."
}

Consultar Vínculos do Cedente

Método URL
GET https://BASE_URL/public/api/v1/cedentes/{idEmpresa}/operacoes

Lista os vínculos base do cedente (linha do cedente por operação). Os pares cedente×sacado de Risco Sacado são consultados em Listar Sacados Vinculados.

Response Body — 200 OK
[
  {
    "idVinculo": 42,
    "idOperacao": 7,
    "nomeOperacao": "Desconto Próprio",
    "idEmpresa": 123,
    "idSacado": null,
    "idModalidadeOperacao": 1,
    "status": "Em avaliação",
    "coobrigacao": false,
    "limiteCredito": 100000.00,
    "percentualDesagio": 1.5,
    "idContaCorrente": 10,
    "prazoTac": null,
    "prazoLimiteNegociacao": null,
    "taxaTac": null,
    "taxaJurosDia": null,
    "numeroContrato": 55012,
    "dataContrato": "2025-01-15"
  }
]

O modelo de cada item é o Vínculo.


Atualizar Vínculo do Cedente

Método URL
PUT https://BASE_URL/public/api/v1/cedentes/{idEmpresa}/operacoes/{idOperacao}/{idVinculo}

Atualiza os parâmetros do vínculo base do cedente. Os campos não informados (null) preservam o valor atual. A regra de Fonte Externa (não enviar percentualDesagio) também se aplica aqui.

Atualização parcial (merge)

Apenas os campos enviados são alterados; os omitidos/null mantêm o valor atual. Por consequência, não é possível "limpar" um valor para nulo por esta atualização (ex.: voltar o limite de crédito para "sem limite") — envie o novo valor desejado. A mesma regra vale para a atualização de sacado.

Request Body
{
  "limiteCredito": 150000.00,
  "coobrigacao": true
}
Response Body — 200 OK
{
  "idVinculo": 42,
  "idOperacao": 7,
  "nomeOperacao": "Desconto Próprio",
  "idEmpresa": 123,
  "idSacado": null,
  "idModalidadeOperacao": 1,
  "status": "Em avaliação",
  "coobrigacao": true,
  "limiteCredito": 150000.00,
  "percentualDesagio": 1.5,
  "idContaCorrente": 10,
  "prazoTac": null,
  "prazoLimiteNegociacao": null,
  "taxaTac": null,
  "taxaJurosDia": null,
  "numeroContrato": 55012,
  "dataContrato": "2025-01-15"
}

Retorna o Vínculo completo após a atualização.


Desvincular Cedente da Operação

Método URL
DELETE https://BASE_URL/public/api/v1/cedentes/{idEmpresa}/operacoes/{idOperacao}/{idVinculo}

Remove o vínculo do cedente com a operação.

Response Body — 200 OK
{
  "status": "sucesso",
  "mensagem": "Vínculo removido com sucesso."
}

Vínculo de sacados (Risco Sacado)

O cadastro e o vínculo de sacados (par cedente×sacado) ficam em Risco Sacado — Sacados. O modelo de dados abaixo é compartilhado entre o vínculo do cedente e o do sacado.


Modelo de Dados

Requisição — Vínculo (Cedente e Sacado)

Aplica-se ao corpo de vincular/atualizar (cedente e sacado). Na atualização todos os campos são opcionais e os omitidos preservam o valor atual.

Campo Tipo Obrigatório Descrição
idContaCorrente Número Opcional Conta corrente do cedente. Deve pertencer ao próprio cedente (validado; senão 400).
coobrigacao Booleano Opcional Indica coobrigação.
percentualDesagio Decimal Opcional Percentual de deságio. Não-negativo; máximo 9.999.999,99999999. Não enviar em operações com cálculo por Fonte Externa (rejeita 400).
limiteCredito Decimal Opcional Limite de crédito. Não-negativo; máximo 99.999.999.999,9999. Ausente/null = sem limite (na criação). Não enviar em operações que validam limite por Base CNPJ (rejeita 400): nesse modo o limite é definido no vínculo da empresa matriz, não por filial.
prazoTac Número Opcional Prazo (em dias) em que a TAC é aplicada. Não-negativo.
prazoLimiteNegociacao Número Opcional Máximo de dias para negociação do título. Não-negativo.
taxaTac Decimal Opcional Percentual fixo aplicado sobre o valor antecipado. Não-negativo.
taxaJurosDia Decimal Opcional Taxa diária aplicada sobre dias excedentes. Não-negativo.
numeroContrato Número Opcional Número do contrato.
dataContrato Data Opcional Data do contrato (YYYY-MM-DD).
tokenAcesso Texto Opcional Token de acesso para integrações.

O cedente é identificado pela rota (idEmpresa); o sacado, pela rota (idSacado) no sub-recurso de sacados. Não há campo de tipo/sacado no corpo.

Retorno — Vínculo

Campo Tipo Descrição
idVinculo Número Identificador do vínculo (usar em atualizar/desvincular do cedente).
idOperacao Número Identificador da operação.
nomeOperacao Texto Nome da operação.
idEmpresa Número Identificador do cedente.
idSacado Número Identificador do sacado (preenchido apenas em pares Risco Sacado).
idModalidadeOperacao Número Modalidade da operação.
status Texto Situação do vínculo (Em avaliação, Vínculo aprovado, etc.).
coobrigacao Booleano Coobrigação.
limiteCredito Decimal Limite de crédito (nulo = sem limite).
percentualDesagio Decimal Percentual de deságio (nulo em Fonte Externa).
idContaCorrente Número Conta corrente vinculada.
prazoTac Número Prazo da TAC.
prazoLimiteNegociacao Número Máximo de dias para negociação.
taxaTac Decimal Percentual fixo da TAC.
taxaJurosDia Decimal Taxa diária.
numeroContrato Número Número do contrato.
dataContrato Data Data do contrato.

Retorno — Vincular (envelope)

O POST de vínculo (cedente e sacado) devolve:

Campo Tipo Descrição
jaExistia Booleano true quando o vínculo já existia (chamada idempotente, sem novo registro).
mensagem Texto Mensagem amigável de resultado.
vinculo Vínculo O vínculo criado ou já existente, com todos os dados do cadastro.