Skip to main content
The Screen a Transaction endpoint evaluates a transaction against predefined compliance criteria including sanctions lists, high-risk country flags, and suspicious keywords. Transactions matching any criteria are flagged for review.

Endpoint

POST /api/v1/monitoring/transaction_screening

Request

Headers

HeaderValueRequired
x-access-tokenYour API secret keyYes
Content-Typeapplication/jsonYes

Body Parameters

ParameterTypeRequiredDescription
transactionIdstringRecommendedLinks repeat calls to the same transaction
transactionTypestringOptionale.g., Transfer, Payment
amountnumberRequiredTransaction amount (e.g., 10000.00)
currencystringOptionalCurrency code, e.g., NGN, USD
transactionDatestringRequiredISO-8601 datetime, e.g., 2024-07-06T12:34:56Z
sender.namestringRequiredSender’s full name — screened against risk lists
sender.accountNumberstringOptionalSender’s account number
sender.addressobjectOptionalSender’s address for location-based checks
sender.address.countrystringRecommendedHelps flag high-risk countries
sender.identificationobjectOptionalSender’s ID details
receiver.namestringRequiredReceiver’s full name — screened against risk lists
receiver.accountNumberstringOptionalReceiver’s account number
receiver.addressobjectOptionalReceiver’s address for location-based checks
receiver.address.countrystringRecommendedHelps flag high-risk countries
receiver.identificationobjectOptionalReceiver’s ID details
details.purposestringRecommendedTransaction purpose — used for keyword screening
details.referencestringOptionalYour internal reference or invoice number

Example

curl -X POST "https://adhere-api.smartcomply.com/api/v1/monitoring/transaction_screening" \
  -H "x-access-token: YOUR_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "transactionId": "1234567892",
    "transactionType": "Transfer",
    "amount": 10000.00,
    "currency": "NGN",
    "transactionDate": "2024-07-06T12:34:56Z",
    "sender": {
      "name": "John Doe",
      "accountNumber": "123456789012",
      "address": {
        "street": "123 Main St",
        "city": "Lagos",
        "state": "Lagos",
        "postalCode": "10001",
        "country": "NIGERIA"
      },
      "identification": {
        "type": "Passport",
        "number": "A12345678",
        "country": "NG"
      }
    },
    "receiver": {
      "name": "Jane Smith",
      "accountNumber": "987654321098",
      "address": {
        "street": "456 Elm St",
        "city": "Abuja",
        "state": "FCT",
        "postalCode": "90001",
        "country": "NIGERIA"
      }
    },
    "details": {
      "purpose": "Payment for services",
      "reference": "INV-2024-001"
    }
  }'

Response

201 Created — Flagged

When the transaction matches a screening criterion, the response includes the full sanction match details for both sender and receiver.
FieldTypeDescription
data.transactionIdstringTransaction identifier
data.amountnumberTransaction amount
data.currencystringCurrency code
data.senderobjectSender details echoed back
data.receiverobjectReceiver details echoed back
data.sanction.sender_namestringSender name screened
data.sanction.sender_recordarraySanction matches for the sender
data.sanction.receiver_namestringReceiver name screened
data.sanction.receiver_recordarraySanction matches for the receiver
data.sanction[].entity_namestringName of the matching sanctioned entity
data.sanction[].entity_typestringEntity type (e.g., Person)
data.sanction[].topicsarraySanction categories (e.g., sanction, crime.terror)
data.sanction[].match_scorenumberMatch confidence score (0 to 1)
data.screeningStatusstringOutcome: "flagged" or "approved"
data.sender_risk_levelstringRisk level for sender: "low", "medium", or "high"
data.receiver_risk_levelstringRisk level for receiver: "low", "medium", or "high"
data.commentsstringReason for the screening outcome
data.additionalActionsarrayRecommended follow-up actions
data.additionalActions[].actionTypestringType of action (e.g., "Notify Customer")
data.additionalActions[].assignedTostringTeam or person responsible
data.additionalActions[].notesstringInstructions for the action
data.summaryobjectSummary of screening results
data.summary.verdictstringOverall screening verdict
data.summary.sender_risk_levelstringSender risk level
data.summary.receiver_risk_levelstringReceiver risk level
data.summary.sender_matchesobjectSender match details
data.summary.sender_matches.matched_statusbooleanWhether sender had matches
data.summary.sender_matches.highest_match_scorestringHighest match score percentage
data.summary.sender_matches.sanctions_countnumberNumber of sanction matches
data.summary.sender_matches.peps_countnumberNumber of PEP matches
data.summary.sender_matches.on_blacklistbooleanWhether sender is on blacklist
data.summary.receiver_matchesobjectReceiver match details
data.summary.receiver_matches.matched_statusbooleanWhether receiver had matches
data.summary.receiver_matches.highest_match_scorestringHighest match score percentage
data.summary.receiver_matches.sanctions_countnumberNumber of sanction matches
data.summary.receiver_matches.peps_countnumberNumber of PEP matches
data.summary.receiver_matches.on_blacklistbooleanWhether receiver is on blacklist
{
  "status": "success",
  "data": {
    "transactionId": "1234567892",
    "transactionType": "Transfer",
    "amount": 10000.0,
    "currency": "NGN",
    "transactionDate": "2024-07-06T12:34:56Z",
    "sender": {
      "name": "QUDRATULLAH JAMAL",
      "accountNumber": "123456789012",
      "address": {
        "street": "123 Main St",
        "city": "Lagos",
        "state": "Lagos",
        "country": "NIGERIA"
      }
    },
    "receiver": {
      "name": "Jane Smith",
      "accountNumber": "987654321098"
    },
    "sanction": {
      "sender_name": "QUDRATULLAH JAMAL",
      "sender_record": [
        {
          "entity_name": "Maulavi Qudratullah Jamal",
          "entity_type": "Person",
          "topics": ["crime.terror", "export.control", "sanction"],
          "sanction_types": ["crime.terror", "export.control", "sanction"],
          "match_score": 1.0,
          "risk_score": "80%",
          "matched": "False match"
        }
      ],
      "receiver_name": "Jane Smith",
      "receiver_record": [
        {
          "entity_name": "JANE A SMITH",
          "entity_type": "Person",
          "topics": ["debarment"],
          "sanction_types": ["debarment"],
          "match_score": 0.96,
          "risk_score": "83%",
          "matched": "True match"
        }
      ]
    },
    "screeningStatus": "flagged",
    "sender_risk_level": "medium",
    "receiver_risk_level": "high",
    "comments": "Transaction denied due to high-risk blacklist match, high risk level, or sanctions match.",
    "additionalActions": [
      {
        "actionType": "Notify Customer",
        "assignedTo": "Customer Service",
        "notes": "Inform the customer about the transaction denial."
      }
    ],
    "summary": {
      "verdict": "flagged",
      "sender_risk_level": "medium",
      "receiver_risk_level": "high",
      "sender_matches": {
        "matched_status": true,
        "highest_match_score": "100%",
        "sanctions_count": 0,
        "peps_count": 1,
        "on_blacklist": false
      },
      "receiver_matches": {
        "matched_status": true,
        "highest_match_score": "100%",
        "sanctions_count": 1,
        "peps_count": 4,
        "on_blacklist": false
      }
    }
  }
}

400 Bad Request

{
  "status": "failed",
  "data": [],
  "message": "Sorry, your check cannot be processed at the moment. Please try again in a few minutes"
}

401 Unauthorized

{
  "status": "failed",
  "message": "Authentication credentials were not provided."
}