API Multicaja (Alpha) API Reference

Prepago Multicaja - API Alpha

** Este es una API en alpha y por lo tanto sufrirá muchos cambios **

Mientras está en modo alpha, no mantendremos versiones anteriores

API Endpoint
http://api.multicaja.cl/v0.10-alpha/
Request Content-Types: application/json
Response Content-Types: application/json
Version: 0.10

prepaid

Métodos públicos de la API de prepago

Carga una tarjeta

POST /prepaid/topup

Carga una tarjeta

Notas

  • Valida que el usuario esté habilitado para cargar. Esto significa que el usuario debe estar validado hasta nivel 1 o nivel 2.
  • Valida que la carga no exceda los límites
  • Abona a la Cuenta de Traspaso Personal (CTP) y gatilla un proceso asíncrono que debita la CTP para abonar a la Tarjeta de Prepago.

Responderá 400 en los siguientes casos:

  • 101004: Si un parámetro es requerido y no se ha enviado.
  • 101007: Si un parámetro no cumple formato.

Responderá 401 en los siguientes casos:

  • 401: Si faltó incluir la key de suscripción en el header, o si la key es incorrecta.

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no está registrado en Tenpo.
  • 102003: Si el cliente no tiene prepago.

Responderá 422 en los siguientes casos:

  • 102002: Si el cliente está bloqueado o borrado.
  • 102004: Si el cliente está bloqueado o borrado de prepago.
  • 102015: Si el cliente está en una lista negra, por lo tanto no puede realizar la carga.
  • 106000: Si la tarjeta está expirada o tiene un bloqueo duro.
  • 106001: La procesadora rechazó la carga, verificar mensaje.
  • 106002: Si la tarjeta no existe.
  • 106011: Si la tarjeta está bloqueada.
  • 108000: Error al validar transacción.
  • 108001: El usuario en nivel 1 solo puede realizar 1 carga.
  • 108201: La carga supera el monto máximo de carga web.
  • 108202: La carga supera el monto máximo de carga pos.
  • 108203: La carga es menor al mínimo de carga.
  • 108204: La carga supera el monto máximo de cargas mensuales.
  • 108901: La carga supera el monto máximo de carga permitida.
  • 108902: El importe es menor al mínimo permitido.
  • 108903: Excedido límite diario en cajeros.
  • 108205 y 108206: La carga supera el monto máximo de primera carga.
  • 130005: Si es que se recibio una reversa para la carga previamente.
  • 140003: Si la cuenta está cerrada.
  • 140004: Si la cuenta está bloqueada.
  • 140005: Si la cuenta está inactiva.
  • 108909: Si el saldo es mayor al saldo permitido.

Responderá 500 en los siguientes casos:

  • Error imprevisto de sistema

Detalle de la carga a realizar

Ocp-Apim-Subscription-Key: string
in header

Key de subscripción requerido (es entregado por Tenpo)

Request Content-Types: application/json
Request Example
{
  "rut": 14569484,
  "merchant_code": "0023434",
  "merchant_category": 112,
  "merchant_name": "Carnicería el tajo",
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}
201 Created

OK - Carga se realizará en los próximos segundos

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado ó no cumple formato

401 Unauthorized

Error de key, se lanza a cuando el key de suscripción no fue incluido en el header o está incorrecto

404 Not Found

Cliente no existe o no tiene prepago

422 Unprocessable Entity

Carga no exitosa, revise error

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (201 Created)
{
  "id": 7783834,
  "mc_voucher_type": "A",
  "mc_voucher_data": [
    {
      "name": "amount_paid",
      "value": "3.300"
    },
    {
      "name": "rut",
      "value": "17.680.522-6"
    }
  ],
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  },
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}
Response Headers (201 Created)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (400 Bad Request)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (401 Unauthorized)
{
  "code": 401,
  "message": "Access denied due to missing subscription key. Make sure to include subscription key when making requests to an API."
}
Response Headers (401 Unauthorized)
Content-Type

undefined

string
Content-Length

undefined

integer
Date

undefined

string
WWW-Authenticate

Metodo de autenticación

string
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (404 Not Found)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (422 Unprocessable Entity)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (500 Internal Server Error)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string

Reversa una carga

POST /prepaid/topup/reverse

Reversa una carga que a) coincida en todos los campos de prepaid_topup_new y b) se haya recibido en las últimas 24 horas.

Responderá 201 en los siguientes casos:

  • Si la carga se recibió, en cuyo caso iniciara el proceso de reversa.

Responderá 202 en los siguientes casos:

  • 130001: Si la carga nunca se recibió, en cuyo caso se dejara registro de la reversa en caso de recibir la carga mas adelante.
  • 130003: Si la reversa fue recibida previamente para su procesamiento.

Responderá 400 en los siguientes casos:

  • 101004: Si un parámetro es requerido y no se ha enviado.
  • 101007: Si un parámetro no cumple formato.

Responderá 401 en los siguientes casos:

  • 401: Si faltó incluir la key de suscripción en el header, o si la key es incorrecta.

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no está registrado en Tenpo.
  • 102003: Si el cliente no tiene prepago.

Responderá 410 en los siguientes casos:

  • 130004: Si es que la carga fue recibida y no está reversada, pero el plazo para reversarla ya expiró.

Responderá 422 en los siguientes casos:

  • 130002: Si es que la carga fue recibida y la información de la reversa no concuerda.

Detalle de la carga a realizar

Ocp-Apim-Subscription-Key: string
in header

Key de subscripción requerido (es entregado por Tenpo)

user-timezone: string
in header

La zona horaria del cliente (default America/Santiago)

Request Content-Types: application/json
Request Example
{
  "rut": 14569484,
  "merchant_code": "0023434",
  "merchant_category": 112,
  "merchant_name": "Carnicería el tajo",
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}
201 Created

OK - Proceso de reversa iniciado

202 Accepted

OK - Reversa recibida previamente

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

401 Unauthorized

Error de key, se lanza a cuando el key de suscripción no fue incluido en el header o está incorrecto

404 Not Found

Cliente no existe o no tiene prepago

410 Gone

Plazo para reversar expirado

422 Unprocessable Entity

Información de reversa no concuerda con la carga

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Headers (201 Created)
Content-Length

undefined

string
Date

undefined

