A Xsolla envia o webhook order_paid
para o URL especificado quando
as seguintes condições são atendidas:
payment
.O webhook order_paid
contém informações sobre os itens comprados e
os dados da transação.
O webhook order_paid
não será enviado se:
payment
não foi recebida.Recomenda-se que a velocidade de processamento do webhook
order_paid
seja inferior a 3 segundos.
As respostas esperadas são descritas na seção Respostas. Você pode usar outros códigos de resposta. Dependendo do código da resposta e a conexão da funcionalidade de reembolso automático do pagamento, a lógica de processamento do webhook no lado da Xsolla funciona como a seguir:
Código de resposta | Reembolso automático de pagamento está desativado (por padrão) | Reembolso automático de pagamento está ativado |
---|---|---|
400 , 401 , 402 , 403 , 404 , 409 , 422 , 415 |
Nenhuma ação | Reembolso automático ao usuário |
200 , 201 , 204 |
Nenhuma ação | Nenhuma ação |
Código diferente ou nenhuma resposta ao webhook | Múltiplos webhooks são enviados dentro de um intervalo de tempo específico: 2 tentativas dentro de um intervalo de 5 minutos, 7 tentativas dentro de um intervalo de 15 minutos, 10 tentativas de dentro de um intervalo de 60 minutos. | Múltiplos webhooks são enviados dentro de um intervalo de tempo específico: 2 tentativas dentro de um intervalo de 5 minutos, 7 tentativas dentro de um intervalo de 15 minutos, 10 tentativas de dentro de um intervalo de 60 minutos. Se todos os webhooks forem enviados mas não for recebida uma resposta bem-sucedida, um reembolso automático é emitido ao usuário. |
Para conectar a funcionalidade de reembolso automática, entre em contato com o gerente da conta do projeto ou envie uma mensagem para am@xsolla.com.
notification_type required | string Tipo de notificação. | ||||||||||||||||||||||||||||||||||||||
required | Array of objects Lista de itens comprados pelo usuário. | ||||||||||||||||||||||||||||||||||||||
Array | |||||||||||||||||||||||||||||||||||||||
required | object Informações sobre o pedido. | ||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||
required | object Informações do usuário. | ||||||||||||||||||||||||||||||||||||||
custom_parameters | object Informações adicionais. |
Retorne para indicar o processamento bem-sucedido.
Retorne em caso de erro nas informações fornecidas (por exemplo, um parâmetro obrigatório ausente, falha na autorização, etc.).
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_paid", "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": "gc_user@xsolla.com" } }'