API Reference (1.0)

El API de ZRU utiliza métodos HTTP y una estructura RESTful de endpoint.

  • La autenticación del API se realiza vía Header Authorization.
  • Todas las peticiones se deben realizar en formato JSON, y las respuestas del API son en dicho formato.
Download OpenAPI description
Overview
Languages
Servers
v1
https://api.zrupay.com/v1/

Transaction

Operations

Subscription

Operations

Listar Suscripciones

Request

Devuelve todas las suscripciones creadas en el entorno.

curl -i -X GET \
  https://api.zrupay.com/v1/subscription/ \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
countnumber

Cantidad de elementos

items_per_pagenumber

Cantidad de elementos por página

nextstring or null

URL a próxima página

previousstring or null

URL a página anterior

resultsArray of objects(Suscripción)
Response
application/json
{ "count": 0, "items_per_page": 0, "next": "string", "previous": "string", "results": [ {} ] }

Crear Suscripción

Request

Crea una suscripción en el entorno.

Bodyapplication/json
order_idstring

Identificador externo

currencystring= 3 charactersrequired

Moneda en formato ISO

notestring

Nota

extraobject

Valores extra en formato JSON

return_urlstring(uri)

URL de retorno. Se envía al cliente a esta url después de realizar el pago correctamente

cancel_urlstring(uri)

URL de cancelación. Se envía al cliente a esta url si cancela el pago

notify_urlstring(uri)

URL de notificación. Se envían a esta url las notificaciones de cambio de estado

gateway_selectedboolean

Si cuando el cliente abra la pantalla de pago la primera opción debe estar seleccionada

languagestring

Idioma de la pantalla de pago

Enum"au""es""en""fr"
expired_datestring(date-time)YYYY-MM-DDThh:mm[:ss[.uuuuuu]][+HH:MM|-HH:MM|...

Fecha de expiración (por defecto, es una semana después de la creación)

plan_idstring(uuid)

Identificador del plan al que se suscribe al usuario existente en el API (requerido si no se envía el parámetro plan)

planobject(plan-create.v1)

Representa el modelo de datos para crear un plan.

trial_price1number(float)

Precio a pagar en un primer periodo de prueba (si se envía se deben enviar también los parámetros duration1 y unit1)

duration1integer

Duración de primer periodo de prueba

unit1string

Unidad de tiempo del primer periodo de prueba (opciones: D - Día, M - Mes, Y - Año)

Enum"D""M""Y"
sourceArray of objects or null(source.v1)

Origen de los fondos

destinationArray of objects or null(destination.v1)

Destino de los fondos

curl -i -X POST \
  https://api.zrupay.com/v1/subscription/ \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "currency": "EUR",
    "order_id": "MERCHANT_ORDER_ID",
    "plan": {
      "name": "PLAN_NAME",
      "duration": 1,
      "unit": "M",
      "price": 5.25
    },
    "return_url": "https://www.merchant.com/return",
    "cancel_url": "https://www.merchant.com/cancel",
    "notify_url": "https://www.merchant.com/notify",
    "extra": {
      "email": "client@email.com",
      "first_name": "CLIENT_FIRST_NAME",
      "last_name": "CLIENT_LAST_NAME",
      "MERCHANT_KEY_1": "MERCHANT_VALUE_1",
      "MERCHANT_KEY_2": "MERCHANT_VALUE_2"
    }
  }'

Responses

Created

Bodyapplication/json
idstring(uuid)

Identificador único

tokenstring

Token de transacción. Se utiliza para representar la transacción de cara al usuario

statusstring

Estado de la transacción (N - Pendiente, C - Cancelada, D - Completada, E - Expirada)

Enum"N""C""D""E"
items_pricenumber(float)

Precio total de todos los productos

total_pricenumber(float)

Precio a pagar

order_idstring

Identificador externo

currencystring= 3 charactersrequired

Moneda en formato ISO

notestring

Nota

extraobject

Valores extra en formato JSON

return_urlstring(uri)

URL de retorno. Se envía al cliente a esta url después de realizar el pago correctamente

cancel_urlstring(uri)

URL de cancelación. Se envía al cliente a esta url si cancela el pago

notify_urlstring(uri)

URL de notificación. Se envían a esta url las notificaciones de cambio de estado

gateway_selectedboolean

Si cuando el cliente abra la pantalla de pago la primera opción debe estar seleccionada

languagestring

Idioma de la pantalla de pago

Enum"au""es""en""fr"
expired_datestring(date-time)YYYY-MM-DDThh:mm[:ss[.uuuuuu]][+HH:MM|-HH:MM|...

Fecha de expiración (por defecto, es una semana después de la creación)

plan_idstring(uuid)

Identificador del plan al que se suscribe al usuario existente en el API (requerido si no se envía el parámetro plan)

planobject(plan-create.v1)

Representa el modelo de datos para crear un plan.

trial_price1number(float)

Precio a pagar en un primer periodo de prueba (si se envía se deben enviar también los parámetros duration1 y unit1)

duration1integer

Duración de primer periodo de prueba

unit1string

Unidad de tiempo del primer periodo de prueba (opciones: D - Día, M - Mes, Y - Año)

Enum"D""M""Y"
sourceArray of objects or null(source.v1)

Origen de los fondos

destinationArray of objects or null(destination.v1)

Destino de los fondos

Response
application/json
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "token": "string", "status": "N", "items_price": 0.1, "total_price": 0.1, "order_id": "string", "currency": "str", "note": "string", "extra": {}, "return_url": "http://example.com", "cancel_url": "http://example.com", "notify_url": "http://example.com", "gateway_selected": true, "language": "au", "expired_date": "2019-08-24T14:15:22Z", "plan_id": "00713021-9aea-41da-9a88-87760c08fa72", "plan": { "plan_id": "string", "name": "string", "price": 0.1, "description": "string", "duration": 0, "unit": "D", "recurring": true }, "trial_price1": 0.1, "duration1": 0, "unit1": "D", "source": [ {} ], "destination": [ {} ] }

