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

# Business Blocklist

> Block Didit Business entities by vendor_data or country, with automatic and manual blocklisting. Pay-per-call KYB fraud and sanctions controls.

Blocklists prevent a business that has failed your compliance checks — or one located in a dangerous jurisdiction — from running new Business Verification (KYB) sessions or transacting on your platform.

## Supported identifier types for Businesses

| Type               | Key                     | Matches when…                                                   |
| ------------------ | ----------------------- | --------------------------------------------------------------- |
| Business           | `BUSINESS`              | A new session or transaction uses the blocklisted `vendor_data` |
| Country            | (configured separately) | Business country matches a dangerous-countries list             |
| IP                 | `IP_ADDRESS`            | The submitter's IP (or CIDR range) matches                      |
| Device fingerprint | `DEVICE_FINGERPRINT`    | Submitter device matches                                        |
| Wallet address     | `WALLET_ADDRESS`        | Crypto wallet tied to the business matches                      |
| Bank account       | `BANK_ACCOUNT`          | IBAN / bank account matches                                     |

<Note>
  Face and document blocklists operate at the **individual** (User) level, not the Business level. To block directors or UBOs, blocklist them as Users — their involvement with any business then flows through to the business's key-people review.
</Note>

## How blocklisting happens

<Steps>
  <Step title="Automatic — on a declined Business Verification (KYB) session">
    When a Business Verification (KYB) session finishes `DECLINED` and auto-blocklist is enabled for your workflow, Didit transitions the Business to `BLOCKED` and adds the `vendor_data` to the System Business Blocklist.
  </Step>

  <Step title="Automatic — on dangerous country">
    If the business country of incorporation appears in your configured dangerous countries list, the Business Verification (KYB) session is auto-declined at creation time with reason `blocked_country`.
  </Step>

  <Step title="Automatic — on sanctioned entity">
    A company AML hit above the decline threshold auto-declines the session and blocklists the business.
  </Step>

  <Step title="Manual — from the console">
    An analyst blocklists a business from *Businesses → \[business] → Actions → Add to blocklist*.
  </Step>

  <Step title="Programmatic — via the Lists API">
    Use the [Lists API](/management-api/lists/overview) to add entries directly to the Business blocklist.
  </Step>
</Steps>

## Dangerous countries

Each application ships with a default **dangerous countries** list (configurable from *Settings → Blocklist → Countries*). Examples of default-included ISO codes: `IRN`, `PRK`, `SYR`, `AFG`, `RUS`, `MMR` (subject to change — the default list follows FATF and OFAC guidance).

When a business is created with a matching `country_code`:

* The Business Verification (KYB) session is auto-declined with reason `blocked_country`.
* No session link is issued.
* The Business entity is created in `BLOCKED` status.

## Adding a business to the blocklist via API

Use the [Lists API](/management-api/lists/overview) to add a blocklist entry programmatically:

1. [List all lists](/management-api/lists/list) filtered by `entry_type=business` and `is_system=true` to find the system Business blocklist.
2. [Create an entry](/management-api/lists/create-entry) on that list with `value` set to the business's `vendor_data`, plus an optional `display_label` and `comment` for audit purposes.

## Enforcement at transaction time

Blocklisted businesses propagate into Transaction Monitoring automatically:

* Transactions with a **blocklisted applicant business** are auto-declined.
* Transactions with a **blocklisted counterparty business** are flagged or declined depending on your rule configuration.

Preset rules like "Sanctioned counterparty" fire on these matches.

## Removing a business from the blocklist

* **Console**: *Blocklist → Businesses → row actions → Remove*.
* **API**: use the [Delete entry](/management-api/lists/delete-entry) endpoint with the list UUID and entry UUID.

Removal does not automatically change the Business's `status`. Use `PATCH /v3/businesses/{vendor_data}/update-status/` to move the business back to `ACTIVE`.

## Audit trail

Every add/remove is logged to the [audit log](/console/audit-logs) with:

* Actor (user email or `'system'`, `'api'`).
* Timestamp.
* Optional comment.
* Reference session if auto-generated.

## Next steps

<CardGroup cols={3}>
  <Card title="Lists API" icon="list" href="/management-api/lists/overview">
    Full blocklist API reference.
  </Card>

  <Card title="Console blocklist" icon="ban" href="/console/blocklist-users">
    Manage blocklists from the UI.
  </Card>

  <Card title="Operations" icon="gear" href="/entities/businesses/operations">
    Change business status.
  </Card>
</CardGroup>
