Xsolla-logo

Criar tokenServer-side

post/merchants/{merchant_id}/token

Você pode gerar um token com parâmetros de usuário arbitrários. Esses parâmetros são enviados ao obter o token e retornam no payload após uma transação bem-sucedida. Um token só pode conter parâmetros descritos neste documento ou predefinidos por você.

Se qualquer parâmetro for enviado no formato errado, ou possuir o tipo errado, nenhum token será emitido. Você receberá um código HTTP 422 com a descrição do erro no corpo JSON. Em extended_message, você receberá uma informação com os parâmetros exatos que foram enviados incorretamente.

Por padrão, o tempo de vida do token é de 24 horas. Se quiser alterar esse valor, contate seu Gerente de Sucesso do Cliente ou envie um e-mail para csm@xsolla.com. O novo valor será habilitado para todos os projetos da empresa criados na Conta de Distribuidor.

Aviso

O token obtido após a chamada do método API pode ser usado exclusivamente para autorizar outras solicitações. Este token só pode ser utilizado para abrir a interface de pagamento se você integrar o produto Subscriptions.

Para abrir a interface de pagamento em uma nova janela, use o seguinte link: https://secure.xsolla.com/paystation4/?token={token}, onde {token} é o token recebido.

Para fins de teste, use este URL: https://sandbox-secure.xsolla.com/paystation4/?token={token}.

Aviso

Esta chamada de API não contém o trajeto-parâmetro project_id, então é preciso usar a chave API que for válida em todos os projetos da empresa para configurar a autorização.

SecuritybasicAuth
Request
path Parameters
merchant_id
required
integer

ID de comerciante.

Request Body schema: application/json
object

Este objeto contém parâmetros para configurar filtros antifraude. A lista de parâmetros é exibida abaixo. Para adicionar parâmetros personalizados, contate seu Gerente de Sucesso do Cliente ou envie um e-mail para csm@xsolla.com.

active_date
string

Última data de visualização, de acordo com o ISO 8601.

additional_verification
boolean

Se o jogador utiliza procedimentos de verificação de conta ou não.

character_customized
boolean

Se o jogador personalizou seu personagem ou não.

chat_activity
boolean

Se o jogador utiliza a função de chat ou não.

completed_tasks
integer

Quantidade de tarefas/objetivos concluídos.

forum_activity
boolean

Se o jogador utiliza a função do fórum ou não.

items_used
boolean

Se o jogador usa itens de jogo comprados ou não.

karma_points
integer

Karma do jogador.

last_change_password_date
string

Data da última alteração de senha, de acordo com o ISO 8601.

non_premium_currency
number <float>

Quantidade de moedas não Premium.

notifications_enabled
boolean

Se o jogador habilitou notificações ou não.

profile_completed
boolean

Se o jogador adicionou informações adicionais ao seu perfil ou não.

profile_image_added
boolean

Se o jogador enviou uma imagem de perfil nova ou não.

pvp_activity
boolean

Se o jogador participa de batalhas JvJ ou não.

registration_date
string

Data de criação da conta, de acordo com o ISO 8601.

session_time
string

Tempo de sessão médio, de acordo com o ISO 8601.

social_networks_added
boolean

Se o jogador conectou seus perfis de mídias sociais ou não.

total_bans
integer

Quantidade de vezes que o jogador foi banido do chat/fórum.

total_characters
integer

Quantidade de personagens no jogo.

total_clans
integer

Quantidade de clãs dos quais o jogador fez parte.

total_friends
integer

Quantidade de amigos.

total_game_events
integer

Quantidade de eventos no jogo dos quais o jogador participou.

total_gifts
integer

Quantidade de presentes no jogo que o jogador enviou/recebeu.

total_hours
integer

Tempo total de horas no jogo.

total_inventory_value
number <float>

Valor total do inventário (moeda do jogo).

total_sum
number <float>

Quantia total de pagamentos.

tutorial_completed
boolean

Se o jogador concluiu o tutorial do jogo ou não.

unlocked_achievements
integer

Quantidade de conquistas desbloqueadas.

user_level
integer

Nível, reputação ou classificação do jogador.

win_rate
integer

Taxa de vitórias.

object

Objeto que contém dados de compra.

object

Dados de assinatura.

available_plans
Array of strings

Planos de assinatura para exibir na interface de pagamento.

