Ir al contenido

Suscripción

Permite la vinculación de un plan a un cliente, para posteriormente realizar cargos recurrentes automáticamente, según se defina en cada plan.

URL base: https://app.payku.cl/ (Default server) · https://des.payku.cl/ (Sandbox server)
POST/api/suclient

Este método permite la inserción de datos de un cliente.

Cuerpo de la solicitud

ParámetroTipoDescripción
emailrequerido string <email>

Email del cliente.

máximo 50 caracteres
namerequerido string

Nombre del cliente

máximo 80 caracteres
Ejemplo: John Doe
rut string

Registro Único Tributario del cliente, será permitido el ingreso de este dato con ó sin guión.

12 caracteres requeridos
Ejemplo: 11111111
phonerequerido string

Teléfono del cliente.

20 caracteres requeridos
Ejemplo: 923122312
address string

Dirección del cliente.

máximo 200 caracteres
Ejemplo: Moneda 101
country string

País del cliente.

máximo 40 caracteres
Ejemplo: Chile
region string

Región del cliente.

máximo 120 caracteres
Ejemplo: Metropolitana
city string

Ciudad del cliente.

máximo 40 caracteres
Ejemplo: Santiago
postal_code string

Código postal del cliente.

máximo 10 caracteres
Ejemplo: 850000
additional_parameters object

Parámetros adicionales del cliente (Opcional).

máximo 4000 caracteres
parameter_1 string

Nombre del parámetro dado por el usuario payku

Ejemplo: example
parameter_2 string

Nombre del parámetro dado por el usuario payku

Ejemplo: example
curl -X POST \
https://BASE_URL/api/suclient \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \
-d {
"email": "[email protected]",
"name": "John Doe",
"rut": "111111111",
"phone": "923122312",
"address": "Moneda 101",
"country": "Chile",
"region": "Metropolitana",
"city": "Santiago",
"postal_code": "850000,
"additional_parameters":{
"parameter_1": "example",
"parameter_2": "example 2",
}
}'

Respuestas

200
{
"status": "active",
"id": "cl0be4c8e623c167bc8b777",
"rut": "11111111",
"name": "John Doe",
"phone": "923122312",
"email": "[email protected]",
"address": "Moneda 101",
"country": "Chile",
"region": "Metropolitana",
"city": "Santiago",
"postal_code": "850000",
"created_at": "2023-09-29",
"update_at": null,
"subcriptions": null,
"additional_parameters": {
"parameter_1": "example",
"parameter_2": "example"
}
}
Campos de la respuesta
ParámetroTipoDescripción
status string

Estatus del cliente.

Ejemplo: active
id string

Identificador de la transacción creado por payku.

Ejemplo: cl0be4c8e623c167bc8b777
rut string

Registro Único Tributario del cliente.

Ejemplo: 11111111
name string

Nombre del cliente.

Ejemplo: John Doe
phone string

Teléfono del cliente.

Ejemplo: 923122312
email string

Email del cliente.

address string

Dirección del cliente.

Ejemplo: Moneda 101
country string

País del cliente.

Ejemplo: Chile
region string

Región del cliente.

Ejemplo: Metropolitana
city string

Ciudad del cliente.

Ejemplo: Santiago
postal_code string

Código postal del cliente.

Ejemplo: 850000
created_at string <datetime>

Fecha de registro.

Ejemplo: 2023-09-29
update_at string <datetime>

Fecha de modificación.

subcriptions object

suscripciones del cliente.

additional_parameters object

Parámetros adicionales del cliente (Opcional).

parameter_1 string

Nombre del parámetro dado por el usuario payku

Ejemplo: example
parameter_2 string

Nombre del parámetro dado por el usuario payku

Ejemplo: example
GET/api/suclient/{identificadorCliente} o {emailCliente}

Este método permite obtener el detalle de un cliente.

Parámetros de ruta

ParámetroTipoDescripción
idrequerido string

Identificador único de transacción por payku o email del cliente.

máximo 20 caracteres
curl -X GET \
https://BASE_URL/api/suclient/id \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \

Respuestas

200
{
"status": "active",
"id": "cl0be4c8e623c167bc8b777",
"rut": "11111111",
"name": "John Doe",
"phone": "923122312",
"email": "[email protected]",
"address": "Moneda 101",
"city": "Santiago",
"region": "Metropolitana",
"country": "Chile",
"postal_code": "850000",
"created_at": "2023-09-29 22:00:00",
"update_at": null,
"active_cards": [
{
"last_4_digits": "XXXXXXXXXXXX6622",
"identifier": "surec804a8ed60c747cb8839",
"card_type": "Visa",
"register": "2023-07-26 08:00:19"
},
{
"last_4_digits": "XXXXXXXXXXXX1234",
"identifier": "surec804a8ed60c747cb8843",
"card_type": "MasterCard",
"register": "2023-01-01 12:00:00"
}
],
"additional_parameters": {
"parameter_1": "example",
"parameter_2": "example"
},
"subcriptions": {
"id": "su867f07772aa5f5175527",
"created_at": "2023-09-29 19:58:35",
"status": "active",
"amount": "15000",
"plan": [
{
"id": "pl9697fb170834ad42dd00",
"name": "test plan",
"currency": "CLP"
}
],
"cards": [
{
"last_4_digits": "XXXXXXXXXXXX6623",
"card_type": "Visa"
}
],
"transactions": [
{
"created_at": "2023-09-30 19:58:35",
"date_payment": "2023-09-30",
"amount": 10000,
"transaction": 204444,
"authorization_code": "1234",
"order": "001",
"description": "descripcion",
"status": "success"
}
]
}
}
Campos de la respuesta
ParámetroTipoDescripción
status string

