How do you connect two business applications if one has no API?

On this page

Connecting software without an API is possible when another supported exchange method exists: file imports and exports, a supplier's connector or an agreed way to access data. Automating work through the application screen may be another option, with its own reliability checks. First establish what the software permits, which data it can accept and how it confirms a successful entry.

Suppose an employee copies portal orders into an older business application. Before development, check whether that application can import an entire order or only a product list. That determines how much of the task can be connected and what the employee still needs to do. We cover the wider scope through our business system integration service.

What should you ask the software supplier first?

Provide the product name and exact version, the task you want to connect and sample data without confidential values. Ask for documentation covering imports, exports or an existing connector. Check whether the feature is included in your licence, whether automated use is permitted and who supports changes to the format.

Check reading and writing separately. A price-list export might support a price display, while accepting an order needs a suitable import and processing rules. Ask how results are returned: a created document number, rejected items and the reason for failure. Your employee needs this information to establish what actually finished.

Which connection methods are worth considering?

The choice depends on the documented capabilities of the particular application. Check these with the supplier before obtaining a development quote.

Scroll the table sideways to see all columns.

Exchange options when the required function has no available API
MethodWhen to consider itWhat to check
CSV or XML file imports and exportsThe software documents a format for the required data.Field mapping, update rules, transfer schedule and receipt report.
Supplier connector or intermediary softwareThe supplier confirms support for your version and task.Feature scope, licensing, access and maintenance responsibility.
Approved database access for readingThe supplier documents permitted access to the data.Permissions, field meanings and load. Reading does not handle order creation.
User interface automationThe task can run reliably through the application's permitted interface.Sign-in, control identification, interruptions and confirmation of the result.

Check a connector against the function you need; its product name does not establish support. Writing directly to database tables outside a supported procedure can bypass the business application's rules. For writes, ask for an approved method that validates the document and its associated rules.

If reliable exchange is not currently possible, preparing data for controlled manual entry may be a useful first phase. An employee confirms the entry, and the system retains a link to the original request. State which steps remain manual in the agreed scope.

What should you agree for file transfers?

For each field, record its source, destination, whether it is required and what an empty value means. Does a blank price delete the existing value, retain it or reject the row? Agree customer and product codes, currency, units, date formats and decimal notation. Matching column names do not establish that the values mean the same thing.

Treat 00127 as a code and preserve its leading zeros. Microsoft explains how Excel changes leading zeros and long numbers, and why these identifiers need a text data type. Check the output file after someone opens and saves it manually. The cell's appearance is not enough to verify what another application receives.

Agree the frequency too. A daily transfer might suit a report, while availability of the last unit needs a different arrangement. Keep the source timestamp and last successful transfer time with copied stock figures. Our guide to connecting a store to inventory covers decisions about reservations and available quantities.

What happens when only some orders are imported?

Consider a fictional example: file BATCH-07 contains three portal orders, ORD-101, ORD-102 and ORD-103. The application accepted the first and third but rejected the second because the customer code was unknown. This is a proposed procedure to work through, with no client-system test reported.

Retain the result for each order and the document references created by the receiving application. Keep the original data and rejection reason for the failed order. The responsible person corrects the data through the agreed procedure, and the retry contains only what was not accepted. Resend the entire file only after verifying how the destination recognises orders already processed.

If the response is lost after import has started, the outcome is unknown. Check the receiving application's records before retrying. A batch reference helps locate the transfer, but preventing duplicate documents also requires the destination to recognise the same order. Handle changes to an accepted order through the application's amendment rules.

In Odoo's import documentation, a consistent External ID identifies existing records for updates. That is an example of that platform's capability. For another application, check its identifier and repeated-import behaviour. Where an order contains several rows, agree whether a failed item rejects the entire order.

When does user interface automation make sense?

This approach, often called RPA, performs agreed actions through an application's interface. Microsoft Power Automate documentation describes identifying controls through UI elements and selectors. Being able to select a button needs to be paired with a check that the document was actually saved.

Plan for a changed screen, a new dialog, an expired sign-in and an interruption during saving. Automation should stop when it cannot reliably identify the state. An employee needs somewhere to review the issue and a way to resume without repeating completed work. Application changes may require the flow to be adjusted and checked again.

Before choosing this method, check the software's terms, the permitted account and required access. If an action requires an employee's personal approval, keep that step in the process. Automation should not bypass protections or send credentials through public forms.

What should you check before using real data?

Start in a separate test environment or another procedure explicitly approved by the supplier. Use sample data and define expected outcomes in advance. The following list proposes checks; it is not a record of tests already performed.

  1. Import a valid document and check the link between its source and destination references.
  2. Submit an unknown code, a missing required field and an incorrect decimal format. Check that each rejection has an understandable reason.
  3. Repeat the same transfer and confirm that it creates no extra document or repeated business effect.
  4. Interrupt a transfer after part of the batch is accepted. Check each order's status and resumption without duplicates.
  5. Try a later amendment, a cancellation and a case where the save outcome is unknown.
  6. Check expired access, a failed exchange and notification to someone who can act.

Keep a transfer record with its reference, time and outcome. Periodically compare accepted documents and relevant quantities between systems. For records with business effects, such as reservations or payments, agree a correction procedure with the supplier. Deleting a record in the intermediary does not automatically undo a change in the other application.

What should you prepare for an estimate and ongoing support?

Bring software names and versions, supported formats and an anonymised example of one document. State the transfer direction, approximate document volume and acceptable delay. Add the supplier's support contact and describe how employees currently correct an error.

The quote should cover development, required licences, data checks and responsibility for later format or interface changes. Include these arrangements in your software specification. If the portal is being introduced gradually, connect them with the plan for handling email and portal orders in parallel.

For a software integration estimate, send an outline of one task and the documentation you have. We first check whether a supported exchange method exists, then work through the initial scope and the steps your team will retain.

YOUR NEXT PROJECT

We listen. We analyze. We deliver.

Free project estimate