> For the complete documentation index, see [llms.txt](https://wiki.hyperscripts.com.br/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.hyperscripts.com.br/documentacao/wiki/api-mercado-pago/qr-code.md).

# QR Code

{% hint style="warning" %}
Gerando QR Code

```lua
addCommandHandler( 'gerarqrcode', function( player )
     local mercadopago = exports['[HS]API_Mercadopago']
     local account = getAccountName( getPlayerAccount( player ))
     local serial = getPlayerSerial( player )
     mercadopago:sendRequestAPI( player, {
          resname = getResourceName( getThisResource( ) ); -- Nome do resource.
          description = 'Descrição do pagamento.'; -- Descrição do pagamento ( irá aparecer após a compra no mercado pago )
          installments = 1; -- Quantidade de parcelamento ( deixe em 1 ).
          amount = 100; -- Valor da cobrança.
          position = { 1, 62, 195, 195 }; -- Posição do QR Code na tela do player.
          loading = { 40, 100, 118, 118 }; -- Posição do Loading na tela do player.
          color = { 255, 255, 255 }; -- Cor do loading.
          email = account..'@gmail.com'; -- E-mail de referência ( obrigatório )
          external_reference = 'Account - '..account..' Serial - '..serial; -- Referência externa ( obrigatório )
          width = 150; -- Largura do qrcode ( calculo respc ).
          height = 150; -- Altura do qrcode ( calculo respc ).
          x = 1.62; -- Posição parentX ( calculo respc ).
          y = 3.4; -- Posição parentY ( calculo respc ).
          checkout = { player }; -- Informações adicionais, para utilizar no retorno da função (getPayment).
     } )
end)
```

{% endhint %}

{% hint style="danger" %}
A função abaixo é responsável por verificar o pagamento gerado pelo jogador. No entanto, se você preferir não criar uma função e deixar o sistema realizar a verificação automaticamente, basta marcar *"verify = true"* nas configurações do sistema de API.
{% endhint %}

{% hint style="success" %}
Verificando pagamento

```lua
addCommandHandler('verificarpagamento', function( player )
     local mercadopago = exports['[HS]API_Mercadopago']
     local paymentid, pix = mercadopago:getPaymentID( player )
     if paymentid then
          mercadopago:getRequestAPI( player, { payment_id = tostring( paymentid ); resname = getResourceName(getThisResource( )) } )
     else
          iprint( 'Gere um novo QRCODE!' )
     end
end)
```

{% endhint %}

{% hint style="danger" %}
Crie a export da função getPayment no sistema a qual efetuou a solicitação.

```xml
<export function = 'getPayment' type = 'server' />
```

{% endhint %}

{% hint style="success" %}
Receber a verificação do pagamento e entregar o produto

```lua
getPayment = function( player, dados, infos )
     if dados and dados['status'] == 'approved' and infos then
          if getResourceState( getResourceFromName( '[HS]API_Mercadopago' ) ) ~= 'running' then
               return outputDebugString('[www.hyperscripts.com.br] - Sistema [HS]API_Mercadopago, não encontrado.', 4, 244, 67, 54)
          end
          exports['[HS]API_Mercadopago']:closeQrcode( player )
          -- Código apôs a confirmação.
     end
end
```

{% endhint %}

{% hint style="warning" %}
Observação: A função getPayment deva ser criada no sistema a qual efetuou a solicitação.
{% endhint %}

### Faça o download do sistema de API abaixo:

{% file src="/files/F7xT11OttbKyR1N6Atm9" %}
