Skip to main content
MaViAlSoftware development and digital products
Data and APIs

API Development and System Integration

We build documented APIs and integrations that let your systems exchange data automatically and predictably, with no retyping and no silent failures. We start with the data contract and the failure scenarios, and only then write code. Indicative budget: from $1,900; the final price comes from a written specification.

from $1,900indicative budget for one focused integration or a small API; final quote after a written technical specification
Team in WrocławPL · EN · RU · UAFinal quote after specification
Illustration: API Development and System Integration

When a business needs its own API or integration

This work is for teams that need to connect specific systems or open their application's data to others. The most common situations:

  • Internal integration: store orders should reach the ERP, invoices the accounting package and shipping statuses should flow back to the customer, with nobody retyping anything.
  • Vendor integration: a payment provider, carrier, marketing platform or e-invoicing system (in Poland, KSeF) offers an API and your application has to use it reliably.
  • API for partners or a mobile app: your product needs a stable interface consumed by a front end, a mobile app or partner systems.
  • Integration layer: instead of a dozen point-to-point links, one integration service translates data between systems and is the only place to change when you replace a vendor.

If the API is meant to be sold as a product with plans and billing, see API as a product. If the need is moving large volumes into a warehouse on a schedule, see ETL pipelines and connectors.

What a well-designed API includes

Resource model and contract

We define which objects the interface exposes (customer, order, line item, payment and so on), which operations are allowed and what every response looks like. The contract lives in OpenAPI, so one file produces the documentation, a mock server and compatibility tests.

Validation, idempotency and a consistent error format

Every request is validated on entry. Operations that create data accept an idempotency key, so a retried call never duplicates an order. Errors share one format with a code, a description and the offending field, for example following RFC 9457 (Problem Details).

Pagination, filtering and rate limits

Lists are paginated, preferably with cursors, and have predictable filters and sorting. Rate limits protect the system from a single heavy client or a runaway loop in someone else's integration.

Webhooks and events

Instead of polling the API every minute, a partner system can be notified of changes. We sign webhooks (HMAC, for instance), retry them with exponential backoff and keep a delivery history, so anyone can check whether a message arrived.

Versioning

Non-breaking changes ship without a new version; breaking changes go into a new version with a transition period that you decide. The policy is written down before the first external consumer appears.

Integration patterns and the systems we connect

The right pattern depends on how fast data must arrive and what the other side offers:

  • synchronous API call when a user is waiting for the result (stock check, shipping quote);
  • events through a queue when guaranteed delivery matters more than immediacy (passing an order to the ERP);
  • webhooks when the vendor announces a change itself (payment status);
  • polling adapter for systems that only expose a change list or a report;
  • file exchange (SFTP, CSV, XML) for older systems without an API, with validation and a processing acknowledgement for each file.

Typical system classes are ERP and accounting software, CRM, e-commerce platforms, payment providers, carriers, identity providers (Microsoft Entra ID, Google Workspace, Keycloak) and public-administration systems. Before committing to a date we check each vendor's documentation, sandbox availability, rate limits and access terms.

Architecture and technology

We build the API in a technology your team knows and your infrastructure supports: Node.js (e.g. NestJS), .NET (ASP.NET Core), Python (FastAPI or Django) or PHP (Laravel, Symfony). For heavy service-to-service traffic we consider gRPC; for front ends that need many different slices of data, GraphQL. For most business integrations, REST with OpenAPI remains the simplest and best-supported choice.

Around the code you need an API gateway or reverse proxy (TLS, limits, logging), a queue for asynchronous operations, a database holding integration state and message history, and a secrets manager. Deployment is usually containerised, in your cloud account (AWS, Azure, Google Cloud) or on-premise servers, with a CI/CD pipeline and a separate test environment.

Security and compliance