string
Response Example (202 Accepted)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (202 Accepted)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (400 Bad Request)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (401 Unauthorized)
{
  "code": 401,
  "message": "Access denied due to missing subscription key. Make sure to include subscription key when making requests to an API."
}
Response Headers (401 Unauthorized)
Content-Type

undefined

string
Content-Length

undefined

integer
Date

undefined

string
WWW-Authenticate

Metodo de autenticación

string
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (404 Not Found)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (410 Gone)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (410 Gone)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (422 Unprocessable Entity)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (500 Internal Server Error)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string

Retira dinero de una tarjeta

POST /prepaid/withdrawal

Debita una tarjeta

Notas

  • Valida que el usuario esté habilitado para retirar.
  • Valida que el retiro no exceda los límites
  • Debita la Tarjeta de Prepago y abona a la Cuenta de Traspaso Personal (CTP), luego debita la CTP y abona a la cuenta de destino.

Responderá 400 en los siguientes casos:

  • 101004: Si un parámetro es requerido y no se ha enviado.
  • 101007: Si un parámetro no cumple formato.

Responderá 401 en los siguientes casos:

  • 401: Si faltó incluir la key de suscripción en el header, o si la key es incorrecta.

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no está registrado en Tenpo.
  • 102003: Si el cliente no tiene prepago.

Responderá 422 en los siguientes casos:

  • 102002: Si el cliente está bloqueado o borrado.
  • 102004: Si el cliente está bloqueado o borrado de prepago.
  • 102053: Si la clave ingresada no coincide.
  • 102015: Si el cliente está en una lista negra, por lo tanto no puede realizar la carga.
  • 103001: Si la cuenta bancaria seleccionada no está asociada al cliente.
  • 106000: Si la tarjeta está expirada o tiene un bloqueo duro.
  • 106001: La procesadora rechazó el retiro, verificar mensaje.
  • 106002: Si la tarjeta no existe.
  • 106011: Si la tarjeta está bloqueada.
  • 108000: Error al validar transacción.
  • 108301: El retiro supera el monto máximo de un retiro web.
  • 108302: El retiro supera el monto máximo de un retiro pos.
  • 108303: El monto de retiro es menor al monto mínimo de retiros.
  • 108304: El retiro supera el monto máximo de retiros mensuales.
  • 108901: El retiro supera el monto máximo de un retiro.
  • 108902: El importe es menor al mínimo permitido.
  • 108903: Excedido límite diario en cajeros.
  • 140003: Si la cuenta está cerrada.
  • 140004: Si la cuenta está bloqueada.
  • 140005: Si la cuenta está inactiva.
  • 108909: Si el saldo es mayor al saldo permitido.

Responderá 500 en los siguientes casos:

  • Error imprevisto de sistema

Detalle del retiro a realizar

Ocp-Apim-Subscription-Key: string
in header

Key de subscripción requerido (es entregado por Tenpo)

Request Content-Types: application/json
Request Example
{
  "password": 132465,
  "rut": 14569484,
  "merchant_code": "0023434",
  "merchant_category": 112,
  "merchant_name": "Carnicería el tajo",
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}
201 Created

OK - Retiro realizado

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado ó no cumple formato

401 Unauthorized

Error de key, se lanza a cuando el key de suscripción no fue incluido en el header o está incorrecto

404 Not Found

Cliente no existe o no tiene prepago

422 Unprocessable Entity

Retiro no exitoso, revise error

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (201 Created)
{
  "id": 7783834,
  "mc_voucher_type": "A",
  "mc_voucher_data": [
    {
      "name": "amount_paid",
      "value": "3.300"
    },
    {
      "name": "rut",
      "value": "17.680.522-6"
    }
  ],
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  },
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}
Response Headers (201 Created)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (400 Bad Request)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (401 Unauthorized)
{
  "code": 401,
  "message": "Access denied due to missing subscription key. Make sure to include subscription key when making requests to an API."
}
Response Headers (401 Unauthorized)
Content-Type

undefined

string
Content-Length

undefined

integer
Date

undefined

string
WWW-Authenticate

Metodo de autenticación

string
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (404 Not Found)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (422 Unprocessable Entity)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (500 Internal Server Error)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string

Reversa un retiro

POST /prepaid/withdrawal/reverse

Reversa un retiro que a) coincida en todos los campos de prepaid_withdrawal_new y b) se haya recibido en las últimas 24 horas.

Responderá 201 (éxito) en los siguientes casos:

  • Si el retiro se recibió, en cuyo caso iniciara el proceso de reversa.

Responderá 202 en los siguientes casos:

  • 130001: Si el retiro nunca se recibió, en cuyo caso se dejara registro de la reversa en caso de recibir el retiro mas adelante.
  • 130003: Si la reversa fue recibida previamente para su procesamiento.

Responderá 400 en los siguientes casos:

  • 101004: Si un parámetro es requerido y no se ha enviado.
  • 101007: Si un parámetro no cumple formato.

Responderá 401 en los siguientes casos:

  • 401: Si faltó incluir la key de suscripción en el header, o si la key es incorrecta.

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no está registrado en Tenpo.
  • 102003: Si el cliente no tiene prepago.

Responderá 410 en los siguientes casos:

  • 130004: Si es que el retiro fue recibido y no está reversado, pero el plazo para reversarlo ya expiró.

Responderá 422 en los siguientes casos:

  • 130002: Si es que el retiro fue recibido la información de la reversa no concuerda.

Detalle de la carga a realizar

Ocp-Apim-Subscription-Key: string
in header

Key de subscripción requerido (es entregado por Tenpo)

user-timezone: string
in header

La zona horaria del cliente (default America/Santiago)

Request Content-Types: application/json
Request Example
{
  "password": 132465,
  "rut": 14569484,
  "merchant_code": "0023434",
  "merchant_category": 112,
  "merchant_name": "Carnicería el tajo",
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}
201 Created

OK - Proceso de reversa iniciado

202 Accepted

OK - Reversa recibida previamente

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

401 Unauthorized

Error de key, se lanza a cuando el key de suscripción no fue incluido en el header o está incorrecto

404 Not Found

Cliente no existe o no tiene prepago

410 Gone

Plazo para reversar expirado

422 Unprocessable Entity

Información de reversa no concuerda con el retiro

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Headers (201 Created)
Content-Length

undefined

string
Date

undefined

string
Response Example (202 Accepted)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (202 Accepted)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (400 Bad Request)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (401 Unauthorized)
{
  "code": 401,
  "message": "Access denied due to missing subscription key. Make sure to include subscription key when making requests to an API."
}
Response Headers (401 Unauthorized)
Content-Type

