Como Conectar o Prodamus
Para conectar o Prodamus, você precisa da URL do formulário de pagamento e de uma chave secreta.
A URL do formulário de pagamento é fornecida após o registro. Exemplo:
demo.payform.ru
Você pode obter a chave secreta na sua conta do Prodamus. Você também precisa especificar a URL para onde as notificações de pagamento serão enviadas.

Instruções detalhadas sobre como configurar isso
URL de Notificação:
https://chatter.mavibot.ai/prodamus_callback/result
Esta URL deve ser especificada em dois lugares nas configurações.
Na página principal de configurações, você pode selecionar o modo de operação do formulário de pagamento:
- Modo de demonstração sem pagamentos reais
- Modo ao vivo para aceitar pagamentos

A URL de notificação deve ser especificada em duas seções das configurações do sistema de pagamento:
- Na guia Configurações do Formulário para pagamentos únicos
- Na guia Assinaturas para pagamentos de assinatura

URL de Notificação:
https://chatter.mavibot.ai/prodamus_callback/result
Para configurar pagamentos de assinatura, abra a guia Assinaturas e insira a URL de notificação:
https://chatter.mavibot.ai/prodamus_callback/result

Importante: Após inserir a URL, certifique-se de clicar em Salvar.
Para conectar o Prodamus no Mavibot, abra a seção Adquirência.

Em seguida, insira a URL do formulário de pagamento e a chave secreta nos campos correspondentes.

Importante: Não inclua
https://ao inserir a URL do formulário de pagamento.
A conexão está concluída. A seguir, vamos ver como usar esta funcionalidade.
Criando um Link de Pagamento
Botão de Pagamento
Um link de pagamento pode ser gerado usando um botão com a função Pagamento.
Veja o guia sobre como criar um botão de pagamento:
/docs/chatbot-builder-buttons-payment-button
As seções abaixo descrevem todas as configurações disponíveis do botão.
Parâmetros Obrigatórios
Para gerar um link de pagamento, os seguintes campos são obrigatórios:
- Valor
- Nome do Produto
- Produtos para Recibo (obrigatório apenas se você não tiver seu próprio caixa registradora online e quiser que o Prodamus gere recibos fiscais)
Quando o cliente abre a página de pagamento, as informações do produto e o preço já estão preenchidos. O cliente só precisa inserir seus dados de contato.
Se o e-mail e/ou telefone do cliente forem especificados nas configurações do botão, eles também serão pré-preenchidos na página de pagamento.