Estatus del cliente.

Ejemplo: active
id string

Identificador de la transacción creado por payku.

Ejemplo: cl0be4c8e623c167bc8b777
rut string

Registro Único Tributario del cliente.

Ejemplo: 11111111
name string

Nombre del cliente.

Ejemplo: John Doe
phone string

Teléfono del cliente.

Ejemplo: 923122312
email string

Email del cliente.

address string

Dirección del cliente.

Ejemplo: Moneda 101
city string

Ciudad del cliente.

Ejemplo: Santiago
region string

Región del cliente.

Ejemplo: Metropolitana
country string

País del cliente.

Ejemplo: Chile
postal_code string

Código postal del cliente.

Ejemplo: 850000
created_at string <datetime>

Fecha de registro.

Ejemplo: 2023-09-29 22:00:00
update_at string <datetime>

Fecha de modificación.

active_cards array of objects
Ejemplo: [{"last_4_digits":"XXXXXXXXXXXX6622","identifier":"surec804a8ed60c747cb8839","card_type":"Visa","register":"2023-07-26 08:00:19"},{"last_4_digits":"XXXXXXXXXXXX1234","identifier":"surec804a8ed60c747cb8843","card_type":"MasterCard","register":"2023-01-01 12:00:00"}]
last_4_digits string

Últimos 4 dígitos de la tarjeta afiliada.

Ejemplo: XXXXXXXXXXXX6622
identifier string

identificador de la tarjeta.

Ejemplo: surec804a8ed60c747cb8839
card_type string

Tipo de tarjeta.

Ejemplo: Visa
register string

Fecha de registro.

Ejemplo: 2023-07-26 08:00:19
additional_parameters object

Parámetros adicionales del cliente (Opcional).

parameter_1 string

Nombre del parámetro dado por el usuario payku

Ejemplo: example
parameter_2 string

Nombre del parámetro dado por el usuario payku

Ejemplo: example
subcriptions object
id string

Identificador de la suscripción creado por payku.

Ejemplo: su867f07772aa5f5175527
created_at string <datetime>

Fecha de registro.

Ejemplo: 2023-09-29 19:58:35
status string

Estatus de la suscripción. Los posibles estados que puede obtener son los siguientes:

  • register
  • active
  • finish
  • delete
  • cancel
  • suspended
Ejemplo: active
amount string

Monto de la suscripción.

Ejemplo: 15000
plan array of objects
id string

Identificador del plan creado por payku.

Ejemplo: pl9697fb170834ad42dd00
name string

Nombre del plan.

Ejemplo: test plan
currency string

Moneda.

Ejemplo: CLP
cards array of objects
last_4_digits string

Últimos 4 dígitos de la tarjeta afiliada.

Ejemplo: XXXXXXXXXXXX6623
card_type string

Tipo de tarjeta.

Ejemplo: Visa
transactions array of objects
created_at string

Fecha de creación de la transacción.

Ejemplo: 2023-09-30 19:58:35
date_payment string

Fecha en que se realizo la transacción.

Ejemplo: 2023-09-30
amount int

Monto de transacción.

Ejemplo: 10000
transaction int

Número de transacción.

Ejemplo: 204444
authorization_code string

Código de autorización.

Ejemplo: 1234
order string

Número de orden.

Ejemplo: 001
description string

Descripción.

Ejemplo: descripcion
status string

Estatus de transacción. Los posibles estados que puede obtener son los siguientes:

  • pending
  • success
  • retry
  • canceled by customer
  • canceled by paymaster
  • canceled by payku
  • maximum attempt limit
  • first payment rejected
  • payment consumes failed
Ejemplo: success
PUT/api/suclient/{identificadorCliente} o {emailCliente}

Este método permite la actualización de los datos de un cliente.

Parámetros de ruta

ParámetroTipoDescripción
idrequerido string

Identificador único de transacción por payku.

máximo 20 caracteres

Cuerpo de la solicitud

ParámetroTipoDescripción
email string

Nombre del cliente

máximo 50 caracteres
name string

Nombre del cliente

máximo 80 caracteres
Ejemplo: John Doe Doe
phone string

Teléfono del cliente.

máximo 20 caracteres
Ejemplo: 923122312
address string

Dirección del cliente.

máximo 200 caracteres
Ejemplo: Moneda 121
country string

País del cliente.

máximo 40 caracteres
Ejemplo: Chile
region string

Región del cliente.

