The Office does not keep its own copy of the truth about contracts, payments, projects and companies. It reads four systems that already hold those things, and it never writes to any of them.
| System | Kept by | What it tells the Office |
|---|---|---|
| GHANEPS | Public Procurement Authority | What was actually procured: the tender, the award, the supplier and the price. |
| GIFMIS | Controller and Accountant-General | What was committed, paid, advanced and retained against a project. |
| Integrated Bank of Projects | Ministry of Finance | The statutory project register. A project is identified by its code from here. |
| Registrar of Companies | Office of the Registrar | Who owns a supplier, to check against what the supplier declared. |
If a system has no interface, nothing stops
This is the question worth asking first, because for at least one of the four the answer will probably be no for some time. An institution that cannot offer a connection can send a file instead, or send nothing at all — in which case an officer records what a letter or a payment schedule says. The Office does the same work in all three cases, and a case can be assessed, decided and certified with no connection to anything.
What changes between the three, and what does not
- **What does not change:** the checks. A contract value typed from a letter is validated exactly as hard as one that arrived over a connection, and a figure that does not make sense is held back either way.
- **What does not change:** the case file. The assessment, the comparison and the certificate do not know or care how a record reached the Office.
- **What changes:** one line against the record, saying where it came from. A connection, a file the institution sent, or a named officer and the document they read.
Reading a record’s origin
Wherever an imported figure appears, a line underneath it says which system it came from and when it was read. Where an officer entered it instead, that line carries their name and what they were reading from — an award letter with its reference, a payment schedule, a dated email. Both are usable. The difference matters when two figures disagree, or when somebody asks a year later how the Office knew.
When a system misbehaves
- It does not answer
- The attempt is recorded as a failure and nothing else happens. Everything that system sent before is still there, marked as older than it should be. Work continues from it, and anything urgent is entered by hand.
- It changes shape
- A renamed or unexpected field halts that system entirely and applies nothing — including the records that would still have fitted. Every record is kept exactly as it arrived, so somebody can look at what changed. Guessing at a renamed column is worse than an outage, because an outage is visible.
- It sends something that cannot be trusted
- That record alone is held, with the reason, and the rest are applied. Nothing is ever discarded: a dropped record is a fact the Office silently does not know. Held records are listed on the system's own page with what arrived.
- It sends the same thing twice
- Nothing happens twice. Records are matched on the identifier the source itself uses, so a re-sent extract updates what is there rather than doubling it.