Connect your school system to Moodle.

Your records system and Moodle should agree without anyone retyping data. We build the Moodle plugin that keeps them in sync, one way or both ways, for a fixed price. If your own system needs work too, we upgrade it, or build a new one.

  • One way or both, with one owner per field
  • One price for a written scope
  • No core changes, Moodle upgrades stay easy

Get a fixed quote

Online, replies in seconds

  1. 1 Your details
  2. 2 Your plugin
  3. 3 Fixed quote

Hi. Before we start, tell me who you are so the engineer who reviews your quote can reach you.

We use these details only to follow up on your quote.

What can be synced with Moodle?

Schools, universities and training companies usually start with people and enrolments, then add grades. You choose what moves, in which direction, and how often.

  • People. Students, teachers and staff created, updated and suspended in Moodle from your records. One login with single sign-on if you want it.
  • Courses and enrolments. Courses created from your programme or timetable, learners and teachers enrolled by class, group or cohort, and removed when they leave.
  • Grades and completions. Final grades and course completions sent back to your records system, every night or only after a teacher approves them.
  • Attendance, certificates, payments. Whatever else your system needs to know: attendance, certificates issued, fees paid, hours of training.

One way or both ways?

Both work. What matters is deciding, field by field, which side is right when they disagree.

DirectionRuleTypical use
Your system to Moodle Your system is the source. Moodle follows it. Accounts and enrolments from a student information system or HR system.
Moodle to your system Moodle is the source for what happens in class. Final grades, completions or attendance into your records.
Both ways Each field has one owner, written down before we build, so the two sides never fight. People and enrolments in, grades and completions out.

How does it work?

  1. Tell us what your system does. Which system, what it holds, how it can share data (API, database, files), and what Moodle should do with it.
  2. Get a written scope and a fixed price. It includes the field map: every field, its direction and its owner.
  3. We build and test on a copy. PHPUnit and Behat tests, run against sample data from your side, before anything touches your live site.
  4. Go live with logs. Every sync run is recorded and failures are retried, so admins see problems before students do.

When your own system is the problem

Some systems were never meant to share data: no API, a database nobody documented, exports by hand. We can add what is missing, upgrade the system, or build a new one designed around Moodle from the start. To see the kind of learning system we build, look at Zidara, our own platform, in development.

How much does a Moodle integration cost?

A one-way sync with one system is usually a standard plugin, from $300. Two-way syncs, several systems, or work on your own system are planned in milestones, from $1,500. The scoping assistant gives you the price for yours in minutes. After launch, the care plan at $149 a month keeps it working through Moodle upgrades and changes on your side.

Questions about integrations

Anything else, email contact@devlms.com or ask the scoping assistant.

Which systems can you connect to Moodle?

Anything that can hand data over: a REST or SOAP API, read access to a database or a view, files dropped on SFTP, or webhooks. That covers student information systems, ERPs, HR and payroll systems, CRMs and the in-house system your IT team built years ago.

Our system has no API. Can you still do it?

Usually yes, through a database view or a scheduled file export. If neither is possible, we can add a small API to your system as part of the job, or quote that separately.

Is a two-way sync risky?

Only when nobody decided which side owns each field. We write that down in the scope before any code: for example, names come from your records, grades come from Moodle. Then a change on the wrong side is refused or logged, never silently copied back.

How do we know when a sync fails?

Every run is logged in Moodle with what changed and what was refused, and failures are retried. Admins get a notification when something needs a person. You never find out from a student.

Do you change Moodle core?

No. Integrations are Moodle plugins using Moodle's own APIs: web services, scheduled tasks, events and the privacy API. Moodle upgrades stay possible.

Can you build the system itself?

Yes. If your current system is outdated, we can upgrade it and connect it, or build a new one designed around Moodle from the start. We scope it the same way: written scope, fixed price, milestones.

Who owns the code?

You do. Moodle plugins are GPL and you get the full repository. Code we write for your own system is yours.

Tell us about your systems. Get the price in minutes.

Describe your systems

Backed by Ta9in.