> ## Documentation Index
> Fetch the complete documentation index at: https://docs.brand-wallet.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Sync Data

> Synchronize critical resources to BrandWallet

There are some resources which are used in campaign and promotion configurations in BrandWallet — products and categories. In some cases, integrating systems require their own ids of resources to be exchanged over api calls — ids of users, branches, products and categories.

It is always a good practice to sync this data periodically from integrating system to BrandWallet.

## Critical Resources

| Resource | Description |
| - | - |
| User | The person who has credentials to access integrating system |
| Branch | The shop from which the transactions are coming |
| Product | Products and services the organization is providing to customers |
| Category | The groups of products organized with a specific logic |

## Letting BrandWallet Access Your Data

When a customer adds your [Connection Type](/quickstart) to their BrandWallet account as a new **Connection**, BrandWallet can connect to integrating system and pull critical resources.

To enable this, you have to provide a `BaseUrl`  and `Authentication` properties in your ConnectionType.

BrandWallet requires the following endpoints to be provided by the integrating system in order for the data synchronization can be carried out.

```bash theme={null}
GET $BaseUrl/users
GET $BaseUrl/branches
GET $BaseUrl/products
GET $BaseUrl/categories
```

Please check the [API documentation](/api/list-customers) for **data models** for these resources.

<Warning>
  BrandWallet pulls critical resource data only **once** when a new connection is added by the organization. After initial Connection setup, organization users can goto Settings > Connections and manually sync data.
</Warning>

<Danger>
  BrandWallet will not sync data if the incoming data models do not match with the ones in the [API documentation](/api/list-customers)
</Danger>

## WebHooks

For the critical resources, BrandWallet considers the integrating system as the **single point of truth**. BrandWallet **does not** let organization users to edit these resources from the **Dashboard**.

Since these resources may be subject to frequent updates — new products, closing branches, new users onboard — it is the integrating system's responsibility to update these critical resources when necessary.

You can use the following WebHooks to push the updates to BrandWallet.

<Danger>
  BrandWallet **does not** let organization users to edit critical resources from the **Dashboard**.
</Danger>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.