Xsolla-logo
  • Documentação
  • Criar conta

Cancelamento do pedido (com detalhes de pagamento e transação)Webhook POST

A Xsolla envia o webhook order_canceled para o URL especificado quando o pagamento é cancelado pelo usuário, parceiro ou automaticamente.

O webhook order_canceled contém informações sobre itens retornados, dados de pagamento e detalhes da transação cancelada.

O webhook order_canceled não é enviado se o pagamento não for bem- sucedido. Por exemplo:

  • o formulário de pagamento foi aberto, mas o usuário não pagou pelo pedido
  • o formulário de pagamento foi aberto, mas houve erros durante o pagamento

Recomenda-se que o tempo de processamento do webhook order_canceled seja inferior a 3 segundos.

Request
Request Body schema: application/json
notification_type
required
string

Tipo de notificação.

required
Array of version = 1 (object) or version = 2 (object)

Lista de itens comprados pelo usuário.

The set of parameters included in the array depends on the webhook version. Version 2 includes additional parameters: is_free, is_bonus, and is_bundle_content. To switch the version, pass its number in the version parameter in the Update information about webhook settings API call.

Array
One of:
sku
required
string

ID do item único. Para itens com o tipo game_key, é usado um valor no formato sku_drm.

type
required
string

Tipo de itens. Ele pode ter os seguintes valores: virtual_good, virtual_currency, game_key, bundle. Para itens de tipo bundle, incluindo pacotes de moedas virtuais, a matriz de itens exibirá:

  • parâmetros do conjunto ou pacote de moedas virtuais
  • itens incluídos no conjunto ou moedas incluídas no pacote
Enum: "virtual_good" "virtual_currency" "game_key" "bundle"
quantity
required
integer

Quantidade de itens.

amount
required
string

Custo total dos itens com base na quantidade.

required
Array of objects

Promoções aplicadas. Se uma promoção não foi aplicada, é passada uma matriz vazia no parâmetro.

Array
amount_with_discount
string

Custo total dos itens com desconto.

amount_without_discount
string

Custo total dos itens sem desconto.

sequence
integer

Ordem de aplicação de promoções.

is_pre_order
required
boolean

Se true, o item está em pré-venda.

custom_attributes
object

Um objeto JSON contendo atributos e valores de item.

required
object

Informações sobre o pedido.

id
required
integer

Identificador exclusivo do pedido do usuário no lado da Xsolla.

mode
required
string

Modalidade de pagamento. default é usado para pagamentos reais; sandbox para pagamentos de testes.

Enum: "default" "sandbox"
currency_type
required
string

Tipo de moeda de pagamento. Para pedidos grátis, é especificado o valor unknown.

Enum: Description
real

por moeda real

unknown

para um pedido grátis

virtual

por moeda virtual

currency
required
string

Moeda de ordem. A moeda virtual usa o SKU e a moeda real usa um código ISO 4217 de três letras.

amount
required
string

O custo total de um carrinho com base na moeda escolhida.

status
required
string

Status do pedido.

platform
required
string or null

Plataforma de pagamento. O valor xsolla é usado para pagamentos via Xsolla. Para outros pagamentos, o valor correspondente ao nome da plataforma de publicação de jogos é usado: playstation_network, xbox_live, pc_standalone, nintendo_shop, google_play, app_store_ios, android_standalone, ios_standalone, android_other, ios_other, pc_other.

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"
comment
required
string or null

Comentário do usuário ao pedido.

invoice_id
required
string or null

ID da fatura de pagamentos em moeda real. Pagamentos em moedas virtuais ou itens grátis têm um valor null.

required
Array of objects

Promoções aplicadas. Se uma promoção não foi aplicada, é passada uma matriz vazia no parâmetro.

Array
amount_with_discount
string

Custo total dos itens com desconto.

amount_without_discount
string

Custo total dos itens sem desconto.

sequence
integer

Ordem de aplicação de promoções.

Array of objects

Cupons aplicados. Se o cupom não for aplicado, a matriz não retornará.

Array
code
string

O código de um cupom aplicado.

external_id
string

ID externo.

Array of objects

Códigos promocionais aplicados. Se o código promocional não for aplicado, a matriz não retornará.

Array
code
string

O código de um código promocional aplicado.

external_id
string

ID externo.

required
object

Informações do usuário.

external_id
required
string

ID de usuário.

email
required
string

Endereço de e-mail do usuário.

object

Detalhes da transação e do pagamento.

notification_type
required
string

Tipo de notificação.

required
object

Detalhes da transação (objeto).

agreement
integer

ID do contrato.

dry_run
integer

Transação de teste. O parâmetro tem valor 1 se for uma transação de teste ou não for enviado se a transação for real.

external_id
string

ID externo de transação.

id
integer

ID de transação.

payment_method_order_id
string

ID de pagamento no sistema de pagamento.

required
object

Detalhes de pagamento (objeto).

object

Imposto retido na fonte aplicado em países específicos devido a transações internacionais (objeto).

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

percent
number <float>

Taxa de retenção na fonte do país, %.

object

Imposto retido direto na fonte.

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

percent
number <float>

Alíquota de retenção direta na fonte.

object

