# Pay Station API

# Visão geral {% #overview %}

* **Versão:** 2.0.0
* **Servidores**:
  * `https://api.xsolla.com/api`

Pay Station permite que os parceiros monetizem seus produtos, fornecendo aos 
usuários uma interface conveniente para pagar compras no jogo na loja. Para 
configurar a abertura da interface de pagamento, consulte estas [istruções](/pt/doc/pay-station/how-to/how-to-open-payment-ui/).

A Pay Station API fornece os grupos de chamadas a seguir:
- Token — inclui a chamada de API para gerar um token com parâmetros de usuário 
  arbitrários para processar pagamentos adicionais pela interface de pagamento.
- [Tokenização](/pt/doc/pay-station/features/tokenization/) — inclui chamadas de API 
  para processar pagamentos com segurança, sem abrir a interface de pagamento ou 
  envolver o usuário.
- Relatórios — inclui chamadas de API para retornar dados sobre transações de 
  usuários, gerar relatórios e obter detalhamento de pagamentos por moeda.
- Reembolso — inclui chamadas de API para solicitar reembolso total e parcial.
- Teste — inclui a chamada de API para testar o processo de estorno.

Você pode encontrar informações detalhadas sobre como configurar a interface de 
pagamentos no [guia de integração da solução Payments](/pt/solutions/payments/integration-guide/integration-flow/).

<!--
<div class="note">
<p><strong>Note</strong></p><p>You can also refer to the <b>Xsolla Base API</b> section in the <a href="https://github.com/xsolla/xsolla-postman">Postman collection</a> to test API calls used for integration.</p>
</div>
-->

# Contar Comerciais Xsolla {% #business-accounts %}

A Conta Comercial é a ferramenta primária para configurar recursos da Xsolla, 
bem como para trabalhar com análises e transações.

A Xsolla desenvolve ferramentas para diferentes categorias de negócios. Para 
simplificar a navegação, essas ferramentas são agrupadas em contas separadas 
por audiência-alvo:

