Linking SalesControl to the Ecosystem (GodAds)
If your agency also runs its clients’ ad campaigns on GodAds, the two platforms can talk to each other. You link them once, with a code: from then on SalesControl tells GodAds what happens to contracts — pauses, resumes, expiries, overdue payments — and GodAds answers with what happens to campaigns. The automations are built on this dialogue: campaigns that stop when you pause a contract, a trial’s “campaigns activated” date that fills itself in at launch.
Everything lives in one place: the Ecosystem card, in the Admin Panel, Integrations tab. It requires the Admin role.
Linking the platforms
The link is a code exchange: one platform generates it, the other pastes it. You can start from either SalesControl or GodAds — the result is the same.
In the Ecosystem card click Generate code: the Link code box appears with an 8-character code and an icon to copy it.
Open the Ecosystem card in GodAds and paste the code within 15 minutes. After that the code expires: just generate another one.
The SalesControl page refreshes on its own: as soon as the link is made you see “Platforms linked” and the card switches to Linked, with a badge for each sibling platform. If you had closed the page in the meantime, the card catches up the next time you open it.
If GodAds generated the code, the path is mirrored: here you click I have a code, paste it into Code received from the other platform and press Link.
- “Invalid or expired code”: the 15 minutes are up, or the code was mistyped. Generate a new one.
- “This code was generated by SalesControl: paste it into the other platform”: a code must be pasted into the opposite platform from the one that created it.
- “This agency is already linked to the ecosystem”: the link already exists — use Verify to check its state.
- “Ecosystem service unreachable: try again shortly”: a temporary network problem, not a problem with the code.
What flows out of SalesControl
With the link active, SalesControl sends the linked platforms your clients’ live events — never the history: an event older than 30 days never leaves.
- Contract pauses and resumes: the foundation of the GodAds automation that pauses and reactivates campaigns (see below).
- Expiries and renewals: GodAds uses them for its end-of-contract automations, such as scheduled campaign deletion.
- Overdue payments: once a day SalesControl checks overdue instalments — the same definition as the “Overdue” badge on the Payments page. When a client goes from zero to one or more overdue instalments an overdue episode opens; when they are back to zero, it closes. Opening and closing flow to the ecosystem (with instalment count, days late and amount), and the client’s Log tab gets the “Cliente insoluto” (client overdue) and “Insoluto regolarizzato” (overdue settled) entries. While the episode stays open, no duplicate rows are created.
- New clients: when a client is created, their census also goes out (name, email, GoHighLevel sub-account if any, contract context). The other platforms use it to suggest a match — never for automatic actions.
What comes in from GodAds: the automations
Once linked, the card shows the Automations section. Each switch saves on click (“Settings saved”), and they all start off: you decide what comes in.
- Campaigns launched → client trial: when GodAds launches campaigns for a matched client, the Timeline gets a “Campagne lanciate (GodAds)” (campaigns launched) entry. If the client has an active trial and the “campaigns activated” date is still empty, it fills itself in with the launch date. A manually set date is never overwritten, and the trial outcome — passed or failed — is never touched.
- Informational events from GodAds: they always land in the client’s Timeline, with the “(GodAds)” suffix, and none of them takes an action. Note: “deletion” always refers to the client’s campaigns, never the client.
This switch is the general gate: with it off the event produces nothing at all, not even the Timeline entry. With it on, every fact is also a notification type of its own in the Notifications tab, Ecosystem area, with its own channels and recipients — all off out of the box. The ten types are: Campaigns live, Ad budget running low, Ad budget exhausted, Campaigns paused manually, Campaigns resumed manually, Campaign deletion scheduled, Campaign deletion cancelled, Campaigns deleted, Outstanding ad balance and Ad balance resolved.
Some of these facts are the agency’s operations, not the client’s: “the ad budget is running low” told to the client says the agency is short of funds. The Notifications tab flags this when you turn on a client-facing channel on one of those types: the choice stays yours, but informed.
Outstanding ad balance
This is the most concrete of the two new events: when the client has not paid for their ad traffic, the platform stops their campaigns and GodAds tells SalesControl. It arrives as Outstanding ad balance, and when the episode closes as Ad balance resolved.
- It repeats while the block lasts: GodAds re-sends the alert roughly every 48 hours, so it is not a warning you read once and forget.
- It can speak to the client: these are the only two ecosystem types that allow the client among the email recipients, and they have the Client chat channel. The default text tells them since when campaigns have been stopped, how much is due when the amount is known, and carries the link to the billing panel to pay on.
- Every channel ships off, the client included: sending a payment chaser to a client is an explicit choice by the agency, not an inherited setting.
- The Timeline always records it, even when channels are off or the reminder has been muted: the fact stays on record.
When the episode closes, the wording depends on why: if the balance was received it says the campaigns are active again; if instead the ad account was changed or disconnected, it says exactly that, neutrally — announcing “balance received” when nobody paid would be false.
If the client is already talking to you and the automatic chasers become a nuisance, the team can turn them off for that client straight from the chat, without touching the agency configuration. See The Client Chat.
Campaign pausing has no switch here: it is a GodAds-side automation that reacts to contract pause and resume events. You make the case-by-case choice at pause time, with the “Also pause the campaigns (GodAds)” switch in the pause dialog.
How clients are recognised
Automations only act on matched clients, and a match only happens on certain recognition: a GoHighLevel sub-account that corresponds to exactly one client, or a match already confirmed in the past. Never on name or email similarity alone: better to ask you than to pick the wrong client.
When GodAds creates one of its clients, SalesControl receives the census and — if recognition is certain — builds the match right away, silently: no Timeline entry, because this is plumbing, not a fact about the client. If your client didn’t have a GoHighLevel sub-account yet, it is learned from there. This inflow has no switch: the match map is the prerequisite of every automation.
The “Unmatched clients” list
When an event arrives for a client SalesControl cannot recognise with certainty, it is neither lost nor guessed: it lands in the card’s Unmatched clients list, flagged by an orange badge with the count (up to 50 waiting events).
Each row shows the platform of origin, the remote client’s name or email (or “Unknown client”), the event date, the client dropdown and the Match and Dismiss buttons.
- Match: the event enters the client’s Timeline with its original date, not today’s. The match is remembered, so future events from the same remote client pass through on their own. The effects — for instance the “campaigns activated” date on an active trial — apply even if the automation is off: a manual confirmation is an explicit choice.
- Dismiss: discards the event without writing anything to the client.
For waiting events there is extra help: the dropdown may arrive preselected on the most likely client, with a “Suggested (email)” badge — email identical to exactly one client’s — or “Suggested (name)” — a name that matches unambiguously. This applies to any event in the list, censuses included. The suggestion never matches anything by itself: confirmation is always yours, and if you change the selection the badge disappears. Confirming a census only writes the match, no Timeline entry.
Verifying and unlinking
- Verify re-checks the link state: “Link active and verified” if all is well, “No active link” if it was revoked on the other side.
- Unlink asks for confirmation: “Unlink the ecosystem? Events will immediately stop flowing to the other platforms. You can re-link at any time with a new code.” And that is exactly how it works: nothing irreversible, you come back with a new code.
The campaigns switch in the pause dialog stays visible even without a link, greyed out: clicking it opens a window that explains the available automations and takes you to the Ecosystem card (Open Integrations) or to www.god-ads.com (Integrate now) to create an account.