Reading the cards
The cards are filed by what they are for: Leads in, Rople speaks there, Email in, Meetings & calendar, Money, Projects & people, Identity & documents, Sign-in & files and Developers. The chips across the top filter to one group, or All.
Each card carries a state:
- Available can be set up now. Open to set up opens the card on its controls. Once something is connected the pill says so instead, for example Connected or the number of endpoints.
- Built in works today with nothing to connect.
- Coming soon is being built now.
- Planned is on the list, in the order of what each needs before it can be built.
An open card says What it does, How it works, You'll need, and, where there is something to do meanwhile, Until then.
What you can connect today
Website forms
Under Leads in. Every form on your website posts straight into Leads.
- Open the card and make an endpoint: a Name, the Source its leads are attributed to, and, if you like, a Campaign. Press Make endpoint.
- Rople shows an Address (URL) and a Key. Copy the key now: it is shown once, and Rople keeps only enough to recognise it.
- Paste both into your website builder's webhook setting, or hand them to your developer. The key goes in an
X-Rople-Keyheader, as a bearer token, or in the body as_key.
Each submission lands in Leads within a second, with a next action, "Reply to this enquiry", due in 24 hours, and the workspace's assignment rules applied. The same person enquiring twice is noted on their lead rather than duplicated. What arrived on the card lists recent submissions and whether each was taken. Pause stops an endpoint while a website is rebuilt, and Resume starts it again.
Google Ads lead forms
Under Leads in. The same, for a lead form on a Google ad.
- Make a Google Ads endpoint on the card, with its source.
- In Google Ads, open the lead form asset, then _Export leads › Other data integration options › Webhook integration_, and paste the address as the URL and the key as the key.
- Press Send test data. Rople records the test and creates no lead. Then save the form.
Every real submission creates a lead, named for the campaign it came from.
Explee
Under Leads in. Explee runs your cold outreach; whoever writes back with real interest is a hot lead, and Rople pulls those into Leads.
- In Explee, under API keys, make a key. Open the card, paste it, and press Connect Explee. Rople checks the key with Explee, keeps it sealed, and picks your outreach project (choose another on the card if the account has several).
- Once a day, Rople asks Explee who has gone hot since it last looked and files each person in Leads at the qualified stage: name, email, phone, company, title, LinkedIn, the campaign that reached them, and their reply, word for word, as the lead's interest and on its timeline. Sync now on the card does the same thing this minute.
- A person already in Leads by email or phone is not duplicated: the reply goes on their timeline and, if they were still new or contacted, they move to qualified.
Where pulled leads go, on the card, chooses the pipeline column they land in (qualified unless you say otherwise; won and lost are not offered) and who holds them. Leave the owner as nobody and your assignment rules apply as they do to a form; name a person and each new lead is theirs, with a notification. Each lead arrives with a next action, "Reply to their Explee message", due in 24 hours. The source is Explee, which appears in the source list the first time a lead arrives. Arrived lately on the card lists what was pulled. Rople only reads from Explee; nothing is written back. Disconnect stops the pulls; leads already filed stay.
HubSpot
Under Leads in. One way, in: your contacts, with their companies and deals, become leads.
- In HubSpot, under Settings › Integrations › Private apps, make an app with read access to contacts, companies, deals and owners, copy its token, and paste it on the card. Press Connect HubSpot.
- Press Pull from HubSpot. Rople reads your contacts with the company and the deal on each, works out the stage (from the deal's pipeline stage, or the contact's lifecycle stage when there is no deal), and shows the counts and the first rows.
- Set how many days you have to make first contact, and press Import.
The import is the same one a spreadsheet goes through: somebody already in Leads by email or phone is skipped, the batch is shared out by your assignment rules, the HubSpot owner's email is matched to your people, and the source is HubSpot. Nothing is written back to HubSpot. Pull again later and only the people not yet in Leads are added.
Email in your name
Under Rople speaks there. Nothing to connect.
- Email on a lead, beside Call, opens a short compose box: subject and message, then send.
- Email invoice on an issued invoice sends the invoice to the client's address; the email writes itself from the invoice.
Both go out as "Your company via Rople", with you copied and set as Reply-To, so the client's answer lands in your own inbox. Every email sent is on the record it was about and in the list on the card. A lead or invoice with no email address says so instead of sending. Sending from your own domain is not built yet.
Email-in
Under Email in. Press Make my address on the card. The address under BCC or forward to is your workspace's own.
Add it as BCC when you email a lead, or forward a lead's email to it. The email is filed on the lead whose address is on it, or on the client account, with the subject on the timeline and the lead's last contact updated. Your own address is set aside; the other person's is what is matched. Mail that matches nobody is kept on the card under Not filed, never dropped.
Google Calendar
Under Meetings & calendar. A personal connection, not the workspace's.
Connect your Google account with Connect Google Calendar, on the card or from the meeting form; Google asks only to manage events on your calendar. From then on:
- a meeting you book goes on your Google Calendar, with the attendees invited from there, whether or not they use Rople;
- under Call on the meeting form you can choose Google Meet, and Rople creates the link and puts it on the meeting and the invitation;
- cancelling the meeting in Rople takes it off your calendar, and moving or renaming it moves it there too.
The meeting form says what will happen before you book: with the calendar connected, a line under Call names the Google account the meeting goes on; without it, the Google Meet option says to connect first and links to where. A meeting that is on your calendar says on Google Calendar on its panel.
Disconnect on the card at any time; meetings already on your calendar stay there. Before you connect, Join on a meeting with no call link opens it as a Google Calendar event you can save by hand.
Calendly
Under Meetings & calendar. A personal connection, not the workspace's: each person connects their own page.
- In Calendly, under Integrations › API & Webhooks, make a personal access token and paste it on the card. Press Connect Calendly. Rople subscribes to your bookings; webhooks need a Calendly plan that includes them.
- When somebody books on your page, a meeting appears in Meetings at that time, with the join link, the answers to your booking questions, and you as the organiser. The person who booked is filed in Leads with source Calendly and a next action to prepare for the meeting; somebody already in Leads is matched by email or phone instead.
- A cancellation on Calendly cancels the meeting here.
Disconnect unsubscribes Rople; meetings already booked stay. Rople never writes to Calendly, and your Google Calendar is not touched: Calendly already puts the booking there.
Paystack
Under Money. Your own Paystack business account.
- In Paystack, under _Settings › API Keys & Webhooks_, copy the secret key.
- Paste it into the card and press Connect Paystack. Rople checks it with Paystack and keeps it sealed, showing only its last characters and whether it is a test or live key.
- Copy the Webhook URL the card then shows into the same Paystack page, as the webhook URL.
From then on, Pay online (Paystack) on an issued invoice asks Paystack for a payment page for what is still owed. The link goes on the invoice, is copied for you, and goes into the invoice email. When the client pays, the payment is recorded on the invoice with a receipt number and the balance moves. Each invoice needs the client's email, which Paystack requires.
Disconnect stops new pay links; links already on invoices keep working at Paystack.
Public API and outgoing webhooks
Under Developers. For your own code, or a tool like Zapier or n8n.
- API keys. Name the key, choose what it may touch (read leads, create leads, read client accounts, read invoices), and press Make key. Copy it now: it is shown once. It is used as a bearer token against the workspace's leads, accounts and invoices. Revoke stops a key at once.
- Webhooks. Give an https address and the events you want — a lead created, a lead won, a payment received, a meeting booked — and press Add webhook. Rople calls it the moment one happens, with a signature you can check. Copy the signing secret now: it is shown once. Deliveries shows each attempt; a failed one is retried, up to eight times.
A lead created through the API takes the same path as a form: source required, duplicates matched, a next action set.
AI assistants (Claude and others)
Under Developers. Rople is an MCP server, so Claude and any assistant that speaks the Model Context Protocol can read and act on your workspace with the permissions of an API key.
- Make an API key under Public API & outgoing webhooks, choosing what it may touch.
- Open the AI assistants card for Rople's MCP address and the one-line setup for Claude Code and Claude Desktop. Give the assistant the address with the key as its bearer token.
- Ask it things: who is in the pipeline at qualified, what is outstanding on an invoice, add a lead from an email. It can create a lead only if the key may.
Revoke the key and the assistant is out at once. The details are in docs/PUBLIC_API.md.
Built in
- Google Workspace sign-in. Sign in to Rople with your Google account instead of a password. Nothing to set up.
- Geofenced clock-in. Staff clock in from their phone and Rople checks they are within a location's radius. This is part of an attendance module built for particular workspaces; where your workspace has it, locations are set in that module. See Organisation.
Not available yet
Shown on the cards so you can see what is coming, and what to do meanwhile:
- Coming soon: WhatsApp Business.
- Planned: Flutterwave, Kuda Business, Duplo, NRS e-invoicing (DigiTax), Meta lead ads, Meta Pages & Messenger, TikTok lead generation, ad spend from Meta and Google Ads, calls and SMS, a Gmail and Outlook mailbox, Google Drive, OneDrive, Microsoft 365 sign-in, directory sync, e-signature, Dojah, VerifyMe, Asana, ClickUp, monday.com, SeamlessHR, PaidHR and Workpay.
Until Meta lead ads or a form you cannot point at Rople are connected, export the leads as a file and use Import leads in Leads and pipeline. Until Paystack is connected, add a payment link and your bank details under Master data › Invoicing & tax and record payments on the invoice as they arrive; see Billing and collections.
Where a card names a tool Rople replaces — HubSpot, Asana, ClickUp, monday.com — it says how your data will come over: once, one way, through an import you can check before it lands. Rople does not sync back to the tool you are leaving.
Who can do what
- Level 4 opens Workspace settings, and so makes and pauses form endpoints, connects Paystack, makes the email-in address, and makes API keys and webhooks.
- Anybody who can work a lead emails it from the lead.
- Each person connects their own Google Calendar. An administrator sees that a connection exists, not what it holds, and cannot connect somebody else's.
Common questions
Where is the key for my website endpoint? It was shown once, when the endpoint was made, and is not kept. Make a new endpoint, paste its key into your website, and pause the old one.
Can a client pay an invoice online? Yes, once Paystack is connected: press Pay online (Paystack) on the issued invoice. The link is on the invoice and in the invoice email.
Why does Google Meet show as unavailable on the meeting form? Your Google Calendar is not connected yet. Use Connect Google Calendar under the Call option.
Will Rople sync with HubSpot or Asana? No. Rople imports from them once, one way, so you are not keeping two systems of record.