Configurações do Botão
Texto – O texto exibido no botão de pagamento.
Função – Selecione Pagamento para gerar um link de pagamento.
Sistema de Pagamento – Exibe os sistemas de pagamento conectados ao projeto.
Se nenhum sistema de pagamento estiver conectado, este tipo de botão não estará disponível.
Nome do Produto (obrigatório) – Especifique o nome exato do produto.
Por exemplo, em vez de:
Telefone
use:
Smartphone Xiaomi, Modelo ...
Nota: Aspas duplas (
") não são permitidas no nome do produto. Remova-as ou substitua-as por aspas simples.
Valor (obrigatório) – O valor do pagamento.
Parâmetros Adicionais
Clique em Informações Adicionais para configurar campos opcionais:
- Descrição do pedido
- Desconto (RUB)
- Variável de e-mail do cliente
- Variável de telefone do cliente
- Data de expiração do link
- ID do produto de assinatura
- Produtos para recibo
Notificar ao Clicar – Ative esta opção se quiser receber uma notificação na conversa do cliente quando ele clicar no botão de pagamento.

Esta notificação pode ser usada para construir lógica adicional do chatbot.
Muitos provedores de pagamento suportam caixas registradoras em nuvem necessárias para conformidade fiscal. Verifique a documentação do seu provedor de pagamento para obter informações sobre geração de recibos e fiscalização.
A página de pagamento aberta pelo botão se parece com isto:

Configurações Adicionais do Link de Pagamento

Descrição do Pedido – O texto inserido neste campo é exibido na página de pagamento na seção Informações Adicionais.
Desconto – Especifique o valor do desconto em RUB. Valores decimais são suportados usando ponto como separador (por exemplo, 50.99).
Na página de pagamento, o desconto é aplicado automaticamente. O preço original é riscado e o valor com desconto é exibido como o total do pagamento.
Variável de E-mail do Cliente (opcional se um número de telefone for fornecido) – O endereço de e-mail do cliente ou uma variável que o contenha, por exemplo:
#{email}
Variável de Telefone do Cliente (opcional se um endereço de e-mail for fornecido) – Uma variável contendo o número de telefone do cliente no formato:
79000000000
Por exemplo:
#{phone}
Um endereço de e-mail ou um número de telefone deve ser fornecido.
Data de Expiração do Link – Especifique a data de expiração no formato:
dd.MM.yyyy HH:mm
Exemplo:
25.01.2021 11:00
Você também pode usar uma variável, por exemplo:
#{link_expired}
ID do Produto de Assinatura – Insira o ID do produto de assinatura para criar um pagamento recorrente.
Para obter informações sobre como criar produtos de assinatura, consulte a documentação do Prodamus.
Se um ID de produto de assinatura for especificado:
- o valor do pagamento é ignorado;
- as informações do produto são carregadas do produto de assinatura no Prodamus;
- o número de telefone do cliente é necessário para gerenciamento de assinatura;
- o callback contém o ID do produto de assinatura após um pagamento bem-sucedido.
Produtos para Recibo (condicionalmente obrigatório) – Obrigatório para fiscalização de pagamento através do Prodamus se você não usar seu próprio caixa registradora online.
Especifique a descrição do produto, o preço e um link para o conteúdo adquirido.
Exemplo:
Curso "Fotografia Avançada", preço 3000 RUB,
https://example.com/curso
Comportamento de Expiração do Link
Se você especificar uma data de expiração do link, o botão de pagamento se comporta de forma diferente dependendo se o link ainda é válido.
Link Expirado
Se o cliente abrir o link de pagamento após ele ter expirado, o pagamento não pode ser concluído e ele verá a seguinte mensagem:

Nota: A data de expiração deve ser posterior à data atual. Caso contrário, o cliente não poderá concluir o pagamento.
Botão de Pagamento Inativo
Se o cliente solicitar o botão de pagamento após o link já ter expirado, o botão não é exibido.
Em vez disso, a seguinte variável do cliente é criada:
error_payment_button
Valor:
Erro: A data de expiração do link deve ser posterior à data atual.
Recomendamos lidar com esta situação no fluxo do seu chatbot.
Crie uma condição que verifique:
error_payment_button == "Erro: A data de expiração do link deve ser posterior à data atual."
Se a condição for atendida, envie uma mensagem como:
Desculpe, você não conseguiu concluir o pagamento a tempo. O link de pagamento expirou.


Variáveis do Cliente Criadas pelo Botão de Pagamento
Quando um cliente recebe uma mensagem contendo um botão Pagamento, o Mavibot cria automaticamente as seguintes variáveis.
__payments
Uma variável de sistema que armazena o valor do pagamento e o identificador do link de pagamento gerado. É usada para corresponder callbacks recebidos do sistema de pagamento.
Importante: Não modifique ou exclua a variável de sistema
__payments.
error_payment_button
Esta variável é criada automaticamente se ocorrer um erro ao gerar o botão de pagamento.
Ela contém a mensagem de erro gerada pelo Mavibot ou o erro retornado pelo sistema de pagamento.
Os valores das variáveis ficam disponíveis após o chatbot passar para o próximo bloco.
Processando Resultados de Pagamento
Pagamento Bem-sucedido
Após um pagamento bem-sucedido, o Mavibot recebe automaticamente o seguinte callback:
<primeiros_10_caracteres_da_chave_secreta>_success <valor_do_pagamento>
Exemplo:
ovg58keefc_success 44
Onde:
-
ovg58keefc— os primeiros 10 caracteres da chave secreta do Prodamus. -
_success— indica um pagamento bem-sucedido. -
44— o valor do pagamento.
Os clientes nunca veem callbacks de pagamento. Eles são visíveis apenas na seção Clientes e podem ser usados para construir a lógica do chatbot.
Exemplo
Passo 1
Crie um bloco contendo o botão Pagamento.
Passo 2
Crie um bloco Gatilho ou configure uma seta que leva ao próximo bloco.
Cole o callback de pagamento no gatilho ou na condição de correspondência.
O mesmo callback também pode ser configurado no bloco Condição Inicial se seu chatbot exigir processamento global de pagamento.
Importante: Use Correspondência exata ou Contém palavras-chave como tipo de correspondência.
Nota: Se você processar callbacks em uma seta específica, certifique-se de que o cliente ainda esteja no bloco que contém essa seta quando o callback chegar. Caso contrário, a transição não ocorrerá. Para fluxos de chatbot onde os clientes podem se mover entre blocos, é recomendado processar callbacks no bloco Condição Inicial.

Pagamento de Assinatura Bem-sucedido
Para produtos de assinatura, o formato do callback é:
<primeiros_10_caracteres_da_chave_secreta>_success <id_do_produto_de_assinatura>
Exemplo:
214009eefc_success 618117
Onde:
-
214009eefc— os primeiros 10 caracteres da chave secreta. -
_success— pagamento bem-sucedido. -
618117— o ID do produto de assinatura.

Pagamento Falhou
Se o pagamento falhar, o Mavibot recebe o seguinte callback:
<primeiros_10_caracteres_da_chave_secreta>_fail <valor_do_pagamento>
Exemplo:
ovg58keefc_fail 44
Onde:
-
ovg58keefc— os primeiros 10 caracteres da chave secreta. -
_fail— pagamento falhou. -
44— o valor do pagamento.
Nota: Nem todos os provedores de pagamento enviam callbacks para pagamentos com falha.
Discrepância no Valor do Pagamento
Se o valor pago for diferente do valor especificado no botão de pagamento, o Mavibot recebe o seguinte callback:
<primeiros_10_caracteres_da_chave_secreta>_different_amounts <id_do_pagamento>
Exemplo:
ovg58keefc_different_amounts 123456
Onde:
-
ovg58keefc— os primeiros 10 caracteres da chave secreta. -
_different_amounts— indica que o valor pago difere do valor esperado. -
123456— o ID único do pagamento.
Função get_prodamus_payment_url da Calculadora
Você pode gerar um link de pagamento usando a função get_prodamus_payment_url no bloco Calculadora.
Atribua o resultado da função a qualquer variável.
Você pode escolher qualquer nome de variável. As capturas de tela abaixo usam nomes de variáveis de exemplo.
O link de pagamento gerado é armazenado na variável e pode ser usado em uma mensagem ou anexado a um botão.
Exemplo de link de pagamento:
https://payform.ru/7p3JR8/
Exemplo

Sintaxe da Função
your_variable = get_prodamus_payment_url(
amount,
product_name,
expired,
customer_phone,
customer_email,
discount,
description,
extra_params,
products_for_receipt
)
Parâmetros
| Parâmetro | Descrição |
|---|---|
amount |
Obrigatório. Valor do pagamento. Aceita números inteiros ou decimais (por exemplo, 25 ou 52.5). |
product_name |
Obrigatório. Nome do produto. |
expired |
Data de expiração do link de pagamento. Formatos suportados: dd.MM.yyyy ou dd.MM.yyyy HH:mm. Você também pode usar variáveis ou expressões como current_date + 2. Passe '', "" ou None para ignorar este parâmetro. |
customer_phone |
Número de telefone do cliente. Opcional se customer_email for fornecido. Passe '' ou "" para ignorar. |
customer_email |
Endereço de e-mail do cliente. Opcional se customer_phone for fornecido. Passe '' ou "" para ignorar. |
discount |
Valor do desconto. Aceita números inteiros ou decimais (por exemplo, 25 ou 63.5). Passe '' ou "" para ignorar. |
description |
Descrição do produto. Se omitido, o Prodamus usa automaticamente Payment for order order_id. Passe '' ou "" para ignorar. |
extra_params |
Parâmetros adicionais da API do Prodamus não incluídos nos argumentos da função. Passe '', "" ou None para ignorar. |
products_for_receipt |
Dados do recibo no formato "descrição do produto - preço - URL do conteúdo adquirido". Obrigatório se você usar a fiscalização do Prodamus sem seu próprio caixa online. |
Exemplos de Data de Expiração
Expirar após dois dias:
expired = current_date + 2
Expirar em 30 minutos:
time = current_time + 30
expired = "#{current_date} #{time}"
Exemplo de extra_params
extra_params = {
"payments_limit": "3",
"payment_method": "vsegdada_installment_0_0_6"
}
Consulte a documentação da API REST do Prodamus para a lista completa de parâmetros suportados.
Exemplo
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)
Neste exemplo:
-
extra_paramscontém parâmetros de pagamento adicionais. -
products_for_receiptcontém informações do recibo fiscal. -
payment_linkarmazena a URL de pagamento gerada.
Se várias funções de link de pagamento forem usadas no mesmo bloco Calculadora e uma delas falhar, o erro é gravado na variável
error_payment_func. Apenas o erro da última função é armazenado.
Gerando um Link de Pagamento Usando payment_sum
Nota: O valor de
payment_sumé aplicado após todas as variáveis opcionais, comopayment_description,product_namee outras.
Em vez de chamar get_prodamus_payment_url(), você pode gerar um link de pagamento simplesmente atribuindo um valor à variável payment_sum no bloco Calculadora.
Após a atribuição de payment_sum, o Mavibot cria automaticamente a variável prodamus_pay_url contendo o link de pagamento.
Exemplo:
https://payform.ru/7p3JR8/
Você pode exibir esta variável em uma mensagem ou usá-la como a URL de um botão.
Variáveis Opcionais
As seguintes variáveis podem ser definidas antes de atribuir payment_sum.
| Variável | Descrição |
|---|---|
product_name |
Nome do produto. Se omitido, o valor padrão é Payment for order order_id. |
payment_description |
Descrição do produto exibida na página de pagamento. |
discount_value |
Valor do desconto. Exemplo: 25 ou 50.25. |
customer_phone |
Número de telefone do cliente. |
customer_email |
Endereço de e-mail do cliente. |
link_expired |
Data de expiração do link de pagamento. |
currency |
Moeda do pagamento. Valores suportados: rub, usd, eur, kzt. Deve estar em minúsculas. |
payment_title |
Título do pagamento (até 127 caracteres). O padrão é Payment payment_id. |
locale |
Idioma da página de pagamento (por exemplo, ru-RU, en-US, fr-FR). |
products_for_receipt |
Informações do recibo. Obrigatório se você usar a fiscalização do Prodamus sem seu próprio caixa online. |
payment_sum |
Obrigatório. Valor do pagamento. |
Expiração do Link
Você pode especificar a data de expiração de várias maneiras.
Data específica:
25.01.2021
Data e hora específicas:
25.01.2021 12:23
Usando variáveis:
time = current_time + 30
link_expired = "#{current_date} #{time}"
Ou:
link_expired = current_date + 2
Exemplo
Primeiro, defina o valor do pagamento.

