# Pago del pedido realizado correctamente (con detalles del pago y de la transacción) Xsolla envía el webhook order_paid a la URL especificada cuando el usuario paga el pedido. El webhook order_paid contiene información sobre los artículos comprados, los datos de pago y los detalles de la transacción. El webhook order_paid no se envía si el pago no se realiza correctamente, por ejemplo: * se abrió el formulario de pago, pero el usuario no pagó el pedido * se abrió el formulario de pago, pero hubo errores durante el pago Se recomienda que el tiempo de procesamiento del webhook order_paid sea inferior a 3 segundos. Aviso Los campos que se envían en un webhook dependen de los siguientes parámetros de configuración:los que haya establecido en Cuenta del editor en Project settings > Webhooks > Advanced settings los establecidos en el lado de XsollaSi tiene alguna duda, contacte con su gestor del éxito del cliente o envíe un correo electrónico a csm@xsolla.com. Las respuestas esperadas se describen en la sección Responses. Puede utilizar otros códigos de respuesta. Dependiendo del código de respuesta y de la conexión de la función de reembolso automático de pagos, la lógica de procesamiento del webhook por parte de Xsolla es la siguiente: Código de respuesta El reembolso automático de pagos está desactivado (por defecto) El reembolso automático de pagos está activado 400, 401, 402, 403, 404, 409, 422, 415 Ninguna acción Reembolso automático al usuario 200, 201, 204 Ninguna acción Ninguna acción Diferente código o ninguna respuesta al webhook Se envían varios webhooks en un intervalo de tiempo especificado: 2 intentos con un intervalo de 5 minutos, 7 intentos con un intervalo de 15 minutos, 10 intentos con un intervalo de 60 minutos. Se envían varios webhooks en un intervalo especificado: 2 intentos con un intervalo de 5 minutos, 7 intentos con un intervalo de 15 minutos, 10 intentos con un intervalo de 60 minutos. Si se envían todos los webhooks pero no se recibe una respuesta satisfactoria, se emite un reembolso automático al usuario. Para conectar la función de reembolso automático, contacte con sus gestores de éxito del cliente o escriba a csm@xsolla.com. Endpoint: POST successful-order-payment Version: 1.0 ## Request fields (application/json): - `billing` (object) Datos de la transacción y del pago. - `billing.notification_type` (string, required) Tipo de notificación. - `billing.payment_details` (object, required) Datos del pago (objeto). - `billing.payment_details.country_wht` (object) Retención fiscal aplicada en determinados países debido a transacciones transfronterizas (objeto). - `billing.payment_details.country_wht.amount` (number) Importe. - `billing.payment_details.country_wht.currency` (string) Moneda. Código de moneda de tres letras de conformidad con la norma [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). - `billing.payment_details.country_wht.percent` (number) Tipo de retención fiscal del país, %. - `billing.payment_details.direct_wht` (object) Retención fiscal directa. - `billing.payment_details.direct_wht.percent` (number) Tipo de retención fiscal directa. - `billing.payment_details.payment` (object) Importe pagado por el usuario (objeto). - `billing.payment_details.payment_method_fee` (object) Comisión del sistema de pago. - `billing.payment_details.payment_method_sum` (object) Importe cargado en el sistema de pago. - `billing.payment_details.payout` (object) Datos del desembolso (objeto). - `billing.payment_details.payout_currency_rate` (string) Tipo de cambio entre las monedas de pago y de desembolso. - `billing.payment_details.repatriation_commission` (object) Objeto con datos sobre costes de repatriación, que son impuestos a Xsolla por terceros. - `billing.payment_details.sales_tax` (object) Impuesto sobre las ventas (objeto; solo en EE. UU. y Canadá). - `billing.payment_details.sales_tax.percent` (number) Tipo impositivo sobre las ventas. - `billing.payment_details.user_acquisition_fee` (object) Importe total de los costes de adquisición del usuario deducidos por las compras realizadas mediante redes de afiliación e influencers (objeto). - `billing.payment_details.user_acquisition_fee.percent` (number) Tasa del coste de adquisición del usuario, %. - `billing.payment_details.vat` (object) Datos sobre el IVA (objeto; solo en la UE). - `billing.payment_details.vat.percent` (number) Tipo de IVA. - `billing.payment_details.xsolla_balance_sum` (object) Importe cargado en el saldo de Xsolla. - `billing.payment_details.xsolla_fee` (object) Comisión de Xsolla (objeto). - `billing.purchase` (object) Datos de la compra (objeto). - `billing.purchase.coupon` (object) Detalles del cupón (objeto; si se utilizó un cupón al crear la suscripción). - `billing.purchase.coupon.campaign_code` (string) Código de campaña. - `billing.purchase.coupon.coupon_code` (string) Código de cupón. - `billing.purchase.gift` (object) Datos del regalo (objeto). - `billing.purchase.gift.giver_id` (string) ID del obsequiador. - `billing.purchase.gift.hide_giver_from_receiver` (string) Si se oculta la identidad del obsequiador al destinatario. - `billing.purchase.gift.message` (string) Mensaje del obsequiador. - `billing.purchase.gift.receiver_email` (string) Correo electrónico del destinatario del regalo. - `billing.purchase.gift.receiver_id` (string) ID del destinatario del regalo. - `billing.purchase.promotions` (array) Promociones aplicadas a esta transacción. - `billing.purchase.promotions.id` (integer) ID de promoción. - `billing.purchase.promotions.technical_name` (string) Nombre técnico de la promoción. - `billing.purchase.subscription` (object) Datos de la suscripción (objeto). - `billing.purchase.subscription.amount` (number) Precio en moneda real. - `billing.purchase.subscription.date_create` (string) Fecha de creación de la suscripción. Fecha y hora de conformidad con la norma [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). - `billing.purchase.subscription.date_next_charge` (string) Próxima fecha de facturación. Fecha y hora de conformidad con la norma [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). - `billing.purchase.subscription.plan_id` (string) ID del plan (externo si el plan se creó usando una API). - `billing.purchase.subscription.product_id` (string) ID del producto (si se envía en el token de acceso). - `billing.purchase.subscription.subscription_id` (integer) ID de suscripción en la base de datos de Xsolla. - `billing.purchase.subscription.tags` (array) Etiquetas del plan. - `billing.purchase.total` (object, required) Precio total de la compra (objeto). - `billing.purchase.total.amount` (number) Importe total del pago. - `billing.settings` (object) Configuración del proyecto personalizada (objeto). - `billing.settings.merchant_id` (integer) ID de vendedor. - `billing.settings.project_id` (integer) ID del proyecto. Encontrará este parámetro en su cuenta [Publisher](https://publisher.xsolla.com/) junto al nombre del proyecto. - `billing.transaction` (object, required) Datos de la transacción (objeto). - `billing.transaction.agreement` (integer) ID del acuerdo. - `billing.transaction.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. - `billing.transaction.external_id` (string) ID externo de la transacción. Consulte [FAQs](/es/doc/pay-station/references/faq/#faq_payments_q_new_transaction_external_id) para obtener información detallada. - `billing.transaction.id` (integer) ID de la transacción. - `billing.transaction.payment_date` (string) Fecha del pago. - `billing.transaction.payment_method` (integer) ID del método de pago. - `billing.transaction.payment_method_name` (string) Nombre del método de pago. - `billing.transaction.payment_method_order_id` (string) ID de pago en el sistema de pago. - `custom_parameters` (object) Información adicional. - `items` (array, required) Lista de artículos adquiridos por el usuario. El conjunto de parámetros incluidos en la matriz depende de la versión del webhook. La versión 2 incluye parámetros adicionales: is_free, is_bonus y is_bundle_content. Para cambiar de versión, introduzca su número en el parámetro version en la llamada API [Update information about webhook settings](/es/api/igs/operation/update-webhook/). - `order` (object, required) Información sobre el pedido. - `order.amount` (string, required) El coste total de una cesta en función de la moneda elegida. - `order.comment` (string,null, required) Comentario del usuario sobre el pedido. - `order.coupons` (array) Cupones aplicados. Si no se aplica el cupón, la matriz no devuelve. - `order.coupons.code` (string) El código de un cupón aplicado. - `order.coupons.external_id` (string) ID externo. - `order.currency` (string, required) Moneda del pedido. La moneda virtual utiliza el código de artículo (SKU) y la moneda real usa un código de tres letras según la [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). - `order.currency_type` (string, required) Tipo de moneda de pago. Para realizar un pedido gratuito, se especifica el valor unknown. Enum: "real", "virtual", "unknown", "loyalty_point" - `order.id` (integer, required) Identificador único del pedido del usuario en el lado de Xsolla. - `order.invoice_id` (string,null, required) ID de factura de pagos en moneda real. Los pagos en moneda virtual o los artículos gratuitos tienen un valor de null. - `order.mode` (string, required) Modo de pago. default se utiliza para pagos reales; sandbox para pagos de prueba. Enum: "default", "sandbox" - `order.platform` (string,null, required) Plataforma de pago. Para pagos a través de Xsolla se utiliza el valor xsolla. Para otros pagos, se utiliza el valor correspondiente al nombre de la plataforma de publicación de juegos. Enum: "xsolla", "playstation_network", "xbox_live", "pc_standalone", "nintendo_shop", "google_play", "app_store_ios", "android_standalone", "ios_standalone", "android_other", "ios_other", "pc_other" - `order.promocodes` (array) Códigos promocionales aplicados. Si no se aplica el código promocional, la matriz no devuelve. - `order.promocodes.code` (string) El código de un código promocional aplicado. - `order.promotions` (array, required) Promociones aplicadas para todo el pedido. La matriz se devuelve en los siguientes casos: - Una promoción afecta al importe total de la compra, como un código promocional con el parámetro Descuento en compras. - No se aplica ningún descuento a la compra, pero se añaden artículos de bonificación al pedido. En este caso, se devuelven los valores del coste con descuento ([amount_with_discount](/es/webhooks/#operation/order-cancellation!path=order/promotions/amount_with_discount&t=request)) y sin descuento ([amount_without_discount](/es/webhooks/#operation/order-cancellation!path=order/promotions/amount_without_discount&t=request)) e idénticos, ya que no se aplica ningún descuento. Si no se aplican promociones a nivel de pedido, se devuelve una matriz vacía. - `order.promotions.amount_with_discount` (string) Coste total de los artículos con descuento. - `order.promotions.amount_without_discount` (string) Coste total de los artículos sin descuento. - `order.promotions.sequence` (integer) Pedido de aplicación de promociones. - `order.status` (string, required) Estado del pedido. - `user` (object, required) Información del usuario. - `user.country` (string) Código de país. Dos letras mayúsculas de conformidad con la norma [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). - `user.email` (string, required) Dirección de correo electrónico del usuario. - `user.external_id` (string, required) ID de usuario. ## Response 200 fields ## Response 400 fields