Skip to main content

Rules as Code training — OpenFisca development

Learn how to build and test Rules as Code (RaC) solutions using OpenFisca, the open-source rules engine that powers Salsa Digital's RaC builds.

For developers | 3 hours | $450 + GST per person

OpenFisca is the open-source rules engine that powers our Rules as Code builds. It’s lightweight, modular and built for coding rules — but if you haven’t used it before, there’s a learning curve.

This course gets you up and running with OpenFisca fast. You’ll learn how the framework thinks, how to structure your code, and how to turn a rules mapping spreadsheet into a working, testable rules engine.

What you’ll learn

  • How OpenFisca uses entities, parameters, input variables and formula variables — and how they relate to each other
  • How to set up a development environment using GitHub Classrooms and Codespaces
  • How to write test scenarios using test-driven development (TDD)
  • How to create entities, parameters and input variables from a rules mapping spreadsheet
  • How to write formula variables with the correct vectorised logic
  • How to run and debug your OpenFisca tests

Who it’s for

This course is designed for developers who are new to OpenFisca or Rules as Code. You’ll need a working knowledge of Python. No prior RaC experience is required, though familiarity with the rules mapping process is helpful — either from working alongside a business analyst or completing our rules mapping course.

How it works

The course runs for three hours and uses a practical disability allowance scenario throughout. You’ll follow a guided walkthrough before completing your own hands-on coding exercise in a cloud-based development environment — no local setup required. Trainers are on hand throughout and can connect directly to your codespace if you need help.

What you’ll walk away with

A working OpenFisca codebase for the training scenario, and the confidence to start coding your own rules engine.


Minimum 6 attendees per course. Contact us to book a course or ask us about custom delivery options for your team.