Em seguida, use a variável prodamus_pay_url gerada onde quer que você precise enviar o link de pagamento.

Métodos de Pagamento Disponíveis
A variável prodamus_available_payment_methods deve ser definida antes de payment_sum.
Os valores suportados incluem:
| Valor | Descrição |
|---|---|
AC |
Cartões bancários russos |
ACkz |
Cartões bancários do Cazaquistão |
ACf |
Cartões bancários da CEI (excluindo Rússia) |
ACEURNMBX |
Cartões em EUR (excluindo Rússia e Bielorrússia) |
SBP |
Sistema de Pagamentos Mais Rápidos (Rússia) |
QW |
Carteira QIWI |
PC |
YooMoney |
GP |
Terminal de pagamento |
sbol |
Sberbank Online |
invoice |
Pagamento por fatura |
installment |
Parcelamento Prodamus |
credit |
Crédito T-Bank |
monetaworld |
Cartões internacionais (excluindo Rússia) |
Vários métodos de pagamento podem ser especificados separando-os com uma barra vertical (|).
Exemplo:
prodamus_available_payment_methods = "AC|PC|QW"
Moeda
Você pode especificar a moeda do pagamento usando a variável prodamus_currency.
Valores suportados:
kztusdeur
A página de pagamento gerada exibirá o valor na moeda selecionada.
Ao processar o callback payment_callback, preste atenção nos seguintes campos:
currencycurrency_sum
Eles contêm a moeda do pagamento e o valor pago.
Se nenhum método de pagamento for especificado, a página de pagamento não exibirá nenhum método de pagamento disponível. Ative os métodos de pagamento necessários em sua conta Prodamus primeiro.
Processando Resultados de Pagamento
Callbacks de Pagamento
Após um pagamento bem-sucedido ou malsucedido, o Mavibot recebe callbacks que podem ser usados para determinar o status do pagamento.
Os callbacks aparecem na conversa como mensagens do sistema. Os clientes nunca veem ou enviam essas mensagens.
Exemplos:
Pagamento bem-sucedido:
453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66_success
Pagamento malsucedido:
453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66_fail
Após um pagamento bem-sucedido, a seguinte variável do cliente é criada automaticamente:
prodamus_payment_completed = True
Nota: Os callbacks são recebidos com um pequeno atraso. Após enviar o link de pagamento, é recomendável notificar o cliente de que a confirmação do pagamento pode levar alguns instantes.
Exemplo de mensagem:
Após concluir o pagamento, aguarde a confirmação do pagamento.
Formato do Callback
Os links de pagamento gerados pelo botão Pagamento ou pela função get_prodamus_payment_url() retornam o seguinte callback após um pagamento bem-sucedido:
<secret_key>_success
Exemplo:
ovg58keefc_success
Onde:
-
<secret_key>é sua chave secreta do Prodamus. -
_successindica um pagamento bem-sucedido.
Exemplo
Crie um gatilho ou bloco condicional que aguarde o callback e então continue o fluxo do chatbot.

