# Eventos v.1.0.0

{% hint style="danger" %} <mark style="color:red;">**DESCONTINUADO**</mark>

A v1.0.0 foi descontinuado.&#x20;

Recomendamos migrar para a versão 2.0.0
{% endhint %}

## Eventos

<details>

<summary>Carrinho Abandonado</summary>

Disparado quando um usuário acessa a página do checkout e preenche as informações de email ou telefone e não efetua a compra no período de 20 minutos.

```json
{
	"type": "AbandonedCheckout",
	"event": {
		"productId": "9876541234",
		"productName": "Desafio de 30 Dias",
		"offerId": "1234563400",
		"groupId": "1234563400",
		"offerName": "Desafio de 30 Dias",
		"groupName": "Desafio de 30 Dias",
		"userEmail": "nome@seumail.com.br",
		"userPhone": "+55 11 90000 1234",
		"cause": "abandoned_checkout",
		"idempotencyKey": "qweasdzxcasdsqwe",
		"purchaseTiming": "2023-05-03T18:48:10.514Z",
		"sellerId": "12345-11111",
		"createdAt": "2023-05-03T18:38:19.723Z"
	},
	"version": "1.0.0"
}
```

</details>

<details>

<summary>Venda pendente</summary>

Disparado sempre que uma nova fatura é criada, mas ainda não foi paga.

```json
{
	"type": "PendingSale",
	"event": {
		"userId": "01GcniNRKgO122q0zrgi2Tbu7QB3",
		"userName": "Nome Sobrenome",
		"userEmail": "nome@seumail.com.br",
		"userPhone": "+55 11 90000 1234",
		"totalAmount": 50,
		"groupId": "123456-3400",
		"groupName": "Desafio de 30 Dias",
		"recurring": "subscription",
		"paymentMethod": "credit_card",
		"affiliates": [
			{
				"affiliateAmount": 5,
				"affiliateId": "12345-0000",
				"affiliateName": "Nome do Afiliado"
			},
			{
				"affiliateAmount": 5,
				"affiliateId": "12345-0000",
				"affiliateName": "Nome do Afiliado"
			}
		],
		"discount": 10,
		"isRenewing": false,
		"sellerId": "12345-11111",
		"createdAt": "2023-05-03T18:38:19.723Z",
		"transactionId": "1E02RqBAk2ERQeXXDGO6",
		"userDocument": "051.713.580-95"
	},
	"version": "1.0.0"
}
```

</details>

<details>

<summary>Nova venda</summary>

Disparado sempre que uma fatura pendente é paga.

```json
{
	"type": "NewSale",
	"event": {
		"userId": "01GcniNRKgO122q0zrgi2Tbu7QB3",
		"userName": "Nome Sobrenome",
		"userEmail": "nome@seumail.com.br",
		"userPhone": "+55 11 90000 1234",
		"totalAmount": 50,
		"groupId": "123456-3400",
		"groupName": "Desafio de 30 Dias",
		"recurring": "subscription",
		"paymentMethod": "credit_card",
		"affiliates": [
			{
				"affiliateAmount": 5,
				"affiliateId": "12345-0000",
				"affiliateName": "Nome do Afiliado"
			},
			{
				"affiliateAmount": 5,
				"affiliateId": "12345-0000",
				"affiliateName": "Nome do Afiliado"
			}
		],
		"discount": 10,
		"isRenewing": false,
		"sellerId": "12345-11111",
		"createdAt": "2023-05-03T18:38:19.723Z",
		"transactionId": "1E02RqBAk2ERQeXXDGO6",
		"userDocument": "051.713.580-95"
	},
	"version": "1.0.0"
}
```

</details>

<details>

<summary>Novo usuário</summary>

Disparado quando um usuário faz uma compra pela primeira vez com um determinado criador (independente de qual grupo ou data, se o usuário já tiver comprado um grupo desse criador, o evento não será disparado).

```json
{
	"type": "NewUser",
	"event": {
		"userId": "01GcniNRKgO122q0zrgi2Tbu7QB3",
		"userName": "Nome Sobrenome",
		"userEmail": "nome@seumail.com.br",
		"userPhone": "+55 11 90000 1234",
		"groupId": "123456-3400",
		"amount": 50,
		"sellerId": "12345-11111",
		"userDocument": "051.713.580-95",
		"groupName": "Desafio de 30 Dias"
	},
	"version": "1.0.0"
}
```

</details>

<details>

<summary>Assinatura cancelada</summary>

Disparado sempre que uma assinatura é cancelada, seja por finalizado seus dias assinados ou porque o usuário cancelou sua renovação.

```json
{
	"type": "CanceledSubscription",
	"event": {
		"userId": "01GcniNRKgO122q0zrgi2Tbu7QB3",
		"userName": "Nome Sobrenome",
		"userEmail": "nome@seumail.com.br",
		"userPhone": "+55 11 90000 1234",
		"totalAmount": 50,
		"groupId": "123456-3400",
		"groupName": "Desafio de 30 Dias",
		"reason": "expired",
		"sellerId": "12345-11111",
		"userDocument": "051.713.580-95"
	},
	"version": "1.0.0"
}
```

</details>

<details>

<summary>Solicitação de reembolso</summary>

Disparado quando uma solicitação de reembolso é criada.

