Teachable setup
Sell your course through a Plandalf checkout and let Teachable deliver it. When someone pays, a sequence finds or creates them as a Teachable student and enrols them in the course they bought.
Before you start
- A Teachable school on the Growth plan or higher. Teachable’s API isn’t available on lower plans.
- Access to your school admin’s Settings, to create an API key.
- The courses you sell, set up in Teachable.
Teachable counts students added through its API toward its usage fees. For schools created on or after 3 September 2026, the first 100 such students are free and each one after that is $0.50 a month. Older schools are on Teachable’s legacy schedule until they switch. Check Teachable’s usage fees for your school.
Get your Teachable API key
-
In your Teachable school admin, go to Settings and open the API tab.
-
Click Create API Key, enter “Plandalf” as the Name and click Create.
-
Copy the key and keep it safe until you paste it into Plandalf.
Connect Teachable to Plandalf
-
Find Teachable in the Marketplace
In Plandalf, open Automation in the sidebar and choose the Marketplace tab. Find Teachable under Available now and click Connect.
-
In the Connect Teachable window, keep or change the Integration name, paste your key into API Key, then click Connect.
-
Plandalf checks the key with Teachable straight away. When you see Teachable connected, choose Build an automation or Not now.
Steps you can add
Each step works from the student’s email address and looks them up in Teachable for you, so you don’t need to pass an ID between steps.
Find or Create Student
Finds a Teachable student by email, or creates one.
- Email Address (required), usually
{{trigger.customer_email}}. - Name: used if the student is new, usually
{{trigger.customer_name}}.
Enrol Student in Course
Gives someone access to a course, creating the student first if Teachable doesn’t have them. If they are already enrolled, the step succeeds without changing anything.
- Email Address (required).
- Course (required): pick a course from your school. Unpublished courses are marked “(unpublished)”.
- Name: used if the student is new.
Remove Student from Course
Removes someone’s access to a course. If Teachable has no student with that email, or they aren’t enrolled, the step is skipped.
- Email Address (required).
- Course (required).
Plandalf has no refund or cancellation trigger yet, so this step can’t run on its own when a buyer refunds. Run it from a sequence you start yourself, such as one with a Webhook Trigger, or remove the student in Teachable.
Example: enrol buyers in your course
-
Go to Automation → My Sequences and create a sequence called “Course buyers to Teachable”.
-
Choose Plandalf and Checkout Completed. Under Offer, pick the checkout that sells the course. On 3. Test, pick a recent checkout as the sample record.
-
Click Add a step, choose Teachable and Enrol Student in Course, and pick your Teachable account. Set Email Address to
{{trigger.customer_email}}, pick the Course, and set Name to{{trigger.customer_name}}. -
Testing enrols a real student, so use your own email. Then turn the sequence On.
Selling several courses? Add one Enrol Student in Course step per course, or one sequence per checkout. To try it with a test card, switch on Run on test purchases in the sequence’s Settings first.
Common errors
| What you see | What to do |
|---|---|
| Authentication failed when connecting | Check the key came from Settings → API in your school and that the school is on the Growth plan or higher. Plandalf keeps the failed connection in My apps. Open it there, paste the right key and choose Test Connection, rather than connecting again. |
| “Email is empty” | Map Email Address to {{trigger.customer_email}} and check the trigger sample has an email. |
| “Pick the Teachable course” | The Course field is empty. Pick a course from the list. |
| The course list is empty | The school has no courses yet, or the key belongs to a different school. |
| “Failed to enrol the student in Teachable” | Teachable’s reason follows the message. Check the course still exists and is the one you meant. |
| Remove Student from Course shows skipped | The person isn’t a student in that course. Nothing needed removing. |