# PayPal

O PayPal recebe pagamentos de jogadores do mundo todo, com a conta PayPal ou o
cartão, e o dinheiro cai na sua conta PayPal.

Você precisa de uma **conta PayPal Business**: é gratuita e diferente da conta
pessoal. Se ainda não tem, crie em [paypal.com](https://www.paypal.com/br/business)
e confirme o e-mail antes de continuar.

![O passo a passo do PayPal aberto no painel](shots/payments-paypal.webp)

## 1. Entre no portal de desenvolvedores

1. Acesse [developer.paypal.com](https://developer.paypal.com/).
2. Clique em **Log in to Dashboard** e entre com o e-mail e a senha da conta
   Business.

## 2. Crie o app e copie as credenciais

1. No menu à esquerda, clique em **Apps & Credentials**.
2. Clique em **Create App**, dê um nome (por exemplo, `Rede Pixel`) e clique em
   **Create App**.
3. Copie o **Client ID** e cole no campo do painel.
4. Clique em **Show**, abaixo do Client ID, para revelar o **Client Secret**.
   Copie e cole no campo do painel.

> [!WARNING]
> Guarde o Client Secret num lugar seguro. Se fechar a página sem copiar, vai
> precisar gerar outro.

## 3. Registre o webhook

1. Na mesma página do app, role até **Webhooks** e clique em **Add Webhook**.
2. Em **Webhook URL**, cole a URL que o painel mostra. Ela tem este formato:

   ```text URL do webhook
   https://webhooks.hystore.com.br/api/v1/webhooks/paypal/<id da sua loja>
   ```

3. Em **Event types**, marque só estes eventos:

   ```text Eventos do webhook
   Checkout order approved
   Payment capture completed
   Payment capture denied
   Payment capture refunded
   Payment capture reversed
   ```

4. Clique em **Save Webhook**.
5. O PayPal mostra o webhook criado com um código, como `5XA12345ABCDE`. Copie e
   cole no campo **Webhook ID** do painel.

## 4. Sandbox ou produção

O portal do PayPal começa no modo **Sandbox** (teste, com dinheiro fictício).
Faça uma compra de teste. Quando tudo funcionar, volte ao portal, mude para
**Live** no canto de cima, e repita os passos 2 e 3 para pegar as credenciais e o
Webhook ID de produção. No painel, o cartão do PayPal mostra **PRODUÇÃO** ou
**SANDBOX**.

> [!TIP]
> As credenciais do Sandbox e do Live são diferentes, e o webhook também. Se a loja
> está em produção e o pedido não aprova, confira se o Webhook ID colado é o do
> Live.

## Guia para os jogadores

O botão **Adicionar guia de pagamento à Wiki da loja** cria na wiki da sua loja o
artigo "Como Pagar com PayPal", explicando o passo a passo para o jogador.
