# API · Crear link de pago

> Creación de links de pago por API, con callback y webhook de respuesta.

- kind: api-operation
- status: stable
- api_version: v1
- last_verified: 2026-08-29
- url: https://www.tilopay.com/developers/api/links-de-pago/create-link-payment

```http
POST /api/v1/createLinkPayment
```

## Qué hace [#que-hace]

Crea un link de pago con monto, moneda y comportamiento de uso.

## Autenticación [#autenticacion]

Requiere el token bearer del API en el header `Authorization` — ver [autenticación](/developers/api/autenticacion).

## Parámetros [#parametros]

<Param id="create-link-payment-parametro-key" name="key" type="string" required>
Key de la integración Tilopay.
</Param>

<Param id="create-link-payment-parametro-amount" name="amount" type="string" required>
Monto para el link de pago.
</Param>

<Param id="create-link-payment-parametro-currency" name="currency" type="string" required>
Código de moneda en formato ISO 4217.
</Param>

<Param id="create-link-payment-parametro-reference" name="reference" type="string">
Referencia del link de pago.
</Param>

<Param id="create-link-payment-parametro-type" name="type" type="integer">
Tipo de link: 0 ilimitado, 1 de un solo uso.
</Param>

<Param id="create-link-payment-parametro-description" name="description" type="string">
Descripción del pago.
</Param>

<Param id="create-link-payment-parametro-client" name="client" type="string">
Nombre del cliente, aplica solo cuando type es 1.
</Param>

<Param id="create-link-payment-parametro-callback-url" name="callback_url" type="string">
Campo opcional. URL, por método **GET**, a la que se redirige con la respuesta al completar el pago. Ejemplo de los datos enviados: `code=Val&description=Val&auth=Val&tilopayLinkId=Val&orderNumber=Val&tilopayOrderId=Val&creditCardToken=Val&creditCardBrand=Val&last4CreditCardNumber=Val&orderHash=Val`
</Param>

<Param id="create-link-payment-parametro-webhook-url" name="webhook_url" type="string">
Campo opcional. URL para enviar el webhook de respuesta al completar el pago.
Debe ser de método **POST** para que reciba los datos. Ejemplo de los datos enviados:

```json
{
  "code": "1",
  "codeDescription": "Aprobada",
  "auth": "123456",
  "tilopayLinkId": 54421,
  "orderNumber": "TPT123",
  "tilopayOrderId": 12233,
  "creditCardToken": "41111******11111",
  "creditCardBrand": "Visa",
  "last4CreditCardNumber": "1111",
  "linkDescription": "Descripcion del link de pago",
  "orderHash": ""
}
```
</Param>

## Ejemplo de request [#request]

Los valores `<...>` son marcadores: reemplazalos por tus credenciales y datos.

```json
{
  "key": "<api_key>",
  "amount": "10",
  "currency": "USD",
  "reference": "123456",
  "type": 0,
  "description": "Description",
  "client": "Client name",
  "callback_url": "",
  "webhook_url": ""
}
```

## Respuesta [#respuesta]

```json
{
  "type": "200",
  "message": "Success",
  "url": "https://app.tilopay.com/link/MjMwMjQ=",
  "id": 1
}
```

Para interpretar una respuesta que no es de éxito, ver [cómo leer una respuesta de error](/developers/api/procesos-operativos/errors).
