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.
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.
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.
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.
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.
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.