Skip to main content

Transactions & monitoring

Two related workflows: real-time transaction screening for in-flight payments, and event-driven continuous monitoring for ongoing customer due diligence.

Transaction screening

Endpoint: workflow.apply.submit with eventType: TRANSACTION_EVENT. Sub-100ms decisions, sync or async depending on the workflow configuration.

Request

{
  "eventType": "TRANSACTION_EVENT",
  "source": "API",
  "data": {
    "clientTransactionId": "TXN-20260416-001",
    "transactionType": "WITHDRAW",
    "amount": 199999.98,
    "transactionCurrencyId": "SGD",
    "altCurrencyId": "SGD",
    "amountInAltCurrency": 199999.99,
    "customerId": "C_abc123",
    "customerType": 1,
    "cpAId": "SENDER_001",
    "cpABank": "Standard Chartered",
    "cpACountry": "SINGAPORE",
    "cpBId": null,
    "cpBBank": null,
    "cpBCountry": null,
    "transactionTimestamp": "2026-04-16T10:30:00Z"
  }
}

Response (sync)

{
  "apiCode": 200,
  "data": {
    "executionId": "exec-7a3f1b2c4d5e6f78",
    "status": "COMPLETED",
    "durationMs": 12,
    "output": {
      "action": "approve",
      "code": 100000
    }
  }
}

Possible output.action values: approve, hold, escalate, reject. The full output includes the rules that fired and matched signals.

Continuous monitoring

Endpoint: workflow.apply.submit with eventType: PERIODIC_FLOW_EVENT. Use this to re-screen a customer on demand or on a scheduled basis.

Field reference

FieldTypeDescription
customerIdStringCustomer identifier
customerTypeStringINDIVIDUAL / CORPORATE
nameStringFull or company name
phoneStringE.164 format
emailStringCustomer email
dateOfBirthStringYYYY-MM-DD
countryOfNationalityStringISO 2-letter
countryOfResidenceStringISO 2-letter
idTypeStringDocument type
idNumberStringDocument number
companyNameStringCorporate only
entityTypeStringFrom config
incorporationNumberStringCorporate only
riskLevelStringLOW / MEDIUM / HIGH
startTimeLongEpoch ms — current window start
lastStartTimeLongEpoch ms — previous window start
Event-driven re-screen. Trigger monitoring on real signals: sanctions update, address change, behavioural anomaly. Calendar-based periodic review is supported but discouraged — risk changes faster than any review cycle.