```json
{
	"type": "RefundRequested",
	"event": {
		"userId": "01GcniNRKgO122q0zrgi2Tbu7QB3",
		"userName": "Nome Sobrenome",
		"userEmail": "nome@seumail.com.br",
		"userPhone": "+55 11 90000 1234",
		"totalAmount": 50,
		"groupId": "123456-3400",
		"groupName": "Desafio de 30 Dias",
		"recurring": "subscription",
		"paymentMethod": "credit_card",
		"affiliates": [
			{
				"affiliateAmount": 5,
				"affiliateId": "12345-0000",
				"affiliateName": "Nome do Afiliado"
			},
			{
				"affiliateAmount": 5,
				"affiliateId": "12345-0000",
				"affiliateName": "Nome do Afiliado"
			}
		],
		"discount": 10,
		"isRenewing": false,
		"sellerId": "12345-11111",
		"userDocument": "051.713.580-95"
	},
	"version": "1.0.0"
}
```

</details>

<details>

<summary>Venda em protesto</summary>

Disparado quando uma fatura entra em protesto, ou seja, o cliente contestou essa fatura através da bandeira do cartão de crédito.

```json
{
	"type": "InProtestSale",
	"event": {
		"userId": "01GcniNRKgO122q0zrgi2Tbu7QB3",
		"userName": "Nome Sobrenome",
		"userEmail": "nome@seumail.com.br",
		"userPhone": "+55 11 90000 1234",
		"totalAmount": 50,
		"groupId": "123456-3400",
		"groupName": "Desafio de 30 Dias",
		"recurring": "subscription",
		"paymentMethod": "credit_card",
		"affiliates": [
			{
				"affiliateAmount": 5,
				"affiliateId": "12345-0000",
				"affiliateName": "Nome do Afiliado"
			},
			{
				"affiliateAmount": 5,
				"affiliateId": "12345-0000",
				"affiliateName": "Nome do Afiliado"
			},
		],
		"discount": 10,
		"isRenewing": false,
		"sellerId": "12345-11111",
		"createdAt": "2023-05-03T18:38:19.723Z",
		"transactionId": "1E02RqBAk2ERQeXXDGO6",
		"userDocument": "051.713.580-95"
	},
	"version": "1.0.0"
}
```

</details>

<details>

<summary>Venda cancelada</summary>

Disparado sempre que uma fatura é cancelada, seja por motivo de contestação, reembolso, etc.

```json
{
	"type": "CanceledSale",
	"event": {
		"userId": "01GcniNRKgO122q0zrgi2Tbu7QB3",
		"userName": "Nome Sobrenome",
		"userEmail": "nome@seumail.com.br",
		"userPhone": "+55 11 90000 1234",
		"totalAmount": 50,
		"groupId": "123456-3400",
		"groupName": "Desafio de 30 Dias",
		"recurring": "subscription",
		"paymentMethod": "credit_card",
		"creditCardLR": "AF02",
		"reason": "canceled",
		"affiliates": [
			{
				"affiliateAmount": 5,
				"affiliateId": "12345-0000",
				"affiliateName": "Nome do Afiliado"
			},
			{
				"affiliateAmount": 5,
				"affiliateId": "12345-0000",
				"affiliateName": "Nome do Afiliado"
			}
		],
		"discount": 10,
		"isRenewing": true,
		"sellerId": "12345-11111",
		"createdAt": "2023-05-03T18:38:19.723Z",
		"transactionId": "1E02RqBAk2ERQeXXDGO6",
		"userDocument": "051.713.580-95"
	},
	"version": "1.0.0"
}
```

</details>

## Propriedades

Os eventos seguem um padrão de payload e propriedades, sendo elas:

{% tabs %}
{% tab title="Propriedades" %}
**type**  `string`

Tipo do evento de Webhook

<table><thead><tr><th width="279">Valores possíveis</th><th>Descrição</th></tr></thead><tbody><tr><td>AbandonedCheckout</td><td>Carrinho abadonado</td></tr><tr><td>PendingSale</td><td>Venda Pendente</td></tr><tr><td>NewSale</td><td>Nova Venda</td></tr><tr><td>NewUser</td><td>Novo Usuário</td></tr><tr><td>InProtestSale</td><td>Em Protesto</td></tr><tr><td>RefundRequested</td><td>Solicitação de Reembolso</td></tr><tr><td>CanceledSubscription</td><td>Assinatura Cancelada</td></tr><tr><td>CanceledSale</td><td>Venda Cancelada</td></tr></tbody></table>

***

**event.recurring**  `string`

Tipo de assinatura

<table><thead><tr><th width="278">Valores possíveis</th><th>Descrição</th></tr></thead><tbody><tr><td>subscription</td><td>Assinatura</td></tr><tr><td>one_time_purchased</td><td>Pagamento único</td></tr></tbody></table>

***

**event.paymentMethod**  `string`

descrição

<table><thead><tr><th width="269">Valores possíveis</th><th>Descrição</th></tr></thead><tbody><tr><td>credit_card</td><td>Cartão de Crédito</td></tr><tr><td>pix</td><td>Pix</td></tr><tr><td>bank_slip</td><td>Boleto</td></tr></tbody></table>

***

**event.reason**  `string`

descrição

<table><thead><tr><th width="269">Valores possíveis</th><th>Descrição</th></tr></thead><tbody><tr><td>renewed</td><td>Renovação</td></tr><tr><td>upgraded</td><td>Upgrade de Plano</td></tr><tr><td>expired</td><td>Expirado</td></tr><tr><td>canceled</td><td>Cancelado</td></tr><tr><td>refunded</td><td>Reembolsado</td></tr><tr><td>in_protest</td><td>Em Protesto</td></tr><tr><td>chargeback</td><td>Chargeback</td></tr><tr><td>refused</td><td>Recusado</td></tr></tbody></table>
{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://hubla.gitbook.io/docs/webhooks/eventos-v1.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
