Configuração de venda de itens
A In-Game Store permite que você monetize jogos por meio da venda no jogo dos seguintes itens por moedas reais ou virtuais:
- moedas do jogo e pacotes de moedas
- itens consumíveis
- itens não consumíveis
- itens de tempo limitado
Bens | Método de venda |
---|---|
Um item (ex.: item virtual ou uma quantia personalizada de moeda virtual) | Chamadas de compra rápida |
Vários itens em um carrinho | Passe o ID de usuário exclusivo. O ID de usuário exclusivo é usado no título como um número ou linha ao chamar os métodos de API da subseção Catálogo do grupo de métodos Itens virtuais & moeda (parâmetro x-unauthorized-id ). O identificador é gerado no lado front-end, por exemplo, por meio da biblioteca de geração de identificadores. |
Para gerenciar o acesso dos usários no seu aplicativo e funcionalidades dos produtos Xsolla, configure um sistema de autenticação. Para isso, você pode usar o Xsolla Login ou implementar seu próprio sistema de autenticação.
Se você implementou seu próprio sistema de autenticação e precisa apenas da interface de pagamento, gere um token de acesso Pay Station e configure webhooks em seu servidor.
Você pode usar o Xsolla Login para sua loja no jogo, se não tiver seus próprios servidores ou quiser usar a solução existente. Os seguintes recursos são executados no lado Xsolla:
- armazenar e gerenciar um catálogo
- gerenciar preços
- armazenar dados sobre preços regionais
- autenticar usuários
- processar transações
Autenticação via login Xsolla
O Xsolla Login suporta o protocolo padrão OAuth 2.0 para registro e autenticação de usuários. O protocolo OAuth 2.0 padrão ajuda a simplificar o desenvolvimento do aplicativo do lado do cliente. O OAuth 2.0 permite atualizar o token de acesso sem envolver o usuário.
Os dados sobre usuários autorizados podem ser armazenados:
- No armazenamento Xsolla. Consulte Get started for Xsolla Login para configurá-lo.
- No banco de dados PlayFab. Use o guia do armazenamento PlayFab para configurá-lo.
- Em um armazenamento personalizado. Use o guia do armazenamento personalizado para configurá-lo.
Autenticação via token de acesso Pay Station
Fluxo geral
O fluxo de interação entre seu cliente e o servidor Xsolla:- Seu cliente envia uma solicitação de autenticação para seu servidor.
- Seu servidor solicita um token de autorização e envia um cabeçalho que contém parâmetros
project_id/merchant_id
eapi_key
para o servidor Xsolla. - O servidor Xsolla retorna o token de acesso Pay Station.
- Seu servidor passa o token de acesso Pay Station para seu cliente.
- O token de acesso Pay Station retornado é usado como um token de autenticação na In-Game Store API e na criação da interface de loja.
Obtenção do token de acesso Pay Station
No back-end do seu aplicativo, implemente um método para obter um token de acesso Pay Station usando uma solicitação HTTP POST.
A Xsolla API usa autenticação HTTP básica. A solicitação deve conter o cabeçalho Authorization: Basic <your_authorization_basic_key>
, onde <your_authorization_basic_key>
está o par ID do comerciante:chave API, codificado de acordo com o padrão Base64. Vá para a Conta de Distribuidor para encontrar esses parâmetros:
- O Merchant ID é exibido:
- Na seção Company settings > Company.
- No URL na barra de endereços do navegador em qualquer página da Conta de Distribuidor. O URL tem o seguinte formato:
https://publisher.xsolla.com/<merchant ID>/<Publisher Account section>
.
- A API key é mostrada na Conta de Distribuidor apenas uma vez, durante a criação, e deve ser armazenada por você. Você pode criar uma nova chave na seguinte seção:
- Company settings > API keys
- Project settings > API keys
Para obter mais informações sobre como trabalhar com chaves de API, consulte a Referência de API.
Principais recomendações:
- Salve a chave de API gerada cuidadosamente. Você pode visualizar a chave de API na Conta de Distribuidor apenas uma vez, durante sua criação.
- Mantenha sua chave de API em segredo. Ela fornece acesso à sua conta pessoal e aos seus projetos na Conta de Distribuidor.
- A chave de API deve ser armazenada em seu servidor, e jamais em arquivos binários ou no frontend.
Se uma chamada de API que você precisa não contiver o trajeto-parâmetro project_id
, use a chave de API que for válida em todos os projetos da empresa para configurar a autorização.
Solicitação HTTP:
POST https://api.xsolla.com/merchant/v2/merchants/{merchant_id}/token
Para obter o token, passe os seguintes parâmetros no corpo da solicitação:
Parâmetro | Tipo | Descrição |
---|---|---|
settings | object | Configurações personalizadas do projeto (objeto). |
settings.project_id | integer | ID do jogo Xsolla. Pode ser encontrado na Conta de Distribuidor ao lado do nome do seu projeto. Obrigatório. |
user | object | Dados do usuário (objeto). |
user.id | object | ID do usuário no sistema de autorização (objeto). |
user.id.value | string | ID de usuário. Obrigatório. |
user.email | object | E-mail do usuário (objeto). |
user.email.value | string | E-mail do usuário. Deve ser válido de acordo com o protocolo RFC 822. Obrigatório. |
user.name | object | Apelido do usuário (objeto).Obrigatório. |
user.name.value | string | Apelido do usuário |
user.steam_id | object | ID do usuário do Steam (objeto). |
user.steam_id.value | string | ID do usuário do Steam. Obrigatório se o aplicativo for publicado no Steam. |
user.playfab_id | object | ID do PlayFab do usuário (objeto) |
user.playfab_id.value | string | ID do usuário PlayFab. Obrigatório se o aplicativo usar os serviços PlayFab para conceder itens. |
custom_parameters
, purchase
, etc.), eles não se destinam a receber um token de autorização.O tempo de vida do token de acesso Pay Station ao trabalhar com a loja e o inventário do jogo é de 1 hora após a última chamada para a Xsolla API. Para alterar o tempo de vida do token de acesso Pay Station, entre em contato com seu Gerente de Sucesso do Cliente ou envie um e-mail para csm@xsolla.com.
Implemente a lógica de recebimento de um novo token de acesso Pay Station após sua validade. É recomendável que você obtenha um novo token no modo segundo plano, para que o usuário não precise fazer login no aplicativo novamente.
Encontrou um erro de texto ou digitação? Selecione o texto e pressione Ctrl+Enter.