Importante: Use Correspondência exata como tipo de correspondência.
Se você quiser gerar outro link de pagamento após um pagamento bem-sucedido, primeiro redefina as informações de pagamento existentes.
Defina:
payment_sum = 0
Em seguida, atribua um novo valor a payment_sum para gerar um novo link de pagamento.
Callbacks de Assinatura
O Prodamus também envia callbacks relacionados ao status da assinatura.
Exemplos incluem:
- Assinatura cancelada pelo cliente
- Assinatura reativada pelo cliente
- Assinatura desativada após várias tentativas de pagamento malsucedidas

Assinatura Cancelada
Enviado quando o cliente cancela manualmente sua assinatura.
O período de cobrança pago atual ainda pode permanecer ativo.
Você pode usar este callback para:
- ignorar o evento;
- notificar sua equipe;
- enviar uma mensagem de retenção ao cliente.
Assinatura Reativada
Enviado quando o cliente restaura uma assinatura previamente cancelada.
Dependendo da sua lógica de negócios, você pode ignorar este callback ou remover o cliente de um fluxo de retenção.
Assinatura Desativada
Enviado após várias tentativas de pagamento recorrente malsucedidas.
Salvando Dados do Callback
Após um pagamento bem-sucedido, a carga útil completa do callback é armazenada na seguinte variável:
payment_callback
Ela contém todas as informações de pagamento retornadas pelo Prodamus.
Exemplo:
{
"date": "2021-03-30T11:44:43+03:00",
"order_id": "757679",
"sum": "14.50",
"customer_phone": "+77777777777",
"customer_extra": "Product",
"payment_status": "success"
}
Se você especificou product_name e payment_description ao gerar o link de pagamento, pode recuperá-los do callback.
Exemplo:
product = get(payment_callback, "products[0][name]")
description = get(payment_callback, "customer_extra")
Recupere o valor do pagamento:
amount = get(payment_callback, "sum")
Nota: O valor de
payment_sumé sempre atribuído após variáveis opcionais comopayment_descriptioneproduct_name.
Callbacks Disponíveis
Além dos callbacks de pagamento bem-sucedido, o Prodamus envia vários callbacks do sistema que podem ser usados para automatizar seu chatbot.
Eventos de Assinatura
- Assinatura cancelada pelo cliente
- Assinatura reativada pelo cliente
- Assinatura expirada
Eventos de Falha de Pagamento
Dependendo do provedor de pagamento, você pode receber callbacks com o motivo da falha, por exemplo:
- Pagamento falhou – Fundos insuficientes
- Pagamento falhou – Cartão expirado
- Pagamento falhou – Limite do cartão excedido
- Pagamento falhou – Cartão reportado como perdido
- Pagamento falhou – Erro do sistema
- Pagamento falhou – Transação recusada pelo banco emissor
- Pagamento falhou – Transação recusada pelo banco
Outros Eventos
- Notificação de pagamento recorrente próximo
- Pedido de parcelamento aprovado
- Pedido de parcelamento cancelado
- Pedido de parcelamento rejeitado
Você pode criar fluxos de chatbot que reagem a qualquer um desses callbacks.
Por exemplo, você pode notificar automaticamente os clientes quando um pagamento recorrente falha.
Para processar um motivo de falha específico, crie um gatilho que corresponda ao callback correspondente.

