TouchLink — a hub for exchanging leads

A hub for taking in and delivering leads: it collects leads from ad sources, normalises them and hands them out to the CRM and analytics. More than 50 active clients.

About the project:

TouchLink is a hub for exchanging leads. Built entirely by our team, with more than 50 active clients on the system.

What the product is for: leads come in from different ad sources and have to reach the CRM with no losses, no duplicates and no manual re-keying. TouchLink sits between the sources and the recipients — it takes a lead in, brings it to a single format and delivers it to its destination.

TouchLink dashboard in dark theme: today's lead counters, top sources and a list of the latest leads
Dashboard: leads for the period, duplicates, errors and the top sources.

Sources. Lead forms from ad accounts, website and landing-page builders, quizzes, social-media communities, CMS-based sites, plus a universal webhook for everything else.

Recipients. CRMs, call tracking, web-analytics systems and ad accounts — they receive not only the leads themselves but also events about what happened to them next. Plus a universal outbound webhook.

What happens in between. Every lead is validated, brought to a single format, checked for duplicates and placed in the delivery queue. If a recipient is temporarily unavailable, delivery is retried; if the error is final, the lead is not lost — it goes to the log with a reason.

Every lead is processed by artificial intelligence — it parses and tidies up whatever arrives from the sources in varying shapes.

TouchLink lead log: a table of leads with source, form, recipient and delivery status
Lead log: source, form, recipient and delivery status for each lead.

A separate capability is AI-generated integrations: connecting a new source or recipient does not require hand-written development for each format.

TouchLink lead delivery monitor in light theme: filters by period, source, destination and status
Delivery monitor: filters by period, source, destination and status.

Observability. The dashboard shows the state over a period: how many leads came in, how many were delivered, how many duplicates, how many are in processing and how many failed, and which sources drive the main flow. For each lead a full delivery log is available — what was sent, where and with what response.

The system is multi-user: each company has its own sources, recipients and access. The interface is in two languages, in light and dark theme.

TouchLink dashboard in light theme: today's leads, duplicates, errors and leads in processing
The same dashboard in light theme and in Russian.

Stack:

Backend — Laravel, PostgreSQL, queues on Redis. Frontend — Vue and TypeScript. Deployed in Docker.