# Pay Station API

# Descripción general {% #overview %}

* **Versión:** 2.0.0
* **Servidores**:
  * `https://api.xsolla.com/api`

Con Pay Station, los socios podrán monetizar sus productos ofreciendo a los 
usuarios una cómoda interfaz para pagar las compras dentro del juego en la 
tienda del juego. Para configurar la apertura de la interfaz de pago, consulte 
estas [instrucciones](/es/doc/pay-station/how-to/how-to-open-payment-ui/).

La API de Pay Station proporciona los siguientes grupos de llamadas:
- Token: incluye la llamada API que permite generar un token con parámetros de 
  usuario arbitrarios para procesar posteriormente los pagos a través de la 
  interfaz de pago.
- [Tokenización](/es/doc/pay-station/features/tokenization/): incluye las llamadas 
  API para procesar pagos de forma segura sin abrir la interfaz de pago ni 
  implicar al usuario.
- Informes: incluye las llamadas API para devolver datos sobre las transacciones 
  de los usuarios, generar informes, así como obtener el desglose de los pagos 
  por moneda.
- Reembolso: incluye las llamadas API para solicitar reembolsos totales y 
  parciales.
- Pruebas: incluye la llamada API que permite probar el proceso de contracargo.

En el documento [Guía de integración de la solución 
Payments](/es/solutions/payments/integration-guide/integration-flow/) encontrará 
información detallada sobre la configuración de la interfaz de pago.

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

# Cuentas de empresa de Xsolla {% #business-accounts %}

La Cuenta de empresa es la herramienta principal para configurar las funciones 
de Xsolla, así como para trabajar con la analítica y las transacciones.

Xsolla desarrolla herramientas para distintas categorías de negocio. Para 
simplificar la navegación, estas herramientas se agrupan en cuentas 
independientes según el público objetivo:

* [juegos para móviles](https://xsolla.com/for/mobile-games/account/)

* [juegos de PC gratuitos](https://xsolla.com/for/free-to-play-pc/account/)

* [juegos de PC prémium](https://xsolla.com/for/premium-pc-games/account/)

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

<div class="note">
<p><strong>Nota</strong></p><p>La <a href="https://publisher.xsolla.com/">Cuenta del editor</a> es una herramienta de la versión anterior.</p>
</div>


Version: 2.0

## Servers

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

## Security

### basicAuth

La API de Xsolla utiliza la autenticación de acceso básica. Todas las 
solicitudes a la API deben contener el encabezado `Authorization: Basic 
<your_authorization_basic_key>`, donde `<your_authorization_basic_key>` es el 
par `merchant_id:api_key` o `project_id:api_key` codificado según el estándar 
Base64.

Vaya a su [cuenta](/es/api/pay-station/business-accounts/) para consultar estos 
parámetros:

- Se muestra el `project_id`:
  - Junto al nombre del proyecto, al hacer clic en él en el encabezado de la cuenta.
  - En la URL de cualquier página de la cuenta. La URL tiene el siguiente formato: 
    `https://xsolla.com/for/<business-account-
    type>/account/<merchant_id>/projects/<project_id>/`.
- Se muestra el `merchant_id`:
  - En **Company settings > General info**.
  - En la URL de cualquier página de la cuenta. La URL tiene el siguiente formato: 
    `https://xsolla.com/for/<business-account-type>/account/<merchant_id>/`.
- La `api_key` se muestra en su cuenta solo una vez, cuando se crea, y debe 
  almacenarse en su sistema. Puede crear una nueva clave en las siguientes 
  secciones:
  - **Settings > API keys** (en esta sección, solo puede crear una clave API para 
    un proyecto concreto)
  - **Company settings > API keys** (en esta sección, puede crear una clave API que 
    se aplicará a todos los proyectos de una empresa concreta)

Para obtener más información sobre cómo trabajar con claves API, consulte la 
[referencia de la API](/es/api/getting-started/#api_keys_overview).


Type: http
Scheme: basic

## Download OpenAPI description

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

## Token

### Crear token

 - [POST /merchants/{merchant_id}/token](https://xsolla.redocly.app/es/api/pay-station/token/create-token.md): Puede generar un token con parámetros de usuario arbitrarios. Envía dichos 
parámetros al obtener el token y los recupera tras realizarse correctamente un 
pago. Un token solo puede incluir los parámetros mencionados en este documento 
o que haya definido previamente.

Si se envía algún parámetro con un formato o de tipo incorrecto, no se generará 
ningún token. Recibirá el código HTTP 422 junto con la descripción del error en 
el cuerpo JSON. En extended_message encontrará los detalles exactos de los 
parámetros que se han enviado incorrectamente.

Por defecto, la vida útil del token es de 24 horas. Si quiere cambiar este 
valor, contacte con su gestor de éxito del cliente o envíe un correo 
electrónico a csm@xsolla.com. El nuevo 
valor se aplicará a todos los proyectos de su empresa creados en la 
cuenta.


AvisoEl token que obtiene tras realizar esta llamada API solo se puede utilizar para autorizar otras solicitudes. Puede utilizar este token para abrir la interfaz de pago solo si tiene integrado el producto Subscriptions.Para abrir la interfaz de pago en una nueva ventana, utilice el siguiente enlace: https://secure.xsolla.com/paystation4/?token={token}, en el cual {token} es el token recibido. Para realizar pruebas, utilice esta URL: https://sandbox-secure.xsolla.com/paystation4/?token={token}.





AvisoEsta llamada API no contiene el parámetro de ruta project_id, por lo que tiene que usar la clave API que sea válida en todos los proyectos de la empresa para establecer la autorización.

### Invalidar token

 - [POST /projects/{project_id}/token/{token}/expire](https://xsolla.redocly.app/es/api/pay-station/token/invalidate-token.md): Invalida el token de pago existente para evitar que se utilice para abrir la 
interfaz de pago. Utilícelo para evitar la duplicación de pagos de artículos de 
una sola instancia en sesiones paralelas. Tras su correcta ejecución, todas las 
demás sesiones de usuario abiertas con este token de pago caducarán.


NotaEsta llamada API es idempotente, por lo que se puede utilizar varias veces.

## Tokenización

### Obtener cuentas guardadas

 - [GET /projects/{project_id}/users/{user_id}/payment_accounts](https://xsolla.redocly.app/es/api/pay-station/tokenization/get-saved-accounts.md): Muestra las cuentas de pago guardadas de un usuario determinado.


NotaEn modo aislador de proceso (sandbox), esta llamada API funciona solamente con tarjetas de prueba que no tienen función 3-D Secure.

### Eliminar cuenta guardada

 - [DELETE /projects/{project_id}/users/{user_id}/payment_accounts/{type}/{account_id}](https://xsolla.redocly.app/es/api/pay-station/tokenization/delete-saved-account.md): Elimina una cuenta de pago guardada.


NotaEn modo aislador de proceso (sandbox), esta llamada API funciona solamente con tarjetas de prueba que no tienen función 3-D Secure.





NotaPuedes solicitar este método API en el modo de entorno de pruebas (sandbox). Para ello, transmite los datos de la cuenta de pago de prueba en la solicitud. Consulta las instrucciones para obtener más información sobre el acceso en el modo de entorno de pruebas (sandbox) y las pruebas.

### Cobrar con cuenta guardada

 - [POST /projects/{project_id}/users/{user_id}/payments/{type}/{account_id}](https://xsolla.redocly.app/es/api/pay-station/tokenization/charge-with-saved-account.md): Cobra a un usuario a través de una cuenta de pago guardada.


NotaEn modo aislador de proceso (sandbox), esta llamada API funciona solamente con tarjetas de prueba que no tienen función 3-D Secure.





AvisoPara que la llamada API funcione correctamente, establezca un tiempo de espera de 2 minutos.

## Informes

### Obtener informes

 - [GET /merchants/{merchant_id}/reports](https://xsolla.redocly.app/es/api/pay-station/reports/get-reports.md): Obtiene la lista de informes financieros durante un periodo especificado.


AvisoEsta llamada API no contiene el parámetro de ruta project_id, por lo que tiene que usar la clave de API que sea válida en todos los proyectos de la empresa para establecer la autorización.

### Obtener transacciones

 - [GET /merchants/{merchant_id}/reports/transactions/registry.{format}](https://xsolla.redocly.app/es/api/pay-station/reports/get-transactions.md): Devuelve la lista de detalles sobre las transacciones realizadas y canceladas 
durante un periodo especificado. Como respuesta, recibe información sobre los 
pagos, incluyendo datos sobre tasas, impuestos, así como sobre el pedido y el 
usuario. Puede obtener la lista en formato JSON o CSV. Puede usar esta llamada 
API para realizar conciliaciones financieras.


AvisoEsta llamada API no contiene el parámetro de ruta project_id, por lo que tiene que usar la clave de API que sea válida en todos los proyectos de la empresa para establecer la autorización.

### Buscar transacciones

 - [GET /merchants/{merchant_id}/reports/transactions/search.{format}](https://xsolla.redocly.app/es/api/pay-station/reports/find-transactions.md): Devuelve una lista de transacciones basada en parámetros de búsqueda 
específicos. Como respuesta, recibirá datos sobre todos los pagos hechos en su 
juego, incluso si no fueron aceptados. Puede especificar no solo el periodo de 
la transacción, sino también otros parámetros, como p. ej., para buscar 
transacciones realizadas por un usuario concreto o en un estado de pago 
específico. Puede obtener la lista en formato JSON o CSV.


AvisoEsta llamada API no contiene el parámetro de ruta project_id, por lo que tiene que usar la clave de API que sea válida en todos los proyectos de la empresa para establecer la autorización.

### Buscar transacciones (búsqueda rápida)

 - [GET /merchants/{merchant_id}/reports/transactions/simple_search](https://xsolla.redocly.app/es/api/pay-station/reports/find-transactions-fast.md): Obtiene una lista de transacciones basada en parámetros de búsqueda específicos 
en unos segundos. Es una alternativa a la llamada API Find transactions que devuelve los datos en formato 
JSON, CSV o XLS.


AvisoEsta llamada API no contiene el parámetro de ruta project_id, por lo que tiene que usar la clave de API que sea válida en todos los proyectos de la empresa para establecer la autorización.

### Obtener el desglose de los desembolsos en la moneda

 - [GET /merchants/{merchant_id}/reports/transactions/summary/transfer](https://xsolla.redocly.app/es/api/pay-station/reports/get-payouts-breakdown.md): Obtiene el desglose de los desembolsos en la moneda.


AvisoEsta llamada API no contiene el parámetro de ruta project_id, por lo que tiene que usar la clave de API que sea válida en todos los proyectos de la empresa para establecer la autorización.

### Obtener transacción

 - [GET /merchants/{merchant_id}/reports/transactions/{transaction_id}/details](https://xsolla.redocly.app/es/api/pay-station/reports/get-transaction.md): Obtiene la información completa de la transacción por ID.


AvisoEsta llamada API no contiene el parámetro de ruta project_id, por lo que tiene que usar la clave de API que sea válida en todos los proyectos de la empresa para establecer la autorización.

### Obtener desembolsos

 - [GET /merchants/{merchant_id}/reports/transfers](https://xsolla.redocly.app/es/api/pay-station/reports/get-payouts.md): Muestra todos los pagos de un periodo.


AvisoEsta llamada API no contiene el parámetro de ruta project_id, por lo que tiene que usar la clave de API que sea válida en todos los proyectos de la empresa para establecer la autorización.

## Reembolso

### Solicitar reembolso parcial

 - [PUT /merchants/{merchant_id}/reports/transactions/{transaction_id}/partial_refund](https://xsolla.redocly.app/es/api/pay-station/refund/request-partial-refund.md): Envía una solicitud de reembolso parcial a un usuario. Consulta nuestra 
documentación para obtener información detallada sobre el proceso de reembolso y los 
métodos de pago que permiten reembolsos parciales.


NotaPuedes solicitar este método API en modo de aislador de proceso (sandbox). Para ello, transmite los datos del pago de prueba en la solicitud. Consulta las instrucciones para obtener más información sobre el acceso al modo de entorno de pruebas (sandbox) y las pruebas.





AvisoEsta llamada API no contiene el parámetro de ruta project_id, por lo que tiene que usar la clave de API que sea válida en todos los proyectos de la empresa para establecer la autorización.

### Solicitar reembolso

 - [PUT /merchants/{merchant_id}/reports/transactions/{transaction_id}/refund](https://xsolla.redocly.app/es/api/pay-station/refund/request-refund.md): Envía una solicitud de reembolso para devolver un pago a un usuario. Consulta 
la Función de reembolso para obtener más información sobre el proceso.


NotaPuedes solicitar este método API en el modo de entorno de pruebas (sandbox). Para ello, transmite los datos del pago de prueba en la solicitud. Consulta las instrucciones para obtener más información sobre el acceso al modo de entorno de pruebas (sandbox) y las pruebas.





AvisoEsta llamada API no contiene el parámetro de ruta project_id, por lo que tiene que usar la clave de API que sea válida en todos los proyectos de la empresa para establecer la autorización.

## Pruebas

### Solicitar contracargo

 - [POST /merchants/{merchant_id}/projects/{project_id}/payments/{transaction_id}/chargeback](https://xsolla.redocly.app/es/api/pay-station/testing/request-chargeback.md): Solicita el contracargo en el modo sandbox:

- Para acceder al modo sandbox, transmita "mode":"sandbox" al [obtener el 
  token](/es/api/pay-station/operation/create-token/).

- El pago de prueba debe realizarse en modo sandbox en el mismo proyecto que 
  utilice para hacer pruebas.

- El estado de la transacción debe ser distinto de refunded y de 
  cancelled.

- Su rol en la cuenta debe ser, como mínimo, Financial manager. (Puede 
  consultarlo en Settings > Members.)

- Consulte las instrucciones para obtener más 
  información sobre este escenario de prueba.


NotaConsulte la documentación para obtener más información sobre otros escenarios de prueba.

