Maker-checker approvals for broker withdrawals: a practical guide
Two people for large withdrawals sounds simple. The details (thresholds, currencies, who counts as the second person) decide whether it actually protects you.
GarnetSync Editorial
Product & Engineering, , 2 min read
Maker-checker means one person prepares a payment and a different person approves it. Regulators expect it, auditors test it, and it is one of the cheapest fraud controls a brokerage can have. It only works if the rule is precise.
Set the threshold in one currency
Pick an approval currency per brand and a threshold in it. Below the threshold, one person can make and approve a request; above it, two people are needed. Count a day, not a request: what one person has made and approved for a client over 24 hours adds up, so a large withdrawal split into small ones still needs a second person. Requests in any other currency should always need two people, because converting at the moment of approval invites arguments about the rate.
One rule, one place
The most common failure is a rule restated in several places: the approval screen, the queue badge, the report. Sooner or later one of them disagrees. Keep the rule in one function that every part of the system calls, ideally in the database, so no screen or script can bypass it.
Who counts as the second person
- The second person must be someone else: not whoever made the request and, for a request the client made in the portal, not whoever gave the first approval.
- Someone who changed the client's email address, or sent them a link into the portal, should not approve that client's withdrawals for a cooling-off period (we use 14 days). Account takeovers usually start with an email change.
- Administrators follow the same rule. A control that the most powerful role can skip is a suggestion.
Client withdrawals
Withdrawals the client requests from the portal deserve the same threshold. Above it, the first approval records who approved and when; the payment is sent only after the second.
Make approval deliberate
Ask for a fresh authenticator code to approve, one that lapses within minutes. It costs the approver two seconds and makes a stolen session much less useful.
Measure it
Track how long requests wait for a second approver. If the answer is hours, people will look for ways around the rule. Good tooling shows the second approver exactly what they need: the client, the account, the history and the reason for the threshold.
- Withdrawals
- Controls
- Finance

