Actualizar un plan

Permite actualizar detalles de un precio específico.

Este endpoint te permite actualizar la URL del webhook, las URLs de redirección o el status de un plan.

El status únicamente se puede cambiar de active a inactive. Una vez inactivo no se puede volver a activar.


Header parameters

La siguiente tabla describe el esquema de los parámetros de encabezado o headers:

Parámetro

Descripción

Tipo

Requerido / Opcional

Notas

Content-Type

Define el formato del objeto de la llamada

application/json

Requerido

Solicitud en formato JSON

Authorization

Especifica el token de acceso

String

Requerido

token de autenticación



Path parameters

La siguiente tabla describe el esquema de los parámetros de ruta:

Parámetro

Descripción

Tipo

Requerido / Opcional

Ejemplo

Notas

price_id

id del plan a modificar.

String

Requerido

1960c5eb-d9ed-4a55-8d65-a377b5

UUID v4


Body parameters (parámetros del cuerpo de la solicitud)

A continuación se describe el esquema de los parámetros del body de la solicitud de pago:

Parámetro

Descripción

Tipo

Ejemplo

Requerido / Opcional

Notas

webhook_url

URL del endpoint que recibirá notificaciones webhook del link de pago.

String

“https://www. webhook.com”

Requerido

Es necesario proporcionar un webhook para que puedas recibir actualizaciones de tus planes, suscripiones o pagos.

redirect_urls

Objeto con las URLs para redirección del cliente después del pago.

Objeto

Requerido

Las URLs de redirección son necesarias para que puedas redirigir a tus clientes desde

success

URL a la que se redireccionará al cliente cuando el pago es exitoso.

String

“https://www. misitio.com /success”

Opcional

error

URL a la que se redireccionará al cliente cuando han fallado varios intentos.

String

“https://www. misitio.com /error”

Opcional

default

URL de la tienda virtual.

Opcional

“https://www. misitio.com”

Requerido

status

Status del plan. Sirve para cancelar el plan.

String

“inactive”

Opcional

Sólo puede cambiar a “inactive”.


Código de ejemplo

Ejemplo de una solicitud.

El siguiente bloque de código es un ejemplo de una solicitud realizada al endpoint PUT /prices:

curl --location --request PUT 'https://api.payclip.com/prices/b241e51e-1347-42cc-b8ad-711d1754caa8' \
--header 'Authorization: Basic MTBkMTA2Y2QtMTI4Ny00MjI1LWE0ZWQtNzY3MWRkM2Y5ZDEzOjExNWYwMjE0LWJkZDgtNGY1ZS04ODRmLWVhMTM0YjVhNTUyNA==' \
--header 'Content-Type: application/json' \
--data '{
    "webhook_url":  "https://webhook.mx",
    "redirect_urls": {
        "success": "https://success.mx",
        "error": "https://www.error.com",
        "default": "https://www.default.mx/"
    },
    "status":"inactive"
}'

Ejemplo de una respuesta

El siguiente objeto es una respuesta de éxito con código HTTP 201 OK:

{
    "id": "b241e51e-1347-42cc-b8ad-711d1754caa8",
    "name": "prueba",
    "description": "Descripción del plan",
    "amount": 90.50,
    "recurring": {
        "interval": "month",
        "frequency": 1,
        "repeat": 0,
        "billing_day": [7],
        "anchor_billing_on_first_payment": false,
        "subscription_link":  "https://pago.payclip.com/
suscripcion/b241e51e-1347-42cc",
        "grace_period_days": 28
    },
    "status": "inactive",
    "additional_information": [
        "Número de alumno",
        "Materia",
        "Turno",
        "Salón"
    ],
    "webhook_url": "https://webhook.com",
    "created_at": "2024-04-10T07:29:31.028Z",
    "updated_at": "2024-04-10T07:29:31.028Z",
    "redirect_urls": {
        "success": "https://success.mx",
        "error": "https://www.error.com",
        "default": "https://www.default.mx/"
    }
}

Códigos de respuesta

La siguiente tabla contiene una lista de los códigos de respuesta y su asociación con algunos de los estados HTTP:

Estado HTTP

Error code

Mensaje

400

CL2204

Status not valid

401

CL1501

Unauthorized

404

BR1301

Price Object not found

500

UN1800

"An error occurred: NullPointerException - null"


Ejemplo de una respuesta conteniendo un código de error en formato JSON. En este ejemplo se comparte el código de error en el campo “error_code”, la descripción en el campo “message” y dentro del objeto “detail” más información:

{
"error_code": "BR1301",
"message": "Bad Request",
"detail": [
  "Price Object not found"
  ]
}

Realiza una llamada de prueba:

Language
Click Try It! to start a request and see the response here!