API, file exchange or straight onto the database?
An API is the first choice when the package has one: the supplier keeps it working. File exchange is the sober fallback and surprisingly robust. Going straight onto the database is a last resort — it works today and breaks at the next update.
The three approaches
- API (REST or SOAP)
- The supplier decides what is allowed and guarantees the shape; changes are usually announced. It does require error handling and attention to rate limits.
- File exchange
- Placing and collecting a file at fixed times over SFTP. Simple, easy to check and easy to re-run when something goes wrong.
- Straight onto the database
- Only when there is nothing else, preferably read-only and always in consultation with the supplier. An update on their side can break the integration.
What to watch
- Who owns the data?
- Decide per field which system is authoritative. Two systems both allowed to change it is asking for discrepancies.
- How often is needed?
- Real time is rarely required. Every ten minutes, or once a night, is often enough and far simpler to operate.
- What happens during an outage?
- A run has to be repeatable without creating duplicate entries.
- What does the supplier permit?
- Some contracts forbid direct database access. Establishing that costs one phone call and saves trouble later.
In practice we choose per data flow. Invoices through the API and bank statements through a file is not inconsistency — it is the right choice in each case.
More on this →