Cancelar resgate
O endpoint de Cancelar resgate permite que parceiros revertam um resgate previamente processado, reacreditando as milhas na conta do membro. Esta operação também é chamada de recrédito.
O processamento é assíncrono: uma resposta 201 Created indica que a requisição foi aceita, não que o recrédito foi concluído. O resultado final é entregue via notificação por webhook.
Tanto cancelamentos totais quanto parciais são suportados. Um cancelamento parcial reacredita apenas as milhas especificadas; as milhas restantes do resgate original não são afetadas.
- Apenas resgates com status PROCESSED são elegíveis para cancelamento.
- Um cancelamento parcial só pode ser realizado uma vez por correlation ID. Múltiplos cancelamentos parciais para o mesmo correlation ID não são suportados.
Requisição
Endpoint
POST https://api.latampass.com/sandbox/v1/customer/eloyalty/partner/redeem/cancel
Corpo da requisição
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
correlationId | String (UUID) | Sim | Deve ser um UUID válido | Correlation ID do resgate a cancelar. Deve referenciar um resgate com status PROCESSED. |
description | String | Sim | Máx. 500 caracteres | Descrição do motivo do cancelamento. |
miles | Number | Sim | Mín.: 0.001 / Máx.: total de milhas do resgate original | Milhas a reacreditar. Valores decimais são arredondados para o inteiro mais próximo internamente. |
Exemplo — cancelamento total
Exemplo — cancelamento parcial
Cabeçalhos
Um fluxo de autenticação é aceito para este endpoint.
Fluxo B — Credenciais de cliente do Portal API
| Cabeçalho | Valor |
|---|---|
Content-Type | application/json |
x-latam-test | LatamPass (somente sandbox) |
Access_token | <UUID_ACCESS_TOKEN> |
client_id | <YOUR_CLIENT_ID> |
Regras de negócio
- Apenas resgates com status
PROCESSEDsão elegíveis para cancelamento. Tentar cancelar um resgate com statusPROCESSING,ERRORouCANCELLEDretorna422. - O
correlationIddeve ser um UUID válido obtido de uma resposta201anterior de Criar resgate. - O campo
milesdeve ser positivo (mínimo0.001) e não pode exceder o total de milhas do resgate original. - Valores decimais de milhas são arredondados para o inteiro mais próximo internamente antes do processamento.
- O cancelamento pode ser total (milhas originais completas) ou parcial (qualquer valor até o total original).
- Uma resposta
201retorna o mesmocorrelationIddo resgate original — nenhum novo correlation ID é gerado. - Se um cancelamento já estiver em andamento para o
correlationIdinformado, um422é retornado para evitar processamento duplicado. - O resultado final do recrédito é entregue exclusivamente via notificação por webhook:
| Status | Significado |
|---|---|
REFUNDED | Milhas foram reacreditadas com sucesso na conta do membro. |
CANCELLED | Recrédito não pôde ser concluído (não recuperável). |
ERROR | Recrédito falhou — veja errorException no payload do webhook para detalhes. |
Resposta
201 Created — Requisição aceita
O correlationId na resposta corresponde ao correlation ID do resgate original. O status final do recrédito não está disponível de forma síncrona — ele é entregue via webhook.
Erros comuns
400 — Erro de validação (payload inválido)
400 — Resgate não encontrado
400 — Valor de cancelamento excede o total original
422 — Resgate não elegível para cancelamento
Retornado quando o resgate existe, mas seu status atual não permite cancelamento (ex.: PROCESSING, ERROR ou CANCELLED).
422 — Cancelamento já em andamento
Retornado quando uma requisição de cancelamento para o mesmo correlationId já está sendo processada. Não tente novamente até que a operação atual seja concluída.
405 — Method Not Allowed
500 — Internal Server Error
Tente novamente a requisição com o exato mesmo payload.
Se o erro persistir após as tentativas, entre em contato com o LATAM Pass Support e forneça o issueDateTime e o correlationId usado na requisição.