máximo 120 caracteres
Ejemplo: Metropolitana
city string

Ciudad del cliente.

máximo 40 caracteres
Ejemplo: Santiago
postal_code string

Código postal del cliente.

máximo 10 caracteres
Ejemplo: 750000
additional_parameters object

Parámetros adicionales del cliente (Opcional).

máximo 4000 caracteres
parameter_1 string

Nombre del parámetro dado por el usuario payku

Ejemplo: example
parameter_2 string

Nombre del parámetro dado por el usuario payku

Ejemplo: example
curl -X PUT \
https://BASE_URL/api/suclient/id \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \
-d {
"email": "[email protected]",
"name": "John Doe Doe",
"phone": "923122312",
"address": "Moneda 121",
"country": "Chile",
"region": "Metropolitana",
"city": "Santiago",
"postal_code": "750000",
"additional_parameters":{
"parameter_1": "example",
"parameter_2": "example 2",
}
}'

Respuestas

200
{
"status": "active",
"id": "cl0be4c8e623c167bc8b777",
"name": "John Doe Doe",
"phone": "923122312",
"email": "[email protected]",
"address": "Moneda 121",
"city": "Santiago",
"region": "Metropolitana",
"country": "Chile",
"postal_code": "750000",
"created_at": "2023-09-29 22:00:00",
"update_at": "2023-10-2 08:32:52",
"additional_parameters": {
"parameter_1": "example",
"parameter_2": "example"
},
"subcriptions": {
"id": "su867f07772aa5f5175527",
"created_at": "2023-09-29 19:58:35",
"status": "active",
"amount": "15000",
"plan": [
{
"id": "pl9697fb170834ad42dd00",
"name": "test plan",
"currency": "CLP"
}
],
"cards": [
{
"last_4_digits": "XXXXXXXXXXXX6623",
"card_type": "Visa"
}
],
"transactions": [
{
"created_at": "2023-09-30 19:58:35",
"date_payment": "2023-09-30",
"amount": 10000,
"transaction": 204444,
"authorization_code": "1234",
"order": "001",
"description": "descripcion",
"status": "success"
}
]
}
}
Campos de la respuesta
ParámetroTipoDescripción
status string

Estatus del cliente.

Ejemplo: active
id string

Identificador de la transacción creado por payku.

Ejemplo: cl0be4c8e623c167bc8b777
name string

Nombre del cliente.

Ejemplo: John Doe Doe
phone string

Teléfono del cliente.

Ejemplo: 923122312
email string

Email del cliente.

address string

Dirección del cliente.

Ejemplo: Moneda 121
city string

Ciudad del cliente.

Ejemplo: Santiago
region string

Región del cliente.

Ejemplo: Metropolitana
country string

País del cliente.

Ejemplo: Chile
postal_code string

Código postal del cliente.

Ejemplo: 750000
created_at string <datetime>

Fecha de registro.

Ejemplo: 2023-09-29 22:00:00
update_at string <datetime>

Fecha de modificación.

Ejemplo: 2023-10-2 08:32:52
additional_parameters object

Parámetros adicionales del cliente (Opcional).

parameter_1 string

Nombre del parámetro dado por el usuario payku

Ejemplo: example
parameter_2 string

Nombre del parámetro dado por el usuario payku

Ejemplo: example
subcriptions object
id string

Identificador de la suscripción creado por payku.

Ejemplo: su867f07772aa5f5175527
created_at string <datetime>

Fecha de registro.

Ejemplo: 2023-09-29 19:58:35
status string

Estatus de la suscripción. Los posibles estados que puede obtener son los siguientes:

  • register
  • active
  • finish
  • delete
  • cancel
  • suspended
Ejemplo: active
amount string

Monto de la suscripción.

Ejemplo: 15000
plan array of objects
id string

Identificador del plan creado por payku.

Ejemplo: pl9697fb170834ad42dd00
name string

Nombre del plan.

Ejemplo: test plan
currency string

Moneda.

Ejemplo: CLP
cards array of objects
last_4_digits string

Últimos 4 dígitos de la tarjeta afiliada.

Ejemplo: XXXXXXXXXXXX6623
card_type string

Tipo de tarjeta.

Ejemplo: Visa
transactions array of objects
created_at string

Fecha de creación de la transacción.

Ejemplo: 2023-09-30 19:58:35
date_payment string

Fecha en que se realizo la transacción.

Ejemplo: 2023-09-30
amount int

Monto de transacción.

Ejemplo: 10000
transaction int

Número de transacción.

Ejemplo: 204444
authorization_code string

Código de autorización.

Ejemplo: 1234
order string

Número de orden.

Ejemplo: 001
description string

Descripción.

Ejemplo: descripcion
status string

Estatus de transacción.Los posibles estados que puede obtener son los siguientes:

  • pending
  • success
  • retry
  • canceled by customer
  • canceled by paymáster
  • canceled by payku
  • maximum attempt limit
  • first payment rejected
  • payment consumes failed
Ejemplo: success
DELETE/api/suclient/{identificadorCliente} o {emailCliente}

Este método permite la eliminación de un cliente asociado a un ID de usuario.

