Autorização da portabilidade
A partir de 18/11/2026, às 6h, toda portabilidade de consignado INSS exige que o beneficiário autorize a operação no Meu INSS (IN PRES/INSS 213/2026). A QI Tech registra o pedido na Dataprev assim que a CTC devolve o número da portabilidade (NU) e acompanha a resposta do beneficiário por um recurso novo, a autorização da portabilidade, com status e webhook próprios. Há uma autorização por proposta, ligada a ela pelo proposal_key.
A proposta continua com os mesmos status de hoje, e os webhooks credit_transfer.proposal, credit_transfer.proposal.credit_operation e credit_transfer.proposal.collateral não mudam de formato.
No crédito novo e no refinanciamento, o beneficiário confirma depois da averbação, e a reserva fica em pending_confirmation: veja Anuência (pending confirmation). Na portabilidade, a autorização é prévia: vem antes do pagamento do saldo e da exclusão do contrato pelo banco de origem.
Do lado de quem tem o contrato portado, veja Portabilidade out.
O que muda
| Momento | Até 17/11 | A partir de 18/11 |
|---|---|---|
| NU gerado | A proposta vai a pending_acceptance e aguarda o saldo | Igual, e nasce a autorização. O beneficiário tem 5 dias corridos para confirmar no Meu INSS |
| Pagamento do saldo | Sem condição | Só com a autorização no status mínimo configurado para você (padrão: awaiting_confirmation), e com parcela e taxa dentro do autorizado |
| Cancelamento | Desistência ou decurso na CTC | Também quando o beneficiário recusa, deixa vencer ou o registro falha. A QI envia a desistência à CTC |
| Exclusão e averbação | Em até 20 dias da exclusão pelo banco de origem | Em até 20 dias corridos da confirmação do beneficiário (deadline_date) |
Fluxo
Em azul, os status intermediários; em verde, a confirmação; em vermelho, os status finais, em que a portabilidade não segue.
- Digitação e envio. Iguais a hoje. Confira o bloqueio do benefício antes de digitar: Consulta de dados do benefício.
- NU gerado. A autorização nasce em
pending_inclusione a QI tenta registrá-la na Dataprev. Registrada, vai aawaiting_confirmation, comexpiration_date. Ao receberawaiting_confirmation, oriente o beneficiário a confirmar no Meu INSS. - Confirmação. O beneficiário confirma e a autorização vai a
confirmed, comconfirmation_date,deadline_dateeauthorized_values. - Retorno do saldo e aceite. O banco de origem informa o saldo e a proposta vai a
accepted. O aceite continua no mesmo dia, até o horário de corte, e só sai se a autorização estiver no status mínimo configurado para você. Veja Pagamento. - Exclusão e averbação. O banco de origem só consegue excluir o contrato na Dataprev com a autorização confirmada, e a averbação precisa sair até
deadline_date.
Status
| Status | Significado | O que fazer |
|---|---|---|
pending_inclusion | A QI está registrando a autorização na Dataprev. Se a Dataprev recusa por um motivo que pode mudar sozinho, como benefício bloqueado para empréstimo, a QI tenta de novo a cada hora, e cada tentativa gera um webhook. Veja Tentativas de registro | Nada. Se o motivo for bloqueio do benefício, oriente o beneficiário a desbloquear no Meu INSS |
pending_action | A Dataprev recusou um dado que se corrige na mesma proposta: o número do contrato de origem, a taxa ou o número de parcelas. A QI não tenta de novo sozinha. O motivo vem em error | Corrija o dado com o seu gerente de integração; no contrato de origem, confirme o número com o beneficiário. Corrigido, a autorização volta a pending_inclusion |
awaiting_confirmation | Registrada. O beneficiário tem até expiration_date para confirmar no Meu INSS | Avise o beneficiário |
confirmed | O beneficiário confirmou. A partir daqui correm os 20 dias até deadline_date | Guarde authorized_values e deadline_date: são os limites do aceite e o prazo da averbação |
refused | O beneficiário recusou no Meu INSS | Nada. A proposta é cancelada |
confirmation_expired | Os 5 dias corridos para o beneficiário confirmar venceram sem resposta | Nada. A proposta é cancelada. Para seguir, digite uma proposta nova |
failed | A Dataprev recusou o registro por um motivo que a proposta não corrige, como benefício não elegível ou portabilidade já em andamento para o contrato. O motivo vem em error | Nada. A proposta é cancelada |
canceled | A proposta foi cancelada ou retida, ou a Dataprev cancelou a autorização porque o contrato de origem foi refinanciado ou trocou de titular | Nada. Segue o cancelamento ou a retenção da proposta |
refused, confirmation_expired, failed e canceled são finais. Nos três primeiros chegam dois webhooks, nesta ordem: o da autorização, com o status final, e o da proposta, com canceled. Você não precisa cancelar nada.
O prazo de 20 dias não é um status: a autorização segue confirmed, e quem vence é a portabilidade. Acompanhe pelo deadline_date.
Tentativas de registro
Enquanto a autorização está em pending_inclusion:
- A QI tenta registrar a cada hora, até conseguir, até a proposta terminar ou até a autorização ir para outro status.
- Cada tentativa recusada gera um webhook, com o mesmo status
pending_inclusion, o número da tentativa emattempt.number, a próxima emattempt.next_attempt_ate o motivo da Dataprev emerror. Você pode receber o mesmo status várias vezes: ordene porattempt.number. - Fora da janela da Dataprev, das 6h às 22h, a tentativa espera a janela abrir.
- Quando a QI identifica que o benefício foi desbloqueado, a autorização passa à frente na fila e é registrada sem esperar a próxima hora.
| Motivo da recusa | Para onde vai |
|---|---|
Benefício bloqueado para empréstimo (IB, IE, IF, IG, IT, IK) | Continua em pending_inclusion, com nova tentativa em 1h |
Contrato de origem não encontrado, ou de outro banco ou benefício (VO) | pending_action |
Taxa mensal acima do teto, ou anual menor que a mensal (TN, TV, OU) | pending_action |
Parcelas acima do máximo (HV) | pending_action |
Margem insuficiente (HW) | failed |
Portabilidade já em andamento para o contrato (VS) | failed |
Benefício não elegível, de menor de idade, recebido por procurador ou de pensão alimentícia (HN, HB, HP, HQ) | failed |
NU já usado em outra autorização, exclusão ou averbação (VK, VJ) | failed |
Banco proponente sem convênio de portabilidade (PS) | failed |
| Demais motivos | failed |
Pagamento
O aceite que dispara o pagamento do saldo exige a autorização num status mínimo, configurado para cada cliente. O padrão é awaiting_confirmation. Para mudar, fale com o seu gerente de integração.
| Status mínimo | O pagamento sai a partir de | Risco |
|---|---|---|
pending_inclusion | NU gerado, mesmo antes do registro na Dataprev | Maior. Se a autorização não for registrada ou confirmada, o banco de origem não consegue excluir o contrato e devolve o pagamento |
awaiting_confirmation (padrão) | Autorização registrada, aguardando o beneficiário | Se o beneficiário recusar ou deixar vencer, o banco de origem devolve o pagamento e a proposta vai a rejected, como na devolução de hoje |
confirmed | Beneficiário confirmou | Menor. Mas, se o saldo chegar antes da confirmação, ele vence no corte do dia e a portabilidade é cancelada na CTC |
Qualquer que seja a configuração, o aceite é recusado:
| Situação | O que fazer |
|---|---|
| Autorização abaixo do status mínimo configurado | Aguarde o webhook da autorização |
Autorização em pending_action | Corrija o dado. O pagamento só sai depois do novo registro |
Autorização em refused, confirmation_expired, failed ou canceled | A proposta já foi ou será cancelada. Digite uma proposta nova |
Depois de deadline_date | A portabilidade não pode mais ser concluída por esse NU. Digite uma proposta nova |
Parcela ou taxa acima de authorized_values | Aceite com parcela e taxa iguais ou menores que as autorizadas |
Uma proposta já paga quando deadline_date vence continua aberta: ela termina com a averbação ou com a devolução do pagamento pelo banco de origem.
Webhook
Enviado a cada mudança de status da autorização e a cada tentativa de registro recusada. Os webhooks da QI Tech podem ganhar campos novos sem aviso: não rejeite um payload por ter campos que você não mapeou. Para consultar e reenviar, veja Reenvio de webhooks.
credit_transfer.portability_authorization.portability_authorization_keystring (UUID)Chave da autorização. Uma por proposta.proposal_keystring (UUID)Proposta de portabilidade a que a autorização pertence.portability_authorization_statusstringStatus da autorização. Veja Status.event_datetimestringData e hora do evento, no formato AAAA-MM-DDTHH:MM:SS.dataobjectDetalhes da autorização.awaiting_confirmation.confirmation_datestring ou nullDia em que o beneficiário confirmou no Meu INSS.deadline_datestring ou nullÚltimo dia para a exclusão pelo banco de origem e a averbação: confirmação mais 20 dias corridos.authorized_valuesobjectO que o beneficiário autoriza. Valores em reais; taxas como fração (0.0179 = 1,79%).pending_inclusion depois de uma tentativa recusada.code e description. Preenchido nas tentativas recusadas, em pending_action e em failed.{
"webhook_type": "credit_transfer.portability_authorization",
"portability_authorization_key": "c1a9d3f0-8e4b-4f2a-b6d7-0e5a9c2b7d13",
"proposal_key": "7f2c0e2a-5d1b-4c7a-9d3e-2b1f0a8c6e41",
"portability_authorization_status": "confirmed",
"event_datetime": "2026-11-20T14:03:11",
"data": {
"portability_number": "202611180000246536429",
"requested_at": "2026-11-18T09:12:38",
"expiration_date": "2026-11-23",
"confirmation_date": "2026-11-20",
"deadline_date": "2026-12-10",
"authorized_values": {
"installments": 84,
"installment_face_value": 312.4,
"loan_amount": 14250.0,
"monthly_interest_rate": 0.0179,
"annual_interest_rate": 0.2374,
"monthly_cet": 0.0191,
"annual_cet": 0.2549
},
"attempt": null,
"error": null
}
}
Exemplos
pending_inclusion: tentativa recusada por benefício bloqueado
{
"webhook_type": "credit_transfer.portability_authorization",
"portability_authorization_key": "c1a9d3f0-8e4b-4f2a-b6d7-0e5a9c2b7d13",
"proposal_key": "7f2c0e2a-5d1b-4c7a-9d3e-2b1f0a8c6e41",
"portability_authorization_status": "pending_inclusion",
"event_datetime": "2026-11-18T10:12:44",
"data": {
"portability_number": "202611180000246536429",
"requested_at": "2026-11-18T09:12:38",
"expiration_date": null,
"confirmation_date": null,
"deadline_date": null,
"authorized_values": {
"installments": 84,
"installment_face_value": 312.4,
"loan_amount": 14250.0,
"monthly_interest_rate": 0.0179,
"annual_interest_rate": 0.2374,
"monthly_cet": 0.0191,
"annual_cet": 0.2549
},
"attempt": {
"number": 2,
"next_attempt_at": "2026-11-18T11:12:44"
},
"error": {
"code": "IE",
"description": "Benefício bloqueado para empréstimo pelo beneficiário"
}
}
}
pending_action: contrato de origem não encontrado
{
"webhook_type": "credit_transfer.portability_authorization",
"portability_authorization_key": "c1a9d3f0-8e4b-4f2a-b6d7-0e5a9c2b7d13",
"proposal_key": "7f2c0e2a-5d1b-4c7a-9d3e-2b1f0a8c6e41",
"portability_authorization_status": "pending_action",
"event_datetime": "2026-11-18T09:12:52",
"data": {
"portability_number": "202611180000246536429",
"requested_at": "2026-11-18T09:12:38",
"expiration_date": null,
"confirmation_date": null,
"deadline_date": null,
"authorized_values": {
"installments": 84,
"installment_face_value": 312.4,
"loan_amount": 14250.0,
"monthly_interest_rate": 0.0179,
"annual_interest_rate": 0.2374,
"monthly_cet": 0.0191,
"annual_cet": 0.2549
},
"attempt": null,
"error": {
"code": "VO",
"description": "Contrato não encontrado ou não pertence à IF cedente e ao benefício informados"
}
}
}
awaiting_confirmation
{
"webhook_type": "credit_transfer.portability_authorization",
"portability_authorization_key": "c1a9d3f0-8e4b-4f2a-b6d7-0e5a9c2b7d13",
"proposal_key": "7f2c0e2a-5d1b-4c7a-9d3e-2b1f0a8c6e41",
"portability_authorization_status": "awaiting_confirmation",
"event_datetime": "2026-11-18T12:12:51",
"data": {
"portability_number": "202611180000246536429",
"requested_at": "2026-11-18T09:12:38",
"expiration_date": "2026-11-23",
"confirmation_date": null,
"deadline_date": null,
"authorized_values": {
"installments": 84,
"installment_face_value": 312.4,
"loan_amount": 14250.0,
"monthly_interest_rate": 0.0179,
"annual_interest_rate": 0.2374,
"monthly_cet": 0.0191,
"annual_cet": 0.2549
},
"attempt": null,
"error": null
}
}
Proposta cancelada por falta de confirmação
{
"webhook_type": "credit_transfer.proposal",
"proposal_key": "7f2c0e2a-5d1b-4c7a-9d3e-2b1f0a8c6e41",
"proposal_status": "canceled",
"event_datetime": "2026-11-23T22:05:02",
"cancel_reason": "portability_authorization_confirmation_expired",
"cancel_reason_description": "Beneficiário não confirmou a autorização da portabilidade no prazo"
}
Motivos de cancelamento da proposta
Chegam em cancel_reason e cancel_reason_description do webhook credit_transfer.proposal com proposal_status igual a canceled.
cancel_reason | Significado |
|---|---|
portability_authorization_refused | O beneficiário recusou no Meu INSS |
portability_authorization_confirmation_expired | 5 dias corridos sem resposta do beneficiário |
portability_authorization_failed | A Dataprev recusou o registro. O motivo está em data.error do webhook da autorização |
Como o beneficiário autoriza
A autorização é feita no aplicativo ou no site Meu INSS, com biometria facial. Quem não tem biometria cadastrada confirma com a conta gov.br e os dados bancários do benefício (IN PRES/INSS 138/2022, art. 5º, IX, e §21). Nenhuma confirmação passa pela QI Tech ou pelo parceiro: o seu papel é avisar o beneficiário no awaiting_confirmation e acompanhar o desfecho.
Valores autorizados
O beneficiário autoriza parcela, taxa, número de parcelas e valor do empréstimo, que voltam em authorized_values. O valor do empréstimo é registrado antes de o banco de origem informar o saldo, então ele é a estimativa enviada na digitação, e não o saldo final.
- Parcela e taxa não podem passar do autorizado. O aceite que as aumenta é recusado.
- Valor do empréstimo e número de parcelas podem variar dentro da tolerância da Dataprev: até 15% no valor e até 3 parcelas.
Digite a proposta com uma estimativa de saldo próxima do real. Quanto mais o saldo informado pelo banco de origem se afastar do valor autorizado, maior a chance de a averbação ser recusada.
Prazos
| Prazo | Conta a partir de | Duração | Se vencer |
|---|---|---|---|
| Confirmação do beneficiário | Registro da autorização | 5 dias corridos | Autorização confirmation_expired, proposta cancelada |
| Resposta do banco de origem | Pedido na CTC | 5 dias úteis | Como hoje: decurso de prazo na CTC |
| Aceite e pagamento | Retorno do saldo | Até o corte do mesmo dia | Como hoje: o saldo perde a validade |
| Exclusão e averbação | Confirmação do beneficiário | 20 dias corridos (deadline_date) | O pagamento deixa de ser aceito. Se já foi pago, a proposta espera a averbação ou a devolução pelo banco de origem |
O prazo de 20 dias corre desde a confirmação, não desde o pagamento. Quanto mais o banco de origem demora para informar o saldo, menos dias sobram para a averbação.
Entre 18/11 e 30/11/2026
A Núclea passa a bloquear na CTC o saldo devedor informado sem autorização só a partir de 30/11/2026. Até lá, o banco de origem consegue informar o saldo antes de o beneficiário confirmar.
- Com o status mínimo padrão (
awaiting_confirmation), esse saldo pode ser pago. Se o beneficiário não confirmar depois, o banco de origem não consegue excluir o contrato e devolve o pagamento. - Com o status mínimo
confirmed, esse saldo não é pago e vence no corte do dia, e a portabilidade é cancelada na CTC. Para seguir, é preciso digitar uma proposta nova.
Nos dois casos, peça a confirmação ao beneficiário no mesmo dia do awaiting_confirmation, antes de o banco de origem responder.
Propostas abertas na virada de 18/11
- Contrato já excluído pelo banco de origem antes de 18/11: nada muda. A averbação segue o fluxo atual.
- NU gerado e saldo ainda não pago: às 6h de 18/11 a QI cria e registra a autorização. Você recebe os webhooks a partir de
pending_inclusione precisa orientar o beneficiário. A proposta não muda de status. - Saldo pago e exclusão ainda não feita: a proposta não muda de status, e a QI registra a autorização do mesmo jeito. O banco de origem só consegue excluir depois da confirmação. Se o beneficiário não confirmar e o banco de origem devolver o pagamento, a proposta vai a
rejected, como na devolução de hoje.
Checklist de integração
- Receber o tipo de webhook
credit_transfer.portability_authorization. Confirme com o seu gerente de integração se ele precisa ser cadastrado no seu endpoint de webhooks. - Guardar a autorização pela
portability_authorization_keye ligá-la à proposta peloproposal_key. - Tratar o mesmo status chegando várias vezes em
pending_inclusion, um por tentativa. - Avisar o beneficiário no
awaiting_confirmation, com oexpiration_date, e no bloqueio do benefício. - Tratar
pending_action: corrigir a taxa, as parcelas ou o contrato de origem com o seu gerente de integração. - Guardar
authorized_valuesedeadline_datedoconfirmede respeitá-los no aceite. - Combinar com o seu gerente de integração o status mínimo para o pagamento, se o padrão não servir.
- Tratar os motivos novos em
cancel_reasondo webhook da proposta.