Conceda compras ao usuário

Implemente a concessão de compras ao usuário em seu aplicativo usando informações recebidas em webhooks da Xsolla sobre os dados de transação e itens comprados.

Observação

Do lado da Xsolla, existem duas opções para receber webhooks em caso da compra de itens e reembolsos: informações com dados de pagamento e transação e informações sobre itens comprados podem vir separadamente ou combinadas em um único webhook. Por padrão, todos os novos projetos recebem o webhook combinado.

Para mudar para a nova opção de receber webhooks combinados, entre em contato com seus Gerentes de Sucesso do Cliente ou envie um e-mail para csm@xsolla.com.

Mais informações sobre opções de recebimento de webhooks

Recebendo informações em webhooks combinados:

Se você cadastrou sua Conta de Distribuidor após 22 de janeiro de 2025, você receberá todas as informações nos webhooks Pagamento bem-sucedido do pedido (order_paid) e Cancelamento de pedido (order_canceled). Nesse caso, você não precisa processar os webhooks Pagamento (payment) e Reembolso (refund).

Recebendo informações em webhooks separados:

Se você cadastrou sua Conta de Distribuidor no dia 22 de janeiro de 2025 ou antes, você receberá os seguintes webhooks:

Você precisa processar todos os webhooks recebidos.

Para o funcionamento completo da loja no jogo e gerenciamento de pagamentos, é necessário implementar o processamento dos principais webhooks:

Nome do webhookDescrição
Validação do usuário > Validação do usuário (user_validation)É enviado em diferentes estágios do processo de pagamento para garantir que o usuário está registrado no jogo.
Serviços de jogos > Webhooks combinados > Pagamento bem-sucedido do pedido (order_paid)Contém dados de pagamento, detalhes da transação e informações sobre itens comprados. Use os dados do webhook para adicionar itens ao usuário.
Serviços de jogos > Webhooks combinados > Cancelamento de pedido (order_canceled)Contém dados do pagamento cancelado, detalhes da transação e informações sobre itens comprados. Use os dados do webhook para remover os itens comprados.

O esquema abaixo mostra o processo de compra e devolução de itens usando webhooks combinados.

Observação
Reembolsos e estornos podem ser iniciados não apenas pelo usuário, mas também pela Xsolla ou por um provedor de pagamento.

Se a personalização do catálogo de itens for implementada no lado do seu aplicativo, configure o processamento da personalização do catálogo no lado do parceiro.

Observação

Para receber pagamentos reais, você só precisa assinar o acordo de licenciamento e implementar o processamento dos webhooks:

Configuração de webhooks na Conta de Distribuidor

Para habilitar o recebimento de webhooks:

  1. No projeto na Conta de Distribuidor, acesse a seção Configurações do projeto > Webhooks.
  2. No campo Servidor de Webhooks, especifique o URL do seu servidor onde você deseja receber webhooks no formato https://example.com. Você também pode especificar o URL que encontrar em uma ferramenta para testar webhooks.
Aviso
Para transferir dados, é necessário o protocolo HTTPS; o uso do protocolo HTTP não é suportado.
Observação
Para testar webhooks, você pode selecionar qualquer site dedicado, como webhook.site, ou uma plataforma, como ngrok.
  1. Gere uma chave secreta:
    1. Na seção Chaves secretas, selecione Adicionar chave.
    2. Na janela modal que surgir, insira o nome da chave que permitirá identificá-la na lista geral.
    3. Selecione Criar chave.
    4. Selecione Copiar segredo e salve a chave criada do seu lado.
    5. Pressione Pronto.
    6. Confirme que você salvou a chave e pressione Ok, fechar.
Aviso

Recomendações de chave:

  • Salve a chave secreta gerada do seu lado. Você pode visualizar a chave na Conta de Distribuidor apenas uma vez quando ela é criada.
  • Não compartilhe sua chave secreta com ninguém.
  • A chave secreta deve ser armazenada no seu servidor e nunca em binários ou no front-end.
  1. Selecione Enable webhooks.
Rotação de chave secreta

Você pode criar até 5 chaves secretas no seu projeto para habilitar a rotação delas.

Pode haver apenas uma chave secreta ativa por projeto. Se você quiser alterá-la, selecione Definir como ativa na linha de outra chave e confirme a ação. Assim que você migrar com sucesso para uma nova chave, recomendamos excluir as chaves desativadas.

Teste de webhooks na Conta de Distribuidor

Uma seção para testar webhooks é exibida na Conta de Distribuidor abaixo das configurações avançadas depois que você ativar webhooks no seu projeto.

Você pode testar os seguintes webhooks:

