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

# Devolver una transferencia

> Devuelve automáticamente una transferencia entrante en la API Transfers v2023-11-15 (legacy) de Fintoc cuando no cumpla tus reglas de negocio configuradas.

<Note>
  ### Solo disponible en México
</Note>

Fintoc te permite devolver una transferencia entrante hasta 90 días después de la transferencia original. Llama al endpoint de devolución según tu lógica de negocio. Por ejemplo, devuelve una transferencia cuando esperas un monto específico pero recibes uno distinto.

<img src="https://mintcdn.com/fintoc-49b8bee8/SkvJJ-DZ5D4yC6tQ/images/e981759580e31e9b1bd63de2c1d7b25900ca1eab7dd8c749518d1024c7526241-image.png?fit=max&auto=format&n=SkvJJ-DZ5D4yC6tQ&q=85&s=75842010be852d338adab065c90b86f3" alt="" width="2182" height="1254" data-path="images/e981759580e31e9b1bd63de2c1d7b25900ca1eab7dd8c749518d1024c7526241-image.png" />

<br />

## Iniciar la devolución

Usa el `transfer_id` y una [firma JWS (JSON Web Signature)](/es/v2023-11-15/guides/transfers/setting-up-jws-keys) en el encabezado `Fintoc-JWS-Signature` para llamar al endpoint de devolución:

### cURL

```bash theme={null}
curl --request POST \
     --url https://api.fintoc.com/v2/transfers/return \
     --header 'Authorization: sk_test_9c8d8CeyBTx1VcJzuDgpm4H-bywJCeSx' \
     --header 'Fintoc-JWS-Signature: CNMaYaDGU3ZhFV1ve6p3sAdYXhEklej8DVIAMqIWCkpNmT6Jp7iigcndXwH5q3WQFHiswgIQU5-_-4rV3jKGptCROmEyWPW8_elhYH1apzAyjOjyZ55ygv37xKHzIFhixzAwmXlAv4pfD4lVelYWVNOSN7REA0QJeCy2vKdqZ5cjqCXQ1lkQUlzOE7dpuNoAkhAhAJJ8HaamFKy7Gl7uwmqbIr-dVYv21d_9O7mO26n0gy3zWXD2nJDxU5Mzl2pZd8-sFvUr9Kmp_YkeRMh4bSe0fr1Uc_YgkjpmYUyu7kaxRWTbAdJ3GwqWFMUDiyfhHdzvZPZyU4VkWreimoydMA' \
     --header 'Idempotency-Key: 1ebfd86c-a75b-4606-872f-9f1cdd9724ca' \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "transfer_id": "tr_Kasf91034gj1AD"
}
'
```

Si tiene éxito, el objeto devuelto será un objeto transfer con estado `return_pending`. Una vez procesada la devolución, el estado cambiará a `returned`.

### Usando el SDK

```python theme={null}
transfer = client.v2.transfers.return(
  transfer_id = "tr_2wlt3xRBaEstTGPezqIGXy6JUU8"
)
```

## Manejar el resultado de una transferencia devuelta

Debes manejar los siguientes eventos de webhook al manejar devoluciones de transferencias:

| Evento                           | Descripción                                                                                                                            |
| :------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------- |
| `transfer.inbound.returned`      | Fintoc devolvió la transferencia. El `receipt_url` muestra el Comprobante Electrónico de Pago (CEP) original con el estado `Devuelta`. |
| `transfer.inbound.return_failed` | La devolución falló. La transferencia vuelve a su estado original, `succeeded`.                                                        |

Consulta [nuestra guía de pruebas](/es/v2023-11-15/guides/transfers/test-your-integration) para simular ambos escenarios y poder manejar el resultado correctamente en tu integración.