undefined

string
Content-Length

undefined

integer
Date

undefined

string
WWW-Authenticate

Metodo de autenticación

string
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (404 Not Found)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (410 Gone)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (410 Gone)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (422 Unprocessable Entity)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Headers (500 Internal Server Error)
Content-Type

undefined

string
Transfer-Encoding

undefined

string
Date

undefined

string
tracer-id

Id Interno

string

Lista las cargas de un cliente

GET /prepaid/{user_id}/topup

Retorna un listado con todas las cargas que ha realizado el cliente, junto a su estatus

user_id: integer
in path

ID del Cliente

page: integer
in query

Página

200 OK

OK - Búsqueda exitosa

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

404 Not Found

Cliente no existe o no tiene prepago

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (200 OK)
[
  {
    "id": 7783834,
    "mc_voucher_type": "A",
    "mc_voucher_data": [
      {
        "name": "amount_paid",
        "value": "3.300"
      },
      {
        "name": "rut",
        "value": "17.680.522-6"
      }
    ],
    "timestamps": {
      "created_at": "2018-01-14T15:27:42.669Z",
      "updated_at": "2018-03-02T10:03:12.123Z"
    },
    "amount": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "transaction_id": "MC_12312309123"
  }
]
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Notificación (Callback)

POST /prepaid/processor/notification

Mensaje invocado por el procesador/emisor

Notifica una transacción ocurrida en una tarjeta de prepago

Para invocar este servicio se debe incluir el API Key en el header X-API-KEY

Responderá 401 en los siguientes casos:

  • API Key faltante o invalido.

Responderá 400 en los siguientes casos:

  • 101004: Si faltan parametros en el header o body. Ver información del error para mas detalle.

Responderá 422 en los siguientes casos:

  • 101007: Si el atributo base64_data no es un Base64 valido.

Transacción

Request Example
{
  "header": {
    "entidad": "9603",
    "centro_alta": "0001",
    "cuenta": "000000012345",
    "pan": "411111******1111"
  },
  "body": {
    "sd_currency_code": 152,
    "sd_value": 1000.01,
    "il_currency_code": 152,
    "il_value": 1000.01,
    "id_currency_code": 152,
    "id_value": 1000.01,
    "tipo_tx": 100,
    "id_mensaje": 1200,
    "merchant_code": "0008902131",
    "merchant_name": "AMAZON UK",
    "country_iso_3266_code": 152,
    "country_description": "República de Chile",
    "place_name": "Santiago",
    "resolucion_tx": 100
  },
  "base64_data": "TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvS4=="
}
202 Accepted

OK

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

401 Unauthorized

Unauthorized

422 Unprocessable Entity

El mensaje raw_transaction_new tiene un error

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Retorna el saldo de un cliente prepago

GET /prepaid/{user_id}/balance

Retorna el saldo del cliente prepago

Responderá 404 con código de error en los siguientes casos:

  • 102001: Si el cliente no existe
  • 102003: Si el cliente no está registrado en prepago

Responderá 422 con código de error en los siguientes casos:

  • 102002: Cliente bloqueado o borrado
  • 102004: Cliente prepago bloqueado o borrado
  • 106007: Si cliente no tiene saldo o tiene saldo expirado y además tiene una carga pendiente
  • 106008: Si cliente no tiene saldo o tiene saldo expirado y además tiene una carga en proceso
  • 109002: Saldo no disponible (significa que no tenia saldo en cache o su saldo estaba expirado y fallo al consultar el nuevo saldo a tecnocom)
user_id: integer
in path

ID del Cliente

OK - Saldo obtenido

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

404 Not Found

Cliente no existe o no tiene prepago

422 Unprocessable Entity

Valicación de cliente o saldo

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (200 OK)
{
  "balance": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "pca_main": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "pca_secondary": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "updated": "boolean"
}
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Calculadora de carga

POST /prepaid/{user_id}/simulation/topup

Calculadora simulación de carga

En caso de que una simulación tenga un error especifico, el mismo viene definido en los campos code y message

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no existe
  • 102003: Si el cliente no está registrado en prepago

Responderá 422 en los siguientes casos:

  • 108000: Error generico en CDT
  • 108203: Error en CDT (LA_CARGA_ES_MENOR_AL_MINIMO_DE_CARGA)
  • 108204: Error en CDT (LA_CARGA_SUPERA_EL_MONTO_MAXIMO_DE_CARGAS_MENSUALES)
  • 108206: Error en CDT (LA_CARGA_SUPERA_EL_MONTO_MAXIMO_DE_PRIMERA_CARGA)
  • 109000: Saldo supera el monto maximo

Requerimiento de calculo

user_id: integer
in path

ID del Cliente

Request Example
{
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  }
}

OK - Respuesta exitosa.

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

404 Not Found

Cliente no existe o no tiene prepago

422 Unprocessable Entity

Error en validación

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (200 OK)
{
  "simulation_topup_web": {
    "code": 1024,
    "message": "La carga supera el monto máximo carga",
    "fee": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "amount_to_pay": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "pca": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "eed": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "opening_fee": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "initial_amount": {
      "currency_code": 152,
      "value": "1000.00"
    }
  },
  "simulation_topup_pos": {
    "code": 1024,
    "message": "La carga supera el monto máximo carga",
    "fee": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "amount_to_pay": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "pca": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "eed": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "opening_fee": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "initial_amount": {
      "currency_code": 152,
      "value": "1000.00"
    }
  }
}
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Calculadora de retiro

POST /prepaid/{user_id}/simulation/withdrawal

Calculadora de retiro

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no existe
  • 102003: Si el cliente no está registrado en prepago

Responderá 422 en los siguientes casos:

  • 108000: Error generico en CDT
  • 108301: Error en CDT (EL_RETIRO_SUPERA_EL_MONTO_MAXIMO_DE_UN_RETIRO_WEB)
  • 108302: Error en CDT (EL_RETIRO_SUPERA_EL_MONTO_MAXIMO_DE_UN_RETIRO_POS)
  • 108303: Error en CDT (EL_MONTO_DE_RETIRO_ES_MENOR_AL_MONTO_MINIMO_DE_RETIROS)
  • 108304: Error en CDT (EL_RETIRO_SUPERA_EL_MONTO_MAXIMO_DE_RETIROS_MENSUALES)
  • 109001: Saldo insuficiente