Parámetros de ruta

ParámetroTipoDescripción
idrequerido string

Identificador único del cliente creado por payku.

máximo 20 caracteres
curl -X DELETE \
https://BASE_URL/api/suclient/id \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \

Respuestas

200
{
"status": "success",
"id": "cl0be4c8e623c167bc8b777"
}
Campos de la respuesta
ParámetroTipoDescripción
status string

Estatus de cliente.

Ejemplo: success
id string

Identificador de la transacción creado por payku.

Ejemplo: cl0be4c8e623c167bc8b777
GET/api/suclient/customers

Este método permite obtener todos los clientes asociados a un ID de usuario , este método permite una paginación con un máximo de 100 registros por página, además, posee un filtro de fecha, si este parámetro no es ingresado se tomará la fecha actual, para la paginación es necesario agregar al final del endpoint lo siguiente ?page=1&per_page=100 siendo el primer parámetro el número de la página y el segundo el número de registros por página.

curl -X GET \
https://BASE_URL/api/suclient/customers \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \

Respuestas

200
[
{
"Customers": [
{
"last_4_digits": "XXXXXXXXXXXX6622",
"identifier": "surec804a8ed60c747cb8839",
"card_type": "Visa",
"register": "2023-07-26 08:00:19"
},
{
"last_4_digits": "XXXXXXXXXXXX1234",
"identifier": "surec804a8ed60c747cb8843",
"card_type": "MasterCard",
"register": "2023-01-01 12:00:00",
"additional_parameters": {
"type": "array",
"description": "Parámetros adicionales que puede enviar payku.",
"example": ""
},
"subcriptions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "Identificador de la suscripción creado por payku.",
"type": "string",
"example": "su867f07772aa5f5175527"
},
"created_at": {
"description": "Fecha de registro.",
"type": "string",
"example": "2023-09-29 19:58:35",
"format": "datetime"
},
"status": {
"description": "Estatus de la suscripción. Los posibles estados que puede obtener son los siguientes:\n- register\n- active\n- finish\n- delete\n- cancel\n- suspended\n",
"type": "string",
"example": "active"
},
"amount": {
"description": "Monto de la suscripción.",
"type": "string",
"example": "15000"
},
"plan": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "Identificador del plan creado por payku.",
"type": "string",
"example": "pl9697fb170834ad42dd00"
},
"name": {
"description": "Nombre del plan.",
"type": "string",
"example": "test plan"
},
"currency": {
"description": "Moneda.",
"type": "string",
"example": "CLP"
}
}
}
},
"cards": {
"type": "array",
"items": {
"type": "object",
"properties": {
"last_4_digits": {
"description": "Últimos 4 dígitos de la tarjeta afiliada.",
"type": "string",
"example": "XXXXXXXXXXXX6623"
},
"card_type": {
"description": "Tipo de tarjeta.",
"type": "string",
"example": "Visa"
}
}
}
},
"transactions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"created_at": {
"description": "Fecha de creación de la transacción.",
"type": "string",
"example": "2023-09-30 19:58:35"
},
"date_payment": {
"description": "Fecha en que se realizo la transacción.",
"type": "string",
"example": "2023-09-30"
},
"amount": {
"description": "Monto de transacción.",
"type": "int",
"example": 10000
},
"transaction": {
"description": "Número de transacción.",
"type": "int",
"example": 204444
},
"authorization_code": {
"description": "Código de autorización.",
"type": "string",
"example": "1234"
},
"order": {
"description": "Número de orden.",
"type": "string",
"example": "001"
},
"description": {
"description": "Descripción.",
"type": "string",
"example": "descripcion"
},
"status": {
"description": "Estatus de transacción.Los posibles estados que puede obtener son los siguientes:\n- pending\n- success\n- retry\n- canceled by customer\n- canceled by paymaster\n- canceled by payku\n- maximum attempt limit\n- first payment rejected\n- payment consumes failed\n",
"type": "string",
"example": "success"
}
}
}
}
}
}
}
}
]
}
]
POST/api/sususcription

Este método permite al usuario de una cuenta payku crear una suscripción a un plan de suscripción de monto fijo, suscripción de plan de consumo y suscripción de monto variable a uno de sus clientes, para este ultimo tipo de suscripción es necesario enviar el monto que sera cobrado en la suscripción, es importante destacar que al realizar esta solicitud por primera vez se realizará un cobro de $50 que permite comprobar que la tarjeta se encuentra activa y es válida, en el caso de un plan de suscripción fijo el cobro del servicio será automático a partir del mes siguiente de la fecha de suscripción y en el caso que la suscripción sea a un plan de consumo será necesario utilizar el endpoint api/sutransaction para generar la transacción.

Cuerpo de la solicitud

ParámetroTipoDescripción
planrequerido string

Id del plan.

máximo 70 caracteres
Ejemplo: pl9697fb170834ad42dd00
clientrequerido string

Id del cliente.

máximo 20 caracteres
Ejemplo: cl9b1e1dd988694f30fa30
amountoneOf · opción 1requerido string

