This is the "Process" side of the OCDs Kingfisher app.
This receives data from the "Scrape" side, stores it, checks and transforms it.
For more info, please see https://kingfisher-process.readthedocs.io/en/latest/
For the "Scrape" side, please see https://github.com/open-contracting/kingfisher-scrape