Digital Workflows and Integrations

An external API changes version: preparing the integration to keep operations running

Check API and webhook versions, build an impact matrix and agree migration tests, cutover steps and rollback conditions.

An external API changes version: preparing the integration to keep operations running

Start an API version change by listing the requests you use and the events you receive. Then map the supplier's changes to business actions: creating orders, recognising payments, updating invoice status or changing customer data. Before cutover, each important action needs a testable expected outcome and an owner who accepts it. Uninterrupted operation is the migration's goal, not a guarantee supplied by a new version number.

A manager need not read every page of API documentation. They need to establish which business process could stop, how a failure will be detected and what will happen to data received during the transition. “The developer will update the library” does not answer those questions.

An API version change needs a verified starting point

Record the current API version, client library and configuration that selects the version. Check scheduled jobs, separate imports and other systems with their own connection to the same supplier. One successful interface action does not establish compatibility across all those paths.

A webhook is a notification sent by a service about an event. Its data format may be tied to a different version from your outgoing API requests. For example, Stripe's versioning documentation describes separate version selection for requests and webhook endpoints. This is one product's example; consult other suppliers' documentation for their arrangements.

Capture configuration evidence without keys or other secrets. If the responsible person cannot identify the version in use, the first task is an inventory. Switching from an unknown starting state is hard to verify safely and harder still to restore.

Take the migration deadline from the specific supplier's notice. Check whether it concerns the entire service, one version, an individual function or only new integrations.

Turn the API change list into an impact matrix

A technical change becomes understandable when paired with a business action and its consequences. The following is a demonstration matrix. Replace its fields and statuses with your integration's documented values.

Supplier change

Affected action

Compatibility test

Acceptance evidence

Customer identifier field changed

Linking an order to a customer

Existing and new customer

Order linked to the correct record

New intermediate status added

Waiting for payment

Transaction not yet complete

Goods not released before the permitted state

Empty-value representation changed

Updating contact details

Field not populated

Existing data not accidentally deleted

Event structure changed

Synchronising invoice status

Old and new notification examples

Both have a known processing path

Error code changed

Choosing whether to retry

Temporary and permanent errors

Irreversible action not blindly repeated

Review the matrix with the process owner. A technically valid date may mean a different business moment than before. A field with the same name may no longer be available in every scenario. Conversely, a new field the integration does not use may require no behavioural change.

Mark actions documented as unaffected too. This bounds the work and helps keep unrelated redesign out of the migration. Do not mark unknown impact as safe: it requires a supplier answer or a separate test.

API contract tests check data meaning and action outcomes

A contract test compares the integration's expected input and outcome with the specific API behaviour. Checking that a response can be read is only the start. What matters to the business is whether the response leads to the correct action.

In the test specification, record the initial state, request or event, expected data mapping and prohibited side effect. A repeated payment notification, for example, may leave an order marked paid but must not create a second fulfilment task. Test this separately from successful first-time processing.

Use anonymised or synthetic examples. Preserve the structure important to the problem, such as an empty field, a multi-item order or a cancelled action, without including customer data merely for convenience. When replacing identifiers, retain their relationships; otherwise the example tests a different situation.

Boundary cases are also needed: an unknown status, a partially completed action, a delayed notification and denied access. For each, define whether the process stops for review or may continue. A default branch meaning “everything else is successful” is particularly dangerous in financial and order workflows.

Switching APIs without losing incoming events

In the cutover plan, separate receiving an event from processing it for the business. If processing is temporarily paused, there must be a verifiable place where received work is retained and a procedure for resuming it. Build or verify these capabilities before migration; a new API version does not create them automatically.

Stripe's webhook documentation warns about duplicate events and non-guaranteed delivery order. In your integration, therefore, test event identity and the consequences of repeat processing. Two events about one object are not necessarily duplicates: they may describe different actions.

Imagine an order system receiving a payment notification during migration and a cancellation notification later. The cutover test covers both events and the case where the old notification arrives again. The aim is the correct order state, not merely counting received messages.

Running old and new processing in parallel helps compare results only if the second path does not repeat real actions uncontrollably. Comparison mode must not send an invoice again, make another payment or create a second warehouse task. Define which path may write at any given moment.

An API migration rollback plan has limits

Restoring the previous application version does not undo documents already sent or records written in an external system. Before cutover, identify which actions can be repeated, which require compensation and which will be reviewed by a person.

Stripe's upgrade instructions provide product-specific testing and rollback procedures. They cannot be transferred to another API as a universal capability. Establish whether the old version remains available, what its support conditions are and whether rolling back changes the interpretation of queued events.

Agree stop conditions: incorrect status mapping, unexplained duplicates or incorrect totals justify pausing the affected processing. Define boundaries and the responsible person before migration, not during the incident. A temporary manual process also needs records so automation does not later repeat the same work.

Accepting a completed API migration

Prepare the list of versions used, impact matrix and test results for acceptance. Check business outcomes in both connected systems. A green integration dashboard may confirm successful data transfer while a user sees an order linked incorrectly.

Choose the observation period according to the process's rhythm. An ordinary working day does not test an action that occurs only at month end. A controlled test can be used, but the acceptance record must distinguish observed live workflows from test data.

This work starts after deciding the type of connection. If that decision is still open, see choosing an API integration or simpler data exchange. Disputes over which system may change a field instead need single source of truth rules.

Frequently asked questions about API version changes

Does updating the library complete the migration?

Not necessarily. Check the actual request version, webhook format and scenarios the business uses. Library compatibility does not establish correct business outcomes.

Must everything be tested again?

The impact matrix sets priorities, but critical unaffected actions also need regression checks. Base the selection on connections in use and risk, not the length of the supplier's change list.

Can migration always happen without interruption?

That cannot be promised before assessing the specific integration. An agreed restricted-service window or temporary manual process may be needed. What matters is knowing beforehand how unprocessed work will be preserved and reconciled.

If you need a migration assessment, send the supplier's change notice and a description of the integration, not access keys. In business process automation, this allows work to start with the affected process and compatibility checks before agreeing implementation scope.