Saltar al contenido principal

Descripción General

Esta guía te llevará paso a paso para crear tu primera transacción de on-ramp cripto usando la API de KillB. Aprenderás cómo:
  • Configurar la autenticación
  • Crear un usuario
  • Crear una cuenta de billetera cripto
  • Obtener una cotización
  • Ejecutar una transacción ramp
Este inicio rápido usa el ambiente Sandbox para pruebas. No se transferirá dinero real.

Requisitos Previos

Antes de comenzar, asegúrate de tener:
Regístrate en KillB y obtén:
  • Email y contraseña para autenticación
Puedes obtenerlos de tu Dashboard KillB.
  • Una terminal o interfaz de línea de comandos
  • cURL, Postman, o tu cliente API preferido
  • Conocimiento básico de APIs REST y JSON

Paso 1: Autenticación

Primero, obtén un token de acceso iniciando sesión con tus credenciales:
curl --request POST \
  --url https://teste-94u93qnn.uc.gateway.dev/api/v2/auth/login \
  --header 'Content-Type: application/json' \
  --data '{
    "email": "[email protected]",
    "password": "tu-contraseña"
  }'
Respuesta:
{
  "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "expiresIn": 3600000,
  "refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
Guarda el accessToken - lo necesitarás para todas las solicitudes subsiguientes. El token expira después de 1 hora (3600000 ms).

Paso 2: Crear un Usuario

Crea un perfil de usuario con información KYC:
curl --request POST \
  --url https://teste-94u93qnn.uc.gateway.dev/api/v2/users \
  --header 'Authorization: Bearer TU_ACCESS_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
    "type": "PERSON",
    "externalId": "usuario-12345",
    "data": {
      "firstName": "Juan",
      "lastName": "García",
      "email": "[email protected]",
      "phone": "+573001234567",
      "dateOfBirth": "1990-01-01",
      "address": {
        "street1": "Calle 123",
        "city": "Bogotá",
        "state": "Cundinamarca",
        "zipCode": "110111",
        "countryCode": "CO"
      },
      "document": {
        "type": "PASSPORT",
        "number": "AB123456",
        "issuedCountryCode": "CO"
      }
    }
  }'

Paso 3: Crear una Cuenta de Billetera

Agrega una billetera de destino donde se enviará la cripto:
curl --request POST \
  --url https://teste-94u93qnn.uc.gateway.dev/api/v2/accounts \
  --header 'Authorization: Bearer TU_ACCESS_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
    "type": "WALLET",
    "userId": "4d23aa52-1b40-4584-a8ea-58aba6099c5c",
    "externalId": "billetera-12345",
    "data": {
      "firstName": "Juan",
      "lastName": "García",
      "email": "[email protected]",
      "phone": "+573001234567",
      "currency": "USDC",
      "network": "POLYGON",
      "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
      "countryCode": "CO",
      "document": {
        "type": "PASSPORT",
        "number": "AB123456",
        "issuedCountryCode": "CO"
      }
    }
  }'

Paso 4: Obtener una Cotización

Solicita una cotización de precio para tu conversión:
curl --request POST \
  --url https://teste-94u93qnn.uc.gateway.dev/api/v2/quotations \
  --header 'Authorization: Bearer TU_ACCESS_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
    "fromCurrency": "COP",
    "toCurrency": "USDC",
    "amount": 100000,
    "amountIsToCurrency": false,
    "cashInMethod": "PSE",
    "cashOutMethod": "POLYGON"
  }'
Las cotizaciones expiran después de 30 segundos. Debes crear el ramp antes de la expiración.

Paso 5: Crear un Ramp

Ejecuta la transacción usando la cotización:
curl --request POST \
  --url https://teste-94u93qnn.uc.gateway.dev/api/v2/ramps \
  --header 'Authorization: Bearer TU_ACCESS_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
    "quotationId": "quot-9f8e7d6c-5b4a-3c2d-1e0f",
    "userId": "4d23aa52-1b40-4584-a8ea-58aba6099c5c",
    "accountId": "7c8b9a3d-2f1e-4b5c-9d8e-1a2b3c4d5e6f"
  }'
¡Éxito! Tu primer ramp está creado. El usuario ahora puede pagar via la URL de pago PSE.

Próximos Pasos

¿Necesitas Ayuda? Únete a nuestra comunidad Discord o contacta soporte en [email protected]