Welcome to our new developer portal! Use the "Ask" button to chat with our AI Agent.
For the complete documentation index, see llms.txt. This page is also available as Markdown.

Implement domain controls

Overview

The Transaction Control service lets you enforce and update domain controls for a card.

Use the D1 API or D1 SDK to:

  • Check a card’s domain controls during authorization.

  • Update a card’s domain controls in real time.

What happens during authorization

During authorization, D1 evaluates the card’s configured domain controls. If any check fails, D1 declines the authorization with DOMAIN_CONTROL_FAIL.

To improve the End User experience, configure real-time notifications to the issuer application (In-App) and/or the issuer backend.

Supported domain controls

D1 supports the following domain controls for a card:

Control name
Description
Property type
Optional

Online payment

E-commerce payments (card-not-present)

Boolean

No

Magstripe

Magstripe transactions

Boolean

Yes

Withdrawal

Cash withdrawals

Boolean

Yes

Contactless

Contactless transactions

Boolean

Yes

Abroad payment

Cross-border payments

Boolean

No

Geography by country

Allow payments only in selected countries

List of countries

No

Geography by region

Allow payments only in selected regions

List of regions

No

Currency

Block payments in selected currencies

List of currencies

No

Adult merchant

Block adult merchant categories

Boolean

No

Gambling merchant

Block gambling merchant categories

Boolean

No

Risky merchant

Block risky merchant categories

Boolean

No

Required vs optional controls

Controls marked Optional = No must be defined in the Card Product.

Controls marked Optional = Yes are supported, but optional. If you do not define them in the Card Product, you cannot update them later at card level.

Merchant category groups

D1 provides a default configuration in Merchant category group - default configuration.

The issuer can redefine the Gambling, Adult, and Risky groups with the Thales Delivery Team.

User experience

Example End User experience for domain controls.

Flow

Domain controls are inherited from the Card Product. Retrieve and update them using the D1 Backend API or the D1 SDK.

You can manage only the domain controls that are enabled in the Card Product.

Manage controls with the D1 Backend API

Use the D1 API to manage a card’s domain controls from the issuer backend.

Retrieve current settings

Retrieve current domain control settings (issuer backend).

Use Get Card Settings to retrieve the current domain control settings.

Update settings

Update domain control settings (issuer backend).

Use Update Card Control Settings to update control settings.

Manage controls with the D1 SDK

End Users can view and update card controls from the issuer application using the D1 SDK. See In-App Card Controls.

Retrieve current settings

Retrieve current domain control settings (issuer application).

Update settings

Update domain control settings (issuer application).

Setup

Define default domain controls in the Card Product.

Cards inherit these domain controls when a card is created or registered in D1.

If you do not define an optional control in the Card Product, you cannot update that control later at card level.

Geography by region

See Supported Regions for the supported regions and their associated countries.

Last updated

Was this helpful?