Download a PDF offline version of this documentation.
OpenFisca transforms legislation into code.
OpenFisca allows you to:
- Calculate many variables of the tax and benefit system of a country given input variables.
OpenFisca can calculate social benefits and taxes on test cases (a person or a household).
- Simulate the budgetary consequences of a reform and its distributional impact when plugged on a survey.
OpenFisca can calculate social benefits and taxes on population data (real data or survey data).
Its engine is independent of the country, it is therefore possible to simulate any country. It behaves as microsimulation software with improved ties to legislation.
For a deep dive into the context and difficulties that are encountered when modelling legislation as code that OpenFisca aims at solving, read the Better Rules for Government report.
OpenFisca is a modular project. Depending on your goals, you will install and interact with one or several of the OpenFisca Components.
Example: Mes Aides uses the OpenFisca Web API to calculate OpenFisca-France benefits.
- To explore the OpenFisca-France Web API services, use the French Legislation Explorer
- To query the Openfisca Web API in your app, see the Web API endpoints description
- To host your own instance of the Openfisca API, go to the installation documentation
Extensions add on the capacities of a country-package.
- To install an Extension, head to the Extensions documentation
- To install an existing Country Package, head to that package's documentation.
Example: Openfisca-france's repository
OpenFisca-Core is the main engine: it is the common interface to every Country Package. It binds the Country Package(s), Extension(s) and the engine together. OpenFisca-Core is also where the API is packaged.
- To install OpenFisca-Core, read the OpenFisca-core Documentation.
What's the purpose?
OpenFisca is more a platform than an application: its first target is not the end user but economists, software developers, researchers, teachers, administrations, interested citizens, etc.
Final products can be built on the top of OpenFisca, mainly to compute tax and benefit variables through the web API. For example: Mes aides allows French citizens to assess their entitlement to social benefits across agencies.
Another use can be to improve the discoverability and readability of law, using reflexivity possibilities demonstrated by the legislation explorer.
Independent researchers can use OpenFisca to publish articles exploring the impact of reforms, focusing on testing hypotheses rather than on modelling. For example, the impact of changing how children are taken into account for social benefits or of creating a universal basic income in France. NGOs can also use that same power to back their own suggestions.
The project is 100% free software, it is published on GitHub. It uses the GitHub infrastructure (issues, pull requests, etc.) to communicate internally or with external participants. The team discusses publicly on those issues and pull requests as transparently as possible.
The project has many contributors: many people and organizations are involved in the project, reading the legislation and transforming it into source code, developing the Core or web tools, developing external products, etc.