currency
string

Moeda do plano de assinatura a ser utilizado em todos os cálculos.

operation
string

O tipo de operação aplicado ao plano de assinatura do usuário. Para alterar o plano de assinatura, passe o valor change_plan. Você precisa especificar o novo ID de plano no parâmetro purchase.subscription.plan_id.

plan_id
string

ID externo do plano de assinatura. Pode ser encontrado na seção Assinaturas > Planos de assinatura da Conta de Distribuidor.

product_id
string

ID do produto.

trial_days
integer

O período de teste em dias.

object

As configurações para instalar o processo de pagamento e a interface de pagamento para um usuário.

project_id
required
integer

ID Xsolla do jogo. Pode ser encontrado na Conta de Distribuidor.

currency
string

Moeda de compra preferencial. Código da moeda de três letras de acordo com o ISO 4217.

external_id
string

ID da transação no jogo. Deve ser único para cada pagamento. Confira a documentação para obter mais detalhes.

language
string

Idioma da interface. Código de idioma de duas letras minúsculas.

mode
string

Defina como sandbox para testar o processo de pagamento. Nesse caso, use https://sandbox-secure.xsolla.com para acessar a interface de pagamento de testes.

payment_method
integer

ID do método de pagamento.

payment_widget
string

Widget de pagamento. Pode ser paybycash ou giftcard. Se o parâmetro for definido, o usuário é redirecionado ao widget Pay by Cash ou Gift Cards, respectivamente.

Enum: "paybycash" "giftcard"
object

Configurações das políticas de redirecionamento.

delay
integer

Atraso (em segundos) após o qual o usuário é redirecionado automaticamente para o Callback URL.

manual_redirection_action
string

Comportamento do Pay Station acionado pelo usuário ao clicar no botão fechar ou Voltar ao jogo. Pode ser redirect (por padrão) e postmessage. Se definido como redirect, o usuário é redirecionado ao URL passado no token ou especificado na Conta de Distribuidor. Se for postmessage, o usuário não é redirecionado para outras páginas. Ao clicar no ícone de fechar, o evento close é enviado. Ao clicar no botão Voltar ao jogo, o evento return é enviado.

Enum: "redirect" "postmessage"
redirect_button_caption
string

Texto no botão para o redirecionamento manual.

redirect_conditions
string

Status de pagamento para o qual um usuário é redirecionado à Callback URL. Pode ser none, successful, successful_or_canсeled, ou any.

Enum: "none" "successful" "successful_or_canceled" "any"
status_for_manual_redirection
string

Status de pagamento para o qual um botão que redireciona o usuário ao URL de retorno é exibido. Pode ser none, successful, successful_or_canсeled, ou any.

Enum: "none" "successful" "successful_or_canceled" "any"
return_url
string

URL da página onde um usuário é redirecionado depois de fazer um pagamento (Callback URL). Consulte a documentação para obter informações mais detalhadas sobre a configuração de redirecionamentos.

object

Configurações da interface.

object

Configurações do menu.

object

Configurações do submenu dos planos de assinatura.

hidden
boolean

Se o submenu deve ser exibido ou não.

order
integer

Posição do submenu no menu.

object

Moeda virtual das configurações do submenu.

custom_amount
boolean

Se o usuário pode inserir uma quantia arbitrária da moeda virtual na interface de pagamento ou não.

hidden
boolean

Se o submenu deve ser exibido ou não.

order
integer

Posição do submenu no menu.

object

Configurações de itens virtuais do submenu.

hidden
boolean

Se o submenu deve ser exibido ou não.

order
integer

Posição do submenu no menu.

selected_group
string

Grupo a ser exibido depois de abrir a aba de itens virtuais.

selected_item
string

Item a ser exibido depois de abrir a aba de itens virtuais (SKU do item).

currency_format
string

Defina como code para exibir um código monetário ISO 4217 de três letras na interface de pagamento. O símbolo da moeda é exibido em vez do código monetário de três letras por padrão.

object

Configurações de interface para a versão desktop.

object

Configurações de cabeçalho.

close_button
boolean

Se o botão Fechar na interface de pagamento deve ser exibido ou não. O botão fecha a interface de pagamento e redireciona o usuário para o URL especificado no parâmetro settings.return_url. false por padrão.

close_button_icon
string

O ícone do botão Fechar na interface de pagamento.

