Monitor a payment order

Monitor originated payments for signs of fraud or money laundering

Modern Treasury can monitor all of your originated payments for signs of fraud or money laundering.

1. Retrieve API Key

Go to your API Keys page. There you will find your Organization ID and API keys. Your default Sandbox or Production keys have the appropriate permissions. Otherwise, create or modify an API key to have manage permissions for Compliance and Accounts.

2. Create Payment Order

When creating a Payment Order, set the transaction_monitoring_enabled boolean to true.

Optionally, you can provide a session key if you are integrating the Device and Behavior SDK, which will be used to match the data collected by the SDK with this payment.

curl --request POST \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/payment_orders \
  -H 'Content-Type: application/json' \
  -d '{
    "type": "ach",
    "amount": 1000,
    "direction": "debit",
    "currency": "USD",
    "originating_account_id": "0f8e3719-3dfd-4613-9bbf-c0333781b59f",
    "receiving_account_id": "5acec2ef-987b-4260-aa97-b719eeb0a8d5",
    "transaction_monitoring_enabled": true
  }'
curl --request POST \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/payment_orders \
  -H 'Content-Type: application/json' \
  -d '{
    "type": "ach",
    "amount": 1000,
    "direction": "debit",
    "currency": "USD",
    "originating_account_id": "0f8e3719-3dfd-4613-9bbf-c0333781b59f",
    "receiving_account_id": "5acec2ef-987b-4260-aa97-b719eeb0a8d5",
    "transaction_monitoring_enabled": true,
    "session_key": "5195ac52-afb7-4425-bd8b-8234263f2139"
  }'

When the Payment Order is created, transaction monitoring will be kicked off in the background.

3. Monitor Payment Order

When the Payment Order is created, transaction monitoring will be kicked off automatically.

Based on the compliance score, a Payment Order will be automatically approved, automatically denied, or have a Case opened for manual review.

Webhooks are used to provide status updates on Payment Orders and their associated Decisions and Cases.

If a Payment Order is approved and will be sent to the bank. If a Payment Order is denied, it will not be sent (it is a terminal state).

Check out this guide to learn more about testing Transaction Monitoring on Payment Orders in the Sandbox.