* [jogos móveis](https://xsolla.com/for/mobile-games/account/)

* [jogos de PC grátis](https://xsolla.com/for/free-to-play-pc/account/)

* [jogos de PC premium](https://xsolla.com/for/premium-pc-games/account/)

* [jogos de web](https://xsolla.com/for/web-games/account/)

<div class="note">
<p><strong>Observe</strong></p><p>A <a href="https://publisher.xsolla.com/">Conta de Distribuidor</a> é uma ferramenta aposentada.</p>
</div>


Version: 2.0

## Servers

```
https://api.xsolla.com/merchant/v2
```

## Security

### basicAuth

A Xsolla API usa autenticação de acesso básica. Todas as solicitações à API 
devem conter o cabeçalho `Authorization: Basic <your_authorization_basic_key>`, 
onde `<your_authorization_basic_key>` é o par codificado `merchant_id:api_key` 
ou `project_id:api_key` de acordo com o padrão Base64.

Acesse sua [conta](/pt/api/pay-station/business-accounts/) to find these 
parameters:

- `project_id` é mostrado:
  - Próximo ao nome do projeto ao clicar no cabeçalho da conta.
  - No URL de qualquer página de conta. O URL tem o seguinte formato: 
    `https://xsolla.com/for/<business-account-
    type>/account/<merchant_id>/projects/<project_id>/`.
- `merchant_id` é mostrado:
  - Na seção **Company settings > General info**.
  - No URL de qualquer página de conta. O URL tem o seguinte formato: 
    `https://xsolla.com/for/<business-account-type>/account/<merchant_id>/`.
- `api_key` é exibida na sua conta apenas uma vez quando é criada e deve ser 
  armazenada do seu lado. Você pode criar uma nova chave nas seções a seguir:
  - **Settings > API keys** (nessa seção, você pode criar uma chave de API somente 
    para um projeto específico).
  - **Company settings > API keys** (nessa seção, você pode criar uma chave de API 
    que será aplicada a todos os projetos de uma empresa específica.

Para obter mais informações sobre como trabalhar com chaves API, consulte a 
[Referência de API](/pt/api/getting-started/#api_keys_overview).


Type: http
Scheme: basic

## Download OpenAPI description

[Pay Station API](https://xsolla.redocly.app/_bundle/@l10n/pt/api/pay-station/index.yaml)

## Token

### Criar token

 - [POST /merchants/{merchant_id}/token](https://xsolla.redocly.app/pt/api/pay-station/token/create-token.md): 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.


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.

### Invalidar token

 - [POST /projects/{project_id}/token/{token}/expire](https://xsolla.redocly.app/pt/api/pay-station/token/invalidate-token.md): Invalida o token de pagamento existente para impedi-lo de ser usado para abrir 
a interface de pagamento. Use-o para evitar pagamentos duplicados para itens de 
instância única entre sessões paralelas. Uma vez chamado com sucesso, todas as 
outras sessões do usuário abertas com esse token de pagamento vão expirar.


ObserveEssa chamada de API é idempotente, e você pode utilizá-la múltiplas vezes.

## Tokenização

### Obtém contas salvas

 - [GET /projects/{project_id}/users/{user_id}/payment_accounts](https://xsolla.redocly.app/pt/api/pay-station/tokenization/get-saved-accounts.md): Lista contas de pagamento salvas de um usuário específico.


ObserveNo modo sandbox, essa chamada de API só funciona com cartões de teste que não tenham a função 3-D Secure.

### Excluir conta salva

 - [DELETE /projects/{project_id}/users/{user_id}/payment_accounts/{type}/{account_id}](https://xsolla.redocly.app/pt/api/pay-station/tokenization/delete-saved-account.md): Exclui uma conta de pagamento salva.


ObserveNo modo sandbox, essa chamada de API só funciona com cartões de teste que não tenham a função 3-D Secure.





ObserveVocê pode chamar esse método API no modo sandbox. Para fazer isso, passe os dados da conta de pagamento de teste na solicitação. Consulte as instruções para mais detalhes sobre o acesso no modo sandbox e os cenários de teste.

### Cobrar com conta salva

 - [POST /projects/{project_id}/users/{user_id}/payments/{type}/{account_id}](https://xsolla.redocly.app/pt/api/pay-station/tokenization/charge-with-saved-account.md): Cobra um usuário através de uma conta de pagamento salva.


ObserveNo modo sandbox, essa chamada de API só funciona com cartões de teste que não tenham a função 3-D Secure.





AvisoPara a chamada de API funcionar corretamente, configure um tempo limite de 2 minutos.

## Relatórios

### Obter relatórios

 - [GET /merchants/{merchant_id}/reports](https://xsolla.redocly.app/pt/api/pay-station/reports/get-reports.md): Obtém a lista de relatórios financeiros ao longo de um período específico.


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.

### Obter transações

 - [GET /merchants/{merchant_id}/reports/transactions/registry.{format}](https://xsolla.redocly.app/pt/api/pay-station/reports/get-transactions.md): Retorna a lista de informações detalhadas sobre todas as transações bem-
sucedidas e canceladas em um período específico. Em resposta, você obtém 
informações sobre pagamentos, incluindo dados sobre as taxas, tarifas, bem como 
pedido e usuário. Você pode obter a lista nos formatos JSON e CSV. Você pode 
usar essa chamada API para realizar a reconciliação financeira.


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.

### Encontrar transações

 - [GET /merchants/{merchant_id}/reports/transactions/search.{format}](https://xsolla.redocly.app/pt/api/pay-station/reports/find-transactions.md): Retorna uma lista de transações com base nos parâmetros de busca específicos. 
Em resposta, você obtém dados sobre todos os pagamentos feitos no seu jogo, 
mesmo que eles não tenham sido concluídos com sucesso. Você pode especificar 
não só o período de transação como também outros parâmetros. Exemplo: pesquisar 
por transações feitas por um usuário em particular ou com um status de 
pagamento específico. Você pode obter a lista no formato JSON ou CSV.


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.

### Encontrar transações (pesquisa rápida)

 - [GET /merchants/{merchant_id}/reports/transactions/simple_search](https://xsolla.redocly.app/pt/api/pay-station/reports/find-transactions-fast.md): Obtém uma lista de transação com base nos parâmetros de pesquisa especificados 
dentro de alguns segundos. Essa é uma alternativa à chamada de API [Encontrar 
transações](/pt/api/pay-station/operation/find-transactions/) que retorna os dados 
nos formatos JSON, CSV ou XLS.


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.

### Obtém resumos de pagamentos na moeda

 - [GET /merchants/{merchant_id}/reports/transactions/summary/transfer](https://xsolla.redocly.app/pt/api/pay-station/reports/get-payouts-breakdown.md): Obtém resumos de pagamentos na moeda.


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.

### Obter transação

 - [GET /merchants/{merchant_id}/reports/transactions/{transaction_id}/details](https://xsolla.redocly.app/pt/api/pay-station/reports/get-transaction.md): Obtém os dados de transação completos por ID.


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.

### Obtém pagamentos

 - [GET /merchants/{merchant_id}/reports/transfers](https://xsolla.redocly.app/pt/api/pay-station/reports/get-payouts.md): Lista todos os pagamentos de um período.


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.

## Reembolso

### Solicitar reembolso parcial

 - [PUT /merchants/{merchant_id}/reports/transactions/{transaction_id}/partial_refund](https://xsolla.redocly.app/pt/api/pay-station/refund/request-partial-refund.md): Envia uma solicitação de reembolso parcial a um usuário. Consulte nossa 
documentação para obter informações mais detalhadas sobre o processo de reembolso e 
métodos de pagamento que suportam reembolsos parciais.


ObserveVocê pode chamar esse método API no modo sandbox. Para fazer isso, passe os dados de pagamento de teste na solicitação. Consulte as instruções para mais detalhes sobre o acesso no modo sandbox e os cenários de teste.





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.

### Solicitar reembolso

 - [PUT /merchants/{merchant_id}/reports/transactions/{transaction_id}/refund](https://xsolla.redocly.app/pt/api/pay-station/refund/request-refund.md): Envia uma solicitação de reembolso para retornar uma parte do pagamento ao 
usuário. Leia sobre o Recurso de reembolso para saber mais sobre o processo.


ObserveVocê pode chamar esse método API no modo sandbox. Para fazer isso, passe os dados de pagamento de teste na solicitação. Consulte as instruções para mais detalhes sobre o acesso no modo sandbox e os cenários de teste.





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.

## Testes

### Solicitar estorno

 - [POST /merchants/{merchant_id}/projects/{project_id}/payments/{transaction_id}/chargeback](https://xsolla.redocly.app/pt/api/pay-station/testing/request-chargeback.md): Solicita um estorno no modo sandbox:

- Para acesar o modo sandbox, passe "mode":"sandbox" ao obter o token.

- O pagamento de teste precisa ser feito no modo sandbox no mesmo projeto em que 
  você estiver fazendo seus testes.

- O status da transação deve ser diferente de refunded, cancelled.

- Seu papel na conta deve ser ao menos Gerente financeiro. (Você pode 
  encontrá-lo na seção Settings > Members.)

- Consulte as instruções  para mais 
  informações sobre como testar este cenário.


ObserveConsulte a documentação para mais informações sobre outros cenários de teste.