Este campo solo sera usado en caso de planes de suscripciones de monto variable, es importante destacar que la moneda a utilizar en este tipo de plan es CLP.

máximo 14 dígitos
coupononeOf · opción 2requerido string

Código del cupón

máximo 50 caracteres
curl -X POST \
https://BASE_URL/api/sususcription \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \
-d {
"plan": "pl9697fb170834ad42dd00",
"client": "cl9b1e1dd988694f30fa30"
}'

Respuestas

200
{
"status": "register",
"id": "sucaab7865dceaff49d8b3",
"url": "http://BASE_URL/gateway/registrosuscripcion?tipoplan=2&plan=true&token=219&validacion=e6c50ba0e0"
}
Campos de la respuesta
ParámetroTipoDescripción
status string

Estatus.

Ejemplo: register
id string

Identificador único de suscripción por payku.

Ejemplo: sucaab7865dceaff49d8b3
url string

Url pago y activación de suscripción.

Ejemplo: http://BASE_URL/gateway/registrosuscripcion?tipoplan=2&plan=true&token=219&validacion=e6c50ba0e0
GET/api/sususcription

Este método permite obtener todos las suscripciones asociados a un ID de usuario , este método permite una paginación con un máximo de registros por página, además, posee un filtro de fecha, si este parámetro no es ingresado se tomará la fecha actual, para la paginación es necesario agregar al final del endpoint lo siguiente ?page=1&per_page=100 siendo el primer parámetro el número de la página y el segundo el número de registros por página. estatus: se puede filtrar la búsqueda de las suscripciones dependiendo del estatus que se desea buscar agregando el estatus a buscar igual a true, en caso de no agregar ninguno por defecto se buscaran todas las suscripciones sin discriminar por su estatus.

curl -X GET \
https://BASE_URL/api/sususcription \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \

Respuestas

200
[
{
"subscriptions": [
{
"id": "sucaab7865dceaff49d8b7",
"status": "active",
"last_status_current_payment": "pending",
"start": "2019-07-22 18:34:49",
"end": "2023-06-12 00:00:00",
"client": {
"id": "su7e5e1c0b1bd2e37ec557",
"name": "name",
"email": "[email protected]",
"rut": "11.111.111-1",
"phone": "56928265454",
"parámetros": [],
"additional_parameters": ""
},
"plan": {
"id": "pl9697fb170834ad42dd00",
"name": "test plan",
"currency": "CLP"
},
"cards": {
"last_4_digits": "XXXXXXXXXXXX6622",
"card_type": "Visa"
},
"transactions": [
{
"created_at": "2023-09-30 19:58:35",
"amount": 10000,
"transaction": 204444,
"authorization_code": "1234",
"order": "001",
"description": "descripcion",
"status": "success"
}
],
"logs": {
"status": [
{
"change_date": null,
"initial_status": null,
"final_status": null
}
]
}
}
]
}
]
GET/api/sususcriptionv3

Este método permite obtener todos las suscripciones asociados a un ID de usuario , este método permite una paginación con un máximo de 4000 registros por página, además, posee los siguientes filtros:

date_init: indica la fecha desde donde se desea comenzar la búsqueda de suscripciones, si este parámetro no es enviado la busqueda iniciara la fecha actual . date_end: indica la fecha donde se desea que termine la búsqueda de suscripciones, si este parámetro no es enviado la busque tendrá como fecha final la fecha actual. estatus: se puede filtrar la búsqueda de las suscripciones dependiendo del estatus que se desea buscar agregando el estatus a buscar igual a true, en caso de no agregar ninguno por defecto se buscaran todas las suscripciones sin discriminar por su estatus.

para la paginación es necesario agregar al final del endpoint lo siguiente ?page=1&per_page=100 siendo el primer parámetro el número de la página y el segundo el número de registros por página. En caso de querer buscar las suscripciones entre las fechas 01-09-2021 y 15-09-2021, además que solo sean las suscripciones de estado active, la url a utilizar seria la siguiente: https://[URL_BASE]/api/sususcriptionv3?date_init=2021-09-01&date_end=2021-09-15&active=true.

curl -X GET \
https://BASE_URL/api/sususcriptionv3 \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \

Respuestas

200
[
{
"subscriptions": [
{
"id": "sucaab7865dceaff49d8b7",
"estatus": "active",
"start": "2019-07-22 18:34:49",
"end": "2023-06-12 00:00:00",
"client": {
"id": "su7e5e1c0b1bd2e37ec557",
"name": "name",
"email": "[email protected]",
"rut": "11.111.111-1",
"phone": "56928265454",
"parámetros": [],
"additional_parameters": ""
},
"plan": {
"id": "pl9697fb170834ad42dd00",
"name": "test plan",
"currency": "CLP"
},
"active_cards": {
"last_4_digits": "XXXXXXXXXXXX6622",
"card_type": "Visa"
},
"logs": {
"status": [
{
"change_date": null,
"initial_status": null,
"final_status": null
}
]
},
"paid": [
{
"payment_cycle_day": "2021-07-09",
"payment_day": "2021-07-09",
"status": "success",
"amount_paid": 2500,
"try_number": 1,
"paid_number": 1,
"transactions": []
}
]
}
]
}
]
POST/api/sutransaction