Valor pago pelo usuário (objeto).

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

object

Taxa do sistema de pagamento.

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

object

Valor debitado do sistema de pagamento.

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

object

Dados de pagamento (objeto).

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

payout_currency_rate
string

Taxa de câmbio entre as moedas de pagamento e remuneração.

object

Objeto com dados sobre os custos de repatriamento, imposto à Xsolla por terceiros.

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

object

Imposto sobre vendas (objeto; apenas EUA e Canadá).

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

percent
number <float>

Alíquota de imposto sobre vendas.

object

Valor total das taxas de aquisição de usuários deduzidas para as compras feitas por meio de redes afiliadas e influenciadores (objeto).

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

percent
number <float>

Proporção de taxa de aquisição de usuários, %.

object

Dados do IVA (objeto; apenas na UE).

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

percent
number <float>

Taxa de IVA.

object

Valor debitado do saldo Xsolla.

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

object

Taxa Xsolla (objeto).

amount
number <float>

Quantia.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

object

Dados da compra (objeto).

required
object

Preço total de compra (objeto).

amount
number <float>

Valor total do pagamento.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

object

Dados da assinatura (objeto).

amount
number <float>

Preço em moeda real.

currency
string

Moeda. Código da moeda de três letras de acordo com o ISO 4217.

date_create
string

Data de criação da assinatura. Data e hora de acordo com o ISO 8601.

plan_id
string

ID do plano (externo se o plano foi criado via API).

subscription_id
integer

ID de assinatura no banco de dados Xsolla.

tags
Array of strings

Rótulos do plano.

object

Detalhes do reembolso (objeto).

author
string

Iniciador de reembolso. O valor do campo é passado de acordo com a tabela:

Iniciador de reembolso Valor do campo
Jogo (via API). API
Usuário da Publisher Account (reembolso automático). E-mail do usuário
Usuário da Publisher Account (com assistência do suporte ao cliente Xsolla). support@xsolla.com
Xsolla (com assistência do suporte ao cliente Xsolla). support@xsolla.com
code
integer

ID do código.

reason
string

Motivo do reembolso.

object

Configurações personalizadas do projeto (objeto).

merchant_id
integer

ID de comerciante.

project_id
integer

ID do projeto. Você pode encontrar esse parâmetro em sua Conta de Distribuidor ao lado do nome do projeto.

custom_parameters
object

Informações adicionais.

Responses
200

Retorne para indicar o processamento bem-sucedido.

400

Retorne em caso de erro nas informações fornecidas (por exemplo, um parâmetro obrigatório ausente, falha na autorização, etc.).

Request samples
curl -v 'https://your.hostname/your/uri' \
-X POST \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Signature d09695066c52c1b8bdae92f2d6eb59f5b5f89843' \
-d '{
    "notification_type": "order_canceled",
    "items": [
      {
        "sku": "com.xsolla.v.item_1",
        "type": "virtual_good",
        "is_pre_order": false,
        "quantity": 3,
        "amount": "1000",
        "promotions": [
          {
            "amount_without_discount": "6000",
            "amount_with_discount": "5000",
            "sequence": 1
          },
          {
            "amount_without_discount": "5000",
            "amount_with_discount": "4000",
            "sequence": 2
          }
        ],
        "custom_attributes": {
            "purchased": 0,
            "attr": "value"
          }
      },
      {
        "sku": "com.xsolla.v.item_new_1",
        "type": "bundle",
        "is_pre_order": false,
        "quantity": 1,
        "amount": "1000",
        "promotions": []
      },
      {
        "sku": "com.xsolla.gold_1",
        "type": "virtual_currency",
        "is_pre_order": false,
        "quantity": 1500,
        "amount": "[null]",
        "promotions": []
      }
    ],
    "order": {
      "id": 1,
      "mode": "default",
      "currency_type": "virtual",
      "currency": "sku_currency",
      "amount": "2000",
      "status": "paid",
      "platform": "xsolla",
      "comment": null,
      "invoice_id": "1",
      "promotions": [
        {
          "amount_without_discount": "4000",
          "amount_with_discount": "2000",
          "sequence": 1
        }
      ],
      "promocodes": [
        {
          "code": "promocode_some_code",
          "external_id": "promocode_sku"
        }
      ],
      "coupons": [
        {
          "code": "WINTER2021",
          "external_id": "coupon_sku"
        }
      ]
    },
    "user": {
      "external_id": "id_xsolla_login_1",
      "email": "email@example.com"
    },
    "billing": {
      "notification_type": "refund",
      "settings": {
        "project_id": 18404,
        "merchant_id": 2340
      },
      "purchase": {
              "subscription": {
                  "plan_id": "b5dac9c8",
                  "subscription_id": "10",
                  "date_create": "2014-09-22T19:25:25+04:00",
                  "currency": "USD",
                  "amount": 9.99
              },
              "total":{
                  "currency": "USD",
                  "amount": 200
              }
          },
      "transaction": {
              "id": 1,
              "external_id": 1,
              "dry_run": 1,
              "agreement": 1
          },
      "refund_details": {
              "code": 4,
              "reason": "Potential fraud"
          },
      "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
              }
          }
    }
}'