Submit counter-proposals

Submits an array of counter-proposals (N:N). We enqueue each, validate it, and forward them to Dataprev's inclusao-garantias endpoint in batches. A single object is also accepted (wrapped into a 1-item array). Each item in the array gets its own result in the response.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Proposal fields

FieldTypeRequiredDescription
numeroPropostastringyesYour proposal id; echoed back so you can match the result. Must be unique per institution.
idSolicitacaoPropostaintyesLead's id_dataprev (from the reserve response).
dataHoraValidadePropostastring ddMMyyyyHHmmssyesProposal validity; must be in the future.
contatosarrayyesContact channels offered to the worker (see contact types below).
contatos[].tipointyesContact type: 0=URL, 1=WhatsApp, 2=phone, 3=e-mail, 4=other.
contatos[].contatostringyesThe contact value (phone number, URL, e-mail).
codigoSolicitanteintyesAlways CDC's code (470).
numeroParcelasintyesNumber of installments.
valorParceladecimalyesInstallment amount.
valorLiberadodecimalyesAmount released to the worker.
valorEmprestimodecimalyesTotal financed amount.
valorIOFdecimalyesIOF tax.
valorTaxaAnualdecimalyesAnnual interest rate (%).
valorCETAnualdecimalyesAnnual total effective cost / CET (%).
valorTaxaMensaldecimalyesMonthly interest rate (%).
valorCETMensaldecimalyesMonthly CET (%).
temGarantiasboolno (default false)Whether this proposal uses the FGTS guarantee.
valorSaldoDisponivelGarantiaFgtsdecimalwhen temGarantias=trueFGTS available balance.
valorMultaRescisoriaGarantiaFgtsdecimalwhen temGarantias=trueFGTS termination penalty.
percVerbaRescisoriaGarantianumberwhen temGarantias=trueTermination allowance (%, up to 35%).

Contact types (contatos[].tipo)

tipoMeaning
0URL
1WhatsApp
2Phone
3E-mail
4Other

For WhatsApp (tipo: 1), send the value formatted as <phone>?text=<url-encoded text>.

Guarantee & business rules (validated by Dataprev)

  • Without guarantee → send exactly 1 proposal, without guarantee (FJ).
  • With guarantee → send exactly 2 proposals: one with guarantee and one without. The
    guaranteed proposal must have a lower interest rate than the non-guaranteed one (FJ).
  • At most 2 proposals per solicitação (OL).
  • Guarantee values in the proposal must be the solicitação's values and satisfy the
    100% coverage rule (FI).
  • valorLiberado must be < valorParcela × numeroParcelas (BL) and valorEmprestimo (BQ).
  • valorCETAnual must be > valorCETMensal (OV); monthly rate within the system cap (TN).
  • dataHoraValidadeProposta must be in the future (OU); worker must be loan-eligible (HU).

Our pre-validation (before sending to Dataprev)

  • If the idSolicitacaoProposta exists in our base, the temGarantias flag must match
    the lead's guarantee status (synced from Dataprev) — otherwise the item is blocked.
  • The lead must still be available to you (reserved/active); otherwise blocked.
  • dataHoraValidadeProposta must not be in the past.

Response fields

FieldDescription
totalNumber of proposals processed.
aceitasNumber accepted by Dataprev (status = aceita).
resultados[]One result per submitted proposal.
resultados[].numeroPropostaEcho of the id you sent, so you can match the result.
resultados[].contraproposta_hashOur id for the submitted counter-proposal (use it to look up status).
resultados[].statusFinal state of the proposal (see table).
resultados[].codigo_retorno_dataprevDataprev return code (BD = success).
resultados[].mensagemHuman-readable result message.

status values

StatusMeaning
aceitaDataprev accepted the proposal (codigo_retorno_dataprev = BD).
rejeitadaDataprev rejected the proposal (any code other than BD).
bloqueadaBlocked by us before sending (guarantee-flag mismatch or lead unavailable).
enviadaSent (HTTP 2xx) but without an item-level confirmation from Dataprev.
cancelada_expiradadataHoraValidadeProposta was in the past.
erroTechnical failure talking to Dataprev (retry scheduled).

Dataprev return codes (codigo_retorno_dataprev) — from Dataprev's Manual Leilão de
Propostas
(v1.8):

CodeMeaning
BDInclusion completed successfully.
OUProposal validity date must be later than the current date.
OVAnnual CET must be greater than the monthly CET.
SCReferenced solicitação must be valid (validity date in the future).
HANumber of proposals for the solicitação exceeds the system limit.
SEnumeroProposta must be unique for the institution.
SOSolicitação already has a registered (averbado) loan.
HVNumber of installments above the system maximum.
TNMonthly interest rate above the allowed maximum.
BLvalorLiberado must be less than valorParcela × numeroParcelas.
BQvalorLiberado must be ≤ valorEmprestimo.
HUWorker is not loan-eligible.
OLInvalid number of proposals submitted (max. 2).
FJInvalid proposal (with/without-guarantee rules; guaranteed proposal must have a lower rate).
FIInvalid guarantee values (exceed the solicitação / insufficient coverage).
BCInvalid CBC — check codigoSolicitante.
GBBadly formatted date — use ddMMyyyyHHmmss.
OTValue exceeds the max number of characters for the field.
GA, SD, PI, IO, SB, GE, PNRequired field filled incorrectly — check the field's rules.
Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json