Xsolla-logo

Cancelamento do pedidoWebhook POST

Xsolla envia o webhook order_canceled para o URL especificado quando as seguintes condições são atendidas:

  1. O pagamento foi cancelado pelo usuário, parceiro ou automaticamente.
  2. Xsolla recebeu uma resposta sobre o processamento bem-sucedido do webhook refund.

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

O webhook order_canceled não será enviado se:

  • O pagamento não foi 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
  • A resposta sobre o processamento bem-sucedido do webhook refund não foi recebida.

Recomenda-se que a velocidade 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 objects

Lista de itens comprados pelo usuário.

Array
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 deles. Pode diferir do preço do item devido a taxas de câmbio e comissão.

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

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.

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": "virtual-good-item_test",
        "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": "virtual-good-item_test_test_new",
        "type": "bundle",
        "is_pre_order": false,
        "quantity": 1,
        "amount": "1000",
        "promotions": []
      },
      {
        "sku": "gold",
        "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"
    }

}'