Requerimiento de calculo

user_id: integer
in path

ID del Cliente

Request Example
{
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "method": "string"
}

OK - Respuesta exitosa

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

404 Not Found

Cliente no existe o no tiene prepago

422 Unprocessable Entity

Error en validación

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (200 OK)
{
  "fee": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "amount_to_discount": {
    "currency_code": 152,
    "value": "1000.00"
  }
}
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Información de la tarjeta prepago

GET /prepaid/{user_id}/card

Retorna la información de la tarjeta prepago

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no existe
  • 102003: Si el cliente no está registrado en prepago

Responderá 422 en los siguientes casos:

  • 102002: Cliente bloqueado o borrado
  • 102004: Cliente prepago bloqueado o borrado
  • 106007: Si el cliente está registrado en prepago, pero no ha realizado la primera carga
  • 106008: Si cliente está registrado en prepago, ya realizo la primera carga y la misma esta en proceso
user_id: integer
in path

ID del Cliente

200 OK

OK - Información de la tarjeta prepago

404 Not Found

Cliente no existe o no tiene tarjeta prepago

422 Unprocessable Entity

Cliente tiene primera carga en proceso

500 Internal Server Error

Error indeterminado

Response Example (200 OK)
{
  "processor_user_id": "43438500955156352167",
  "pan": "517608XXXXXX4840",
  "name_on_card": "Pedro Perez",
  "expiration_date": 202301,
  "status": "string",
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  }
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Bloquea la tarjeta prepago

PUT /prepaid/{user_id}/card/lock

Bloquea la tarjeta prepago.

Si la tarjeta ya esta bloqueada este metodo no hace nada

Responderá 404 en los siguientes casos:

  • Si el cliente no existe
  • Si el cliente no está registrado en prepago

Responderá 422 en los siguientes casos:

  • Si el cliente está registrado en prepago, pero no ha realizado la primera carga
  • Si cliente está registrado en prepago, ya realizo la primera carga y la misma esta en proceso
user_id: integer
in path

ID del Cliente

204 No Content

OK

404 Not Found

Cliente no existe o no tiene tarjeta prepago

422 Unprocessable Entity

Cliente tiene primera carga en proceso

500 Internal Server Error

Error indeterminado

Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Desbloquea la tarjeta prepago

PUT /prepaid/{user_id}/card/unlock

Desbloquea la tarjeta prepago

Si la tarjeta esta activa este metodo no hace nada

Responderá 404 en los siguientes casos:

  • Si el cliente no existe
  • Si el cliente no está registrado en prepago

Responderá 422 en los siguientes casos:

  • Si el cliente está registrado en prepago, pero no ha realizado la primera carga
  • Si cliente está registrado en prepago, ya realizo la primera carga y la misma esta en proceso
user_id: integer
in path

ID del Cliente

204 No Content

OK

404 Not Found

Cliente no existe o no tiene tarjeta prepago

422 Unprocessable Entity

Cliente tiene primera carga en proceso

500 Internal Server Error

Error indeterminado

Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Buscar usuario prepago

GET /prepaid/

Retorna la información del usuario prepago por rut

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no existe
  • 102003: Si el cliente no está registrado en prepago
rut: integer
in query

Rut sin puntos, guion ni digito verificador

200 OK

OK - Información del usuario prepago

404 Not Found

Cliente no existe o no tiene tarjeta prepago

500 Internal Server Error

Error indeterminado

Response Example (200 OK)
{
  "id": 123456,
  "user_id": 654321,
  "rut": 11111111,
  "status": "string",
  "user_level": "string",
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  }
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Información del usuario prepago

GET /prepaid/{user_id}

Retorna la información del usuario prepago

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no existe
  • 102003: Si el cliente no está registrado en prepago
user_id: integer
in path

ID del Cliente

200 OK

OK - Información del usuario prepago

404 Not Found

Cliente no existe o no tiene tarjeta prepago

500 Internal Server Error

Error indeterminado

Response Example (200 OK)
{
  "id": 123456,
  "user_id": 654321,
  "rut": 11111111,
  "status": "string",
  "user_level": "string",
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  }
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Lista de transacciones

GET /prepaid/{user_id}/transactions

Retorna una lista con las transacciones del cliente

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no existe
  • 102003: Si el cliente no está registrado en prepago

Responderá 422 con código de error en los siguientes casos:

  • 102002: Cliente bloqueado o borrado
  • 102004: Cliente prepago bloqueado o borrado
  • 106007: Si el cliente está registrado en prepago, pero no ha realizado la primera carga
  • 106008: Si cliente está registrado en prepago, ya realizo la primera carga y la misma esta en proceso
user_id: integer
in path

ID del Cliente

from: string (date)
in query

Fecha desde (yyyy-mm-dd)

to: string (date)
in query

Fecha hasta (yyyy-mm-dd)

count: integer
in query

Total de registros a extraer, si no se envia significa que son todos los registros, si se envia solo se retornan la cantidad especificada

OK - Transacciones

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

404 Not Found

Cliente no existe o no tiene tarjeta prepago

500 Internal Server Error

Error indeterminado

Response Example (200 OK)
[
  {
    "date": "2018-10-05",
    "exchange_rate": 650,
    "commerce_code": "string",
    "economic_concept1": 1234,
    "desc_economic_concept1": "string",
    "amount_description_type1": "string",
    "application_amount1": 1234,
    "gross_value1": 1234,
    "economic_concept2": 1234,
    "desc_economic_concept2": "string",
    "amount_description_type2": "string",
    "application_amount2": 1234,
    "gross_value2": 1234,
    "invoice_description": "CARGA POR TRANSFERENCIA",
    "extract_account": 1234,
    "extract_transaction": 1234,
    "invoice_type": 1234,
    "amount_primary": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "amount_secondary": {
      "currency_code": 152,
      "value": "1000.00"
    }
  }
]
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Carga fotos de verificacion de identidad

POST /prepaid/{user_id}/identity/files

Carga la informacion de las fotos de verificacion de identidad

  • CI lado frontal

  • CI lado posterior

  • Selfie con CI

    Responderá 400 en los siguientes casos:

  • 101004: Si falta un parametro requerido.

Responderá 404 en los siguientes casos:

  • 102001: Si el cliente no existe
  • 102003: Si el cliente no está registrado en prepago