Obtener Suscripción

Request

Devuelve la suscripción solicitada.

Path
subscription-idstring(uuid)required

Identificador de la suscripción que se desea solicitar

curl -i -X GET \
  'https://api.zrupay.com/v1/subscription/{subscription-id}/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
idstring(uuid)

Identificador único

tokenstring

Token de transacción. Se utiliza para representar la transacción de cara al usuario

statusstring

Estado de la transacción (N - Pendiente, C - Cancelada, D - Completada, E - Expirada)

Enum"N""C""D""E"
items_pricenumber(float)

Precio total de todos los productos

total_pricenumber(float)

Precio a pagar

order_idstring

Identificador externo

currencystring= 3 charactersrequired

Moneda en formato ISO

notestring

Nota

extraobject

Valores extra en formato JSON

return_urlstring(uri)

URL de retorno. Se envía al cliente a esta url después de realizar el pago correctamente

cancel_urlstring(uri)

URL de cancelación. Se envía al cliente a esta url si cancela el pago

notify_urlstring(uri)

URL de notificación. Se envían a esta url las notificaciones de cambio de estado

gateway_selectedboolean

Si cuando el cliente abra la pantalla de pago la primera opción debe estar seleccionada

languagestring

Idioma de la pantalla de pago

Enum"au""es""en""fr"
expired_datestring(date-time)YYYY-MM-DDThh:mm[:ss[.uuuuuu]][+HH:MM|-HH:MM|...

Fecha de expiración (por defecto, es una semana después de la creación)

plan_idstring(uuid)

Identificador del plan al que se suscribe al usuario existente en el API (requerido si no se envía el parámetro plan)

planobject(plan-create.v1)

Representa el modelo de datos para crear un plan.

trial_price1number(float)

Precio a pagar en un primer periodo de prueba (si se envía se deben enviar también los parámetros duration1 y unit1)

duration1integer

Duración de primer periodo de prueba

unit1string

Unidad de tiempo del primer periodo de prueba (opciones: D - Día, M - Mes, Y - Año)

Enum"D""M""Y"
sourceArray of objects or null(source.v1)

Origen de los fondos

destinationArray of objects or null(destination.v1)

Destino de los fondos

Response
application/json
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "token": "string", "status": "N", "items_price": 0.1, "total_price": 0.1, "order_id": "string", "currency": "str", "note": "string", "extra": {}, "return_url": "http://example.com", "cancel_url": "http://example.com", "notify_url": "http://example.com", "gateway_selected": true, "language": "au", "expired_date": "2019-08-24T14:15:22Z", "plan_id": "00713021-9aea-41da-9a88-87760c08fa72", "plan": { "plan_id": "string", "name": "string", "price": 0.1, "description": "string", "duration": 0, "unit": "D", "recurring": true }, "trial_price1": 0.1, "duration1": 0, "unit1": "D", "source": [ {} ], "destination": [ {} ] }

Iniciar Suscripción

Request

Inicia la suscripción solicitada, debe estar en espera.

Path
subscription-idstring(uuid)required

Identificador de la suscripción que se desea iniciar

curl -i -X POST \
  'https://api.zrupay.com/v1/subscription/{subscription-id}/start/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
successboolean

Resultado de la operación

responsestring

Mensaje de error en caso de fallo

Response
application/json
{ "success": true, "response": "string" }

Pausar Suscripción

Request

Pausa la suscripción solicitada, debe estar activa.

Path
subscription-idstring(uuid)required

Identificador de la suscripción que se desea pausar

curl -i -X POST \
  'https://api.zrupay.com/v1/subscription/{subscription-id}/pause/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
successboolean

Resultado de la operación

responsestring

Mensaje de error en caso de fallo

Response
application/json
{ "success": true, "response": "string" }

Activar Suscripción

Request

Activa la suscripción solicitada, debe estar en pausa.

Path
subscription-idstring(uuid)required

Identificador de la suscripción que se desea activar

curl -i -X POST \
  'https://api.zrupay.com/v1/subscription/{subscription-id}/active/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
successboolean

Resultado de la operación

responsestring

Mensaje de error en caso de fallo

Response
application/json
{ "success": true, "response": "string" }

Parar Suscripción

Request

Para la suscripción solicitada, después de ejecutar esta acción la suscripción no podrá ser reactivada ni se realizarán cobros.

Path
subscription-idstring(uuid)required

Identificador de la suscripción que se desea parar

curl -i -X POST \
  'https://api.zrupay.com/v1/subscription/{subscription-id}/stop/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

OK

Bodyapplication/json
successboolean

Resultado de la operación

responsestring

Mensaje de error en caso de fallo

Response
application/json
{ "success": true, "response": "string" }

Authorization

Operations

Sale

Operations

Product

Operations

Plan

Operations

Tax

Operations

Shipping

Operations

Coupon

Operations

Client

Operations

Wallet

Operations

Transfer

Operations

Gateway

Operations

Currency

Currency

Operations