Cómo conectar Prodamus

Para conectar Prodamus, necesitas la URL del formulario de pago y una clave secreta.

La URL del formulario de pago se proporciona después del registro. Ejemplo:

demo.payform.ru

Puedes obtener la clave secreta en tu cuenta de Prodamus. También debes especificar la URL a la que se enviarán las notificaciones de pago.

Instrucciones detalladas sobre cómo configurar esto

URL de notificación:
https://chatter.mavibot.ai/prodamus_callback/result

Esta URL debe especificarse en dos lugares de la configuración.

En la página de configuración principal, puedes seleccionar el modo de funcionamiento del formulario de pago:

  • Modo demo sin pagos reales
  • Modo en vivo para aceptar pagos

La URL de notificación debe especificarse en dos secciones de la configuración del sistema de pago:

  • En la pestaña Configuración del formulario para pagos únicos
  • En la pestaña Suscripciones para pagos por suscripción

URL de notificación:
https://chatter.mavibot.ai/prodamus_callback/result

Para configurar los pagos por suscripción, abre la pestaña Suscripciones e ingresa la URL de notificación:

https://chatter.mavibot.ai/prodamus_callback/result

Importante: Después de ingresar la URL, asegúrate de hacer clic en Guardar.

Para conectar Prodamus en Mavibot, abre la sección Adquirencia.

Luego ingresa la URL del formulario de pago y la clave secreta en los campos correspondientes.

Importante: No incluyas https:// al ingresar la URL del formulario de pago.

La conexión ahora está completa. A continuación, veamos cómo usar esta funcionalidad.

Crear un enlace de pago

Botón de pago

Se puede generar un enlace de pago usando un botón con la función Pago.

Consulta la guía para crear un botón de pago:
/docs/chatbot-builder-buttons-payment-button

Las secciones siguientes describen todas las configuraciones disponibles del botón.

Parámetros requeridos

Para generar un enlace de pago, se requieren los siguientes campos:

  • Monto
  • Nombre del producto
  • Productos para el recibo (requerido solo si no tienes tu propia caja registradora en línea y deseas que Prodamus genere recibos fiscales)

Cuando el cliente abre la página de pago, la información del producto y el precio ya están completados. El cliente solo necesita ingresar sus datos de contacto.

Si el correo electrónico y/o el número de teléfono del cliente se especifican en la configuración del botón, también se completarán previamente en la página de pago.

Configuración del botón

Texto – El texto que se muestra en el botón de pago.

Función – Selecciona Pago para generar un enlace de pago.

Sistema de pago – Muestra los sistemas de pago conectados al proyecto.

Si no hay ningún sistema de pago conectado, este tipo de botón no está disponible.

Nombre del producto (requerido) – Especifica el nombre exacto del producto.

Por ejemplo, en lugar de:

Teléfono

usa:

Smartphone Xiaomi, Modelo ...

