Just so you know, further examples and descriptions apply only to CRYPTO operation imports with transaction monitoring.
This section provides information how to submit operation (transaction) details to our database and is focused to those operations which require to perform transaction monitoring. It includes examples of API requests with mandatory and optional fields, a comprehensive list of all available fields, common responses and error descriptions. HTTP Method: POST Path: {{baseUrl}}/amlyze-ws-rest/operation ContentType: application/json Authorization: Bearer Token

API requests examples

Fields

communicationNumber
string
required
Unique number of communication. This field can store up to 256 characters.Example: ComNr_01_TEST
requester
string
required
Name of the system requesting web service.Example: Amlyze
businessUnit
string from classifier list
❗Mandatory field for clients utilizing a multi-organizational solution. Omit this parameter unless instructed about it.It serves to specify the unique identifier for the business unit. Business units are logical groupings of users and data. Each business unit can have its own set of users, permissions, and data access rules.Example: BUSINESS_UNIT_NAME
operationExtId
string
required
External identifier of operation.Example: Op_01_CRYPTO_TEST
operationType
string
required
Notifies about which kind of operation type was performed.Value: CRYPTO
riskManagementCategory
string from classifier list
required
Code of risk management category of the object. Value must be from a classifier list personalized to your company.Example: OP_TRANSFER
sourceOfRiskLevel
string
required
The value “EVALUATE” is used for normal business processes - risk assessment will be performed.Value: EVALUATE
initializeScreeningProcesses
list[]
Defines which lists to check during screening process. Strings of the list are noted in the dropdown below.Example: PEP, ADVERSE_MEDIA
operationDateTime
date
required
The operation date and time show when the operation proceeded.Example: 2024-08-16T13:00:00Z
financialFlowDirection
string from enum
required
Refers to the movement of money between entities or accounts.Enum class values: INCOMING, OUTGOING, NULLDirection INCOMING, your customer is CREDITOR, direction OUTGOING, your customer is DEBTOR.Example: INCOMING
currency
string from classifier list
required
International currency code.Value: EUR
amount
BigDecimal
required
Amount of money sent in an operation.Example: 1499
euroExchangeRate
BigDecimal
❗Mandatory if currency is not EUR. Not Used when currency is EUR.Euro exchange rate for other than Eur currency.Example: 0.93
amountInEuro
BigDecimal
❗Mandatory if currency is not EUR. Not Used when currency is EUR.Amount of money in euro currency.Example: 1499
sourceCountry
string (ISO 3166-1 alpha-2) from classifier list
Country rom where the operation was initiated.Example: LT
destinationCountry
string (ISO 3166-1 alpha-2) from classifier list
Country of operation’s destination.Example: LT
description
string
required
The purpose of payment is saved under description.Example: Exchange
ipAddress
string
The IP address of the operation.Example: xxx.zzz.yyyy.www
ipAddressCountry
string (ISO 3166-1 alpha-2) from classifier list
Country of an IP address of the operation.Example: LT
listOperationParty
list[]
required
List of entities that belong to one operation. Fields of the list are described in the dropdown below.

List of possible responses

This part lists common responses after the submission of the request.
200 OK
  "resultType": "REQUEST_ACCEPTED"


400 Bad Request
    "resultType": "REQUEST_REJECTED",
    "errorCode": "O001",
    "errorDescription": "CommunicationNumber already used in amlyze"


404 Not Found
    "timestamp": "2024-05-26T16:49:50.237+00:00",
    "status": 404,
    "error": "Not Found",
    "path": "/amlyze-ws-rest/opeation" --> mistake inside the endpoint


500 Internal Server Error
  "resultType": "REQUEST_REJECTED"
  "status": 500,
  "error": "Internal Server Error"

List of possible errors

This section lists the possible errors that can occur when making a bad operation request to the API. A bad request is a request that somehow does not follow the API specifications.
Error Description
DestinationCountry is mandatory, check country classifier codes for allowed values.
Amount is mandatory and must be greater than 0.
Despite currency = EUR, AmountInEur differs from Amount.
AmountInEur is mandatory and must be greater than 0.
EuroExchangeRate is mandatory and must be greater than 0.
For non-INTERNAL operation, financialFlowDirection value cannot be ‘NULL’.
Description is mandatory.
Invalid MerchantCountryCode.
RiskManagementCategory is mandatory.
RiskManagementCategory does not exist in Amlyze.
RiskManagementCategory does not support Operation.
Account registered to your institution; Account found in Amlyze, but customer not found in Amlyze.
entityType mismatch in operationParty[” + i + ”]: Amlyze customer has different entity type to operation one.
For INCOMING operation, your customer party role must be CREDITOR.
For OUTGOING operation, your customer party role must be DEBTOR.
operationType ” + operationType.getCode() + ” is not defined in Amlyze. Check Operation type classifier for available values.
Problem with operation party (index: ” + i + ”).
Invalid FinancialFlowDirection: Your institution DEBTOR found for INCOMING operation.
Invalid FinancialFlowDirection: Your institution CREDITOR found for OUTGOING operation.
OperationParties must contain CREDITOR.
OperationParties must contain DEBTOR.
Invalid operation party count. Range: min 1, max 4.
Invalid count of operation parties for ” + operationType.getCode() + ” operationType.
For ‘PIS’ operation, only creditor can be provided.
No operation party account related to your institution BIC, or Customer.
Invalid count of your institution operation parties for ” + operationType.getCode() + ” operationType.
Tenant header ’” + securityOwnerService.getHeaderTenantCode() + ”’ is mandatory.
Business unit is mandatory.
Tenant ’” + tenantCode + ”’ business unit ’”+ businessUnitCode +”’ does not exist.
CommunicationNumber is mandatory.
Requester is mandatory.
SourceOfRiskLevel is mandatory, allowed values: IMPORT / EVALUATE.
OperationExtId is mandatory.
OperationType is mandatory.
Problem with OperationType (INVALID): INVALID is not defined in Amlyze. Check Operation type classifier for available values.
Currency is mandatory, check Currency classifier codes for allowed values.
SourceCountry is mandatory, check country classifier codes for allowed values.
Problem with OperationType (SEPA): Problem with OperationParties. No operation party account related to your institution BIC or Customer.
Problem with OperationType (SEPA): Invalid count of your institution operation parties for SEPA operationType.