Este método permite al usuario de una cuenta payku generar una transacción única a uno de sus clientes que encuentre suscrito a un plan de consumo.

Cuerpo de la solicitud

ParámetroTipoDescripción
suscriptionrequerido string

Identificador único de suscripción por payku.

máximo 60 caracteres
Ejemplo: sucaab7865dceaff49d8b3
amount string

Monto.

máximo 14 caracteres
Ejemplo: 10000
order string

Orden.

máximo 40 caracteres
Ejemplo: 001
description string

Descripción.

máximo 1000 caracteres
Ejemplo: Descripción
curl -X POST \
https://BASE_URL/api/sutransaction \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \
-d {
"suscription": "sucaab7865dceaff49d8b3",
"amount": "10000",
"order": "001",
"description": "Descripción"
}'

Respuestas

200
{
"status": "success",
"order": "001",
"amount": "10000",
"transaction_id": "204444",
"verification_key": "025dcad37e071daa8bfc2df35189009db65692a4ff766856108be1675e870839"
}
Campos de la respuesta
ParámetroTipoDescripción
status string

Estatus de transacción.Los posibles estados que puede obtener son los siguientes:

  • pending
  • success
  • rejected
  • refunded partial
  • refunded
Ejemplo: success
order string

Orden.

Ejemplo: 001
amount string

Monto.

Ejemplo: 10000
transaction_id string

Número de transacción.

Ejemplo: 204444
verification_key string
Ejemplo: 025dcad37e071daa8bfc2df35189009db65692a4ff766856108be1675e870839
GET/api/sususcription/{identificadorSuscripcion}

Este método permite obtener el detalle de una suscripción.

Parámetros de ruta

ParámetroTipoDescripción
idrequerido string

Identificador único de transacción por payku.

máximo 20 caracteres
curl -X GET \
https://BASE_URL/api/sususcription/id \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \

Respuestas

200
{
"id": "sucaab7865dceaff49d8b7",
"status": "active",
"start": "2019-07-22 18:34:49",
"end": "2023-06-12 00:00:00",
"client": {
"id": "cld0835b9063a5903f4ae7",
"name": "name",
"email": "[email protected]",
"rut": "11.111.111-1",
"phone": "56972756487",
"parámetros": [],
"additional_parameters": ""
},
"plan": {
"id": "pl9697fb170834ad42dd00",
"name": "test plan",
"currency": "CLP"
},
"cards": {
"last_4_digits": "XXXXXXXXXXXX6622",
"card_type": "Visa"
},
"active_cards": [
{
"last_4_digits": "XXXXXXXXXXXX6622",
"identifier": "surec804a8ed60c747cb8839",
"card_type": "Visa",
"register": "2023-07-26 08:00:19"
},
{
"last_4_digits": "XXXXXXXXXXXX1234",
"identifier": "surec804a8ed60c747cb8843",
"card_type": "MasterCard",
"register": "2023-01-01 12:00:00"
}
],
"transactions": [
{
"created_at": "2023-09-30 19:58:35",
"amount": 10000,
"transaction": 204444,
"authorization_code": "1234",
"order": "001",
"description": "descripcion",
"status": "success"
}
],
"logs": {
"status": [
{
"change_date": "2021-02-17 16:11:53",
"initial_status": "register",
"final_status": "active"
}
]
}
}
Campos de la respuesta
ParámetroTipoDescripción
id string

Identificador de la suscripción creado por payku.

Ejemplo: sucaab7865dceaff49d8b7
status string

Estatus de la suscripción. Los posibles estados que puede obtener son los siguientes:

  • register
  • active
  • finish
  • delete
  • cancel
  • suspended
Ejemplo: active
start string

Fecha de inicio de la suscripción.

Ejemplo: 2019-07-22 18:34:49
end string

Fecha de termino de la suscripción.

Ejemplo: 2023-06-12 00:00:00
client object
id string

Identificador del cliente creado por payku.

Ejemplo: cld0835b9063a5903f4ae7
name string

Nombre del cliente.

Ejemplo: name
email string

Email del cliente.

rut string

Rol único Tributario.

Ejemplo: 11.111.111-1
phone string

Teléfono del cliente.

Ejemplo: 56972756487
parámetros array of anys
additional_parameters array of anys

Parámetros adicionales que puede enviar payku.

Ejemplo:
plan object
id string

Identificador del plan creado por payku.

Ejemplo: pl9697fb170834ad42dd00
name string

Nombre del plan.

Ejemplo: test plan
currency string

Moneda.

Ejemplo: CLP
cards object
last_4_digits string

Últimos 4 dígitos de la tarjeta afiliada.

Ejemplo: XXXXXXXXXXXX6622
card_type string

Tipo de tarjeta.

