hello@iamtodt.com

Motacé

A multitenant service that takes in leads, scores them for fraud and routes the good ones to the client's CRM. Built for Europe, the US and the UAE.

Type

Personal project

My role

Frontend and design.

How it works

Intake
A small embeddable script on the client's site, motace.js, sends each form submission to the API.
Scoring
Fraud scoring runs inside the same request, so the verdict is ready as soon as the lead arrives.
Review
Suspicious leads wait for a human. A manager decides on a kanban board in the web app or with inline buttons in a Telegram bot.
Routing
Approved leads are sent to the client's CRM by webhook, with retries and backoff.

Under the hood

Synchronous scoring
At the expected volume of about a thousand leads a day this is faster and simpler than a queue. CRM delivery and notifications run asynchronously.
One decision point
The kanban board and the Telegram bot go through the same service, so the confirm and archive logic lives in one place.
Events for channels
After scoring, the service publishes one event. CRM routing and Telegram are independent listeners, so a new channel does not touch the intake path.
Isolated by organization
Matching and blacklists never cross a tenant boundary. Client admins, managers and platform admins each see only what their role allows.
Additive auth
Basic auth and a Bearer token work side by side. Old webhook and curl integrations kept working, while the web app got a 24-hour token that is revoked on password change.

Site

motace.io

Status

Under active development. The full intake, scoring, review and routing flow works end to end. WhatsApp notifications were left out on purpose: Telegram is enough to start.

← All projects