Para usar o sistema de pagamento Garanti BBVA (Sanal POS) no Mavibot, você precisa obter as credenciais do terminal POS virtual junto ao banco e inseri-las nas configurações de integração. O pagamento é processado na página segura do banco com confirmação 3D Secure.

Obtendo as credenciais

Assine um contrato com a Garanti BBVA para o serviço Sanal POS (POS virtual). Ao ativar o serviço, solicite ao banco que habilite o Ortak Ödeme (página de pagamento compartilhada) para o seu terminal. Sem esse recurso, os pagamentos via página de pagamento do banco não funcionarão.

O banco fornecerá a você:

  • Merchant ID (Üye İşyeri No) — seu ID de comerciante;
  • Terminal ID — seu ID de terminal;
  • Provision User ID — o nome de usuário de provisionamento (geralmente PROVAUT ou PROVOOS);
  • Provision Password — a senha do usuário de provisionamento.

A Store Key (chave 3D Secure) é criada por você no painel de gerenciamento do Sanal POS (Yönetim → 3D Secure). Certifique-se de salvá-la, pois também é necessária para a integração.

Como conectar Garanti BBVA ao Mavibot?

Na seção Adquirência do Mavibot, selecione Garanti BBVA e insira os seguintes detalhes:

  • Merchant ID — seu ID de comerciante.
  • Terminal ID — seu ID de terminal.
  • Provision User ID — o nome de usuário de provisionamento. Se deixado em branco, PROVAUT será usado.
  • Provision Password — a senha do usuário de provisionamento.
  • Store Key — sua chave 3D Secure.
  • Store Name — o nome exibido aos clientes na página de pagamento do banco. Se deixado em branco, "Loja online" será exibido.
  • Modo de Teste — ative esta opção para testar a integração usando as credenciais de teste do banco. Para processar pagamentos reais, esta opção deve estar desativada.

A integração está concluída.

Função da Calculadora:

get_garanti_payment_url(amount, description, currency, customer_email, language)

Parâmetros:

Parâmetro Descrição Obrigatório Valores Padrão / Permitidos
amount Valor do pagamento.
description Descrição do pagamento. Não
currency Moeda do pagamento. Não TRY (padrão). Valores suportados: TRY, USD, EUR, GBP, JPY
customer_email Endereço de e-mail do cliente. Não
language Idioma da página de pagamento. Não tr (padrão). Valores suportados: tr, en

A função retorna uma URL de pagamento.

Para enviar um botão com um link de pagamento, selecione o tipo de botão Pagamento e escolha Garanti BBVA como provedor de pagamento. Em seguida, insira o nome do produto, o valor do pagamento e, se necessário, a moeda do pagamento.

Exemplo 1: Configuração do Fluxo de Trabalho

Passo 1. Crie um bloco Iniciar.

O bloco Iniciar é normalmente usado para exibir a primeira mensagem de boas-vindas no fluxo de trabalho, juntamente com qualquer informação introdutória que o usuário precise.

Passo 2. Crie o bloco mostrado abaixo.

Passo 3. Vá para as configurações de Conexão.

Você precisará da seguinte expressão regular para verificar se o cliente inseriu um endereço de e-mail válido:

^[-\w.]+@([A-z0-9][-A-z0-9]+.)+[A-z]{2,4}$

Além disso, ative a opção Usuário insere dados e insira customer_email.

Passo 4. Insira a mensagem no segundo bloco.

Passo 5. Crie um terceiro bloco e abra as configurações de Conexão entre o segundo e o terceiro blocos.

Ative o temporizador para prosseguir automaticamente para o próximo bloco.

Passo 6. No terceiro bloco, insira a função na Calculadora.

Exemplo para copiar:

amount = 1000
description = "Produto1 é um produto de grande confiabilidade!"
link = get_garanti_payment_url(amount, description, none, customer_email, none)

Se você quiser aceitar pagamentos em uma moeda diferente da lira turca (TRY), especifique a moeda conforme mostrado abaixo.

Exemplo para copiar:

amount = 1000
description = "Produto1 é um produto de grande confiabilidade!"
currency = "USD"
link = get_garanti_payment_url(amount, description, currency, customer_email, none)

Exemplo 2. Botão de Cobrança

Este exemplo é quase idêntico ao Exemplo 1.

No entanto, em vez de criar um terceiro bloco com uma função para gerar o link de pagamento, você pode criar um botão no segundo bloco.

Na janela que se abre:

  • Insira o texto do botão.
  • Selecione a função Cobrança.
  • Selecione Garanti BBVA como provedor de pagamento.

Em seguida, insira o seguinte:

  • Nome do Produto.
  • Valor do Pagamento.
  • Moeda (opcional).
  • Nome Completo do Cliente (opcional). Você pode configurar isso da mesma forma que configurou a entrada de e-mail do cliente.
  • E-mail do Cliente — insira a variável #{customer_email}.

Em seguida, clique em Adicionar.

Notificações Após o Pagamento

Após o cliente seguir o link de pagamento e concluir o pagamento, uma notificação (callback) será enviada para a conversa.

Para um pagamento bem-sucedido:

SDJ91MTKTT_success 100

Onde:

  • SDJ91MTKTT são os primeiros 10 caracteres da sua Store Key.
  • 100 é o valor do pagamento.

Se o pagamento falhar, a seguinte notificação será enviada:

SDJ91MTKTT_fail 100

Como Enviar uma Resposta para um Pagamento Bem-sucedido ou com Falha

Passo 1. Crie um bloco Gatilho.

Passo 2. No campo de condição, insira o texto da notificação SDJ91MTKTT_success — sem o valor do pagamento — se você quiser reagir a cada pagamento.

Neste caso, o Tipo de Correspondência deve ser definido como Por Palavras-chave.

Alternativamente, insira todo o texto do callback no campo Gatilho se você quiser reagir a um pagamento específico. Neste caso, o Tipo de Correspondência deve ser definido como Correspondência Exata.

Se você quiser continuar o fluxo de trabalho após um pagamento bem-sucedido, pode criar um bloco Iniciar em vez de um bloco Gatilho e continuar construindo o fluxo do seu bot a partir daí.

Variáveis do Cliente Após um Pagamento Bem-sucedido