# Criar 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. AvisoO 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}. AvisoEsta 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. Endpoint: POST /merchants/{merchant_id}/token Version: 2.0 Security: basicAuth ## Path parameters: - `merchant_id` (integer, required) ID de comerciante. ## Request fields (application/json): - `custom_parameters` (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](mailto:csm@xsolla.com). - `custom_parameters.active_date` (string) Última data de visualização, de acordo com o [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). - `custom_parameters.additional_verification` (boolean) Se o jogador utiliza procedimentos de verificação de conta ou não. - `custom_parameters.character_customized` (boolean) Se o jogador personalizou seu personagem ou não. - `custom_parameters.chat_activity` (boolean) Se o jogador utiliza a função de chat ou não. - `custom_parameters.completed_tasks` (integer) Quantidade de tarefas/objetivos concluídos. - `custom_parameters.forum_activity` (boolean) Se o jogador utiliza a função do fórum ou não. - `custom_parameters.items_used` (boolean) Se o jogador usa itens de jogo comprados ou não. - `custom_parameters.karma_points` (integer) Karma do jogador. - `custom_parameters.last_change_password_date` (string) Data da última alteração de senha, de acordo com o [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). - `custom_parameters.non_premium_currency` (number) Quantidade de moedas não Premium. - `custom_parameters.notifications_enabled` (boolean) Se o jogador habilitou notificações ou não. - `custom_parameters.profile_completed` (boolean) Se o jogador adicionou informações adicionais ao seu perfil ou não. - `custom_parameters.profile_image_added` (boolean) Se o jogador enviou uma imagem de perfil nova ou não. - `custom_parameters.pvp_activity` (boolean) Se o jogador participa de batalhas PvP (Jogador vs jogador). - `custom_parameters.registration_date` (string) Data de criação da conta, de acordo com o [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). - `custom_parameters.session_time` (string) Tempo de sessão médio, de acordo com o [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). - `custom_parameters.social_networks_added` (boolean) Se o jogador conectou seus perfis de mídias sociais ou não. - `custom_parameters.total_bans` (integer) Quantidade de vezes que o jogador foi banido do chat/fórum. - `custom_parameters.total_characters` (integer) Quantidade de personagens no jogo. - `custom_parameters.total_clans` (integer) Quantidade de clãs dos quais o jogador fez parte. - `custom_parameters.total_friends` (integer) Quantidade de amigos. - `custom_parameters.total_game_events` (integer) Quantidade de eventos no jogo dos quais o jogador participou. - `custom_parameters.total_gifts` (integer) Quantidade de presentes no jogo que o jogador enviou/recebeu. - `custom_parameters.total_hours` (integer) Tempo total de horas no jogo. - `custom_parameters.total_inventory_value` (number) Valor total do inventário (moeda do jogo). - `custom_parameters.total_sum` (number) Quantia total de pagamentos. - `custom_parameters.tutorial_completed` (boolean) Se o jogador concluiu o tutorial do jogo ou não. - `custom_parameters.unlocked_achievements` (integer) Quantidade de conquistas desbloqueadas. - `custom_parameters.user_level` (integer) Nível, reputação ou classificação do jogador. - `custom_parameters.win_rate` (integer) Taxa de vitórias. - `purchase` (object) Objeto que contém dados de compra. - `purchase.subscription` (object) Dados de assinatura. - `purchase.subscription.available_plans` (array) Planos de assinatura para exibir na interface de pagamento. - `purchase.subscription.currency` (string) Moeda do plano de assinatura a ser utilizado em todos os cálculos. - `purchase.subscription.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. - `purchase.subscription.plan_id` (string) ID externo do plano de assinatura. Pode ser encontrado na seção Assinaturas > Planos de assinatura da Conta de Distribuidor. - `purchase.subscription.product_id` (string) ID do produto. - `purchase.subscription.trial_days` (integer) O período de teste em dias. - `settings` (object) As configurações para instalar o processo de pagamento e a interface de pagamento para um usuário. - `settings.currency` (string) Moeda de compra preferencial. Código da moeda de três letras de acordo com o [ISO 4217](https://developers.xsolla.com/pt/doc/pay-station/references/supported-currencies/). - `settings.external_id` (string) ID da transação no jogo. Deve ser único para cada pagamento. Confira a documentação para obter mais detalhes. - `settings.language` (string) Idioma da interface. [Código de idioma](https://developers.xsolla.com/pt/doc/pay-station/features/localization/) de duas letras minúsculas. - `settings.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. - `settings.payment_method` (integer) ID do método de pagamento. - `settings.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" - `settings.project_id` (integer, required) ID Xsolla do jogo. Pode ser encontrado na Conta de Distribuidor. - `settings.redirect_policy` (object) Configurações das políticas de redirecionamento. - `settings.redirect_policy.delay` (integer) Atraso (em segundos) após o qual o usuário é redirecionado automaticamente para o Callback URL. - `settings.redirect_policy.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" - `settings.redirect_policy.redirect_button_caption` (string) Texto no botão para o redirecionamento manual. - `settings.redirect_policy.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" - `settings.redirect_policy.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" - `settings.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. - `settings.ui` (object) Configurações da interface. - `settings.ui.apple_pay_quick_payment_button` (boolean) Se o botão de pagamento rápido via Apple Pay no topo da interface de pagamento deve ser exibido nos dispositivos suportados ou não. true por padrão. Se for false, o Apple Pay é exibido na lista de métodos de pagamento de acordo com o algoritmo [PayRank](/pt/doc/pay-station/how-to/how-to-manage-top-payment-methods/). ObserveEsse método de pagamento ficará oculto na lista de métodos disponíveis nos dispositivos Android e quaisquer outros dispositivos que não suportem o pagamento com a Apple pay, independentemente do valor do parâmetro. - `settings.ui.components` (object) Configurações do menu. - `settings.ui.components.subscriptions` (object) Configurações do submenu dos planos de assinatura. - `settings.ui.components.subscriptions.hidden` (boolean) Se o submenu deve ser exibido ou não. - `settings.ui.components.subscriptions.order` (integer) Posição do submenu no menu. - `settings.ui.components.virtual_currency` (object) Moeda virtual das configurações do submenu. - `settings.ui.components.virtual_currency.custom_amount` (boolean) Se o usuário pode inserir uma quantia arbitrária da moeda virtual na interface de pagamento ou não. - `settings.ui.components.virtual_items` (object) Configurações de itens virtuais do submenu. - `settings.ui.components.virtual_items.selected_group` (string) Grupo a ser exibido depois de abrir a aba de itens virtuais. - `settings.ui.components.virtual_items.selected_item` (string) Item a ser exibido depois de abrir a aba de itens virtuais (SKU do item). - `settings.ui.currency_format` (string) Defina como code para exibir um código monetário [ISO 4217](https://developers.xsolla.com/pt/doc/pay-station/references/supported-currencies/) 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. - `settings.ui.desktop` (object) Configurações de interface para a versão desktop. - `settings.ui.desktop.header` (object) Configurações de cabeçalho. - `settings.ui.desktop.header.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. - `settings.ui.desktop.header.close_button_icon` (string) O ícone do botão Fechar na interface de pagamento. Enum: "arrow", "cross" - `settings.ui.desktop.header.is_visible` (boolean) Se o cabeçalho na interface de pagamento deve ser exibido ou não. - `settings.ui.desktop.header.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" - `settings.ui.desktop.header.visible_logo` (boolean) Se true, o logotipo é exibido no cabeçalho. Para enviar a imagem, abra seu projeto na [Conta de Distribuidor](https://publisher.xsolla.com/) e acesse a seção Pay Station > Settings. - `settings.ui.desktop.header.visible_name` (boolean) Se o nome do projeto deve ser exibido no cabeçalho ou não. - `settings.ui.desktop.header.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. - `settings.ui.desktop.subscription_list` (object) Configurações para a lista de planos de assinatura. - `settings.ui.desktop.subscription_list.description` (string) Qualquer texto para ser exibido acima da lista de planos de assinatura disponíveis na interface de pagamento. - `settings.ui.desktop.subscription_list.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. - `settings.ui.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, independentemente do dispositivo e navegador do usuário. Se false, o Google Pay é exibido na lista de métodos de pagamento de acordo com o algoritmo [PayRank](/pt/doc/pay-station/how-to/how-to-manage-top-payment-methods/). Se o parâmetro não for passado, o Google Pay é exibido no topo da interface de pagamento de qualquer dispositivo e navegador do usuário, exceto o Safari — no Safari, ele é exibido na lista de métodos de pagamento. - `settings.ui.header` (object) - `settings.ui.header.visible_virtual_currency_balance` (boolean) Se esse elemento pode ser ocultado ou não na interface de pagamento. true por padrão. - `settings.ui.is_cart_open_by_default` (boolean) A exibição da lista de itens do carrinho e dados financeiros na interface de pagamento. Se true, a informação é exibida em uma vista estendida. Se false (padrão) ou o parâmetro não for passado, a informação é exibida em uma vista recolhida. - `settings.ui.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. - `settings.ui.is_language_selector_hidden` (boolean) Se o seletor de idioma deve estar oculto na página de pagamento ou não. Se false (por padrão), o seletor é exibido. - `settings.ui.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](https://developers.xsolla.com/pt/solutions/payments/payment-ui-management/top-payment-methods-management/) será exibido. - `settings.ui.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. - `settings.ui.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. - `settings.ui.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. - `settings.ui.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. Se sua configuração utiliza Content Security Policy (CSP), defina como true. - `settings.ui.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](https://developers.xsolla.com/pt/doc/pay-station/features/ui-theme-customization/#pay_station_ui_theme_customization_layout) para mais detalhes. Enum: "embed", "column_reverse", "embed_column_reverse" - `settings.ui.mobile` (object) - `settings.ui.mode` (string) Modo de exibição da interface de pagamento para gerenciar métodos de pagamento salvos. Pode ser definido para user_account ou omitido. Nesse modo, o usuário só pode alterar o idioma, adicionar novos métodos de pagamento e remover os existentes. ObserveQuando esse parâmetro é passado, o botão de redirecionamento não é exibido. Para redirecionar um usuário depois de salvar um método de pagamento, configure os redirecionamentos automáticos. - `settings.ui.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](https://developers.xsolla.com/pt/doc/pay-station/features/ui-theme-customization/#pay_station_ui_theme_customization_in_token) e passar seu ID nesse parâmetro. Enum: "63295a9a2e47fab76f7708e1", "63295aab2e47fab76f7708e3" - `settings.ui.user_account` (object) Dados da conta do usuário. - `settings.ui.user_account.payment_accounts` (object) Seção Métodos salvos. - `settings.ui.user_account.payment_accounts.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. - `settings.ui.user_account.payment_accounts.order` (integer) Posição da seção na lista suspensa na interface de pagamento. Necessário se settings.ui.user_account.payment_accounts.enable for passado. - `user` (object) Dados do usuário. - `user.age` (integer) Idade do usuário. - `user.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. - `user.country` (object) - `user.country.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. - `user.country.value` (string) Código do país de duas letras maiúsculas, de acordo com o [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). - `user.email` (object) 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. - `user.email.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. - `user.email.value` (string, required) E-mail do usuário. Deve ser válido, de acordo com o protocolo [RFC 822](https://www.w3.org/Protocols/rfc822/#z8). - `user.id` (object, required) - `user.id.value` (string, required) 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)](/pt/doc/pay-station/references/faq/#faq_validation). - `user.is_legal` (boolean) Se o usuário é uma entidade legal. - `user.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. - `user.legal.address` (string) Endereço legal completo. - `user.legal.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](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). - `user.legal.name` (string) Nome legal completo. - `user.legal.vat_id` (string) Identificação de contribuinte individual. - `user.name` (object) - `user.name.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. - `user.name.value` (string) Nome de exibição do usuário. - `user.phone` (object,null) - `user.phone.value` (string) Número de telefone do usuário. - `user.public_id` (object) - `user.public_id.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). - `user.steam_id` (object) - `user.steam_id.value` (string) ID do Steam. - `user.tracking_id` (object) - `user.tracking_id.value` (string) ID de usuário único — usado em campanhas de marketing. Só pode conter dígitos e caracteres latinos. - `user.utm` (object) Atributos de tráfego. - `user.utm.utm_campaign` (string) Título da campanha, transliterado ou traduzido para Inglês. - `user.utm.utm_content` (string) Conteúdo da campanha. - `user.utm.utm_medium` (string) Canal de tráfego (anúncios contextuais, anúncios de mídia, listas de e-mail, etc.). - `user.utm.utm_source` (string) Fonte de tráfego. - `user.utm.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. ## Response 200 fields (application/json): - `token` (string) ## Response 422 fields (application/json): - `extended_message` (object) - `extended_message.global_errors` (array) - `extended_message.property_errors` (object) O objeto contém os nomes dos parâmetros com descrições de erros. - `http_status_code` (integer) - `message` (string) - `request_id` (string)