Ejemplo: Visa
active_cards array of objects
Ejemplo: [{"last_4_digits":"XXXXXXXXXXXX6622","identifier":"surec804a8ed60c747cb8839","card_type":"Visa","register":"2023-07-26 08:00:19"},{"last_4_digits":"XXXXXXXXXXXX1234","identifier":"surec804a8ed60c747cb8843","card_type":"MasterCard","register":"2023-01-01 12:00:00"}]
last_4_digits string

Últimos 4 dígitos de la tarjeta afiliada.

Ejemplo: XXXXXXXXXXXX6622
identifier string

identificador de la tarjeta.

Ejemplo: surec804a8ed60c747cb8839
card_type string

Tipo de tarjeta.

Ejemplo: Visa
register string

Fecha de registro.

Ejemplo: 2023-07-26 08:00:19
transactions array of objects
created_at string

Fecha de creación de la transacción.

Ejemplo: 2023-09-30 19:58:35
amount int

Monto de transacción.

Ejemplo: 10000
transaction int

Número de transacción.

Ejemplo: 204444
authorization_code string

Código de autorización.

Ejemplo: 1234
order string

Número de orden.

Ejemplo: 001
description string

Descripción.

Ejemplo: descripcion
status string

Estatus de transacción.Los posibles estados que puede obtener son los siguientes:

  • pending
  • success
  • rejected
  • refunded partial
  • refunded
Ejemplo: success
logs object

Objeto con registros de información sobre las suscripciones

status array of objects

Arreglo que contiene los cambios de estatus que se realizaron en la suscripción

change_date string

Fecha en que se realizo el cambio

Ejemplo: 2021-02-17 16:11:53
initial_status string

Estatus inicial de la suscripción

Ejemplo: register
final_status string

Estatus final de la suscripción

Ejemplo: active
DELETE/api/sususcription/{identificadorSuscripcion}

Este método permite la eliminación de una suscripción asociada a un ID de suscripción.

Parámetros de ruta

ParámetroTipoDescripción
idrequerido string

Identificador único de suscripción creado por payku.

máximo 20 caracteres
curl -X DELETE \
https://BASE_URL/api/sususcription/id \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \

Respuestas

200
{
"id": "sucaab7865dceaff49d8b3",
"status": "success"
}
Campos de la respuesta
ParámetroTipoDescripción
id string

Identificador de la transacción creado por payku.

Ejemplo: sucaab7865dceaff49d8b3
status string

Estatus.

Ejemplo: success
POST/api/suinscriptionscards

Este método permite la Inserción de los datos de una tarjeta para suscripción.

Improtante

En caso de necesitar de la renovacion de tarjeta de su cliente, el método le permitira agregar una nueva tarjeta a la suscripcion.

¡Inmediatamente a la actualización de la tarjeta asociada a la suscripción, el sistema podrá realizar los cargos atrasados correspondientes según configuración del plan suscrito!, Es decir, si la suscripción se encuentra en estatus suspendido por máximos intentos de cobros realizados, y el cliente registra una nueva tarjeta, el sistema podrá revisar los pagos pendientes, hacer el cargo correspondiente, y activar automáticamente la suscripción

Cuerpo de la solicitud

ParámetroTipoDescripción
suscriptionrequerido string

ID de suscripción.

máximo 60 caracteres
Ejemplo: sucaab7865dceaff49d8b3
curl -X POST \
https://BASE_URL/api/suinscriptionscards \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \
-d {
"suscription": "sucaab7865dceaff49d8b3"
}'

Respuestas

200
{
"status": "success",
"id": "sucaab7865dceaff49d8b3",
"url": "https://BASE_URL/gateway/registrosuscripcion?plan=true&token=246&validacion=d6b32"
}
Campos de la respuesta
ParámetroTipoDescripción
status string

Estatus.

Ejemplo: success
id string

Identificador único de suscripción por payku.

Ejemplo: sucaab7865dceaff49d8b3
url string

URL pago y activación de suscripción.

Ejemplo: https://BASE_URL/gateway/registrosuscripcion?plan=true&token=246&validacion=d6b32
POST/api/suscriptionsdeletecards

Este método permite eliminar una tarjeta asociada a la suscripción.

Cuerpo de la solicitud

ParámetroTipoDescripción
suscriptionrequerido string

ID de la tarjeta asociada.

máximo 60 caracteres
Ejemplo: surec804a8ed60c0a8cb8839
curl -X POST \
https://BASE_URL/api/suscriptionsdeletecards \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \
-d {
"card": "surec804a8ed60c0a8cb8839"
}'

Respuestas

200
{
"status": "Delete",
"card": "surec804a8ed60c0a8cb8839"
}
Campos de la respuesta
ParámetroTipoDescripción
status string

Status.

Ejemplo: Delete
card string

Identificador único de La tarjeta asociada a la suscripción.

Ejemplo: surec804a8ed60c0a8cb8839
GET/api/suplan/{identificadorPlan}

Este método permite obtener el detalle de un plan.

Parámetros de ruta

ParámetroTipoDescripción
idrequerido string

Identificador único de plan por payku.

máximo 20 caracteres
curl -X GET \
https://BASE_URL/api/suplan/id \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \

Respuestas