Enum: Description
arrow

O ícone à esquerda do cabeçalho da interface de pagamento.

cross

O ícone × à direita do cabeçalho da interface de pagamento.

is_visible
boolean

Se o cabeçalho na interface de pagamento deve ser exibido ou não.

type
string

Como mostrar o cabeçalho. Pode ser compact (oculta o nome do projeto e ID do usuário) ou normal (padrão).

Enum: "compact" "normal"
visible_logo
boolean

Se true, o logotipo é exibido no cabeçalho. Para enviar a imagem, abra seu projeto na Conta de Distribuidor e acesse a seção Pay Station > Settings.

visible_name
boolean

Se o nome do projeto deve ser exibido no cabeçalho ou não.

visible_purchase
boolean

Se a descrição da compra (purchase.description.value) deve ser exibida no cabeçalho ou não. true por padrão.

object

Configurações para a lista de planos de assinatura.

description
string

Qualquer texto para ser exibido acima da lista de planos de assinatura disponíveis na interface de pagamento.

display_local_price
boolean

Caso true, se a moeda local do usuário for diferente da definida no plano de assinatura, o usuário poderá ver ambos os preços: um na moeda local, o outro na moeda básica.

gp_quick_payment_button
boolean

A maneira como o método de pagamento Google Pay é exibido. Se true, o botão de pagamento rápido via Google Pay é exibido no topo da interface de pagamento. Se false, o Google Pay é exibido na lista de métodos de pagamento de acordo com o PayRank algorithm. false por padrão.

object
visible_virtual_currency_balance
boolean

Se esse elemento pode ser ocultado ou não na interface de pagamento. true por padrão.

is_cart_open_by_default
boolean

A exibição da lista de itens no carrinho ao abrir a versão móvel da interface de pagamento. Se true, a lista é exibida na visualização estendida. Se for false (padrão) ou os parâmetros não forem passados, a lista é exibida em uma visualização reduzida.

is_independent_windows
boolean

Se os usuários devem ser redirecionados do navegador integrado do inicializador (WebView) ao navegador padrão para fazer uma compra. false por padrão.

is_payment_methods_list_mode
boolean

Se uma lista dos métodos de pagamento disponíveis no país do usuário deve ser exibida ou não ao abrir a interface de pagamento. Se false (padrão), o método de pagamento passando no parâmetro settings.payment_method ou o método selecionado pelo algoritmo PayRank será exibido.

is_prevent_external_link_open
boolean

Se o redirecionamento de links a uma fonte externa está desabilitado ou não. false por padrão. Ao clicar em um link externo, o evento external-link-open é enviado através do mecanismo postMessage. O endereço para o link de redirecionamento é passado no parâmetro url.

is_search_field_hidden
boolean

Se uma barra de pesquisa de métodos de pagamento deve ser exibida ou não na interface de pagamento. Se true, a barra de pesquisa será oculta. false por padrão.

is_show_close_widget_warning
boolean

Se deve ser exibido um aviso sobre o processamento da transação ao focalizar o cursor sobre o ícone × antes de fechar a página de pagamento ou não. Se false for passado, ou o parâmetro não for passado, o aviso não será exibido. true por padrão.

is_three_ds_independent_windows
boolean

Se a verificação 3-D Secure deve ser aberta em uma nova janela do navegador ou não. false por padrão. Passe true se você usa a Content Security Policy (CSP).

layout
string

Local dos elementos principais da interface de pagamento. Você pode abrir a interface de pagamento dentro do seu jogo e/ou trocar as colunas com informações sobre um pedido e métodos de pagamento. Consulte as instruções de personalização para mais detalhes.

Enum: "embed" "column_reverse" "embed_column_reverse"
object
object
close_button
boolean

Se o botão Fechar no Portal de Pagamentos para dispositivos móveis deve ser exibido ou não. O botão fecha o Portal de Pagamentos e redireciona o usuário para o URL especificado no parâmetro settings.return_url. false por padrão.

close_button_icon
string

O ícone do botão Fechar na interface de pagamento.

Enum: Description
arrow

O ícone à esquerda do cabeçalho da interface de pagamento.

cross

O ícone × à direita do cabeçalho da interface de pagamento.

mode
string

