> ## Documentation Index
> Fetch the complete documentation index at: https://docs.payable.run/llms.txt
> Use this file to discover all available pages before exploring further.

# Recuperação

> Carteira vencida, cadência R0…R+180 e as taxas da Cobrança e da Recuperação

# Recuperação

A Payable tem dois serviços, e toda cobrança está em um deles (`collectionMode` na resposta de `GET /debts/{id}`):

| Serviço | `collectionMode` | Para quê | Taxa |
| - | - | - | - |
| **Cobrança** | `billing` | Cobranças a vencer e recém-vencidas, com a régua D-n…D+n | **R\$ 1,90 por cobrança recebida** (nunca mais que o valor pago) |
| **Recuperação** | `recovery` | Carteira vencida: importada ou passada da Cobrança depois de N dias | **10% do que for recuperado** |

> [!NOTE]
>
> A taxa fixa da Cobrança só vale a partir da data de lançamento do preço novo. Antes dela, vale a regra anterior: 10% de todo pagamento atribuído à régua.

Na Cobrança, a taxa fixa é devida quando houve pelo menos um envio da régua antes do pagamento. Uma baixa manual na Cobrança não gera taxa. Na Recuperação, os 10% valem para o pagamento (à vista ou parcela de acordo) feito depois da entrada na Recuperação e até 30 dias depois do último envio, por qualquer meio de pagamento.

**Uma cobrança que entra na Recuperação não volta para a Cobrança.**

## Contratar

A Recuperação fica disponível depois que um administrador da empresa aceita os termos, em **Recuperação › Contratar** ou em **Configurações › Recuperação**. O aceite fica registrado com a versão do texto, quem aceitou e quando. Se o texto mudar, a empresa precisa aceitar de novo.

Sem o aceite, as rotas que mandam cobranças para a Recuperação respondem `403` com `code`:

| `code` | Significado |
| - | - |
| `RECOVERY_UNAVAILABLE` | A Recuperação não está disponível para a conta |
| `RECOVERY_TERMS_REQUIRED` | Os termos da versão atual ainda não foram aceitos |

## Importar uma carteira vencida

Em **Importar › Carteira vencida**, envie um CSV ou uma planilha com uma linha por dívida. Há um modelo pronto na tela.

| Coluna | Obrigatória | Observação |
| - | - | - |
| CPF/CNPJ | Sim | Com dígito verificador válido |
| Nome | Sim | Nome completo ou razão social |
| Valor original | Sim | Sem multa nem juros |
| Vencimento original | Sim | Precisa ser anterior a hoje. Dívida a vencer vai em "Cobranças a vencer" |
| Origem | Sim | O que gerou a dívida (ex.: "Mensalidade de março/2025"); aparece na mensagem |
| Celular | Não | Sem celular nem e-mail, a dívida fica sem contato |
| E-mail | Não | |
| Multa (%) | Não | Multa contratual. Padrão 2% |
| Juros (% a.m.) | Não | Juros contratuais ao mês. Padrão 1% |

Uma linha repetida no arquivo, ou igual a uma dívida que já está na Recuperação (mesmo documento, valor e vencimento), é recusada.

Depois da importação, a Payable faz um **diagnóstico** de cada dívida e avisa a empresa no painel e por e-mail:

| `recoveryStatus` | O que significa |
| - | - |
| `diagnosing` | Em análise |
| `active` | Em andamento: entra na cadência |
| `no_contact` | Sem celular ou e-mail válido, ou o contato falhou de forma permanente |
| `prescribed` | Vencida há mais de 5 anos: possivelmente prescrita, não é cobrada |
| `disputed` | O devedor contestou; a cadência está pausada |
| `closed_no_deal` | A cadência terminou sem pagamento nem acordo; a dívida continua aberta |
| `voided` | Contestação aceita pela empresa: cancelada sem taxa |

As dívidas `active` de uma importação recebem o R0 a partir do dia seguinte, no primeiro horário de envio. As que chegam pela passagem ou são mandadas manualmente recebem o R0 no próximo horário de envio.

## Passagem automática

Em **Configurações › Recuperação**, a empresa pode ligar a passagem automática e escolher N, de 15 a 90 dias (padrão 30). Todo dia às 7h (horário de Brasília):

* no dia N−1, a empresa recebe um aviso com as cobranças que passam no dia seguinte, também na tela **Recuperação › Passagem**;
* no dia N ou depois, a cobrança em aberto sai da régua de Cobrança e entra na Recuperação.

Não passam: cobranças pagas, com acordo ativo, ou que a empresa tirou da passagem ("Não passar para a Recuperação"). Ao ligar a passagem, só entram as cobranças que completam N dias a partir dali; as mais antigas podem ser mandadas manualmente.

Uma cobrança também pode ser mandada na hora, pelo detalhe, pela ação em lote ou pela API (veja abaixo).

## Cadência R0…R+180

Os dias da Recuperação contam a partir da **entrada na Recuperação** (R0), não do vencimento. Assim toda dívida começa pela notificação, seja de 30 dias ou de 3 anos. A cadência padrão:

| Etapa | Canais | Oferta |
| - | - | - |
| R0 | WhatsApp, e-mail | Notificação, sem desconto |
| R+2 | WhatsApp | Lembrete, sem desconto |
| R+5 | Ligação com IA | Até a alçada da faixa |
| R+7 | WhatsApp, e-mail | Multa e juros perdoados + parcelas |
| R+14 | WhatsApp | Metade da alçada |
| R+21 | Ligação com IA | Até a alçada da faixa |
| R+30 | WhatsApp, e-mail | Aviso formal, sem desconto |
| R+45 | WhatsApp, SMS | Alçada máxima |
| R+60 | WhatsApp, e-mail, voz | Última proposta, alçada máxima |
| R+90 | WhatsApp | Campanha |
| R+120 | E-mail, SMS | Campanha |
| R+150 | WhatsApp | Campanha |
| R+180 | WhatsApp, e-mail | Campanha final |

