Connect other services
Take card payments with Stripe, post to Slack, put bookings in a Google calendar or send texts through Twilio, and see exactly what your application sends to each.
Your application can talk to services you already use: take a card payment with Stripe, post a message in a Slack channel, put a booking in a Google calendar, or send a text through Twilio. Each of these is called an integration. You connect it with your own account at that service, and your application shows you exactly what it sends there.
How an integration gets into your application
An integration is part of your application, so you get one by asking for it on Changes, in your own words. For example:
- "Let customers pay a quote by card with Stripe."
- "Post in our Slack channel when a new job comes in."
- "Put every booking in our shared Google calendar."
- "Text the customer when their dog is ready to collect."
The change Divvent proposes always says what data leaves your application and where it goes, even when the answer is "none". Because an integration sends your data somewhere new, our team checks that change as well as you. See Ask for a change and Read a change and approve it.
Once the change is approved, the integration appears on the Integrations tab under Settings, ready to connect. If your application has none yet, the tab says so: "This application talks to nothing outside itself."
What the Integrations tab shows
Each integration has a card. It gives:
- its name and the service it connects to;
- a sentence saying what it does;
- a line for each thing it can do, naming the details it sends and the web address they go to. Nothing else is sent. If a line says it sends no record fields, none of your records' details go with it;
- what you need to do at the service first, where there is something;
- a box for each key it needs, or a button to sign in to the service.
A key box shows connected or not connected, and who set it and when. It never shows the key itself. Nobody can read a key back once it is saved, including you.
Connect a service
Only an owner of your Divvent account can connect or disconnect an integration. Anyone else who can open the application can see the tab, and is told that only an owner can connect one. Because a key can take payments or send messages, you are asked to have signed in within the last five minutes; if not, you are asked to sign in again with your passkey or authenticator app first.
There are two ways to connect, depending on the service.
Paste a key
- Copy the key from your account at the service.
- Paste it into the box on the card and press Connect.
- Release your application. The card says "It reaches the application at the next release" until you do.
To change a key, paste the new one in the same box and press Replace. The old one stops being used at the next release. You can't remove a pasted key without putting a new one in its place yet.
Sign in to the service
For Google, and other services that work this way:
- Paste the client ID and client secret from the service into their boxes, and release your application.
- Press Sign in to Google to connect (the button names the service).
- A link appears: "Your link is ready. It works once, for two minutes." Press Continue to Google.
- The service shows you what your application is asking to do. Agree, and you are brought back to the Integrations tab.
What the service gives your application is kept by your application, never by Divvent. To stop it, press Disconnect. Your application forgets what the service gave it and, where the service allows, asks it to cancel the access too.
The services you can connect
| Service | What it is for | How you connect it |
|---|---|---|
| Stripe | Card payments: a Stripe payment page for a quote, order or booking, a regular subscription, and refunds. Stripe tells your application when a payment succeeds, fails or is refunded. | Paste your Stripe secret key. If your application listens for Stripe's messages, also paste the webhook signing secret and point Stripe at the address the card shows. |
| Emails your application sends, such as a confirmation or a receipt. | Nothing to connect. Divvent looks after sending. Mail can come from your own domain: see Use your own domain. | |
| Slack | A message posted in one Slack channel. | Paste the channel's incoming webhook address from Slack. |
| Bookings put in a Google calendar and moved or cancelled with them; busy times in a calendar kept out of the free slots you offer; rows added to a Google Sheet. Filing issued documents in Google Drive is built too, but waits on documents, which you can't add yet: see Documents and signatures. | Make a sign-in client in Google Cloud, paste its client ID and secret, release, then sign in to Google. | |
| Twilio | Text messages from your own number, and delivery reports back from Twilio. | Paste your Twilio Account SID and Auth Token, and point your number's incoming messages at the address the card shows. |
| Single sign-on | Your staff signing in with their Microsoft or Google work account. | Paste the client ID and secret from your work account provider. See Your users' sign-in. |
Money taken through Stripe goes straight to your Stripe account, and Twilio bills your Twilio account directly. Divvent does not charge you for either. For services not in this table, see Other services, for advanced use.
Google, in more detail
Google asks for only what your integration needs: its calendar events, its free and busy times (never what the busy time is), spreadsheets, or only the files your application creates in Drive, never the rest of it. The card lists the steps in Google Cloud and the exact redirect address to register there. A few things are always true:
- a cell your application adds to a sheet is always plain text, never a formula;
- pressing a button twice makes one event, one row or one file;
- a connection makes at most 120 requests a minute and 5,000 a day unless you ask for a different limit.
Sending email as you from Gmail is not offered.
Twilio, in more detail
You need a Twilio account with a payment method, and a number to send from bought or verified in Twilio. On the card you are asked to set your number's "A message comes in" address in Twilio to the address shown, so that a customer's STOP reaches your application.
- Somebody who replies STOP is never texted again by your application, until they reply START. This is kept even if you erase their other details.
- Every text says how to stop, in the recipient's language where the application knows it.
- By default your application sends at most 500 message parts a day and 60 messages a minute. Raising the daily cap is a change our team approves with you, so a mistake can't turn into a large bill.
Twilio can also send template messages you have had approved on its chat-app channels; ask for it on Changes.
Things to know
- A service is reached when somebody does something in your application, such as pressing a button to take a payment or confirm a booking. A flow can't call another service on its own yet.
- Test copies don't use your connections. A test copy has no keys and no sign-ins of its own yet, so an integration only works in production.
- The tab tells you what happened. After you save a key it says the key was saved and reaches the application at the next release. After signing in to a service it says whether the service connected, or that nothing was stored and you can try again.