Responderá 422 en los siguientes casos:

  • 102002: Si el cliente esta bloqueado o borrado.
  • 102004: Si el cliente prepago esta bloqueado o borrado.
user_id: integer
in path

ID del Cliente

Request Example
{
  "USER_CI_FRONTAL": {
    "name": "USER_CI_FRONTAL",
    "mime_type": "image/jpeg",
    "location": "/path/to/image"
  },
  "USER_ID_BACK": {
    "name": "USER_CI_FRONTAL",
    "mime_type": "image/jpeg",
    "location": "/path/to/image"
  },
  "USER_SELFIE": {
    "name": "USER_CI_FRONTAL",
    "mime_type": "image/jpeg",
    "location": "/path/to/image"
  }
}
201 Created

OK - Respuesta exitosa

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado. Verificar detalle del error.

404 Not Found

Cliente no existe o no tiene prepago

422 Unprocessable Entity

Error en validación. Verificar detalle del error.

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Busca un mensaje en la cola y lo reinjecta en la cola en la cual falló

POST /prepaid/Queue

Busca un mensaje en la cola y lo reinjecta en la cola en la cual falló las colas son

  • TopUp (Carga)

  • WithDrawal (Retiro)

  • PendingCreateCard (Obtencion de Datos y Creacion)

  • ReverseTopup (Reversa Carga)

  • ReverseWithdrawal (Reversa de Retiro)

  • SendMail(Envio mail Tarjeta)

  • PendingEmision (Alta Cliente)

  • IssuanceFee (Cobro de comision)

    Responderá 400 en los siguientes casos:

  • 101004: Si falta un parametro requerido.

Informacion de la cola

Request Example
{
  "id_queue": "xkfuqwofklasjf",
  "queues_name_type": "string"
}
201 Created

OK - Respuesta exitosa

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado. Verificar detalle del error.

404 Not Found

Cliente no existe o no tiene prepago

422 Unprocessable Entity

Error en validación. Verificar detalle del error.

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Procesa la validación de identidad realizada en Freshdesk

POST /prepaid/{user_id}/identity_verification

Procesa la validación de identidad realizada en Freshdesk

Informacion de verificacion

user_id: integer
in path

ID del Cliente

Request Example
{
  "is_ci_valid": "Si",
  "user_photo_matches_ci": "Si",
  "name_and_lastname_matches_ci": "No",
  "new_name": "Jose",
  "new_lastname": "Perez",
  "is_gsintel_ok": "Si",
  "rut_matches_ci": "Si"
}
201 Created

OK - Respuesta exitosa

Enviar correo al cliente

POST /prepaid/{user_id}/mail

Envía comunicacion al email del cliente.

Notas

  • Si el template indicado es Prepago/EnvioTarjeta, entonces se envia la tarjeta como adjunto al mail cliente.

Correo electrónico a enviar

user_id: integer
in path

ID del usuario

Request Example
{
  "template": "Prepago/ValidacionCorreo",
  "template_data": "{'saludo': 'Estimado Pepito', 'despedida': 'Chao!'}",
  "address": "pepito@gmail.com",
  "attachments": [
    {
      "file_name": "Test.pdf",
      "mime_type": "application/pdf",
      "content_file": "VGVzdA=="
    }
  ]
}
202 Accepted

Accepted

404 Not Found

Cliente no existe

422 Unprocessable Entity

El mail contiene datos inválidos

Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

prepaid-signup

Registro de usuarios de prepago

Inicia un proceso de registro para obtener la tarjeta de prepago

POST /prepaid/{user_id}/signup

Inicia un proceso de registro. Retorna prepaid_user, el que indica qué pasos se deben realizar.

Llamadas permitidas cuando el cliente está registrándose:

  # API-Prepaid
                    POST /prepaid/signup
                    GET  /prepaid/signup/{signup_id}
                  
                    # API-Users
                    GET  /users/{user_id}
                    POST /users/{user_id}/update_personal_data
                    POST /users/{user_id}/validate_rut
                    POST /users/{user_id}/validate_email
                    PUT /users/{user_id}/mail
                    POST /users/{user_id}/validate_cellphone
                    PUT /users/{user_id}/sms
                    POST /users/{user_id}/sign_contract
                    POST /users/{user_id}/update_password # debe ser la última llamada
                  
user_id: integer
in path

ID del Cliente

200 OK

OK - Usuario registrado en prepago.

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

404 Not Found

Cliente no existe o no tiene prepago

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (200 OK)
{
  "id": 123456,
  "user_id": 654321,
  "rut": 11111111,
  "status": "string",
  "user_level": "string",
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  }
}
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Terminos y Condiciones

GET /prepaid/{user_id}/signup/tac

Informacion de los terminos y condiciones vigentes para Prepago

user_id: integer
in path

ID del Cliente

200 OK

OK

404 Not Found

Cliente no existe o no tiene prepago

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (200 OK)
{
  "version": "v1.0",
  "location": "/prepaid/terms_and_conditions_v10"
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Aceptar Terminos y Condiciones

POST /prepaid/{user_id}/signup/tac

Aceptar los beneficios y los terminos y condiciones del producto Prepago

Detalle

user_id: integer
in path

ID del Cliente

Request Example
{
  "version": "v1.0",
  "benefits_accepted": false
}
200 OK

OK

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

404 Not Found

Cliente no existe o no tiene prepago

422 Unprocessable Entity

Error de validación de negocio, revise error

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (404 Not Found)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

prepaid_finish_signup

Termina un proceso de registro para obtener la tarjeta de prepago

POST /prepaid/{user_id}/finish_signup

Termina un proceso de registro. Retorna prepaid_user.

user_id: integer
in path

ID del Cliente

200 OK

OK - Usuario prepago.

400 Bad Request

Error en parámetros, se lanza a cuando un parámetro es requerido y no se ha enviado

422 Unprocessable Entity

Carga no exitosa, revise error

500 Internal Server Error

Error indeterminado, se lanza cuando ocurre un error imprevisto de sistema

Response Example (200 OK)
{
  "id": 123456,
  "user_id": 654321,
  "rut": 11111111,
  "status": "string",
  "user_level": "string",
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  }
}
Response Example (400 Bad Request)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (422 Unprocessable Entity)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}
Response Example (500 Internal Server Error)
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

Schema Definitions

prepaid_topup_base: object

Contenido mínimo de una carga

amount: amount_and_currency_new
transaction_id: string

