# Coinpayments

* [Como conectar ](#how-to-connect)
* [Como Criar um Link para Pagamento ](#how-to-create-a-link-to-payment)
* [Como processar o resultado ](#how-to-process-the-result)
* [Como verificar o status do pagamento](#how-to-check-the-payment-status)

## Como conectar&#x20;

Para conectar o sistema de pagamento CoinPayments, serão necessários 4 valores: ID do vendedor, segredo IPN (para webhooks), chave de API privada e chave de API pública, além de definir a URL do webhook.&#x20;

Acesse a conta CoinPayments -> Configurações&#x20;

<https://ww.coinpayments.net/index.php?cmd=acct_settings>

![](/files/6186f5d7d549c55cf06a0f90df46c4e51856d811)

Na primeira aba, copie o ID do vendedor **(ID do vendedor)**

Em seguida, vá para a aba Configurações do vendedor e crie e informe a chave secreta IPN - segredo IPN (isso é usado para confirmar que o webhook vem de nós; use uma string complexa e confiável, difícil de adivinhar.)&#x20;

**Vincular IPN** - endereço URL para webhooks, adicione o seguinte: <https://chatter.salebot.pro/coinpayments_callback/result>

Em seguida, vá para a **Chaves de API** seção e gere um par de chaves para acessar a API.

![](/files/1f227d38ca64a074c9901c9e0876b5fdbbeb5a4f)

**Salvar** todas as configurações, copie os dados e vá para as configurações no Salebot. Abra a seção de sistemas de pagamento, selecione **CoinPayments**.

&#x20;                                            ![](/files/a4f09d4c92381713825e2883567cc4fff48cdc2a)

Precisamos inserir os dados.

![](/files/da3994b81c851a64164d5aa6ada95c6d9f89400f)

Para gerar um link de pagamento, você precisa definir o valor das variáveis necessárias: **original\_currency** - Moeda original da transação. **sending\_currency** - Moeda enviada pelo comprador. Por exemplo, se seus produtos têm preço em USD, mas você recebe BTC, você deve usar original\_currency = USD e sending\_currency = BTC. original\_currency e sending\_currency podem ter o mesmo valor se a conversão de moeda não for necessária.

**buyer\_email** é o endereço de e-mail do comprador. Para enviar notificações se o pagamento for menor e você precisar pagar a diferença ou em caso de reembolso. Se essa variável não for especificada, o e-mail será obtido automaticamente a partir da variável email, se o usuário tiver uma no salebot.&#x20;

Depois disso, você deve definir o valor da **payment\_sum** variável (por exemplo, 10 ou 0.0055 (**com ponto decimal!**)), imediatamente depois disso a **paycoinments\_pay\_url** variável aparecerá. Essa variável pode ser exibida como um link ou colocada em um botão com o texto "Pagar". O link é: **<https://www.coinpayments.net/index.php?cmd=checkout\\&id=CPFK5QZ3FKSNWHI75CO8M4BRVkey\\&e7782d2ce24f7d03815606a5c4a882eb>**

Além disso, antes de definir o valor payment\_sum, você pode especificar as seguintes variáveis opcionais para configurar o pagamento.&#x20;

**payment\_description** - o nome do produto, será exibido na página de informações do pagamento e no IPN da transação.&#x20;

**buyer\_name** - nome do comprador&#x20;

## Como Criar um Link para Pagamento&#x20;

Criar um link para o pagamento de 0.44444

&#x20;                                ![](/files/93a425a86f487282eb4cdea2571089680ba61fab)

{% hint style="info" %}
Observe:

* Primeiro especifique o e-mail
* Próximos parâmetros opcionais **first\_name, payment\_description**, etc.
* E por último, atribua o valor da **payment\_sum** variable
  {% endhint %}

Observação: primeiro definimos as variáveis para as configurações, depois payment\_sum. Você pode definir variáveis antes em uma cadeia, não em um único bloco; este é um exemplo.&#x20;

Em seguida, no local correto, imprima a variável **coinpayments\_pay\_url** que contém o link

&#x20;                                              ![](/files/d0c7be1d4f981eb85a07ce8dc81421aa83373878)

{% hint style="warning" %}
Para fazer um pagamento повторен, você deve redefinir payment\_sum, o link gerado anteriormente, e depois redefinir a variável payment\_sum para obter um novo link
{% endhint %}

## Como processar o resultado&#x20;

Após o pagamento bem-sucedido no bot, chegarão callbacks, pelos quais você pode entender que houve um pagamento bem-sucedido. Esses callbacks no sistema aparecem como mensagens do usuário; para que não possam ser enviados pelo usuário, eles consistem nos primeiros 10 caracteres da chave secreta e na indicação \_success, por exemplo: 16831CF4b5\_success

{% hint style="success" %}
Esses callbacks NÃO SÃO VISTOS pelo usuário; eles são exibidos apenas para o operador.
{% endhint %}

{% hint style="danger" %}
O tipo de comparação deve ser "Correspondência exata"
{% endhint %}

Além disso, após o pagamento bem-sucedido, a variável coinpayments\_payment\_completed é definida como true&#x20;

Por exemplo, você pode criar um bloco de processamento de pagamento bem-sucedido com uma condição e exibir a mensagem correspondente ao usuário:

&#x20;

![](/files/2ddaeef275819af6762e7fede1fb1fc7ea2c7c44)

Na conclusão do pagamento, um **coinpayments\_payment\_callback** variável será adicionada ao cliente, contendo os dados de resposta do sistema de pagamento para a transação concluída. Você pode extrair os dados necessários do dicionário usando a **get** .

## Como verificar o status do pagamento&#x20;

Para verificar o status do pagamento, você precisa chamar **coinpayments\_get\_payment\_status()** no campo Calculadora&#x20;

Exemplo:

&#x20;                                           ![](/files/f8653b680be01f2e8d4a46c1c9da749f3fd46031)

&#x20;                                          ![](/files/ae458312493b5d63e237d7c7a10d093119b07ced)

Exemplos dos status:

*Aguardando fundos do comprador...*&#x20;

*Fundos recebidos e confirmação do envio para você em breve…*&#x20;

*Concluído*&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/pt/integrations/payment/coinpayments.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
