Saltar al contenido

Descripción general

  • 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 establecer la apertura de la interfaz de pago, consulte estas instrucciones.

Pay Station API proporciona los siguientes grupos de llamadas:

  • El 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: 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 las retribuciones 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 encontrará información detallada sobre la configuración de la interfaz de pago.

Nota

También puede consultar la sección de la Xsolla Base API de la Colección Postman para probar las llamadas API empleadas para la integración.

Descargar descripción de OpenAPI
Idiomas
Servidores
Mock server
https://xsolla.redocly.app/_mock/es/api/pay-station/
https://api.xsolla.com/merchant/v2/
Operaciones
Operaciones
Operaciones

Solicitud

Obtiene la lista de informes financieros durante un periodo especificado.

Aviso

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

Seguridad
basicAuth
Ruta
merchant_idintegerrequerido

ID de vendedor.

Consulta
datetime_fromstring(datetime)requerido

Fin del periodo en formato AAAA-MM-DD. No es necesario si se transmite al menos uno de los siguientes parámetros:

  • transfer_id
  • report_id

Ejemplo: datetime_from=2023-02-08
datetime_tostring(datetime)requerido

Fin del periodo en formato AAAA-MM-DD. No es necesario si se transmite al menos uno de los siguientes parámetros:

  • transfer_id
  • report_id
La diferencia entre datetime_from y datetime_to no puede ser superior a 92 días.

Ejemplo: datetime_to=2023-03-08
curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/es/api/pay-station/merchants/{merchant_id}/reports?datetime_from=2023-02-08&datetime_to=2023-03-08'

Respuestas

OK.

Cuerpoapplication/json
Respuesta
application/json
[ { "agreement_document_id": "Organization Inc_RUB", "currency": "RUB", "is_direct_payout": false, "is_draft_by_agreement": true, "month": "January", "report_id": 57613, "year": 2019 }, { "agreement_document_id": "Organization Inc_EUR", "currency": "USD", "is_direct_payout": false, "is_draft_by_agreement": true, "month": "January", "report_id": 57619, "year": 2019 } ]

Solicitud

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.

Aviso

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

Seguridad
basicAuth
Ruta
merchant_idintegerrequerido

ID de vendedor.

formatstringrequerido

Formato de los datos.

Enumeración"json""csv""xls"
Consulta
datetime_fromstring(datetime)requerido

Fin del periodo en formato AAAA-MM-DD. No es necesario si se transmite al menos uno de los siguientes parámetros:

  • transfer_id
  • report_id

Ejemplo: datetime_from=2023-02-08
datetime_tostring(datetime)requerido

Fin del periodo en formato AAAA-MM-DD. No es necesario si se transmite al menos uno de los siguientes parámetros:

  • transfer_id
  • report_id
La diferencia entre datetime_from y datetime_to no puede ser superior a 92 días.

Ejemplo: datetime_to=2023-03-08
in_transfer_currencyintegerrequerido

Convierte todos los datos financieros a la moneda de desembolso (por defecto se utiliza la moneda de pagos entrantes). No es necesario si se transmite al menos uno de los siguientes parámetros:

  • transfer_id
  • report_id

show_totalboolean

Si se debe incluir el importe total de las transacciones en el informe. Disponible para exportación, pero solo en formato CSV. Por defecto es true.

merchant_of_recordsstring or null

Comerciante titular. Puede ser xsolla, merchant o sin especificar. Si es merchant, devuelve las transacciones realizadas a través de las pasarelas del socio. Si es xsolla, devuelve las transacciones realizadas sin utilizar las pasarelas del socio. Si no se especifica, devuelve todas las transacciones.

Enumeración ValorDescripción
merchant

Devuelve las transacciones realizadas a través de las pasarelas del socio.

xsolla

Devuelve las transacciones realizadas sin utilizar las pasarelas del socio.

project_idinteger

ID del proyecto.

show_dry_runboolean

Si se deben incluir transacciones de prueba.

transfer_idinteger

ID del desembolso.

report_idinteger

ID del informe financiero.

offsetinteger

Número del elemento a partir del cual se genera la lista (el conteo empieza desde el 0).

limitinteger

Límite del número de transacciones que se muestran en la página. Si se transmite este parámetro, no es necesario transmitir los parámetros datetime_from y datetime_to.

statusstring