Identificador único que genera quien invoca a esta API

Consideraciones

  • Debe ser único dentro del día
  • Cargas con este dato repetido dentro del día serán rechazadas
  • Cuando quiera reversar la carga, se le pedirá este dato
Example
{
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}

prepaid_topup_new: object

Solicitud de carga (Request)

rut: integer

El rut sin puntos, guión, ni dígito verificador

merchant_code: string (up to 15 chars)

Código de comercio MC. (máx. 15 dígitos)

merchant_category: integer

Código de actividad del comercio

merchant_name: string

Nombre del comercio

Example
{
  "rut": 14569484,
  "merchant_code": "0023434",
  "merchant_category": 112,
  "merchant_name": "Carnicería el tajo",
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}

prepaid_withdrawal_new: object

Solicitud de retiro (Request)

password: integer

La clave del usuario

Example
{
  "password": 132465,
  "rut": 14569484,
  "merchant_code": "0023434",
  "merchant_category": 112,
  "merchant_name": "Carnicería el tajo",
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}

variable_data: object

Dato de tipo llave=valor (Response)

name: string

Nombre del dato

value: string

Valor del dato

Example
{
  "name": "amount_paid",
  "value": "10.500"
}

prepaid_topup: object

Respuesta a solicitud de carga (Response)

id: integer

Identificador de la carga

mc_voucher_type: string A, B

Identificador del tipo de voucher que se debe imprimir

  • 'A': Imprimir un voucher de tipo A
  • 'B': Imprimir un voucher de tipo B
mc_voucher_data: variable_data

Lista de variables para usar en el voucher

variable_data
timestamps: timestamps
Example
{
  "id": 7783834,
  "mc_voucher_type": "A",
  "mc_voucher_data": [
    {
      "name": "amount_paid",
      "value": "3.300"
    },
    {
      "name": "rut",
      "value": "17.680.522-6"
    }
  ],
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  },
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}

prepaid_withdrawal: object

Solicitud de retiro (Response)

Example
{
  "id": 7783834,
  "mc_voucher_type": "A",
  "mc_voucher_data": [
    {
      "name": "amount_paid",
      "value": "3.300"
    },
    {
      "name": "rut",
      "value": "17.680.522-6"
    }
  ],
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  },
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "transaction_id": "MC_12312309123"
}

prepaid_user_signup_new: object

Solicitud de registro de un Cliente Multicaja.cl (Request)

email: string

email del prospecto de cliente

rut: integer

rut del prospecto de cliente, sin puntos, guión ni DV

Example
{
  "email": "pepito@gmail.com",
  "rut": 15776844
}

prepaid_user_signup: object

Solicitud de registro de un Cliente Multicaja.cl (Response)

id: integer

Identificador interno. Campo read-only.

user_id: integer

Identificador del Cliente involucrado en este proceso de registro

name: string

Nombre o nombres de pila. Si vienen, mostrarlos en la pantalla de datos personales.

lastname_1: string

Apellido paterno. Si viene, mostrarlo en la pantalla de datos personales.

cellphone: integer

Número de celular. Si viene, mostrarlo en la pantalla de ingreso de celular.

terms_and_conditions_list: string[]
string

Link a los términos y condiciones que se deben desplegar para este usuario

must_validate_email: string

Booleano. Si es true, el cliente requiere pasar por una validación de correo.

must_validate_cellphone: string

Booleano. Si es true, el cliente requiere pasar por una validación de celular.

must_accept_terms_and_conditions: string

Booleano. Si es true, el cliente requiere pasar por una aceptación de los últimos términos y condiciones.

must_choose_password: string

Booleano. Si es true, el cliente requiere escoger un password.

timestamps: timestamps
Example
{
  "id": 7783834,
  "user_id": 9012331,
  "name": "Juan Carlos",
  "lastname_1": "López",
  "cellphone": 912345678,
  "terms_and_conditions_list": [
    "https://multicaja.cl/tac/contract-v1.3.1.html"
  ],
  "must_validate_email": true,
  "must_validate_cellphone": true,
  "must_accept_terms_and_conditions": true,
  "must_choose_password": true,
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  },
  "email": "pepito@gmail.com",
  "rut": 15776844
}

timestamps: object

Fecha de creación y de última modificación (Response)

created_at: string (date-time)
updated_at: string (date-time)
Example
{
  "created_at": "2018-01-14T15:27:42.669Z",
  "updated_at": "2018-03-02T10:03:12.123Z"
}

raw_transaction_header_new: object

Encabezado de transacción notificada en vivo por el procesador (Request)

entidad: string (up to 4 chars)

Código de entidad en el procesador. (máx. 4 dígitos)

centro_alta: string (up to 4 chars)

Sucursal donde se dio de alta al cliente. (máx. 4 dígitos)

cuenta: string (up to 12 chars)

Identificador del cliente. (máx. 12 dígitos)

pan: string (up to 22 chars)

PAN truncado. (máx. 22 dígitos)

Example
{
  "entidad": "9603",
  "centro_alta": "0001",
  "cuenta": "000000012345",
  "pan": "411111******1111"
}

raw_transaction_body_new: object

Campos interpretados de transacción notificada en vivo por el procesador (Request)

sd_currency_code: integer

Saldo disponible: Código ISO 4217 (numeric) de la moneda

sd_value: number (double)

Saldo disponible: Monto en formato decimal

il_currency_code: integer

Importe local: Código ISO 4217 (numeric) de la moneda

il_value: number (double)

Importe local: Monto en formato decimal

id_currency_code: integer

Importe divisa: Código ISO 4217 (numeric) de la moneda

id_value: number (double)

Importe divisa: Monto en formato decimal

tipo_tx: integer

Código que identifica el tipo de transacción

id_mensaje: integer

Identificador del mensaje (4 dìgitos)

merchant_code: string (up to 15 chars)

Código único que identifica al comercio. (máx. 15 dígitos)

merchant_name: string (up to 30 chars)

Nombre del comercio. (máx. 30 caracteres)

country_iso_3266_code: integer

Código ISO 3266-1 (numeric) del país

country_description: string (up to 30 chars)

Nombre del país en español. (máx. 30 caracteres)

place_name: string (up to 26 chars)

Nombre del lugar donde ocurrió el movimiento. (máx. 26 caracteres)

resolucion_tx: integer

Código que identifica el resultado de la transacción