Nome da aba para testes de webhooksNome e tipo de webhook
Payments and StoreValidação do usuário > Validação do usuário (user_validation)
Serviços de jogo > Webhooks combinados > Pagamento bem-sucedido do pedido (order_paid)
Serviços de jogos > Webhooks combinados > Cancelamento do pedido (order_canceled)
SubscriptionsValidação do usuário > Validação do usuário (user_validation)
Pagamentos > Pagamento (payment)
DisputaAntifraude > Disputa (dispute)
Observação
Encontre abaixo instruções para testar o cenário com webhooks combinados.

Na ausência de valores reais, você pode inserir valores arbitrários.

Você também pode testar webhooks ao fazer compras no modo sandbox ou online. O reembolso de teste está disponível apenas no modo online.

Enviando respostas ao webhook

Para confirmar o recebimento do webhook, seu servidor deve retornar:

  • O código HTTP 200, 201 ou 204 no caso de uma resposta bem-sucedida.
  • O código HTTP 400 com uma descrição do problema se o usuário especificado não for encontrado ou uma assinatura inválida for passada.

Seu manipulador de webhook também pode retornar um código 5xx em caso de problemas temporários em seu servidor.

Observação
A lista completa e o mecanismo dos webhooks, juntamente com exemplos detalhados de seu processamento, estão descritos na documentação de webhooks.

Próximos passos

  1. Configure a venda de assinaturas (opcional).
  2. Configure a autenticação de usuários.

Configurando informações de item em webhooks

Você pode configurar quais dados de itens são inclusos nos webhooks Pagamento do pedido bem-sucedido e Cancelamento do pedido pela matriz items.

Habilitação da inclusão de parâmetros adicionais

Habilite a inclusão de parâmetros adicionais que indicam:

  • se o item é grátis (is_free)
  • se o item é um bônus (is_bonus)
  • se o item faz parte de um conjunto (is_bundle_content)

Para receber esses parâmetros, você deve trocar seus webhooks para a versão 2 usando a chamada de API Atualizar informações sobre as configurações do webhook. Na versão 1 (padrão), esses parâmetros não estão disponíveis.

Exemplo de uma matriz de items com parâmetros adicionais:

Copy
Full screen
Small screen
 1"items": [
 2      {
 3        "sku": "com.xsolla.item_new_1",
 4        "type": "bundle",
 5        "is_pre_order": false,
 6        "is_free": false,
 7        "is_bonus": false,
 8        "is_bundle_content": false,
 9        "quantity": 1,
10        "amount": "1000",
11        "promotions": []
12      },
13      {
14        "sku": "com.xsolla.gold_1",
15        "type": "virtual_currency",
16        "is_pre_order": false,
17        "is_free": false,
18        "is_bonus": false,
19        "is_bundle_content": true,
20        "quantity": 1500,
21        "amount": "[null]",
22        "promotions": []
23      }
24 ]

Desativação da inclusão de conteúdos de conjunto

Por padrão, webhooks incluem todos os tipos de itens do conjunto como uma lista de itens individuais. Você pode configurar o webhook para incluir apenas o conjunto em si, sem listar seus conteúdos.

Nesse caso, os itens inclusos no conjunto não são inclusos na matriz items. Na matriz exibida acima, o item com o SKU com.xsolla.gold_1, que é parte do conjunto, é excluído.

Exemplo de uma matriz de items quando o conteúdo do conjunto está desativado:

Copy
Full screen
Small screen
 1
 2"items": [
 3      {
 4        "sku": "com.xsolla.item_new_1",
 5        "type": "bundle",
 6        "is_pre_order": false,
 7        "is_free": false,
 8        "is_bonus": false,
 9        "is_bundle_content": false,
10        "quantity": 1,
11        "amount": "1000",
12        "promotions": []
13      }
14 ]

Para desativar a inclusão de conteúdos do conjunto, entre em contato com seu Gerente de Sucesso do Cliente ou envie um e-mail para csm@xsolla.com.

Este artigo foi útil?
Obrigado!
Podemos melhorar alguma coisa? Mensagem
Que pena ouvir isso
Explique porque este artigo não foi útil para você. Mensagem
Obrigado pelo seu feedback!
Avaliaremos sua mensagem e a usaremos para melhorar sua experiência.

Links úteis

Última atualização: 5 de Junho de 2026

Encontrou um erro de texto ou digitação? Selecione o texto e pressione Ctrl+Enter.

Relatar um problema
Nós sempre avaliamos nossos conteúdos. Seu feedback nos ajuda a melhorá-los.
Forneça um e-mail para que possamos responder
Obrigado pelo seu feedback!
Não conseguimos enviar seu feedback
Tente novamente mais tarde ou contate-nos via doc_feedback@xsolla.com.