The moment it happens
Start client onboarding in Trello when a contract is signed
When a contract is signed, the client gets a Trello onboarding card with a checklist and the team hears about it in Slack.
- Runs
- The moment it happens
- Apps
- Slack, Trello
- AI
- Not needed
- Access
- Trello write; Slack chat:write
Send this to your assistant
Create a ClickRuntime automation: when my e-sign tool posts a completed contract to this link, create a Trello onboarding card with my checklist and post the card link in #clients.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A small agency closes a deal, the contract comes back signed on a Friday afternoon, and the onboarding card is not created until someone remembers on Tuesday. The kickoff email goes out late, access requests wait, and the client's first impression is a slow start.
Creating the card the moment the signature lands means onboarding begins with the deal still fresh, and everyone in #clients knows a new client is on the way.
What you get out of it
Onboarding starts the same day
The card and its checklist exist as soon as the contract is signed. The first steps can begin while the client is still keen to get going.
Every client gets the same steps
The checklist is the same each time, so kickoff calls, access requests and invoices are never forgotten. New team members can follow it without asking.
The team hears it from one place
A Slack message with the card link tells everyone who the new client is. Nobody learns about a new account by accident a week later.
Sales and delivery stay in step
Whoever closed the deal does not need to hand over by email. The signed contract itself starts the handover.
How it works
What happens, step by step
Your e-signature tool tells ClickRuntime when a contract has been fully signed.
Events that are not a completed signature are ignored, and each contract is only handled once.
A Trello card is created for the client in your onboarding list, with your standard checklist.
A message with the client name and card link is posted in your #clients Slack channel.
Before it runs live
- Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)
- Connect Trello
- Paste your automation's link into the other app's webhook settings
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Act only on the items that match your own rules, and skip the rest
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Google Sheets
- Combine it with other Slack and Trello steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_event, credentials, http, notify, state
LIST_ID = "your-trello-list-id"
CHECKLIST = ["Send welcome email", "Book kickoff call", "Create shared folder", "Request tool access", "Send first invoice"]
@on_event
def handle(event):
data = event.json or {}
if data.get("status", data.get("event")) not in ("completed", "signed", "document.completed"):
return {"skipped": "not a completed contract"}
if state.get(f"seen:{event.event_id}"):
return {"skipped": "duplicate"}
client = data.get("client_name") or data.get("signer_name") or "New client"
auth = {"key": credentials.secret("TRELLO_KEY"), "token": credentials.secret("TRELLO_TOKEN")}
card = http.post("https://api.trello.com/1/cards",
params={**auth, "idList": LIST_ID, "name": f"Onboard {client}"}).json()
cl = http.post("https://api.trello.com/1/checklists", params={**auth, "idCard": card["id"], "name": "Onboarding"}).json()
for item in CHECKLIST:
http.post(f"https://api.trello.com/1/checklists/{cl['id']}/checkItems", params={**auth, "name": item})
notify.slack(f"New client signed: *{client}*. Onboarding card: {card['shortUrl']}", channel="#clients")
state.set(f"seen:{event.event_id}", True)
return {"card": card["id"]}FAQ
Common questions
Which e-sign tools does it work with?
What goes in the checklist?
Will an unfinished contract create a card?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Turn complaints into Trello cards and share praise in Slack
Every form response is read for tone: complaints become Trello cards to act on, and praise is shared with the team in Slack.
See how it worksPost a daily Trello deadline digest to Slack
Each weekday morning your team sees what is overdue, what is due today and what moved yesterday, without opening the board.
See how it worksTurn support emails into Trello cards and flag urgent ones in Slack
Each new support email becomes a Trello card labelled by priority, and urgent ones are posted to #support straight away.
See how it worksKeep exploring
Set up “Start client onboarding in Trello when a contract is signed” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.