Example
{
  "sd_currency_code": 152,
  "sd_value": 1000.01,
  "il_currency_code": 152,
  "il_value": 1000.01,
  "id_currency_code": 152,
  "id_value": 1000.01,
  "tipo_tx": 100,
  "id_mensaje": 1200,
  "merchant_code": "0008902131",
  "merchant_name": "AMAZON UK",
  "country_iso_3266_code": 152,
  "country_description": "República de Chile",
  "place_name": "Santiago",
  "resolucion_tx": 100
}

raw_transaction_new: object

Transacción notificada en vivo por el procesador (Request)

header: raw_transaction_header_new
body: raw_transaction_body_new
base64_data: string

String concatenado con todos los campos disponibles, codificado en base 64

Example
{
  "header": {
    "entidad": "9603",
    "centro_alta": "0001",
    "cuenta": "000000012345",
    "pan": "411111******1111"
  },
  "body": {
    "sd_currency_code": 152,
    "sd_value": 1000.01,
    "il_currency_code": 152,
    "il_value": 1000.01,
    "id_currency_code": 152,
    "id_value": 1000.01,
    "tipo_tx": 100,
    "id_mensaje": 1200,
    "merchant_code": "0008902131",
    "merchant_name": "AMAZON UK",
    "country_iso_3266_code": 152,
    "country_description": "República de Chile",
    "place_name": "Santiago",
    "resolucion_tx": 100
  },
  "base64_data": "TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvS4=="
}

amount_and_currency_new: object

Monto en una moneda específica

currency_code: integer

Código ISO 4217 (numeric) de la moneda

value: number

Monto en formato decimal

Example
{
  "currency_code": 152,
  "value": "1000.00"
}

prepaid_balance: object

Saldo del cliente

balance: amount_and_currency_new
pca_main: amount_and_currency_new
pca_secondary: amount_and_currency_new
updated: boolean

true o false dependiendo si fue actualizado desde el procesador

Example
{
  "balance": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "pca_main": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "pca_secondary": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "updated": "boolean"
}

simulation_topup_new: object

Requerimiento para la calculadora de carga

amount: amount_and_currency_new
Example
{
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  }
}

simulation_withdraw_new: object

Requerimiento para la calculadora de retiro

amount: amount_and_currency_new
method: string POS, WEB
Example
{
  "amount": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "method": "string"
}

simulation_group: object

Retorna simulacion web y pos

simulation_topup_web: simulation_topup
simulation_topup_pos: simulation_topup
Example
{
  "simulation_topup_web": {
    "code": 1024,
    "message": "La carga supera el monto máximo carga",
    "fee": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "amount_to_pay": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "pca": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "eed": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "opening_fee": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "initial_amount": {
      "currency_code": 152,
      "value": "1000.00"
    }
  },
  "simulation_topup_pos": {
    "code": 1024,
    "message": "La carga supera el monto máximo carga",
    "fee": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "amount_to_pay": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "pca": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "eed": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "opening_fee": {
      "currency_code": 152,
      "value": "1000.00"
    },
    "initial_amount": {
      "currency_code": 152,
      "value": "1000.00"
    }
  }
}

simulation_topup: object

Respuesta de la calculadora de carga

code: integer (int32)

Código que representa el error. No será igual al código HTTP.

message: string

Descripción corta del error

fee: amount_and_currency_new
amount_to_pay: amount_and_currency_new
pca: amount_and_currency_new
eed: amount_and_currency_new
opening_fee: amount_and_currency_new
initial_amount: amount_and_currency_new
Example
{
  "code": 1024,
  "message": "La carga supera el monto máximo carga",
  "fee": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "amount_to_pay": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "pca": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "eed": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "opening_fee": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "initial_amount": {
    "currency_code": 152,
    "value": "1000.00"
  }
}

simulation_withdrawal: object

Respuesta de la calculadora de retiro

fee: amount_and_currency_new
amount_to_discount: amount_and_currency_new
Example
{
  "fee": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "amount_to_discount": {
    "currency_code": 152,
    "value": "1000.00"
  }
}

error_obj: object

Error que devuelve la api ante un HTTP 422 (Response)

code: integer (int32)

Código que representa el error. No será igual al código HTTP.

message: string

Descripción corta del error

Example
{
  "code": 1024,
  "message": "El cliente no pasó la validación"
}

error_obj_401: object

Error que devuelve la api ante un HTTP 401 (Response)

code: integer

Código que representa el error.

message: string

Descripción corta del error

Example
{
  "code": 401,
  "message": "Access denied due to missing subscription key. Make sure to include subscription key when making requests to an API."
}

prepaid_card: object

Información de la tarjeta prepago

processor_user_id: string

Id de usuario en el procesador externo.

pan: string

Número de pan de la tarjeta

name_on_card: string

Nombre impreso en la tarjeta

expiration_date: integer

Fecha de expiración de la tarjeta

Consideraciones

  • Esta en formato YYYYMM
status: string ACTIVE, PENDING, LOCKED, LOCKED_HARD, EXPIRED

Estatus de la tarjeta

  • 'PENDING': Pendiente
  • 'ACTIVE': Activa
  • 'LOCKED': Bloqueada
  • 'LOCKED_HARD': Bloqueada por emisor
  • 'EXPIRED': Expirada
timestamps: timestamps
Example
{
  "processor_user_id": "43438500955156352167",
  "pan": "517608XXXXXX4840",
  "name_on_card": "Pedro Perez",
  "expiration_date": 202301,
  "status": "string",
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  }
}

prepaid_user: object

Información del usuario prepago

id: number

Id de usuario prepago

user_id: number

Id de usuario Multicaja

rut: number

Numero de rut del usuario, sin puntos, guion ni digito verificador

status: string ACTIVE, DISABLED

Estatus del usuario prepago

  • 'ACTIVE': Activo
  • 'DISABLED': Deshabilitado
user_level: string LEVEL_1, LEVEL_2

Nivel del usuario prepago

  • 'LEVEL_1': Cuando el status del nombre no esta verificado
  • 'LEVEL_2': Cuando el status del rut y nombre esta verificado
timestamps: timestamps
Example
{
  "id": 123456,
  "user_id": 654321,
  "rut": 11111111,
  "status": "string",
  "user_level": "string",
  "timestamps": {
    "created_at": "2018-01-14T15:27:42.669Z",
    "updated_at": "2018-03-02T10:03:12.123Z"
  }
}

