Skip to content
العربيةLet’s talk

Custom software & integrations

Build the missing connection in your business

A custom application is useful when an important workflow cannot be handled well by the tools you already have. The starting point is a clear operational need: who must do what, which information they need, and where existing systems get in the way.

Discuss your project

A shared delivery plan

From a defined need to maintainable software

The process turns a specific operational gap into a reviewable application or integration. These stages are proposed collaboration points, not a fixed package. The agreement defines features, platform choices, testing boundaries and the responsibilities that continue after delivery.

We agree the stages, outputs and responsibilities in your project scope. Select a stage to explore the work and decisions.

A close view of Python code displayed on a computer screen.
Illustrative stock photo. Photo: Chris Ried / Unsplash. Chris Ried / Unsplash
Lava: delivery workYour team: inputs & approvalsTogether: acceptance & priorities

A worked example · illustrative

A request has a successful path—and a recovery path.

Illustrative integration: a business user requests an update to an authoritative record in another system.

  1. RequestThe user supplies the required information
  2. Validate & authorizeCheck fields, identity and permitted action
  3. Write to the recordApply the change to the agreed source of truth
  4. Confirm & traceShow the result and keep an appropriate trace
If the request is invalid

Return a clear correction message. Do not silently write partial or unauthorized changes.

If the other system is unavailable

Show a pending or failed state. Define retries, duplicate prevention and the person who reviews unresolved work.

Acceptance example: a repeated request does not create an unintended duplicate; a failed transfer remains visible. This is a proposed design scenario, not a live system diagram.

From scope to operation

The work at each stage

Open each stage to see the work, your role, the deliverables and the check before moving forward. Feedback can return a decision to an earlier stage.

Define the job to be done

Establish who needs the application and which task it must improve.

What Lava does

Map users, decisions, current tools and failure points; compare building with configuring or connecting existing products.

Your team provides or approves

Provide representative examples, access to relevant users and a decision maker for conflicting requirements.

Stage outputs

  • Problem statement and workflow map
  • Prioritised requirements and open questions

Ready to move forward when…

The team can describe the intended outcome and a concrete scenario for checking it.

Review loop Revisit the need when a feature request cannot be tied to the agreed task.

Trace data and dependencies

Define where records belong and how systems exchange them.

What Lava does

Assess authorised APIs, permissions, data relationships and hosting needs; specify handling for failed or conflicting transfers.

Your team provides or approves

Provide approved technical access and confirm record ownership, acceptable delays and any external-provider constraints.

Stage outputs

  • Data and integration design
  • Access and operational responsibility map

Ready to move forward when…

Dependencies and permissions are assessed; any critical unknown has a named proof check before dependent development.

Review loop Revisit scope if an external service cannot support the required data or interaction.

Prove the difficult part

Resolve the most important usability or integration uncertainty before building the application.

What Lava does

Prototype the riskiest journey or connection with suitable test data; demonstrate relevant usability, failure handling and duplicate prevention.

Your team provides or approves

Review the findings with users and system owners, then choose whether to proceed or revise the approach.

Stage outputs

  • Prototype and feasibility findings
  • Reviewed approach and fallback decisions

Ready to move forward when…

Dependent implementation begins only after the critical feasibility check passes or an explicit, workable fallback is approved.

Review loop Return to data design or scope when the prototype exposes an unsupported connection or business rule.

Build in reviewable increments

Turn the agreed design into working features that can be inspected.

What Lava does

Implement selected journeys and integrations, with server-enforced access rules, validation and appropriate operational logging.

Your team provides or approves

Review working examples and clarify business rules using agreed test records.

Stage outputs

  • Working application increments
  • Implementation decisions and issue log

Ready to move forward when…

Each increment meets its agreed checks and clearly identifies unfinished functionality.

Review loop Return to design when a new rule changes permissions, record structure or connected workflows.

Validate the complete workflow

Check normal tasks, boundaries and failure recovery before release.

What Lava does