200
{
"status": "success",
"plans": {
"id": "pl4293e97a87195bb9edcd",
"status": "active",
"name": "Test plan",
"code": "001",
"description": "Test Plan",
"url_notify_payment": "",
"url_notify_suscription": "",
"total_suscription": 0,
"total_suscription_active": 0
}
}
Campos de la respuesta
ParámetroTipoDescripción
status string

Estatus.

Ejemplo: success
plans object
id string

Identificador único de plan por payku.

Ejemplo: pl4293e97a87195bb9edcd
status string

Estatus del plan.

Ejemplo: active
name string

Nombre del plan.

Ejemplo: Test plan
code string

Código del plan.

Ejemplo: 001
description string

Descripción del plan.

Ejemplo: Test Plan
url_notify_payment string <url>
Ejemplo:
url_notify_suscription string <url>
Ejemplo:
total_suscription integer

Total de suscripciones.

Ejemplo: 0
total_suscription_active integer

Total de suscripciones activas.

Ejemplo: 0
GET/api/suplan/plans

Este método permite obtener el detalle de todos los planes.

curl -X GET \
https://BASE_URL/api/suplan/plans \
-H 'Accept: application/json, text/plain, */*' \
-H 'Sign: SHA256-REQUEST-PATH-VALUE-TOKEN-PRIVADO' \
-H 'Authorization: Bearer TOKEN_PUBLICO' \
-H 'Content-Type: application/json' \
-H 'Host: BASE_URL' \

Respuestas

200
{
"status": "success",
"plans": [
{
"id": "pl4293e97a87195bb9edcd",
"status": "active",
"name": "Test plan",
"code": "001",
"description": "Test Plan",
"url_notify_payment": "",
"url_notify_suscription": "",
"total_suscription": 0,
"total_suscription_active": 0
}
]
}
Campos de la respuesta
ParámetroTipoDescripción
status string

Estatus.

Ejemplo: success
plans array of objects
id string

Identificador único de plan por payku.

Ejemplo: pl4293e97a87195bb9edcd
status string

Estatus del plan.

Ejemplo: active
name string

Nombre del plan.

Ejemplo: Test plan
code string

Código del plan.

Ejemplo: 001
description string

Descripción del plan.

Ejemplo: Test Plan
url_notify_payment string <url>
Ejemplo:
url_notify_suscription string <url>
Ejemplo:
total_suscription integer

Total de suscripciones.

Ejemplo: 0
total_suscription_active integer

Total de suscripciones.

Ejemplo: 0
POST/urlnotifysuscription

Luego de realizar la activación de la suscripción por parte del usuario, payku notificara al comercio, el resultado de la operación (status), realizando una solicitud post a la url de notificación de suscripción suministrada previamente en la creación de la suscripción y a su vez entregará una serie de datos para las validaciones internas por parte de la aplicación del comercio, el id de la suscripción el cual corresponde al identificador único en payku. Estos datos permitirán al comercio conocer el estado de sus suscripciones y respaldarlas en su base de datos.

Respuestas

200
{
"id": "su74866857980c7d2b4306",
"status": "active"
}
Campos de la respuesta
ParámetroTipoDescripción
id string

Identificador de la suscripción creado por payku.

Ejemplo: su74866857980c7d2b4306
status string

Estatus de la suscripción. Los posibles estados que puede obtener son los siguientes:

  • register
  • active
  • finish
  • delete
  • cancel
  • suspended
Ejemplo: active
POST/urlnotifypayment

Luego de realizado el cobro de la suscripción de forma automatica, payku notificara al comercio, el resultado de la operación (status), realizando una solicitud post a la url de notificación de cobro suministrada previamente en la creación de la suscripción y a su vez entregará una serie de datos para las validaciones internas por parte de la aplicación del comercio, el transactionn_id el cual corresponde al identificador único en payku y un verification_key, que corresponde a un hash de validación único por transacción. Estos datos permitirán al comercio conocer el estado de sus transaciones y respaldarlas en su base de datos.

Respuestas

200
{
"transaction_id": 9123123,
"verification_key": "2ba83615f863e72sdca5dfd0a6df2782",
"order": 1568041684,
"status": "success",
"subscriptions": {
"id": "su3ce571420e90b600eafb",
"client": "cl795704ece0a3690baaf"
}
}
Campos de la respuesta
ParámetroTipoDescripción
transaction_id number

Identificador único de transacción por payku.

Ejemplo: 9123123
verification_key string

Hash único de transacción.

Ejemplo: 2ba83615f863e72sdca5dfd0a6df2782
order string

Identificador único de transacción enviado por el comercio.

Ejemplo: 1568041684
status string

Estatus de transacción.Los posibles estados que puede obtener son los siguientes:

  • pending
  • success
  • rejected
  • refunded partial
  • refunded
Ejemplo: success
subscriptions object

Contiene los id de la suscripción y el cliente suscrito

id string

Identificador único de suscripción por payku.

Ejemplo: su3ce571420e90b600eafb
client string

Identificador único del cliente por payku

Ejemplo: cl795704ece0a3690baaf