Estado de la transacción.

Enumeración"done""canceled""error""refunded"
curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/es/api/pay-station/merchants/{merchant_id}/reports/transactions/registry.{format}?datetime_from=2023-02-08&datetime_to=2023-03-08&in_transfer_currency=0&show_total=true&merchant_of_records=xsolla&project_id=0&show_dry_run=true&transfer_id=0&report_id=0&offset=0&limit=0&status=done'

Respuestas

La lista de transacciones se ha devuelto correctamente.

Cuerpoapplication/jsonArray [
payment_detailsobject

Datos del pago.

purchaseobject

Datos de la compra.

transactionobject

Datos de la transacción.

userobject

Datos del usuario.

user_balanceobject

Saldo del usuario.

]
Respuesta
application/json
[ { "payment_details": {}, "purchase": {}, "transaction": {}, "user": {}, "user_balance": {} } ]

Solicitud

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.

Aviso

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

Seguridad
basicAuth
Ruta
merchant_idintegerrequerido

ID de vendedor.

formatstringrequerido

Formato de los datos.

Enumeración"json""csv""xls"
Consulta
datetime_fromstring(datetime)

Inicio del periodo.

datetime_tostring(datetime)

Fin del periodo.

project_idinteger

ID del proyecto.

transaction_idinteger

ID de la transacción.

typestring

Tipo de transacciones que aparecen en los resultados de búsqueda:

Enumeración ValorDescripción
all

Todas las transacciones.

canceled

Transacciones canceladas, sin incluir las transacciones de prueba.

test

Transacciones de prueba.

transferred

Transacciones realizadas con éxito, sin incluir las transacciones de prueba.

phonestring

Número de teléfono en formato internacional.

user_idstring

ID único de usuario en el juego que está almacenado en su lado. Asegúrese de transmitir el ID de usuario existente. Si se produce un error, consulte las respuestas a las Preguntas frecuentes.

user_namestring

Nombre de usuario.

user_customstring

Parámetro personalizado para la identificación del usuario.

emailstring<= 100 characters

Correo del usuario.

external_idstring

ID de la transacción dentro del juego. Debe ser único para cada pago del usuario.

order_idinteger

ID del pedido. Puede usarlo para invocar el método API Obtener pedido.

Ejemplo: order_id=1234
offsetinteger

Número del elemento a partir del cual se genera la lista (el conteo empieza desde el 0).

limitinteger

Límite para el número de elementos presentes en la página.

statusstring(status.enum)

Un estado de transacción.

Enumeración ValorDescripción
awaitingRefund

La transacción está pendiente de una decisión sobre el reembolso. Cuando el usuario haya solicitado un reembolso, el servicio de atención al cliente de Xsolla procesa la solicitud manualmente y adoptará una decisión sobre el reembolso.

canceled

Hay dos escenarios posibles:

  • La transacción ha sido cancelada en el lado del sistema de pago. Por ejemplo, no había fondos suficientes en la cuenta del usuario.
  • El pago fue reembolsado al usuario.
created

El usuario inició la transacción, pero esta aún no se ha procesado.

done

La transacción fue procesada correctamente.

error

Se produjo un error al procesar la transacción. Estos pagos pueden ser reembolsados si contacta con el equipo de atención al cliente de Xsolla.

partiallyRefunded

El usuario recibió un reembolso parcial.

processing

La transacción está siendo procesada.

refunded

Se hizo un reembolso al saldo de Xsolla del usuario.

review

El pago ha sido suspendido por el sistema antifraude y la transacción está siendo sometida a una verificación adicional.

curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/es/api/pay-station/merchants/{merchant_id}/reports/transactions/search.{format}?datetime_from=string&datetime_to=string&project_id=0&transaction_id=0&type=all&phone=string&user_id=string&user_name=string&user_custom=string&email=string&external_id=string&order_id=1234&offset=0&limit=0&status=created'

Respuestas

OK.

Cuerpoapplication/json
Respuesta
application/json
[ { "payment_details": {}, "payment_system": {}, "purchase": {}, "transaction": {}, "user": {} } ]

Buscar transacciones (búsqueda rápida)

Solicitud

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.

Aviso

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

Seguridad
basicAuth
Ruta
merchant_idintegerrequerido

ID de vendedor.

Consulta
transaction_idinteger