Run the agreed functional and security checks; investigate invalid input, cross-role access and connection failures.

Your team provides or approves

Complete acceptance scenarios, confirm relevant business outputs and decide how remaining issues are treated.

Stage outputs

  • Test results and resolved issue record
  • Business acceptance decision

Ready to move forward when…

Required scenarios pass and remaining limitations have explicit owners and decisions.

Review loop Return to the affected build or design when an issue changes expected behaviour.

Release and transfer ownership

Put the agreed version into operation with a usable technical handover.

What Lava does

Follow the release plan and provide agreed source access, deployment instructions and dependency documentation.

Your team provides or approves

Approve release, confirm account ownership and nominate the people responsible for administration and maintenance.

Stage outputs

  • Release record and operational checks
  • Repository, access and maintenance handover

Ready to move forward when…

The agreed live checks pass and the nominated team can follow the handover instructions.

Review loop Use the agreed recovery route if release checks fail, then resolve the underlying cause.

Choose custom development for a defined reason

The right answer may be an internal portal, a focused mobile experience, an approval workflow or a connection between existing platforms. Before choosing the technology, we define the users, the decisions they make and the systems that must remain authoritative for each record.

Custom development is most useful when the workflow is distinctive or the gaps between products create persistent manual work. If an existing product can meet the requirement through configuration, that option deserves consideration. A smaller integration can be more practical than replacing a system your team already understands.

Turn the requirement into a buildable scope

The agreed proposal can include the following, with boundaries for each feature and integration:

  • A workflow map and prioritised requirements, including user roles, record ownership and the exceptions the application must handle.
  • A prototype of the main journeys, allowing the people doing the work to review screens and terminology before development.
  • Web or mobile functionality, an appropriate data model and integrations with available, authorised APIs.
  • Access controls, input validation, error handling and operational logging appropriate to the application and its data.
  • A testing and release process, plus agreed documentation, source-code access and handover of deployment responsibilities.

Decisions that shape the solution

Decisions that shape the solution
ChoicePractical implication
Extend, integrate or replaceCompare the remaining manual work, disruption and maintenance cost of each route before commissioning a new application.
Web or mobileChoose according to where people work and whether device features, offline use or distribution requirements justify additional complexity.
Immediate or scheduled synchronisationFreshness matters, but so do API limits, outages and duplicate handling. Define the acceptable delay and recovery process.

Test the workflow, not just the screens

Your team supplies representative examples, approved access to relevant systems and a decision maker for requirements. For an integration, we need the provider’s API documentation, permission model and a suitable test environment where available. Third-party restrictions can change what is possible and should be investigated before commitments are made.

Acceptance checks should cover real tasks, permission boundaries, invalid input and failed connections. A user seeing the right screen does not prove that another user’s records are protected; relevant access rules must also be enforced on the server. Handover establishes account ownership, dependencies, deployment instructions and who maintains the application when business needs or external services change.

Questions before starting

Do we need a detailed specification already?

No. A defined problem, examples of current work and access to the people involved are enough to begin discovery. The build scope should be agreed after the requirements and important unknowns are understood.

Can the application connect to our existing tools?

That depends on each tool’s authorised integration options, data access and limits. We assess the available APIs or export methods and define how errors, updates and conflicting records will be handled.

Who owns and maintains the finished software?

The agreement should specify rights to bespoke code, third-party licence restrictions, repository access and ownership of hosting and service accounts. Maintenance, monitoring and future development also need named owners and an explicit scope.

Handover & ongoing care

After delivery: maintain the whole connection

Maintenance needs an explicit scope and owner. Software depends on business rules, external services and the environment in which it runs; a completed release does not settle all future changes.

  • Keep dependency, permission and integration documentation aligned with approved changes.
  • Review reported faults separately from new features and plan relevant regression checks.

Sources & further reading

A useful next step

Bring one real workflow.

A sample document, the systems you use and the decision you need to make are enough to start a focused conversation.

Talk to Lava ↗