> ## 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.

# Recibir transferencias

> Rastrea y concilia automáticamente tus pagos entrantes en tiempo real.

# 🇲🇽 Transferencias entrantes en México

Para comenzar a usar la API de Transfers de Fintoc para recibir transferencias entrantes, una vez que hayas completado la guía de configuración, solo necesitas seguir estos pasos:

1. Busca o crea un `AccountNumber` —o una [CLABE](https://es.wikipedia.org/wiki/CLABE) SPEI— usando tu **Secret Key**. Cuando inicies sesión en el dashboard comenzarás con un **Default Account Number**.
2. Crea un `WebhookEndpoint` para manejar los eventos de transferencias entrantes.
3. Recibe una transferencia en el `AccountNumber` creado y recibe notificaciones en tiempo real.

El siguiente diagrama muestra cómo interactuará Fintoc contigo y con la contraparte que crea el payin.

<Frame>
  <img src="https://mintcdn.com/fintoc-49b8bee8/SkvJJ-DZ5D4yC6tQ/images/bfbff3c18083033f40b375c994f212d521f733b6f8ead999e479c8a2604ac88c-image.png?fit=max&auto=format&n=SkvJJ-DZ5D4yC6tQ&q=85&s=5e6b057bacb1157147a60297c8cb0f9f" width="2134" height="1124" data-path="images/bfbff3c18083033f40b375c994f212d521f733b6f8ead999e479c8a2604ac88c-image.png" />
</Frame>

<br />

## Paso 1: Crear un Account Number (CLABE SPEI)

Un `AccountNumber` representa una CLABE SPEI. Puedes pensar en un account number como una referencia que puedes asignar a un cliente —o a una orden— para conciliar fácilmente tus pagos entrantes. Las empresas generalmente asignan un `Account Number` por cliente para que, cuando reciban una transferencia a ese `Account Number`, automáticamente sepan que proviene de ese cliente específico. Para saber más sobre Account Numbers, consulta el [modelo de datos](/es/v2023-11-15/docs/transfers/transfers-overview/v2-transfers-account-number-data-model).

### Adjunta datos clave-valor arbitrarios a tu account number

Cuando creas un account number, puedes adjuntarle datos clave-valor arbitrarios usando el objeto Metadata. Puedes usar metadata para almacenar tu identificador único para ese account number, como tu ID interno de cliente. Cuando recibas una transferencia entrante, el objeto metadata vendrá adjunto para que puedas conciliar fácilmente la transferencia con tus registros internos.

### Ejemplo

Usando tu **Secret Key** de prueba y tu **Account ID**, crea un `AccountNumber` desde tu backend, adjuntando un ID interno de cliente `id_cliente`:

```curl theme={null}
curl --request POST \
     --url https://api.fintoc.com/v2/account_numbers \
     --header 'Authorization: sk_test_9c8d8CeyBTx1VcJzuDgpm4H' \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "account_id": "acc_Lq7dP901xZgA2B",
  "metadata": {
   "id_cliente": "12343212"
   }
}
'
```

La respuesta debería verse así:

```json theme={null}
{
  "id": "acno_Kasf91034gj1AD",
  "object": "account_number",
  "description": "My payins",
  "number": "738969123456789120",
  "account_id": "acc_Lq7dP901xZgA2B",
  "created_at": "2024-03-01T20:09:42.949787176Z",
  "mode": "test",
  "metadata": {
    "id_cliente": "12343212"
  }
}
```

### Usando nuestro SDK

Si estás usando nuestro SDK de Python o de Node, puedes crear el account number así:

```python Python theme={null}
account_number = client.v2.account_numbers.create(
    account_id="acc_M8sKf230BgHjD4",
    metadata={"id_cliente": "12343212"}
)
```

```node Node theme={null}
const accountNumber = await fintoc.v2.accountNumbers.create({
  account_id: 'acc_M8sKf230BgHjD4',
  metadata: {
    'id_cliente': '1234324',
  },
});
```

<br />

## Paso 2: Crear un Webhook Endpoint para manejar eventos de transferencias entrantes

Cada vez que recibas una transferencia entrante, Fintoc te enviará un evento `transfer.inbound.succeeded`. Sigue la [guía de webhooks](/es/v2023-11-15/docs/resources/webhooks-walkthrough) para aprender cómo crear un Webhook Endpoint para recibir estos eventos y ejecutar acciones.

El evento `transfer.inbound.succeeded` se ve así:

```json json theme={null}
{
  "id": "evt_a4xK32BanKWYn",
  "type": "transfer.inbound.succeeded",
  "object": "event",
  "data": {
    "id": "tr_jKaHD105H",
    "object": "transfer",  
    "direction": "inbound",
    "status": "succeeded",
    "amount": 2864,   
    "currency": "MXN", 
    "mode": "test",
    "post_date": "2020-04-17T00:00:00.000Z", 
    "transaction_date": "2020-04-17T05:12:41.462Z",
    "comment": "Electricity bill",
    "reference_id": "130824",
    "receipt_url": "https://www.banxico.org.mx/cep/",
    "tracking_key": "s2123423423324334",
    "return_reason": null,
    "account_number": {
      "id": "acno_Kasf91034gj1AD",
      "object": "account_number",
      "account_id": "acc_Jas92lf9adg94ka",
      "description": "My payins",
      "number": "738969123456789120",
      "created_at": "2024-03-01T20:09:42.949787176Z",
      "mode": "test",
      "metadata": {
        "client_id": "12343212"
      }
    },
    "counterparty": {
      "holder_id": "OODC911119JL3",
      "holder_name": "Carmen Marcela",
      "account_number": "012969123456789120",
      "type": "clabe",  
      "institution": {
        "id": "40012",
        "name": "BBVA Mexico",
        "country": "mx" 
       }
     }
  },
  "created_at": "2020-04-22T21:10:19.254Z",
  "mode": "test"
}
```

## Paso 3: Recibir una transferencia en el account number

Ahora que has creado un account number y agregaste un webhook endpoint para manejar las notificaciones, puedes transferir a él y comenzar a conciliar tus pagos.

Si quieres probar todo en modo de prueba, puedes usar nuestro endpoint `/simulate/receive-transfer` para simular una transferencia entrante. El comportamiento es idéntico a lo que sucedería si envías una transferencia real al account number especificado. Consulta [nuestra guía de pruebas](/es/v2023-11-15/docs/transfers/test-your-integration) para aprender cómo simular una transferencia.

# 🇨🇱 Transferencias entrantes en Chile

Para comenzar a usar la API de Transfers de Fintoc para recibir transferencias entrantes, una vez que hayas completado la guía de configuración, solo necesitas seguir estos pasos:

1. Crea un `WebhookEndpoint` para manejar los eventos de transferencias entrantes.
2. Recibe una transferencia en tu `Account` y recibe notificaciones en tiempo real.

El siguiente diagrama muestra cómo interactuará Fintoc contigo y con la contraparte que crea el payin.

<Frame>
  <img src="https://mintcdn.com/fintoc-49b8bee8/YQmOnq8Zegydl6oL/images/1739789ad5079938ca7535937106a401d4a401a2106610dc98cde971fbb1ac61-image.png?fit=max&auto=format&n=YQmOnq8Zegydl6oL&q=85&s=dbade713008df9b4e563e86899d0f627" width="2182" height="1220" data-path="images/1739789ad5079938ca7535937106a401d4a401a2106610dc98cde971fbb1ac61-image.png" />
</Frame>

## Paso 1: Crear un Webhook Endpoint para manejar eventos de transferencias entrantes

Cada vez que recibas una transferencia entrante, Fintoc te enviará un evento `transfer.inbound.succeeded`. Sigue la [guía de webhooks](/es/v2023-11-15/docs/resources/webhooks-walkthrough) para aprender cómo crear un Webhook Endpoint para recibir estos eventos y ejecutar acciones.

El evento `transfer.inbound.succeeded` se ve así:

```json json theme={null}
{
  "id": "evt_a4xK32BanKWYn",
  "type": "transfer.inbound.succeeded",
  "object": "event",
  "data": {
    "id": "tr_jKaHD105H",
    "object": "transfer",  
    "direction": "inbound",
    "status": "succeeded",
    "amount": 2864,   
    "currency": "CLP", 
    "mode": "test",
    "post_date": "2020-04-17T00:00:00.000Z", 
    "transaction_date": "2020-04-17T05:12:41.462Z",
    "comment": "Electricity bill",
    "reference_id": null,
    "receipt_url": null,
    "tracking_key": null,
    "return_reason": null,
    "account_number": {
      "id": "acno_Kasf91034gj1AD",
      "object": "account_number",
      "account_id": "acc_Jas92lf9adg94ka",
      "description": "My payins",
      "number": "738969123456789120",
      "created_at": "2024-03-01T20:09:42.949787176Z",
      "mode": "test",
      "metadata": {
        "client_id": "12343212"
      }
    },
    "counterparty": {
      "holder_id": "24354783K",
      "holder_name": "Carmen Marcela",
      "account_number": "012969123456789120",
      "type": "checking_account", 
      "code": "01", 
      "institution": {
        "id": "cl_banco_santander",
        "name": "Banco Santander",
        "country": "cl" 
       }
     }
  },
  "created_at": "2020-04-22T21:10:19.254Z",
  "mode": "test"
}
```

## Paso 2: Recibir una transferencia en tu Account number

Ahora que identificaste tu Account y su `root_account_number`, y agregaste un webhook endpoint para manejar las notificaciones, puedes transferir a él y comenzar a conciliar tus pagos.

Si quieres probar todo en modo de prueba, puedes usar nuestro endpoint `/simulate/receive_transfer` para simular una transferencia entrante. El comportamiento es idéntico a lo que sucedería si envías una transferencia real al account number especificado. Consulta [nuestra guía de pruebas](/es/v2023-11-15/docs/transfers/test-your-integration) para aprender cómo simular una transferencia.