Modo de interface no Pay Station. Pode ser apenas user_account. O cabeçalho contém apenas o menu de navegação da conta, e o usuário não pode selecionar um produto ou fazer um pagamento. Esse modo só está disponível no desktop.

theme
string

Tema da interface de pagamento. Pode ser 63295a9a2e47fab76f7708e1 para o tema claro (padrão) ou 63295aab2e47fab76f7708e3 para o tema escuro. Você também pode criar um tema personalizado e passar seu ID nesse parâmetro.

Enum: "63295a9a2e47fab76f7708e1" "63295aab2e47fab76f7708e3"
object

Dados da conta do usuário.

object

Página Minha conta.

enable
boolean

Se a seção deve ser exibida ou não. false por padrão.

order
integer

Posição da seção na lista suspensa.

object

Seção Métodos salvos.

enable
boolean

Especifica se o ícone do lápis na interface de pagamento que leva à página de edição do método de pagamento deve ser exibido ou não. true por padrão.

object

Seção Gerenciar assinaturas.

enable
boolean

Se a seção deve ser exibida ou não. false por padrão.

order
integer

Posição da seção na lista suspensa.

object

Dados do usuário.

required
object
value
required
string

ID de usuário único no jogo armazenado do seu lado. Certifique-se de passar o ID de usuário existente. Em caso de erro, consulte às respostas às Perguntas Frequentes (FAQ).

age
integer

Idade do usuário.

attributes
object

Os atributos do usuário por filtrar a lista de itens, representado como um conjunto JSON válido de pares de valores-chave.

object
allow_modify
boolean

Se um usuário pode alterar o país na interface de pagamento. Se country.value for passado no token, o valor será false por padrão.

value
string

Código do país de duas letras maiúsculas, de acordo com o ISO 3166-1 alpha-2.

object <= 100 characters

O objeto user.email é uma parte integral para a construção de modelos antifraude e ajuda a aumentar as taxas de aceitação. É um requisito tanto da Xsolla quanto dos sistemas de pagamento. Se o parâmetro não for passado, o campo necessário para inserir o e-mail aparece na página de pagamento. O usuário recebe o recibo da compra no e-mail passado no parâmetro ou no definido na página de pagamento.

value
required
string

E-mail do usuário. Deve ser válido, de acordo com o protocolo RFC 822.

allow_modify
boolean

Se um usuário pode inserir seu e-mail na inteface de pagamento. Se o parâmetro user.email.value for passado no token, o valor é definido como false por padrão.

is_legal
boolean

Se o usuário é uma entidade legal.

object

Objeto com dados da entidade legal. O objeto e todos os seus parâmetros são necessários se user.is_legal for true.

address
string

Endereço legal completo.

country
string

País da incorporação. É utilizado o código de país de duas letras maiúsculas, de acordo com o ISO 3166-1 alpha-2.

name
string

Nome legal completo.

vat_id
string

Identificação de contribuinte individual.

object
allow_modify
boolean

Se um usuário pode inserir seu nome na interface de pagamento. Se o parâmetro user.name.value for passado no token, o valor é false por padrão.

value
string

Nome de exibição do usuário.

object or null
value
string

Número de telefone do usuário.

object
value
string

Um parâmetro único que identifica o usuário, conhecido pelo usuário (e-mail, nome de exibição, etc.). Permite que o usuário faça compras fora da loja do jogo (exemplo: via quiosques de dinheiro).

object
value
string

ID do Steam.

object
value
string = 32 characters

ID de usuário único — usado em campanhas de marketing. Só pode conter dígitos e caracteres latinos.

object

Atributos de tráfego.

utm_campaign
string

Título da campanha, transliterado ou traduzido para Inglês.

utm_content
string

Conteúdo da campanha.

utm_medium
string

Canal de tráfego (anúncios contextuais, anúncios de mídia, listas de e-mail, etc.).

utm_source
string

Fonte de tráfego.

utm_term
string

Palavra-chave da campanha. Se definida, os atributos serão feitos com base nas palavras-chaves usadas na segmentação de anúncios, em vez de buscas específicas. No Google Analytics, o utm_term especificado é parte do relatório de termos de busca gerais.

Responses
200

Created.

422

Unprocessable Entity.

Request samples
application/json
{
  • "settings": {
    },
  • "user": {
    }
}
Response samples
application/json
{
  • "token": "eop57k1boA7nnYPtewZ6KEXJyJADEwRT"
}