Para processar todos os pagamentos malsucedidos, independentemente do motivo, use uma condição que verifique se o callback contém:
Payment failed

Qualquer callback contendo o texto Payment failed acionará a ação configurada do chatbot.
Pagamentos de Assinatura
Criando uma Assinatura
Antes de aceitar pagamentos de assinatura, crie um produto de assinatura na sua conta Prodamus.
Para instruções detalhadas, consulte a documentação do Prodamus.
Após criar o produto de assinatura, copie o ID do Produto de Assinatura.

Atribua o ID do Produto de Assinatura à seguinte variável:
prodamus_subscription
O Mavibot gera automaticamente a seguinte variável:
prodamus_pay_url
A URL gerada pode ser exibida em uma mensagem ou anexada a um botão.
Exemplo:
https://payform.kz/7p3JR8/
Os pagamentos de assinatura são processados exatamente da mesma forma que os pagamentos únicos.
Após um pagamento de assinatura bem-sucedido, o número de telefone do cliente é salvo automaticamente na variável customer_phone.
Se
customer_emailnão for fornecido,customer_phoneé obrigatório para o gerenciamento da assinatura.
get_prodamus_subscription_url
Você também pode gerar links de pagamento de assinatura usando a Calculadora.
Função:
get_prodamus_subscription_url(
subscription_id,
product_name,
expired,
customer_phone,
customer_email,
discount,
description,
extra_params,
products_for_receipt
)
Exemplo