prepaid_transaction: object

Transacción (Carga, retiro o compra)

date: string (date)

Fecha de la transacción

exchange_rate: number

Cambio Aplicado (CMBAPLI)

commerce_code: string

Codigo Comercio (CODCOM)

economic_concept1: number

Codigo de concepto economico (CODCONECO)

desc_economic_concept1: string

Descripcion de concepto economico (DESCONECO)

amount_description_type1: string

Descripcion tipo de importe (DESTIPIMP)

application_amount1: number

Importe de aplicacion (IMPAPLECO)

gross_value1: number

Importe bruto (IMPRUECO)

economic_concept2: number

Codigo de concepto economico (CODCONECO)

desc_economic_concept2: string

Descripcion de concepto economico (DESCONECO)

amount_description_type2: string

Descripcion tipo de importe (DESTIPIMP)

application_amount2: number

Importe de aplicacion (IMPAPLECO)

gross_value2: number

Importe bruto (IMPRUECO)

invoice_description: string

Descripcion tipo de factura (DESTIPFAC)

extract_account: number

Numero extracto cuenta (NUMEXTCTA)

extract_transaction: number

Numero movimiento extracto (NUMMOVEXT)

invoice_type: number

Tipo de factura (TIPOFAC)

amount_primary: amount_and_currency_new
amount_secondary: amount_and_currency_new
Example
{
  "date": "2018-10-05",
  "exchange_rate": 650,
  "commerce_code": "string",
  "economic_concept1": 1234,
  "desc_economic_concept1": "string",
  "amount_description_type1": "string",
  "application_amount1": 1234,
  "gross_value1": 1234,
  "economic_concept2": 1234,
  "desc_economic_concept2": "string",
  "amount_description_type2": "string",
  "application_amount2": 1234,
  "gross_value2": 1234,
  "invoice_description": "CARGA POR TRANSFERENCIA",
  "extract_account": 1234,
  "extract_transaction": 1234,
  "invoice_type": 1234,
  "amount_primary": {
    "currency_code": 152,
    "value": "1000.00"
  },
  "amount_secondary": {
    "currency_code": 152,
    "value": "1000.00"
  }
}

prepaid_tac_new: object

Objeto para aceptar los terminos y condiciones

version: string

Version de los terminos y condiciones aceptados por el usuario

benefits_accepted: boolean

Cliente acepta recibir beneficios relacionados con el producto prepago

Example
{
  "version": "v1.0",
  "benefits_accepted": false
}

prepaid_tac: object

Objeto que representa los terminos y condiciones

version: string

Version de los terminos y condiciones aceptados por el usuario

location: string

URL en el cual se encuentran los Terminos y Condiciones

Example
{
  "version": "v1.0",
  "location": "/prepaid/terms_and_conditions_v10"
}

prepaid_identity_verification_file_new: object

Archivo para verificacion de identidad

name: string

Nombre del archivo

mime_type: string

MimeType del archivo

location: string

URL donde se encuentra el archivo

Example
{
  "name": "USER_CI_FRONTAL",
  "mime_type": "image/jpeg",
  "location": "/path/to/image"
}

prepaid_identity_verification_files_new: object

Objeto que contiene la informacion de fotos para la verificacion de identidad

USER_CI_FRONTAL: prepaid_identity_verification_file_new
USER_ID_BACK: prepaid_identity_verification_file_new
USER_SELFIE: prepaid_identity_verification_file_new
Example
{
  "USER_CI_FRONTAL": {
    "name": "USER_CI_FRONTAL",
    "mime_type": "image/jpeg",
    "location": "/path/to/image"
  },
  "USER_ID_BACK": {
    "name": "USER_CI_FRONTAL",
    "mime_type": "image/jpeg",
    "location": "/path/to/image"
  },
  "USER_SELFIE": {
    "name": "USER_CI_FRONTAL",
    "mime_type": "image/jpeg",
    "location": "/path/to/image"
  }
}

reproces_queue: object

Objeto que permite reinjectar una mensaje de una cola

id_queue: string

Id del mensaje de la cola a ser reinjectado

queues_name_type: string TopUp, WithDrawal, PendingCreateCard, ReverseTopup, ReverseWithdrawal, SendMail, PendingEmision, IssuanceFee
Example
{
  "id_queue": "xkfuqwofklasjf",
  "queues_name_type": "string"
}

prepaid_identity_verification_new: object

Objeto que contiene la informacion de verificacion de identidad realizada en Freshdesk

is_ci_valid: string

¿Posee cédula vigente en Registro Civil?

user_photo_matches_ci: string

¿Concuerda la foto de la persona con la persona de la cédula identidad?

name_and_lastname_matches_ci: string

¿El nombre y primer apellido del cliente concuerda con los de la cédula de identidad?

new_name: string

Sobreescribir Nombre

new_lastname: string

Sobreescribir Apellido

is_gsintel_ok: string

¿Pasa la validación de Gesintel?

rut_matches_ci: string

¿El RUT concuerda con el de la cédula de identidad?

Example
{
  "is_ci_valid": "Si",
  "user_photo_matches_ci": "Si",
  "name_and_lastname_matches_ci": "No",
  "new_name": "Jose",
  "new_lastname": "Perez",
  "is_gsintel_ok": "Si",
  "rut_matches_ci": "Si"
}

email_attachment_new: object

Archivo a adjuntar en un email

file_name: string

Nombre del archivo

mime_type: string

MimeType del archivo

content_file: string

El texto del contenido en base64 no debe contener data:image/jpeg;base64, Solo el cuerpo del archivo

Example
{
  "file_name": "Test.pdf",
  "mime_type": "application/pdf",
  "content_file": "VGVzdA=="
}

email_new: object

Email (Request)

template: string

Tipo de correo electrónico a enviar

template_data: string

JSON con tantos pares llave-valor como requiera el template del correo a enviar

address: string

Correo electrónico al que se enviará este mensaje. Si no se incluye este campo, se usará el campo email.value del Cliente.

attachments: email_attachment_new
email_attachment_new
Example
{
  "template": "Prepago/ValidacionCorreo",
  "template_data": "{'saludo': 'Estimado Pepito', 'despedida': 'Chao!'}",
  "address": "pepito@gmail.com",
  "attachments": [
    {
      "file_name": "Test.pdf",
      "mime_type": "application/pdf",
      "content_file": "VGVzdA=="
    }
  ]
}