Integration Guide
1. Ask for a re-evaluation​
One RUT per call, with your partner API token. The full reference is Re-evaluate a lead.
curl -X POST https://api.banca.me/partner/lead/reevaluacion \
-H "Authorization: Bearer <your-api-token>" \
-H "Content-Type: application/json" \
-d '{ "rut": "12345678-9" }'
If the person has leads in more than one of your projects, add externalEntityId to re-evaluate
them within one project — the value Get all PartnerEntities
returns:
{ "rut": "12345678-9", "externalEntityId": "ex-test-123" }
Without it, the most recent mortgage pre-approval across all your projects is used.
The answer can take several seconds, because the webhook is attempted before it responds. Set
a generous client timeout. If the call times out anyway, call again: you get
409 reevaluacion_en_curso while it runs, and the result, with reciente: true, once it is done.
2. Read the response​
{
"data": {
"idBancame": "e2f4a6c8-3d5b-4e7f-a1c3-9b8d7f6e5d33",
"rut": "12345678-9",
"origen": "inmobiliaria-qr",
"proyecto": "Condominio Los Robles",
"proyectoIdExterno": "ex-test-123",
"fechaEvaluacion": "2026-11-20T14:02:11.482Z",
"estado": "a_revisar",
"estadoUltimoPreAprobacion": "aprobado",
"empeoro": [
{ "campo": "deudaConsumo", "anterior": 1200000, "actual": 2950000 }
],
"causaRechazo": [],
"linkBancame": "https://partners.banca.me/leads/id/e2f4a6c8-3d5b-4e7f-a1c3-9b8d7f6e5d33",
"riesgo": {
"deudaConsumo": 2950000,
"sueldoLiquido": 1450000,
"cargaFinancieraTotal": 0.31
},
"urlEvaluacion": "https://creditos.banca.me/preloan?token=eyJhbGciOiJIUzI1NiIs...",
"reciente": false
}
}
data is the same object the reevaluation event
carries, documented there field by field, plus two fields that only the response has:
| Field | Type | Description |
|---|---|---|
urlEvaluacion | string | null | Link for the person to continue their evaluation from the new lead, valid for 72 hours. null when that lead is already closed. Treat it as a credential: it opens the person's evaluation without a login |
reciente | boolean | true when this is a re-evaluation done in the last 30 days over the same pre-approval, returned without doing a new one |
Read empeoro for what worsened and causaRechazo for the filters that fail, with the same
labels as in pre_approve. If the person's income or employment changed, send them
urlEvaluacion so they can update their evaluation.
3. Handle the errors​
Every error carries a reason in data.details.motivo. Branch on it rather than on the HTTP status
alone: two 409s and two 503s mean different things.
{
"data": {
"status": 409,
"url": "/partner/lead/reevaluacion",
"ip": "203.0.113.10",
"partnerId": "5b0e7c41-2d93-4f8a-a1c6-9e47d2b80f35",
"details": {
"motivo": "reevaluacion_en_curso"
}
}
}
| Status | motivo | What happened | What to do |
|---|---|---|---|
400 | rut_invalido | The RUT is missing or not valid | Fix the value |
404 | sin_pre_apruebo | The person has no mortgage pre-approval with you, or none in the project you named | Evaluate them normally |
404 | proyecto_no_encontrado | externalEntityId is not one of your projects | Fix the value |
409 | plr_en_evaluacion | The person is in the middle of an evaluation — the base lead or an earlier re-evaluation lead is active, or has an open credit application | Wait for it to finish |
409 | reevaluacion_en_curso | A re-evaluation of this lead is running | Call again in a few seconds |
422 | plr_anterior_a_politica | The lead was created before the date from which banca.me's privacy terms cover re-evaluation | It cannot be re-evaluated; evaluate the person again |
422 | origen_inactivo | The origin or the PartnerEntity of the base lead is inactive | Reactivate it, or contact us |
502 | buro_no_disponible | A required source did not answer. Nothing was created | Retry later |
503 | sin_cupo | Too many re-evaluations are running at once | Retry after the seconds in the Retry-After header |
503 | seguimiento_no_habilitado | Re-evaluation is not enabled in this environment | Contact us |
500 | interno | An error on our side. Nothing was emitted | Retry; tell us if it persists |
422 and 500 also carry a fixed error code in data.message, for example
ERR_FOLLOW_UP_PLR_BEFORE_POLICY. A partner without the evaluation module, or a BNPL partner,
gets 403. Authentication and rate limiting behave as in the rest of the
Partners API.
4. Subscribe a destination to the event​
Add reevaluation to a destination's eventTypes through
POST /partner/webhook/subscription, or from the
destinations page of the Partners portal:
curl -X POST https://api.banca.me/partner/webhook/subscription \
-H "Authorization: Bearer <your-api-token>" \
-H "Content-Type: application/json" \
-d '{
"url": "https://your-system.example.com/webhooks/bancame",
"eventTypes": ["pre_approve", "reevaluation"]
}'
- It is sent once per new re-evaluation, to every destination subscribed to it, whatever the
result. It is not sent when the call returns a recent one (
reciente: true) or ends in an error. - A result filter does not apply to it. A destination subscribed to
pre_approvewithfilters.resultsset still receives everyreevaluation. - It is verified like the other real-estate events — see Verify the Webhook Token.
- Deduplicate by
idBancame: each re-evaluation creates its own lead, and its id is the same in the response, in every destination and in every retry.
5. Read it again later​
GET /partner/pre-loan-request/{idNumber} lists
the person's leads newest first. The re-evaluation lead comes first, with a seguimiento field
holding its result; every other lead carries seguimiento: null. Use it to show the latest
re-evaluation without storing it, or to recover an event that was not delivered.