Parâmetros
| Parâmetro | Descrição |
|---|---|
subscription_id |
Obrigatório. ID do Produto de Assinatura da sua conta Prodamus. |
product_name |
Obrigatório. Nome do produto. |
expired |
Data de expiração do link de pagamento. Suporta dd.MM.yyyy ou dd.MM.yyyy HH:mm. Variáveis também são suportadas. |
customer_phone |
Número de telefone do cliente. Opcional se customer_email for especificado. |
customer_email |
Endereço de e-mail do cliente. Opcional se customer_phone for especificado. |
discount |
Valor do desconto. |
description |
Descrição do produto. |
extra_params |
Parâmetros adicionais da API Prodamus. |
products_for_receipt |
Informações do recibo. Obrigatório ao usar a fiscalização Prodamus sem seu próprio caixa online. |
Exemplo
extra_params = {
"payments_limit": "3"
}
products_for_receipt = "Assinatura do Curso de Fotografia, 2000 RUB/mês, https://example.com/course"
subscription_link = get_prodamus_subscription_url(618988, "Curso de Fotografia", "27.03.2023 17:02", "79167777771", "[email protected]", 20, "Assinatura Premium", extra_params, products_for_receipt)
Se várias funções de link de pagamento forem executadas no mesmo bloco da Calculadora e uma delas falhar, o erro é armazenado na variável
error_payment_func.
Gerenciando o Status da Assinatura
O gerenciamento da assinatura está disponível apenas para assinaturas ativas. Não é suportado no modo de demonstração porque nenhum cartão de pagamento está vinculado.
Para gerenciar uma assinatura, pelo menos um dos seguintes parâmetros deve estar disponível:
customer_phonecustomer_email
Para cancelar ou reativar uma assinatura, use a seguinte função:
delete_subscription_prodamus
Exemplo 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 | Descrição |
|---|---|
url |
URL do formulário de pagamento configurado no Mavibot. |
secret_key |
Sua chave secreta Prodamus. |
id_subscription |
ID do Produto de Assinatura. |
customer_phone |
Número de telefone do assinante. |
switcher |
Ação da assinatura: 0 – desativar, 1 – reativar. |
profile_id |
ID do perfil do cliente no Prodamus. |
Se um ID de perfil for retornado pelo Prodamus, ele é salvo automaticamente na variável
profile_id. Você pode usar esta variável em vez decustomer_phoneoucustomer_emailao gerenciar assinaturas.
Exemplo:

A função retorna um valor de status.
Se a operação for bem-sucedida:
status = ok
prodamus_subscription_switch_status
Você também pode gerenciar assinaturas usando a Calculadora.
prodamus_subscription_switch_status(
subscription_id,
switcher,
customer_phone,
customer_email,
profile_id
)
Parâmetros
| Parâmetro | Descrição |
|---|---|
subscription_id |
ID do Produto de Assinatura. |
switcher |
0 – desativar a assinatura, 1 – reativar a assinatura. |
customer_phone |
Número de telefone do cliente. Opcional se customer_email for fornecido. |
customer_email |
Endereço de e-mail do cliente. Opcional se customer_phone for fornecido. |
profile_id |
ID do perfil do cliente no Prodamus. |
Exemplo 1
Desativar uma assinatura usando o número de telefone do cliente.
status = prodamus_subscription_switch_status(
"618117",
"0",
"75431312321"
)
Exemplo 2
Desativar uma assinatura usando o endereço de e-mail do cliente.
status = prodamus_subscription_switch_status(
"618117",
"0",
"",
"[email protected]"
)
A função retorna
okse a operação for bem-sucedida. Caso contrário, retorna uma mensagem de erro.
Gerenciando Descontos de Assinatura
Use a seguinte função para aplicar um desconto a futuros pagamentos recorrentes.
O desconto pode ser aplicado por um número limitado de pagamentos ou indefinidamente.
prodamus_subscription_discount(
subscription_id,
discount,
customer_phone,
num,
profile_id
)
Parâmetros
| Parâmetro | Descrição |
|---|---|
subscription_id |
ID da assinatura. |
discount |
Valor do desconto. Deve ser maior que zero e não exceder o preço da assinatura. |
customer_phone |
Número de telefone do cliente. Opcional se disponível em customer_phone. |
num |
Número de pagamentos futuros aos quais o desconto deve ser aplicado. Se omitido, o desconto é permanente. |
profile_id |
ID do perfil do cliente no Prodamus. |
Se bem-sucedido, a função retorna:
ok
Caso contrário, retorna uma descrição do erro.
Atualizar o desconto ou a contagem de pagamentos requer chamar a função novamente com os novos valores.
Exemplos
Desconto permanente
Aplicar um desconto de 1 a todos os pagamentos futuros da assinatura.
result = prodamus_subscription_discount(
"624034",
"1"
)

Desconto para os próximos três pagamentos
result = prodamus_subscription_discount(
"624034",
"2",
"",
"3"
)

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


Alterando a Próxima Data de Pagamento da Assinatura
Você pode adiar o próximo pagamento recorrente alterando sua data programada.
A nova data de pagamento deve ser sempre posterior à data de pagamento atualmente programada.
Este recurso pode ser usado, por exemplo, para estender o período de assinatura de um cliente como um bônus.
Use a seguinte função:
prodamus_subscription_payment_date(
subscription_id,
date,
customer_phone,
profile_id
)
Parâmetros
| Parâmetro | Descrição |
|---|---|
subscription_id |
ID da assinatura. |
date |
Nova data de pagamento no formato dd.MM.yyyy ou dd.MM.yyyy HH:mm. Se nenhum horário for especificado, 00:00 é usado. |
customer_phone |
Número de telefone do cliente. Opcional. Se omitido, o valor é obtido da variável customer_phone. |
profile_id |
ID do perfil do cliente no Prodamus. |
Passando Parâmetros Adicionais para o Prodamus
Você pode enviar parâmetros adicionais suportados pelo Prodamus (como datas de início da assinatura ou configurações de parcelamento) ao gerar um link de pagamento.
Basta criar uma variável cujo nome comece com o prefixo prodamus_.
Exemplo:
prodamus_some_parameter
Quando um link de pagamento é gerado, todas as variáveis com o prefixo prodamus_ são automaticamente incluídas na solicitação enviada ao Prodamus.
Testando Pagamentos
Apenas o processo de pagamento é simulado.
Enquanto configura sua integração e fluxos de chatbot, você pode usar cartões de teste Prodamus para evitar cobranças de fundos reais.
Primeiro, alterne sua página de pagamento para o Modo de demonstração.
Não se esqueça de clicar em Salvar após alterar o modo.

Cartões de Teste
MIR
| Campo | Valor |
|---|---|
| Número do Cartão | 2202 2050 0001 2424 |
| Data de Validade | 05/35 |
| CVV | 669 |
Mastercard
| Campo | Valor |
|---|---|
| Número do Cartão | 5469 9801 0004 8525 |
| Data de Validade | 05/26 |
| CVV | 041 |
| Código 3-D Secure | 111111 |
Visa
| Campo | Valor |
|---|---|
| Número do Cartão | 4006 8009 0096 2514 |
| Data de Validade | 05/26 |
| CVV | 941 |
| Código 3-D Secure | 111111 |
Importante: Os cartões de teste acionam a mesma lógica do chatbot, callbacks, automações e integrações que os pagamentos reais.
Após concluir os testes, alterne a página de pagamento de volta para o Modo ao vivo para começar a aceitar pagamentos reais.
A alternância do modo de demonstração deve estar desativada (interruptor vermelho desabilitado).