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

# Multi Accounting Groups

> Learn how to segment multi accounting detection within projects using groups

Multi Accounting Groups allow you to segment the multi-accounting graph within a single project. This feature enables you to isolate and manage distinct sets of related accounts, ensuring that multi-accounting detection only occurs within specified groups.

<Warning>
  The Verisoul team will tell you if this is the right solution for your use case. Most customers will not need to use this feature.
</Warning>

## How Groups Work

When groups are enabled, accounts are only considered linked if they share the same group identifier. For example:

```text theme={null}
Account 1 (Group A) ← Same device → Account 2 (Group A)    // Will be linked
Account 3 (Group B) ← Same device → Account 4 (Group B)    // Will be linked
Account 2 (Group A) ← Same device → Account 3 (Group B)    // Will NOT be linked
```

Even if accounts from different groups share the same device, network, or other signals, they will not be considered linked accounts.

## Important Restrictions

Before implementing groups, be aware of these critical restrictions:

1. Groups must be enabled for the project (use the dashboard developers tab)
2. Once groups are enabled for a project, they **cannot** be disabled
3. Every account must have a group assigned
4. Each account can only belong to one group at a time
5. Once an account is added to a group, it cannot be changed to a different group
6. ID Check and Face Match are not supported in the same project with groups enabled

## Implementation

### Client-Side Integration

When initializing the client, include the group in the account object:

```javascript theme={null}
verisoul.account({
  id: "user123",
  email: "user@example.com",
  group: "survey_batch_a"  // Group identifier
});
```

### Server-Side Integration

When making authenticate API calls, include the group in the account object:

```javascript theme={null}
{
  "account": {
    "id": "user123",
    "email": "user@example.com",
    "group": "survey_batch_a"  // Group identifier
  }
}
```

## What if I have accounts that are in multiple groups?

A common way to handle this is to create a new account for each account-group pair. This way, you can track the relationship between the account and the group separately.

The easiest way to do this is to concatenate the account id and group together. For example:

```javascript theme={null}
{
  "account": {
    "id": "user123-survey_batch_a",
    "email": "user@example.com",
    "group": "survey_batch_a"  // Group identifier
  }
}
```

You will still want to use the `group` field to segment the multi-accounting graph in the dashboard. Using this method you can still easily search for accounts in the dashboard and segment by group.

## Common Use Cases

### Survey Platforms

The most common use case for groups is survey platforms where:

* Each survey batch needs to be isolated
* Multiple responses from the same user are allowed across different surveys
* Duplicate responses within the same survey need to be prevented

### Alternative Solutions

Before enabling groups, consider these alternatives:

* Using multiple projects instead of groups (recommended for most customers)
* Implementing custom filtering logic in your application
* Using the lists feature for managing allowed duplicates

## Best Practices

1. **Consult First**: Talk to the Verisoul team before enabling groups to ensure it's the right solution for your use case
2. **Plan Ahead**: Since groups cannot be disabled once enabled, carefully plan your implementation
3. **Consistent Naming**: Use a consistent naming convention for your groups
4. **Documentation**: Maintain internal documentation of your group structure and purpose

## Getting Help

If you're considering using groups or have questions about implementation:

* Reach out on Slack or email [support@verisoul.ai](mailto:support@verisoul.ai)
* Schedule a consultation with the Verisoul team
* Review your use case to determine if multiple projects might be a better solution
