Commonly used data types
Field | Description | Examples |
---|---|---|
Currency | Currency symbols are always in the 3 alpha digit ISO 4217 notation | EUR, USD, GBP |
Amount | Amounts are denoted in full currency, separated by a dot for the minor amounts. Depending on the currency we allow 2 or 3 digits after the dot. | 199.95 |
Time stamps | Dates should be sent adjusted to UTC. The date will be shown on the case manager based on the browser local time. | 2024-12-05T14:38:47.812+09:00 should be sent as 2024-12-05T05:38:47.812 (original date and hour minus shift) |
Country Codes | Uppercase ISO 3166 alpha 2 codes for countries | DE |
Account Numbers | Account Numbers can differ by use case. - For a SEPA bank transfer it's an IBAN, - For Swift or domestic it's a Basic Bank Account Number (BBAN) – up to 30 alphanumeric characters that are country-specific without formatting spaces unless required in the specification |
ME16637549397437382314 (IBAN) 34567890189 (BBAN) |
## How to identify individual vs organization in a request? | ||
Across the AML.AI gateway, the same logic is applied to determine if an individual or an organization data was sent in a request, no matter which API was used. This logic defines when data is masked, how the frontend shows a case, what risk factors are applied for customer risk rating, how fuzzy search is applied etc. |
Customertype, companyDetails & personalDetails fields differentiate between an individual and an organization. The following fields are mandatory, depending on the use case should be included in counterparty details or account holding details. You can define individual vs organization either by customer type or by company details/personal details.
See details on parameter below:
“accountHoldingPartyData” : { … "customerType": "INDIVIDUAL" …} (other types: “CORPORATION” …
{"companyDetails": {"companyName": “example company - MANDATORY”}}
{"personalDetails": { "personName": {
"firstName": "First name example",
"lastName": "Last Name example - MANDATORY",
"middleNames": “Middle Name example" }}
Full reference in API documentation: https://developers.aml-ai.net/
Following conditions apply:
- If customerType is delivered – customer type is considered to define if individual vs organization. Customer type “INDIVIDUAL” defines an individual, all other customer types define an organization.
- If companyDetails are delivered – request is considered to hold an organization, but this only applies if “companyName” is filled as mandatory field.
- If personalDetails are delivered – request is considered to hold an individual, but his only applies if “lastName” is filled as mandatory field.
You can send all 3 parameters but have to take care that they do not contradict each other. As contradicting information or no data will lead to a definition of customer type = undefined and undefined customer type will default to your selected setting in case manager. Default setting will be set under "settings" > "Customer Category Configuration". As system default "Individual" is preconfigured.
Example:
IF "customerType" is set to individual AND "companyName" in companyDetails is filled
THEN customerType is "undefined"
Following customer types are already mapped in gateway:
Organisation:
"ASSOCIATION", "CORPORATION", "COMPANY", "GOVERNMENT_AGENCY", "INTERNAL_ORGANIZATION", "LIMITED_LIABILITY_COMPANY", "PARTNERSHIP", "TAX_EXEMPT_ORGANIZATION", "INTERNATIONAL_ORGANIZATION", "SME", "BUSINESS", "ORGANIZATION", "ORGANISATION", "L" - stands for "legal entity", "RETAIL", "BUYER", "LEGAL", "PRIVATE", "SUPPLIER", "IC", "NGO" - Non-governmental organization, "PUBLIC LIMITED COMPANY (AG/PLC/SA)", "LIMITED LIABILITY COMPANY (SLR/LTD/GMBH/LLC)", "LIMITED PARTNERSHIP / KG", "GENERAL PARTNERSHIP", "SIMPLE PARTNERSHIP", "SOLE PROPRIETORSHIP", "FOUNDATION & ENDOWMENT / STIFTUNG", "COOPERATIVE", "TRUST"
Individual:
"INDIVIDUAL", "INVESTOR", "PERSONAL", "P" - stands for "private entity", "CONSUMER"
Transacting parties based on use case / types of transactions
Use Case: Card Acquiring
Field / Type Of Transaction | Payment | Refund |
---|---|---|
initiatingParty | CardHolder | Merchant |
accountHoldingParty | Merchant (=beneficiary) | Merchant (=originator) |
counterParty | Cardholder (= originator) | Cardholder (=beneficiary) |
Money flow from accountHoldingParty perspective | CREDIT (merchant receives money) | DEBIT (money leaves merchant) |
Use Case: Card Issuing
Field / Type Of Transaction | Payment | Refund |
---|---|---|
initiatingParty | CardHolder | Merchant |
accountHoldingParty | Cardholder (= originator) | Cardholder (=beneficiary) |
counterParty | Merchant (=beneficiary) | Merchant (=originator) |
Money flow from accountHoldingParty perspective | DEBIT (money deducted from card) | CREDIT (card receives funds) |
Use Case: SEPA Payment
Field / Type Of Transaction | Incoming Transfer | Outgoing Transfer | Incoming Direct Debit | Outgoing Direct Debit |
---|---|---|---|---|
initiatingParty | Other FI customer | FI customer | FI customer | Other FI customer |
accountHoldingParty | Customer of FI as in: Natural person or entity (=beneficiary) | Customer of FI as in: Natural person or entity (=originator) | Customer of FI as in: Natural person or entity (=beneficiary) | Customer of FI as in: Natural person or entity (=originator) |
counterParty | Customer of OTHER FI as in: Natural person or entity (=originator) | Customer of OTHER FI as in: Natural person or entity (=beneficiary) | Customer of OTHER FI as in: Natural person or entity (=originator) | Customer of OTHER FI as in: Natural person or entity (=beneficiary) |
Money flow from accountHoldingParty perspective | CREDIT (FI receives money) | DEBIT (FI sends money) | CREDIT (FI receives money) | DEBIT (FI sends money) |