Catch the takeover before the withdrawal.

New device, impossible travel, credential reuse, before the withdrawal.

A known user, a new device, a login from another continent within an hour, a password reset, then a withdrawal to a new destination.

device.newlogin.impossible_travellogin.credential_reusesession.automatedwithdrawal.destination_newvelocity.withdrawals_high
WhenThen
device.new + login.impossible_travelstep_up
withdrawal.destination_new + device.newhold + step_up
login.credential_reusestep_up

Send login, password_reset and withdrawal events. Autopilot on the hold: the withdrawal waits until the user confirms on a known channel.

Recommended mode · Autopilot on the hold
your backend
await ordent.events.send({
  type: "withdrawal",
  user: { id: user.id },
  device: req.ordentDevice,
  context: { amount: 1240, currency: "USDT", destination: addr },
});
// Autopilot: hold is placed via your webhook until step-up passes
Holds placed, holds released, time to release.

Your risk team starts here.

$99 a month, 10,000 events, sandbox before you pay, money back in 14 days if it doesn't fit.