Nota: No se permiten comillas dobles (") en el nombre del producto. Elimínalas o reemplázalas con comillas simples.

Monto (requerido) – El monto del pago.

Parámetros adicionales

Haz clic en Información adicional para configurar campos opcionales:

  • Descripción del pedido
  • Descuento (RUB)
  • Variable de correo electrónico del cliente
  • Variable de teléfono del cliente
  • Fecha de vencimiento del enlace
  • ID del producto de suscripción
  • Productos para el recibo

Notificar al hacer clic – Habilita esta opción si deseas recibir una notificación en la conversación del cliente cuando haga clic en el botón de pago.

Esta notificación se puede usar para construir lógica adicional del chatbot.

Muchos proveedores de pago admiten cajas registradoras en la nube requeridas para el cumplimiento fiscal. Consulta la documentación de tu proveedor de pago para obtener información sobre la generación de recibos y la fiscalización.

La página de pago que abre el botón se ve así:

Configuración adicional del enlace de pago

Descripción del pedido – El texto ingresado en este campo se muestra en la página de pago en la sección Información adicional.

Descuento – Especifica el monto del descuento en RUB. Se admiten valores decimales usando un punto como separador (por ejemplo, 50.99).

En la página de pago, el descuento se aplica automáticamente. El precio original se tacha y el monto descontado se muestra como el pago total.

Variable de correo electrónico del cliente (opcional si se proporciona un número de teléfono) – La dirección de correo electrónico del cliente o una variable que la contenga, por ejemplo:

#{email}

Variable de teléfono del cliente (opcional si se proporciona una dirección de correo electrónico) – Una variable que contenga el número de teléfono del cliente en el formato:

79000000000

Por ejemplo:

#{phone}

Se debe proporcionar una dirección de correo electrónico o un número de teléfono.

Fecha de vencimiento del enlace – Especifica la fecha de vencimiento en el formato:

dd.MM.yyyy HH:mm

Ejemplo:

25.01.2021 11:00

También puedes usar una variable, por ejemplo:

#{link_expired}

ID del producto de suscripción – Ingresa el ID del producto de suscripción para crear un pago recurrente.

Para obtener información sobre cómo crear productos de suscripción, consulta la documentación de Prodamus.

Si se especifica un ID de producto de suscripción:

  • se ignora el monto del pago;
  • la información del producto se carga desde el producto de suscripción en Prodamus;
  • se requiere el número de teléfono del cliente para la gestión de la suscripción;
  • el callback contiene el ID del producto de suscripción después de un pago exitoso.

Productos para el recibo (condicionalmente requerido) – Requerido para la fiscalización de pagos a través de Prodamus si no usas tu propia caja registradora en línea.

Especifica la descripción del producto, el precio y un enlace al contenido comprado.

Ejemplo:

Curso "Fotografía Avanzada", precio 3000 RUB,
https://example.com/curso

Comportamiento del enlace vencido

Si especificas una fecha de vencimiento del enlace, el botón de pago se comporta de manera diferente dependiendo de si el enlace sigue siendo válido.

Enlace vencido

Si el cliente abre el enlace de pago después de que haya vencido, no se puede completar el pago y verá el siguiente mensaje:

Nota: La fecha de vencimiento debe ser posterior a la fecha actual. De lo contrario, el cliente no podrá completar el pago.

Botón de pago inactivo

Si el cliente solicita el botón de pago después de que el enlace ya haya vencido, el botón no se muestra.

En su lugar, se crea la siguiente variable de cliente:

error_payment_button

Valor:

Error: La fecha de vencimiento del enlace debe ser posterior a la fecha actual.

Recomendamos manejar esta situación en el flujo de tu chatbot.

Crea una condición que verifique:

error_payment_button == "Error: La fecha de vencimiento del enlace debe ser posterior a la fecha actual."

Si se cumple la condición, envía un mensaje como:

Lo sentimos, no pudiste completar el pago a tiempo. El enlace de pago ha vencido.

Variables de cliente creadas por el botón de pago

Cuando un cliente recibe un mensaje que contiene un botón Pago, Mavibot crea automáticamente las siguientes variables.

__payments

Una variable del sistema que almacena el monto del pago y el identificador del enlace de pago generado. Se utiliza para hacer coincidir los callbacks recibidos del sistema de pago.

Importante: No modifiques ni elimines la variable del sistema __payments.

error_payment_button

Esta variable se crea automáticamente si ocurre un error al generar el botón de pago.

Contiene el mensaje de error generado por Mavibot o el error devuelto por el sistema de pago.

Los valores de las variables están disponibles después de que el chatbot se mueve al siguiente bloque.


Procesar resultados de pago

Pago exitoso

Después de un pago exitoso, Mavibot recibe automáticamente el siguiente callback:

<primeros_10_caracteres_de_la_clave_secreta>_success <monto_del_pago>

Ejemplo:

ovg58keefc_success 44

Donde:

  • ovg58keefc — los primeros 10 caracteres de la clave secreta de Prodamus.
  • _success — indica un pago exitoso.
  • 44 — el monto del pago.

Los clientes nunca ven los callbacks de pago. Solo son visibles en la sección Clientes y se pueden usar para construir la lógica del chatbot.

Ejemplo

Paso 1

Crea un bloque que contenga el botón Pago.

Paso 2

Crea un bloque Disparador o configura una flecha que lleve al siguiente bloque.

Pega el callback de pago en el disparador o en la condición de coincidencia.

El mismo callback también se puede configurar en el bloque Condición inicial si tu chatbot requiere procesamiento global de pagos.

Importante: Usa Coincidencia exacta o Contiene palabras clave como tipo de coincidencia.

Nota: Si procesas callbacks en una flecha específica, asegúrate de que el cliente aún esté en el bloque que contiene esa flecha cuando llegue el callback. De lo contrario, la transición no ocurrirá. Para flujos de chatbot donde los clientes pueden moverse entre bloques, se recomienda procesar los callbacks en el bloque Condición inicial en su lugar.


Pago de suscripción exitoso

Para productos de suscripción, el formato del callback es:

<primeros_10_caracteres_de_la_clave_secreta>_success <id_del_producto_de_suscripción>

Ejemplo:

214009eefc_success 618117

Donde:

  • 214009eefc — los primeros 10 caracteres de la clave secreta.
  • _success — pago exitoso.
  • 618117 — el ID del producto de suscripción.


Pago fallido

Si el pago falla, Mavibot recibe el siguiente callback:

<primeros_10_caracteres_de_la_clave_secreta>_fail <monto_del_pago>

Ejemplo:

ovg58keefc_fail 44

Donde:

  • ovg58keefc — los primeros 10 caracteres de la clave secreta.
  • _fail — pago fallido.
  • 44 — el monto del pago.

Nota: No todos los proveedores de pago envían callbacks para pagos fallidos.


Discrepancia en el monto del pago

Si el monto pagado difiere del monto especificado en el botón de pago, Mavibot recibe el siguiente callback:

<primeros_10_caracteres_de_la_clave_secreta>_different_amounts <id_del_pago>

Ejemplo:

ovg58keefc_different_amounts 123456

Donde:

  • ovg58keefc — los primeros 10 caracteres de la clave secreta.
  • _different_amounts — indica que el monto pagado difiere del monto esperado.
  • 123456 — el ID único del pago.

Función de calculadora get_prodamus_payment_url

Puedes generar un enlace de pago usando la función get_prodamus_payment_url en el bloque Calculadora.

Asigna el resultado de la función a cualquier variable.

Puedes elegir cualquier nombre de variable. Las capturas de pantalla a continuación usan nombres de variable de ejemplo.

El enlace de pago generado se almacena en la variable y se puede usar en un mensaje o adjuntar a un botón.

Enlace de pago de ejemplo:

https://payform.ru/7p3JR8/

Ejemplo

Sintaxis de la función

tu_variable = get_prodamus_payment_url(
    amount,
    product_name,
    expired,
    customer_phone,
    customer_email,
    discount,
    description,
    extra_params,
    products_for_receipt
)

Parámetros

Parámetro Descripción
amount Obligatorio. Monto del pago. Acepta valores enteros o decimales (por ejemplo, 25 o 52.5).
product_name Obligatorio. Nombre del producto.
expired Fecha de vencimiento del enlace de pago. Formatos admitidos: dd.MM.yyyy o dd.MM.yyyy HH:mm. También puedes usar variables o expresiones como current_date + 2. Pasa '', "" o None para omitir este parámetro.
customer_phone Número de teléfono del cliente. Opcional si se proporciona customer_email. Pasa '' o "" para omitir.
customer_email Dirección de correo electrónico del cliente. Opcional si se proporciona customer_phone. Pasa '' o "" para omitir.
discount Monto del descuento. Acepta valores enteros o decimales (por ejemplo, 25 o 63.5). Pasa '' o "" para omitir.
description Descripción del producto. Si se omite, Prodamus usa automáticamente Payment for order order_id. Pasa '' o "" para omitir.
extra_params Parámetros adicionales de la API de Prodamus no incluidos en los argumentos de la función. Pasa '', "" o None para omitir.
products_for_receipt Datos del recibo en el formato "descripción del producto - precio - URL del contenido comprado". Obligatorio si usas fiscalización de Prodamus sin tu propia caja registradora en línea.

Ejemplos de fecha de vencimiento

Vence después de dos días:

expired = current_date + 2

Vence en 30 minutos:

time = current_time + 30
expired = "#{current_date} #{time}"

Ejemplo de extra_params

extra_params = {
    "payments_limit": "3",
    "payment_method": "vsegdada_installment_0_0_6"
}

Consulta la documentación de la API REST de Prodamus para obtener la lista completa de parámetros admitidos.


Ejemplo

extra_params = {
    "payments_limit": "3"
}

products_for_receipt = "Photography Course, price 4999 RUB, https://example.com/course"

payment_link = get_prodamus_payment_url(4999, "Photography Course", "27.03.2023 17:00", "79167777771", "[email protected]", 20, "The best photography course", extra_params, products_for_receipt)

En este ejemplo:

  • extra_params contiene parámetros de pago adicionales.
  • products_for_receipt contiene información del recibo fiscal.
  • payment_link almacena la URL de pago generada.

Si se usan múltiples funciones de enlace de pago en el mismo bloque de Calculadora y una de ellas falla, el error se escribe en la variable error_payment_func. Solo se almacena el error de la última función.

Generar un enlace de pago usando payment_sum

Nota: El valor de payment_sum se aplica después de todas las variables opcionales como payment_description, product_name y otras.

En lugar de llamar a get_prodamus_payment_url(), puedes generar un enlace de pago simplemente asignando un valor a la variable payment_sum en el bloque de Calculadora.

Después de asignar payment_sum, Mavibot crea automáticamente la variable prodamus_pay_url que contiene el enlace de pago.

Ejemplo:

https://payform.ru/7p3JR8/

Puedes mostrar esta variable en un mensaje o usarla como la URL de un botón.

Variables opcionales

Las siguientes variables se pueden definir antes de asignar payment_sum.

Variable Descripción
product_name Nombre del producto. Si se omite, el valor predeterminado es Payment for order order_id.
payment_description Descripción del producto que se muestra en la página de pago.
discount_value Monto del descuento. Ejemplo: 25 o 50.25.
customer_phone Número de teléfono del cliente.
customer_email Dirección de correo electrónico del cliente.
link_expired Fecha de vencimiento del enlace de pago.
currency Moneda del pago. Valores admitidos: rub, usd, eur, kzt. Debe estar en minúsculas.
payment_title Título del pago (hasta 127 caracteres). El valor predeterminado es Payment payment_id.
locale Idioma de la página de pago (por ejemplo, ru-RU, en-US, fr-FR).
products_for_receipt Información del recibo. Obligatorio si usas fiscalización de Prodamus sin tu propia caja registradora en línea.
payment_sum Obligatorio. Monto del pago.

Vencimiento del enlace

Puedes especificar la fecha de vencimiento de varias maneras.

Fecha específica:

25.01.2021

Fecha y hora específicas:

25.01.2021 12:23

Usando variables:

time = current_time + 30
link_expired = "#{current_date} #{time}"

O:

link_expired = current_date + 2

Ejemplo

Primero, establece el monto del pago.

Luego, usa la variable generada prodamus_pay_url donde sea necesario enviar el enlace de pago.

Métodos de pago disponibles

La variable prodamus_available_payment_methods debe definirse antes de payment_sum.

Los valores admitidos incluyen:

Valor Descripción
AC Tarjetas bancarias rusas
ACkz Tarjetas bancarias de Kazajistán
ACf Tarjetas bancarias de la CEI (excluyendo Rusia)
ACEURNMBX Tarjetas en EUR (excluyendo Rusia y Bielorrusia)
SBP Sistema de Pagos Rápidos (Rusia)
QW QIWI Wallet
PC YooMoney
GP Terminal de pago
sbol Sberbank Online
invoice Pago por factura
installment Cuotas de Prodamus
credit Crédito T-Bank
monetaworld Tarjetas internacionales (excluyendo Rusia)

Se pueden especificar varios métodos de pago separándolos con una barra vertical (|).

Ejemplo:

prodamus_available_payment_methods = "AC|PC|QW"

Moneda

Puedes especificar la moneda del pago usando la variable prodamus_currency.

Valores admitidos:

  • kzt
  • usd
  • eur

La página de pago generada mostrará el monto en la moneda seleccionada.

Al procesar el callback payment_callback, presta atención a los siguientes campos:

  • currency
  • currency_sum

Estos contienen la moneda del pago y el monto pagado.

Si no se especifican métodos de pago, la página de pago no mostrará ningún método de pago disponible. Primero, habilita los métodos de pago requeridos en tu cuenta de Prodamus.

Procesamiento de resultados de pago

Callbacks de pago

Después de un pago exitoso o fallido, Mavibot recibe callbacks que se pueden usar para determinar el estado del pago.

Los callbacks aparecen en la conversación como mensajes del sistema. Los clientes nunca ven ni envían estos mensajes.

Ejemplos:

Pago exitoso:

453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66_success

Pago fallido:

453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66_fail

Después de un pago exitoso, se crea automáticamente la siguiente variable del cliente:

prodamus_payment_completed = True

Nota: Los callbacks se reciben con un ligero retraso. Después de enviar el enlace de pago, se recomienda notificar al cliente que la confirmación del pago puede tardar unos momentos.

Ejemplo de mensaje:

Después de completar el pago, espera la confirmación del pago.


Formato del callback

Los enlaces de pago generados por el botón de Pago o la función get_prodamus_payment_url() devuelven el siguiente callback después de un pago exitoso:

<secret_key>_success

Ejemplo:

ovg58keefc_success

Donde:

  • <secret_key> es tu clave secreta de Prodamus.
  • _success indica un pago exitoso.

Ejemplo

Crea un disparador o bloque condicional que espere el callback y luego continúe el flujo del chatbot.

Importante: Usa Coincidencia exacta como tipo de coincidencia.

Si deseas generar otro enlace de pago después de un pago exitoso, primero restablece la información de pago existente.

Establece:

payment_sum = 0

Luego asigna un nuevo valor a payment_sum para generar un nuevo enlace de pago.


Callbacks de suscripción

Prodamus también envía callbacks relacionados con el estado de la suscripción.

Los ejemplos incluyen:

  • Suscripción cancelada por el cliente
  • Suscripción reactivada por el cliente
  • Suscripción desactivada después de varios intentos de pago fallidos

Suscripción cancelada

Se envía cuando el cliente cancela manualmente su suscripción.

El período de facturación actual pagado puede permanecer activo.

Puedes usar este callback para:

  • ignorar el evento;
  • notificar a tu equipo;
  • enviar un mensaje de retención al cliente.

Suscripción reactivada

Se envía cuando el cliente restaura una suscripción previamente cancelada.

Dependiendo de tu lógica de negocio, puedes ignorar este callback o eliminar al cliente de un flujo de retención.

Suscripción desactivada

Se envía después de varios intentos de pago recurrente fallidos.


Guardar datos del callback

Después de un pago exitoso, la carga útil completa del callback se almacena en la siguiente variable:

payment_callback

Contiene toda la información de pago devuelta por Prodamus.

Ejemplo:

{
  "date": "2021-03-30T11:44:43+03:00",
  "order_id": "757679",
  "sum": "14.50",
  "customer_phone": "+77777777777",
  "customer_extra": "Product",
  "payment_status": "success"
}

Si especificaste product_name y payment_description al generar el enlace de pago, puedes recuperarlos del callback.

Ejemplo:

product = get(payment_callback, "products[0][name]")
description = get(payment_callback, "customer_extra")

Recupera el monto del pago:

amount = get(payment_callback, "sum")

Nota: El valor de payment_sum siempre se asigna después de las variables opcionales como payment_description y product_name.

Callbacks disponibles

Además de los callbacks de pago exitoso, Prodamus envía varios callbacks del sistema que se pueden usar para automatizar tu chatbot.

Eventos de suscripción

  • Suscripción cancelada por el cliente
  • Suscripción reactivada por el cliente
  • Suscripción vencida

Eventos de fallo de pago

Dependiendo del proveedor de pago, es posible que recibas callbacks con el motivo del fallo, por ejemplo:

  • Pago fallido – Fondos insuficientes
  • Pago fallido – Tarjeta vencida
  • Pago fallido – Límite de tarjeta excedido
  • Pago fallido – Tarjeta reportada como perdida
  • Pago fallido – Error del sistema
  • Pago fallido – Transacción rechazada por el banco emisor
  • Pago fallido – Transacción rechazada por el banco

Otros eventos

  • Notificación de próximo pago recurrente
  • Solicitud de cuotas aprobada
  • Solicitud de cuotas cancelada
  • Solicitud de cuotas rechazada

Puedes crear flujos de chatbot que reaccionen a cualquiera de estos callbacks.

Por ejemplo, puedes notificar automáticamente a los clientes cuando falla un pago recurrente.

Para procesar un motivo de fallo específico, crea un disparador que coincida con el callback correspondiente.

Para procesar todos los pagos fallidos independientemente del motivo, usa una condición que verifique si el callback contiene:

Payment failed

Cualquier callback que contenga el texto Payment failed activará la acción configurada del chatbot.


Pagos por suscripción

Crear una suscripción

Antes de aceptar pagos por suscripción, crea un producto de suscripción en tu cuenta de Prodamus.

Para obtener instrucciones detalladas, consulta la documentación de Prodamus.

Después de crear el producto de suscripción, copia su ID de producto de suscripción.

Asigna el ID de producto de suscripción a la siguiente variable:

prodamus_subscription

Mavibot genera automáticamente la siguiente variable:

prodamus_pay_url

La URL generada se puede mostrar en un mensaje o adjuntar a un botón.

Ejemplo:

https://payform.kz/7p3JR8/

Los pagos por suscripción se procesan exactamente igual que los pagos únicos.

Después de un pago de suscripción exitoso, el número de teléfono del cliente se guarda automáticamente en la variable customer_phone.

Si no se proporciona customer_email, se requiere customer_phone para la gestión de la suscripción.


get_prodamus_subscription_url

También puedes generar enlaces de pago de suscripción usando la Calculadora.

Función:

get_prodamus_subscription_url(
    subscription_id,
    product_name,
    expired,
    customer_phone,
    customer_email,
    discount,
    description,
    extra_params,
    products_for_receipt
)

Ejemplo

Parámetros

Parámetro Descripción
subscription_id Obligatorio. ID del producto de suscripción de tu cuenta de Prodamus.
product_name Obligatorio. Nombre del producto.
expired Fecha de vencimiento del enlace de pago. Soporta dd.MM.yyyy o dd.MM.yyyy HH:mm. También se admiten variables.
customer_phone Número de teléfono del cliente. Opcional si se especifica customer_email.
customer_email Dirección de correo electrónico del cliente. Opcional si se especifica customer_phone.
discount Monto del descuento.
description Descripción del producto.
extra_params Parámetros adicionales de la API de Prodamus.
products_for_receipt Información del recibo. Requerido cuando se usa la fiscalización de Prodamus sin tu propia caja registradora en línea.

Ejemplo

extra_params = {
    "payments_limit": "3"
}

products_for_receipt = "Suscripción al Curso de Fotografía, 2000 RUB/mes, https://example.com/curso"

subscription_link = get_prodamus_subscription_url(618988, "Curso de Fotografía", "27.03.2023 17:02", "79167777771", "[email protected]", 20, "Suscripción Premium", extra_params, products_for_receipt)

Si se ejecutan múltiples funciones de enlace de pago en el mismo bloque de la Calculadora y una de ellas falla, el error se almacena en la variable error_payment_func.

Gestión del Estado de la Suscripción

La gestión de la suscripción solo está disponible para suscripciones activas. No es compatible en modo demo porque no hay una tarjeta de pago vinculada.

Para gestionar una suscripción, debe estar disponible al menos uno de los siguientes parámetros:

  • customer_phone
  • customer_email

Para cancelar o reactivar una suscripción, usa la siguiente función:

delete_subscription_prodamus

Ejemplo de parámetros:

{
  "customer_phone": "#{customer_phone}",
  "id_subscription": "#{prodamus_subscription}",
  "url": "https://demo.payform.ru/",
  "secret_key": "453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66",
  "switcher": "0",
  "profile_id": "12345"
}

Parámetros

Parámetro Descripción
url URL del formulario de pago configurado en Mavibot.
secret_key Tu clave secreta de Prodamus.
id_subscription ID del producto de suscripción.
customer_phone Número de teléfono del suscriptor.
switcher Acción de suscripción: 0 – desactivar, 1 – reactivar.
profile_id ID del perfil del cliente en Prodamus.

Si Prodamus devuelve un ID de perfil, se guarda automáticamente en la variable profile_id. Puedes usar esta variable en lugar de customer_phone o customer_email al gestionar suscripciones.

Ejemplo:

La función devuelve un valor de estado.

Si la operación tiene éxito:

status = ok

prodamus_subscription_switch_status

También puedes gestionar suscripciones usando la Calculadora.

prodamus_subscription_switch_status(
    subscription_id,
    switcher,
    customer_phone,
    customer_email,
    profile_id
)

Parámetros

Parámetro Descripción
subscription_id ID del producto de suscripción.
switcher 0 – desactivar la suscripción, 1 – reactivar la suscripción.
customer_phone Número de teléfono del cliente. Opcional si se proporciona customer_email.
customer_email Dirección de correo electrónico del cliente. Opcional si se proporciona customer_phone.
profile_id ID del perfil del cliente en Prodamus.

Ejemplo 1

Desactivar una suscripción usando el número de teléfono del cliente.

status = prodamus_subscription_switch_status(
    "618117",
    "0",
    "75431312321"
)

Ejemplo 2

Desactivar una suscripción usando la dirección de correo electrónico del cliente.

status = prodamus_subscription_switch_status(
    "618117",
    "0",
    "",
    "[email protected]"
)

La función devuelve ok si la operación tiene éxito. De lo contrario, devuelve un mensaje de error.


Gestión de Descuentos en Suscripciones

Usa la siguiente función para aplicar un descuento a futuros pagos recurrentes.

El descuento se puede aplicar por un número limitado de pagos o de forma indefinida.

prodamus_subscription_discount(
    subscription_id,
    discount,
    customer_phone,
    num,
    profile_id
)

Parámetros

Parámetro Descripción
subscription_id ID de la suscripción.
discount Monto del descuento. Debe ser mayor que cero y no exceder el precio de la suscripción.
customer_phone Número de teléfono del cliente. Opcional si está disponible desde customer_phone.
num Número de pagos futuros a los que se debe aplicar el descuento. Si se omite, el descuento es permanente.
profile_id ID del perfil del cliente en Prodamus.

Si tiene éxito, la función devuelve:

ok

De lo contrario, devuelve una descripción del error.

Actualizar el descuento o el número de pagos requiere llamar a la función nuevamente con los nuevos valores.

Ejemplos

Descuento permanente

Aplica un descuento de 1 a todos los pagos futuros de la suscripción.

result = prodamus_subscription_discount(
    "624034",
    "1"
)

Descuento para los próximos tres pagos

result = prodamus_subscription_discount(
    "624034",
    "2",
    "",
    "3"
)

Descuento decimal

result = prodamus_subscription_discount(
    #{prodamus_subscription},
    10.25,
    #{customer_phone},
    3
)

Cambio de la Fecha del Próximo Pago de Suscripción

Puedes posponer el próximo pago recurrente cambiando su fecha programada.

La nueva fecha de pago siempre debe ser posterior a la fecha de pago actualmente programada.

Esta función se puede usar, por ejemplo, para extender el período de suscripción de un cliente como bonificación.

Usa la siguiente función:

prodamus_subscription_payment_date(
    subscription_id,
    date,
    customer_phone,
    profile_id
)

Parámetros

Parámetro Descripción
subscription_id ID de la suscripción.
date Nueva fecha de pago en el formato dd.MM.yyyy o dd.MM.yyyy HH:mm. Si no se especifica la hora, se usa 00:00.
customer_phone Número de teléfono del cliente. Opcional. Si se omite, el valor se toma de la variable customer_phone.
profile_id ID del perfil del cliente en Prodamus.

Paso de Parámetros Adicionales a Prodamus

Puedes enviar parámetros adicionales compatibles con Prodamus (como fechas de inicio de suscripción o configuraciones de cuotas) al generar un enlace de pago.

Simplemente crea una variable cuyo nombre comience con el prefijo prodamus_.

Ejemplo:

prodamus_some_parameter

Cuando se genera un enlace de pago, todas las variables con el prefijo prodamus_ se incluyen automáticamente en la solicitud enviada a Prodamus.


Prueba de Pagos

Solo se simula el proceso de pago.

Mientras configuras tu integración y los flujos del chatbot, puedes usar las tarjetas de prueba de Prodamus para evitar cobrar fondos reales.

Primero, cambia tu página de pago al Modo demo.

No olvides hacer clic en Guardar después de cambiar el modo.

Tarjetas de Prueba

MIR

Campo Valor
Número de tarjeta 2202 2050 0001 2424
Fecha de vencimiento 05/35
CVV 669

Mastercard

Campo Valor
Número de tarjeta 5469 9801 0004 8525
Fecha de vencimiento 05/26
CVV 041
Código 3-D Secure 111111

Visa

Campo Valor
Número de tarjeta 4006 8009 0096 2514
Fecha de vencimiento 05/26
CVV 941
Código 3-D Secure 111111

Importante: Las tarjetas de prueba activan la misma lógica del chatbot, devoluciones de llamada, automatizaciones e integraciones que los pagos reales.

Una vez que se complete la prueba, cambia la página de pago de nuevo al Modo en vivo para comenzar a aceptar pagos reales.

El interruptor del modo demo debe estar desactivado (interruptor rojo deshabilitado).