# Event Notification

This is the API that should be created by platform to receive notifications from NeoX including created virtual accounts and transaction events.

## Configuration

<figure><img src="/files/NCZTAB7PX9IdJB6Zx11b" alt=""><figcaption><p>Webhook configuration</p></figcaption></figure>

#### Config to receive notification about created accounts and successful transaction events.

<figure><img src="/files/ApiskgDK2YXcfh7zXt6d" alt=""><figcaption><p>Create new configuration</p></figcaption></figure>

#### Parameters description

* URL: Webhook URL
* Secret key: Use to verify data from NeoX
* Authorization type: No Auth or Basic Auth
* Type: ACCOUNT | TRANSACTION | TRANSACTION\_STATUS
* Code: Optional, mapping to "serviceInfomation.code" in creating a [*virtual account*](https://github.com/neopayvn/neox-gitbook-documents-v2/blob/main/collections/integration/api-create-list-of-virtual-accounts.md) request. If you fill in the "Code", the URL will be received transaction notifications of that virtual accounts having the same "Code".
* Group id: Optional, mapping to "serviceInfomation.groupId" in creating a [*virtual account*](https://github.com/neopayvn/neox-gitbook-documents-v2/blob/main/collections/integration/api-create-list-of-virtual-accounts.md) request. If you fill in the "Group id", the URL will be received transaction notifications of that virtual accounts having the same "Group id".

> "Code" and "Group id" are $and conditions

For example, merchant create a [*virtual account*](https://github.com/neopayvn/neox-gitbook-documents-v2/blob/main/collections/integration/api-create-list-of-virtual-accounts.md) with "serviceInfomation.code" = "001" and "serviceInfomation.groupId" = "GR01". There are four configuration ways to receive the transaction notifications:

<table><thead><tr><th width="121" data-type="number">No</th><th>Code</th><th>Group id</th></tr></thead><tbody><tr><td>1</td><td>001</td><td>GR01</td></tr><tr><td>2</td><td>001</td><td><em>empty</em></td></tr><tr><td>3</td><td><em>empty</em></td><td>GR01</td></tr><tr><td>4</td><td><em>empty</em></td><td><em>empty</em></td></tr></tbody></table>

## Notification

NeoX will send a POST request to configured URL whenever there is an event happen.

1. **Notification of collection transaction happened**

View event object data of type "TRANSACTION". [***Click here***](/docs/global/collections/transaction-management/webhook.md)***.***

2. **Notification of virtual accounts created**

View event object data of type "ACCOUNT". [***Click here***](broken://pages/CcVS16fsVOOQ4hUVO3QX)***.***

3. **Notification when transaction (reconcile) status changed**

View event object data of type "TRANSACTION\_STATUS". [***Click here***](https://docs.neox.vn/docs/collections/transaction-status-management/webhook)***.***

4. **Notification when refund request status changed**

View event object data of type "REFUND". [***Click here***](https://docs.neox.vn/docs/collections/refund-request-management/webhook)***.***

5. **Notification when withdraw request status changed**

View event object data of type "PAYOUT". [***Click here***](https://docs.neox.vn/docs/collections/withdraw-request-management/webhook)***.***


---

# 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://docs.neox.vn/docs/global/collections/integration/event-notification.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.