APIs are among the most frequently attacked parts of any system, so security is designed together with the contract rather than bolted on afterwards. Our reference point is the OWASP API Security Top 10:

  • authentication matched to the consumer: OAuth 2.0 and OpenID Connect for users, client credentials or narrowly scoped keys for systems, mTLS where a partner requires it;
  • object-level authorisation, so customer A cannot read customer B's order by changing an ID in the URL;
  • replay protection, rate limits and input size checks;
  • an audit log of who changed what and when, without recording passwords, tokens or unnecessary personal data;
  • GDPR: minimal transferred fields, defined log retention and a documented map of personal-data flows.

If the integration touches payment accounts, PSD2 requirements apply on the bank's or payment provider's side. We reflect them in the technical design, but this is not legal advice.

How the project runs

  1. Discovery: we map systems, data owners, flow directions and conflict rules, meaning which system is the source of truth for each field.
  2. Specification: OpenAPI contract, error scenarios, performance requirements and exclusions. The binding price is based on this document.
  3. Mock server: a contract-compliant mock lets your front end or partners start work in parallel.
  4. Iterative build: first the most important flow end to end, then further resources and edge cases.
  5. Testing and acceptance: unit, contract and integration tests against vendor sandboxes, including lost connections, duplicates and malformed data.
  6. Launch: deployment with monitoring, a rollback plan and an operations guide for whoever maintains it.
  7. Maintenance: reacting to vendor changes, dependency updates and further development, for example under software maintenance.

A focused integration is usually measured in weeks. The biggest sources of delay are missing vendor sandboxes, waiting for access, unclear business rules and the number of systems changing at the same time.

What drives the price

The indicative starting point is $1,900 excluding VAT. That covers one focused integration or a small API with a few resources, authentication, tests and documentation. The figure rises with:

  • the number of systems, endpoints and sync directions (two-way sync costs noticeably more than one-way);
  • the documentation quality and stability of vendor APIs;
  • the complexity of data mapping and conflict rules;
  • availability, performance and audit requirements;
  • a one-off transfer of historical data;
  • connecting a legacy system that has no API.

The proposal offers three options, Essential, Recommended and Scale, and states clearly what is excluded: third-party API fees, integration-platform licences and cloud costs. All price anchors are compared on the pricing page.

What we need from you

  • a business decision-maker and a technical contact for each system;
  • vendors' API documentation and sandbox accounts;
  • sample messages or files, ideally anonymised;
  • a decision on which system is the source of truth for key data;
  • information about hosting, security rules and your IT change-approval process.

Already have an outline? Send us a description of the systems and we will come back with clarifying questions and a discovery proposal. Related services are listed under data and APIs; if external developers will consume the API, consider an SDK as well.

Related services

Frequently asked questions

REST, GraphQL or gRPC: which should we choose?

For most business integrations and partner APIs, REST with OpenAPI is the best fit: simple, widely supported and easy to document. GraphQL makes sense when many front ends need different slices of the same data. gRPC works well for high-volume service-to-service communication.

What happens when a vendor's API is down?

The integration must not lose data. Messages wait in a queue and are retried with increasing delays; once the retry limit is reached they move to an error queue and the operator gets an alert. When the vendor recovers, processing resumes where it stopped.

How do we change the API without breaking partner integrations?

The contract is versioned, and breaking changes go into a new version with an announced transition period. Contract tests in CI catch unintended format changes before they reach production.

Can you fix our existing integration instead of writing a new one?

Yes. We start by reviewing the code, logs and incident history. Adding idempotency, a queue and monitoring is often enough to make an unstable integration predictable; we only propose a rewrite when it is cheaper over the maintenance horizon.

Who maintains the integration after launch?

Your team can take it over, since we hand over the code, documentation and an operations guide. Alternatively we maintain it under a maintenance agreement from $249 per month, with the scope agreed separately.

Is API documentation part of the project?

Yes. Reference documentation is generated from the OpenAPI contract, and we add a quick-start guide and request examples for the key scenarios. That way the documentation never drifts from what the API actually does.

Describe your project — we will prepare a specification and a quote

Tell us what the software must achieve, who will use it, which systems it must connect to and your target date.

Updated: · MaViAl Sp. z o.o.