Xsolla-logo

Reembolso parcialWebhook POST

Cuando se realiza un reembolso parcial, Xsolla envía los detalles de la transacción cancelada en un webhook con el tipo de partial_refund a la URL del webhook. Obtenga más información sobre el proceso de reembolso parcial en estas instrucciones.

Puede conceder permisos para recibir información detallada en los webhooks. Para ello, puede establecer las siguientes opciones en la posición On en Cuenta del editor en la sección Project settings > Webhooks > Advanced settings:

Selector Descripción
Mostrar información sobre las transacciones mediante los métodos de pago guardados

La información se transmite en los siguientes parámetros personalizados del webhook:

  • saved_payment_method:
    • 0: no se utilizó el método de pago guardado
    • 1: el método de pago se guardó al realizar el pago actual
    • 2: se utiliza el método de pago guardado previamente
  • payment_type:
    • 1: pago único
    • 2: pago periódico

Códigos de reembolso:

Código Motivo Descripción
1 Cancelación por solicitud del usuario/solicitud del juego Cancelación iniciada desde Cuenta del editor.
3 Integration error (Error de integración) Problemas con la integración entre Xsolla y el juego.
Recomendación: no añada el usuario a la lista de bloqueo.
5 Test payment (Pago de prueba) Transacción de prueba seguida de cancelación.
Recomendación: no añada el usuario a la lista de bloqueo.
7 Fraud notification from PS (Notificación de fraude de PS) Pago rechazado por el sistema de pago. Fraude potencial detectado por PS.
Recomendación: añada el usuario a la lista de bloqueo.
9 Cancellation by the user request (Cancelación solicitada por el usuario) El usuario no quedó satisfecho con el juego o con la compra por cualquier motivo.
Recomendación: no añada el usuario a la lista de bloqueo.
10 Cancellation by the game request Cancelación solicitada por el juego.
Recomendación: no añada el usuario a la lista de bloqueo.
Request
Request Body schema: application/json
notification_type
required
string

Tipo de notificación.

required
object

Datos de la transacción (objeto).

agreement
integer

ID del acuerdo.

date
string

Fecha de la transacción.

dry_run
integer

Transacción de prueba. El parámetro tiene el valor 1 si es una transacción de prueba, o no se envía si la transacción es real.

external_id
string

ID externo de la transacción.

id
integer

ID de la transacción.

required
object

Datos del pago (objeto).

object

Retención fiscal directa.

amount
integer <float>

Importe.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

percent
integer <float>

Tipo de retención fiscal directa.

object

Importe pagado por el usuario (objeto).

amount
integer <float>

Importe.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

object

Comisión del sistema de pago.

amount
integer <float>

Importe.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

object

Importe cargado en el sistema de pago.

amount
integer <float>

Importe.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

object

Datos del desembolso (objeto).

amount
integer <float>

Importe.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

payout_currency_rate
integer <float>

Tipo de cambio entre las monedas de pago y de desembolso.

object

Objeto con datos sobre costes de repatriación, que son impuestos a Xsolla por terceros.

amount
integer <float>

Importe.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

object

Impuesto sobre las ventas (objeto; solo en EE. UU. y Canadá).

amount
integer <float>

Importe.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

percent
integer <float>

Tipo impositivo sobre las ventas.

object

Datos sobre el IVA (objeto; solo en la UE).

amount
integer <float>

Importe.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

percent
integer <float>

Tipo de IVA.

object

Importe cargado en el saldo de Xsolla.

amount
integer <float>

Importe.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

object

Comisión de Xsolla (objeto).

amount
integer <float>

Importe.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

custom_parameters
object

Sus parámetros personalizados.

object

Datos de la compra (objeto).

required
object

Precio total de la compra (objeto).

amount
integer <float>

Importe del pago del reembolso parcial.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

object

Datos del proceso de pago (objeto).

amount
integer <float>

Importe de la compra.

currency
string

Moneda. Código de moneda de tres letras de conformidad con la norma ISO 4217.

object

Detalles del reembolso (objeto).

author
string

Iniciador del reembolso. El valor del campo se transmite de acuerdo con la tabla:

Iniciador del reembolso Valor de campo
Juego (vía API). API
Usuario de Cuenta del editor (reembolso automático). Correo electrónico del usuario
Usuario de Cuenta del editor (con asistencia del servicio de atención al cliente de Xsolla). support@xsolla.com
Xsolla (con asistencia del servicio de atención al cliente de Xsolla). support@xsolla.com
code
integer

ID del código.

date
string

Fecha del reembolso.

reason
string

Motivo del reembolso.

object

Configuración del proyecto personalizada (objeto).

merchant_id
integer

ID de vendedor.

project_id
integer

ID del proyecto. Encontrará este parámetro en su cuenta Publisher junto al nombre del proyecto.

object

Datos del usuario (objeto).

id
required
string

ID de usuario.

country
string

Código de país. Dos letras mayúsculas de conformidad con la norma ISO 3166-1 alpha-2.

email
string

Correo electrónico del usuario.

ip
string

IP del usuario.

name
string

Nombre de usuario.

phone
string

Teléfono del usuario.

zip
string

Código postal o ZIP del usuario.

Responses
204

Devuelve para indicar un procesamiento realizado correctamente.

400

Devuelve en caso de error en la información proporcionada (p. ej., falta un parámetro obligatorio, autorización fallida, etc.).

500

Devuelve para indicar errores temporales en sus servidores.

Request samples
curl -v 'https://your.hostname/your/uri' \
-X POST \
-d '{
        "notification_type": "partial_refund",
        "settings": {
          "project_id": 18404,
          "merchant_id": 2340
        },
        "purchase": {
            "checkout": {
                "currency": "USD",
                "amount": 50
            },
            "total":{
                "currency": "USD",
                "amount": 200
            }
        },
        "user": {
            "ip": "127.0.0.1",
            "phone": "18777976552",
            "email": "email@example.com",
            "id": "1234567",
            "name": "John Smith",
            "country": "US"
        },
        "transaction": {
            "id": 1,
            "external_id": 1,
            "dry_run": 1,
            "agreement": 1,
            "date": "2022-03-01 10:53:15"
        },
        "refund_details": {
            "author": "email@example.com",
            "date": "2022-03-01 10:56:48"
        },
        "payment_details": {
            "sales_tax": {
                "currency": "USD",
                "amount": 0
            },
            "direct_wht": {
                "currency": "USD",
                "amount": 0.70
            },
            "xsolla_fee": {
                "currency": "USD",
                "amount": "10"
            },
            "payout": {
                "currency": "USD",
                "amount": "200"
            },
            "payment_method_fee": {
                "currency": "USD",
                "amount": "20"
            },
            "payment": {
                "currency": "USD",
                "amount": "230"
            },
            "repatriation_commission": {
                "currency": "USD",
                "amount": 10
            }
        }
    }
}'
Response samples
application/json
{
  • "error": {
    }
}