ID de la transacción. Debe indicarse este o external_id, pero no ambos.

external_idstring

ID de la transacción en el juego. Es distinto para cada pago. Debe indicarse este o transaction_id, pero no ambos.

curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/es/api/pay-station/merchants/{merchant_id}/reports/transactions/simple_search?transaction_id=0&external_id=string'

Respuestas

La lista de transacciones se ha devuelto correctamente.

Cuerpoapplication/jsonArray [
payment_detailsobject

Datos del pago.

transactionobject

Datos de la transacción.

userobject

Datos del usuario.

]
Respuesta
application/json
[ { "payment_details": {}, "transaction": {}, "user": {} } ]

Obtener el desglose de los desembolsos en la moneda

Solicitud

Obtiene el desglose de los desembolsos en la moneda.

Aviso

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

Seguridad
basicAuth
Ruta
merchant_idintegerrequerido

ID de vendedor.

Consulta
datetime_fromstring(datetime)

Inicio del periodo.

datetime_tostring(datetime)

Fin del periodo.

legal_entity_idinteger

ID de la entidad jurídica del desarrollador.

statusstring

Estado de la transacción.

Enumeración"done""canceled""error""refunded"
curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/es/api/pay-station/merchants/{merchant_id}/reports/transactions/summary/transfer?datetime_from=string&datetime_to=string&legal_entity_id=0&status=done'

Respuestas

OK.

Cuerpoapplication/json
Respuesta
application/json
[ { "DirectTaxesOfPayments": 0.46, "IsoCurrency": "RUB", "PaymentsAmount": 223679.84, "SumCommissionAgent": 11329.58, "SumCommissionUserTaxes": 153.67, "SumItems": 571325.13, "SumNominalSum": 214792.98, "SumOutProject": 551096.13, "SumPayoutSum": 193316.71, "TaxesOfPayments": 171.56 }, { "DirectTaxesOfPayments": 0.14, "IsoCurrency": "USD", "PaymentsAmount": 482.58, "SumCommissionAgent": 77.51, "SumCommissionUserTaxes": 0.07, "SumItems": 243777.62, "SumNominalSum": 493.09, "SumOutProject": 241787.62, "SumPayoutSum": 462.62, "TaxesOfPayments": 0.14 }, { "DirectTaxesOfPayments": 0.07, "IsoCurrency": "EUR", "PaymentsAmount": 608.2, "SumCommissionAgent": 55.71, "SumCommissionUserTaxes": 90.94, "SumItems": 156238.62, "SumNominalSum": 607.26, "SumOutProject": 156158.62, "SumPayoutSum": 460.8, "TaxesOfPayments": 90.94 } ]

Solicitud

Obtiene la información completa de la transacción por ID.

Aviso

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

Seguridad
basicAuth
Ruta
merchant_idintegerrequerido

ID de vendedor.

transaction_idintegerrequerido

ID de la transacción.

curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/es/api/pay-station/merchants/{merchant_id}/reports/transactions/{transaction_id}/details'

Respuestas

La información de la transacción se devolvió correctamente.

Cuerpoapplication/jsonArray [
customer_detailsobject
finance_detailsobject
payment_detailsobject
subscription_detailsobject
transaction_detailsobject
]
Respuesta
application/json
[ { "customer_details": {}, "finance_details": {}, "payment_details": {}, "subscription_details": {}, "transaction_details": {} } ]

Solicitud

Muestra todos los pagos de un periodo.

Aviso

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

Seguridad
basicAuth
Ruta
merchant_idintegerrequerido

ID de vendedor.

Consulta
datetime_fromstring(datetime)

Inicio del periodo.

datetime_tostring(datetime)

Fin del periodo.

legal_entity_idinteger

ID de la entidad jurídica del desarrollador.

statusstring

Estado del desembolso.

Enumeración ValorDescripción
hold

A la espera de una solicitud para proceder.

paid

Desembolso completado.

ready

Desembolso en curso.

curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/es/api/pay-station/merchants/{merchant_id}/reports/transfers?datetime_from=string&datetime_to=string&legal_entity_id=0&status=hold'

Respuestas

OK.

Cuerpoapplication/json
Respuesta
application/json
[ { "canceled": 0, "payout": {}, "rate": 1, "transfer": {} } ]
Operaciones
Operaciones