A ligação só acontece para dívidas a partir de R\$ 500 (valor editável na alçada). Depois da R+180 sem pagamento nem acordo, a dívida fica `closed_no_deal` e continua em aberto.

### Alçada por faixa de atraso

A oferta de cada etapa sai da faixa de atraso da dívida, contada pelo vencimento original. A empresa edita a alçada em **Configurações › Recuperação**. O padrão:

| Faixa | Desconto máximo | Parcelas | Entrada mínima | Multa e juros |
| - | - | - | - | - |
| Até 90 dias | 5% | 6x | 0% | Perdoados |
| 91 a 180 dias | 15% | 10x | 15% | Cobrados |
| 181 a 365 dias | 30% | 12x | 10% | Cobrados |
| Mais de 365 dias | 50% | 12x | 10% | Cobrados |

Quando a dívida muda de faixa no meio da cadência, a oferta seguinte já usa a faixa nova. Honorários de cobrança nunca são somados ao valor cobrado do devedor. Acima da alçada, o agente pede aprovação humana.

## Horário e limite por devedor

A régua automática só manda mensagens de texto (WhatsApp, e-mail, SMS) dentro deste horário, em Brasília:

* segunda a sexta, das 9h às 19h;
* sábado, das 9h às 14h;
* nunca aos domingos e feriados nacionais.

E cada devedor recebe no máximo **1 contato por dia e 3 em 7 dias**. WhatsApp e e-mail da mesma etapa contam como um contato. Uma etapa que cairia fora do horário ou passaria do limite é adiada para o próximo horário possível, nunca pulada. O adiamento aparece na aba **Atividade** da cobrança.

Respostas do agente, mensagens do atendente e lembretes de parcela de um acordo não entram no limite: são conversa ou compromisso que o devedor aceitou. Os lembretes de parcela também só saem no horário acima; um que cairia num domingo ou feriado sai no próximo dia aberto. Essa regra vale também para a régua de Cobrança.

## Contestação

O devedor pode dizer que não reconhece a dívida pelo botão "Não reconheço" no WhatsApp ou na página de pagamento. A cadência pausa na hora e a empresa é avisada. Em **Recuperação › Contestações**, um administrador decide:

* **é devida:** a cadência retoma da etapa em que parou;
* **não é devida:** a cobrança é cancelada (`voided`), o devedor é avisado e nenhuma taxa é cobrada sobre ela.

## Superendividamento

Se o devedor disser ao agente do WhatsApp ou de voz que está em processo de superendividamento ou em repactuação de dívidas (Lei 14.181/2021), o agente não faz oferta e todas as réguas desse cliente ficam pausadas, na Cobrança e na Recuperação, inclusive as de cobranças criadas depois. A empresa recebe uma notificação e um e-mail, o registro aparece na Atividade da cobrança e o campo `overIndebtednessReportedAt` do cliente é preenchido. Depois de falar com o cliente, um administrador retoma a cobrança na página do cliente ou da cobrança, ou com `POST /clients/{id}/over-indebtedness/clear`; só voltam as réguas pausadas por esse motivo.

## Painel

Em **Recuperação**, a empresa vê o total em aberto, o recuperado, o que está em negociação, a taxa devida e a divisão por faixa de atraso, com filtro por carteira e por faixa. Cada carteira (importação ou passagem) tem o diagnóstico e a lista de dívidas. Os administradores recebem um relatório por e-mail no dia 1 de cada mês.

## Pela API

Com uma chave de API com escopo `debts:write`:

```bash theme={null}
# Mandar uma cobrança em aberto para a Recuperação agora
curl -X POST "https://api.payable.run/api/v1/debts/{id}/recovery" \
  -H "Authorization: Bearer esk_live_..."

# Tirar uma cobrança da passagem automática (a manual continua possível)
curl -X POST "https://api.payable.run/api/v1/debts/{id}/recovery/opt-out-handoff" \
  -H "Authorization: Bearer esk_live_..."

# Várias de uma vez (até 100)
curl -X POST "https://api.payable.run/api/v1/debts/bulk" \
  -H "Authorization: Bearer esk_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "action": "send_to_recovery", "ids": ["debt_uuid_1", "debt_uuid_2"] }'
```

`POST /debts/{id}/recovery` responde `409 DEBT_NOT_ELIGIBLE_FOR_RECOVERY` quando a cobrança já está na Recuperação, foi paga ou tem acordo ativo; o motivo vem em `errors[0].message`. No lote, cada cobrança traz o próprio resultado e o motivo de não ter ido.

A resposta de `GET /debts/{id}` traz os campos da Recuperação:

| Campo | Descrição |
| - | - |
| `collectionMode` | `billing` (Cobrança) ou `recovery` (Recuperação) |
| `originalDueDate` | Vencimento original (`YYYY-MM-DD`); o atraso conta a partir dele |
| `recoveryStartedAt` | Instante do R0, quando a dívida está na Recuperação |
| `recoveryStatus` | Situação na Recuperação (tabela do diagnóstico acima) |
| `handoffOptedOut` | `true` quando a cobrança foi tirada da passagem automática |

Para resolver uma contestação, `POST /debts/{id}/dispute/resolve` com `{ "valid": true }` (retoma) ou `{ "valid": false, "note": "..." }` (cancela sem taxa). Só administradores.

Quando a taxa é registrada, o webhook `success_fee.created` traz `kind`: `billing_fixed` (Cobrança) ou `recovery` (Recuperação).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.