Projects

Global Business Assistant

One order. Sales, stock and settlement in context.

Custom ERP and CRM for trading operations. GBA connects customer orders with goods, delivery records and multi-currency settlement, while each department works in its own console views.

Project at a glance
For trading teams
Sales, purchasing, warehouses and finance working on the same order.
Across operating contexts
Polish and Ukrainian operations, multiple currencies and cross-border documents.
The practical value
Move from a customer question to the relevant product, movement or payment record.
Product screens

From the customer account to the records behind an order.

The following workflows show how staff inspect order lines, locate goods, reconcile receipts and assign follow-up work. Each view keeps the operational record available for review.

Customers & sales

Answer the customer with the order in front of you.

Expanded GBA sale showing product references, quantities, prices and line totals

Look inside the sale.

The sales register opens into individual products without losing the order context. Quantities, unit prices and line totals let the manager check what the customer is buying before reviewing delivery or payment.

The working challenge

A customer question can involve the order, the delivery recipient and the wider account history. The sales team needs to check these records together before agreeing the next action.

The product solution

GBA connects the sales register, line items, delivery details and customer portfolio. The manager can move from a specific sale to the customer’s order history, turnover and overdue balance.

GBA sale details with customer, manager, payment status, recipient and carrier fields

Bring delivery into the conversation.

The sale detail brings the customer, manager and delivery recipient into one record. Carrier information and order lines support a concrete conversation about where the goods should go and who is responsible for the sale.

GBA customer registry with search, status, AI score, city and contact columns

Start from the customer relationship.

Customer search starts from a shared register with contact details, location and account status. These fields help staff identify the right account before opening its commercial history.

GBA manager client portfolio with last order date, order count, turnover and overdue debt

Prepare the next account conversation.

The portfolio puts the last purchase, order volume, turnover and overdue balance beside each account. A manager can prepare a follow-up using the relationship’s activity and financial context together.

Warehouse & stock

Know what is available, where it sits and what is moving.

GBA warehouse stock register with product codes, storage locations, quantities and warehouse names

Find the stock behind the promise.

Stock is shown against product references and physical storage locations. The warehouse team can check the relevant quantity and where to find it, instead of relying on an unqualified catalogue total.

The working challenge

An available quantity is only useful when staff can identify the warehouse and storage location behind it. Transfers also need a clear origin, destination and quantity so the next team understands the movement.

The product solution

The warehouse views link products to quantities, locations and valuation. A separate movement record captures the source and destination warehouses, the transferred amount and the reason for the operation.

GBA warehouse transfer form with source and destination warehouses, quantity, reason and comment

Make the movement specific.

A stock movement is recorded as a specific operation: product, quantity, source and destination warehouses. The reason and comment explain the transfer to the people who will receive or reconcile it.

GBA inventory view showing purchase prices, sale prices, stock values, quantities and locations

See the value held in stock.

Inventory valuation places quantities beside purchase and selling prices. Purchasing and finance can inspect the value held in stock while retaining the product and location details behind the figure.

GBA product groups with group names, descriptions, status and product counts

Give the catalogue a working structure.

Product groups give the catalogue a maintained structure. Names, descriptions, status and item counts make it clear how products are organised before the team works with stock or sales records.

Payments & balances

Follow the money beyond the sales total.

GBA debtor register with customers, responsible managers, payment terms and overdue amounts

Give collections a customer context.

The debt view ties an overdue amount to the customer, payment terms and responsible manager. Collection work can start from the account that needs attention and the person who owns the relationship.

The working challenge

A sales amount alone does not explain whether an account is settled. Finance needs to distinguish the customer’s debt from individual receipts and check the currency, account and contract for each payment.

The product solution

The debtor register gives a customer-level view with a responsible manager and payment terms. Incoming cash records provide the document-level detail needed to inspect the counterparty, amount and settlement context.

GBA incoming cash order registry showing dates, counterparties, operation types, amounts, currencies and accounts

Inspect incoming payment records.

The incoming-payment register separates receipts by operation, counterparty, currency and account. Finance can find the relevant record and inspect its details when checking a customer’s balance.

GBA incoming cash order details with counterparty, amount, currency, contract, accounts and comment

Open the record behind a receipt.

Opening a receipt reveals the operation type, contract, accounts and comment behind the amount. The document provides the context needed to reconcile the entry with the customer’s commercial records.

Team & management

Move from department priorities to a named person’s work.

GBA sales analytics with a manager chart and a table broken down by product category

Read the sales mix, not just the total.

Sales analysis connects the selected period with managers and product categories. The chart gives an overview while the table exposes the category breakdown used to understand the composition of sales.

The working challenge

Department totals and an individual manager’s workload answer different questions. Leaders need both views to identify outstanding work and understand which customers and tasks require attention.

The product solution

The department dashboard combines performance cards, a task queue and workload charts. Filtering by manager narrows the same review to one person, while team administration keeps membership and assigned roles explicit.

GBA sales department dashboard with summary cards, task queue, workload charts and manager list

Review the department’s priorities.

The department dashboard brings shipment and payment progress alongside queued tasks and workload. The manager list connects the overall picture to named people, making the review useful for deciding what requires attention next.

GBA management dashboard filtered to a single manager with their tasks and workload charts

Narrow the review to one manager.

The manager filter keeps the dashboard’s structure while narrowing its tasks and charts to one person. Leaders can review individual workload without changing how the department’s performance is presented.

GBA administration register showing users, assigned roles, contact details, status and locations

Keep team membership and roles visible.

Team administration shows who has an account, their assigned role and current status. Contact and location details remain beside the account, giving administrators a practical overview of the people using the console.

AI workspace

Put AI suggestions where the team can review them.

GBA AI task queue with customer-related suggestions, priorities, explanations and action controls

Turn a suggested action into a reviewable task.

A suggestion is presented as a task with a customer context, explanation and priority. Action controls let the manager review the proposal where the team’s work is already organised.

The working challenge

A suggested action needs enough context for a manager to decide whether to act. The team also needs visibility into the service producing those suggestions, rather than treating every output as an unexplained instruction.

The product solution

AI suggestions appear as tasks with customer context, explanations and priorities. A separate operations panel shows processing activity, service status and usage, keeping the business review distinct from the service’s operation.

GBA AI fleet panel with processing status, run activity charts, service information and usage indicators

Inspect the operation behind the suggestions.

The AI operations panel shows processing status, activity charts and usage indicators. It gives the team a separate view of service operation alongside the customer-facing task queue.

Screens show demonstration data, not client records.

Storage layout example

Every item has an address in the warehouse.

Choose a storage cell to see its item and quantities. A rack, level and position turn a stock figure into a place the team can find.

Warehouse 01Storage cells

Rack A

Rack B

Example quantities. Select a cell to inspect its address.

Follow the workflow

Goods and payments. The complete order picture.

See what has shipped, what has been paid and what each team needs to do next.

Demo scenario

Order value

€10,000

100 units €100

Dispatch in progress

Dispatched

60/ 100 units

Still to dispatch
40 units

Receipts

€6,000

Outstanding
€4,000

What happens next

WarehouseDispatch the remaining 40 units.

FinanceReconcile the remaining €4,000.

Process in detail

From agreement to final reconciliation.

Follow each department’s records and check the quantities and balances at every stage.

  1. Sales
  2. Warehouse
  3. Finance
View the full process map and calculations

Choose a path or select an item to inspect its meaning. Scroll the canvas horizontally on smaller screens.

01 / Order agreed02 / Partial dispatch03 / Final reviewSalesWarehouseFinance
Read the process

Different records answer different questions.

Start with a path above, then inspect a record. The explanation below the canvas connects each step to the business question it can answer.

Show us how this step works in your business.

Discuss this process

The reconciliation sheet behind the story.

The worksheet keeps the quantities and amounts explicit. “Outstanding” means order value minus cumulative receipts.

The reconciliation sheet behind the story.
CheckpointOrderedDispatchedStill to dispatchReceiptsOutstanding
Order agreed100 units0 units100 units€4,000€6,000
Partial dispatch100 units60 units40 units€6,000€4,000
Final review100 units100 units0 units€10,000€0

At the middle checkpoint, the customer is waiting for 40 units and finance is reviewing €4,000. Those are two follow-up tasks with different evidence and potentially different owners.

Connected system

How orders connect to goods, documents and money.

Explore the documented product responsibilities and their connections. Each scenario highlights a different set of dependencies; select a component to inspect its role.

Select a component to explore its connections. On a small screen, scroll the map horizontally.

Operating teams

Working records

Connected domain information

Operational views

Workflow details

Choose a workflow or component above to see its records and connections.

Technology stack

The technology behind GBA.

The GBA stack connects a web workspace, .NET application services, SQL Server business records and Python AI services.

Explore security & performance

Web interface

React and Next.js power the web workspace for sales, warehouse and finance teams. TypeScript defines the interface code; Redux manages shared application state.

  • React
  • Next.js
  • TypeScript
  • Redux

Application services

ASP.NET Core and C# implement the APIs and business rules around orders, goods and financial records. Akka.NET supports actor-based processing within the application services.

  • ASP.NET Core
  • C#
  • Akka.NET

Database & data access

SQL Server holds the relational business data. Entity Framework Core maps application entities to that data; Dapper supports direct SQL queries from the .NET services.

  • Microsoft SQL Server
  • Entity Framework Core
  • Dapper

Search & caching

Elasticsearch indexes application data for search; Redis caches frequently requested values for the services.

  • Elasticsearch
  • Redis

Live communication

SignalR provides communication between the .NET services and the web interface, supporting server-pushed updates while people work in the application.

  • SignalR

Documents & exports

Document-generation and spreadsheet libraries turn operational records into PDF documents and Excel exports for reporting, exchange and further analysis.

Output formats
  • PDF
  • Excel

AI services

Python powers the AI services. Suggested actions appear in the team’s task queue, where people review them alongside the relevant customer and operational records.

  • Python

Deployment & cloud

IIS hosts the ASP.NET Core application on Windows. Docker is part of the service packaging stack, with Azure services and Azure DevOps in the infrastructure and delivery toolchain.

  • IIS
  • Docker
  • Microsoft Azure
  • Azure File Storage
  • Azure DevOps
Engineering approach

Deployment planning: security, performance and recovery.

For an IIS and SQL Server deployment, we agree the protection measures, load checks and recovery procedures with the infrastructure team. The areas below describe this planning approach; the controls and owners are defined for each environment.

Server configuration

Service identities and resource boundaries.

We define the IIS hosting configuration, service identity and permitted resources for each application.

Engineering details
  • Configure IIS application pools, service identities and folder permissions around the application’s responsibilities.
  • Review web.config, the ASP.NET Core Hosting Bundle, request filtering and upload limits against the actual workflows.
  • Define allowed network paths and administrative access. Keep database and cache endpoints off the public web.
  • Set runtime limits, recycling behaviour and the update process, then verify startup and recovery after a restart.
  • IIS
  • Application pools
  • web.config
  • Network access
Certificates & transport

Certificate trust, renewal and ownership.

We map HTTPS endpoints and service connections, then agree certificate validation, renewal and the responsible owner.

Engineering details
  • Map where TLS terminates and bind the correct certificate to the public hostname in IIS.
  • Review supported protocols, the certificate chain and hostname validation for the deployed clients.
  • Define renewal, expiry monitoring and access to private keys, with a named owner for replacement.
  • Review database and service connections separately: HTTPS at the public endpoint covers only that connection.
  • TLS
  • HTTPS bindings
  • Certificate renewal
  • Private keys
Data protection

Encryption, access rules and recoverable keys.

We agree encryption and application permissions alongside recovery requirements for documents, exports and database backups.

Engineering details
  • Choose encryption at rest for the database, file storage and backups according to the hosting model and data requirements.
  • For SQL Server TDE, account for the certificates or keys needed to restore the database. Encryption at rest does not replace application access rules.
  • Keep credentials out of source control and container images. Define secret storage, rotation and separate service identities.
  • Review permission checks for reading, changing and exporting records, including access across organisations or departments.
  • Encryption at rest
  • SQL Server TDE
  • Secrets
  • Access policies
SQL performance

Query changes based on measured workload.

We use query history and execution plans to locate the delay before changing SQL, indexes or server capacity.

Engineering details
  • Use Query Store to compare query plans and runtime history, with capture and retention configured for the workload.
  • Inspect execution plans for row-estimate differences, joins, scans, sorts and spills. Review statistics and indexes against the queries that use them.
  • Use targeted Extended Events sessions to investigate blocking, deadlocks and slow requests when deeper diagnostics are needed.
  • Compare duration, CPU and logical reads under equivalent load after each change. Check the effect on writes as well as reads.
  • Query Store
  • Execution plans
  • Extended Events
  • Indexes & statistics
Application efficiency

Data access and cache behaviour under load.

We review repeated database calls and cache behaviour for the selected workflow, from an individual request to concurrent use.

Engineering details
  • Inspect SQL generated by Entity Framework Core and queries written with Dapper. Use parameters and fetch only the data needed by the operation.
  • Review repeated database calls, pagination, transaction boundaries and connection usage.
  • Define Redis key scope, expiry and invalidation, including how the application behaves when a cached value is missing or stale.
  • Keep long document-generation and processing tasks from monopolising interactive request capacity.
  • EF Core
  • Dapper
  • Redis
  • Query profiling
Monitoring & recovery

Incident response and rehearsed recovery.

We agree alert conditions, response ownership and the steps to verify recovery before the system returns to service.

Engineering details
  • Correlate application errors with IIS logs and database diagnostics. Redact secrets and limit access to operational records.
  • Track request latency, error rates and resource pressure; set alert thresholds around the operating workload.
  • Define backup retention and access, preserve required encryption keys and rehearse a restore in an isolated environment.
  • Agree recovery targets, deployment rollback steps and responsibility for security updates.
  • IIS logs
  • Health checks
  • Restore testing
  • Rollback

The optimisation loop

We compare each change against the same working scenario, so the result can be checked.

  1. Measure the starting point

    Choose a working scenario, such as opening the order register. Record response time, errors and resource use under a defined load.

    Step resultA baseline for comparison
  2. Make a targeted change

    Trace the delay to its cause, then adjust the query, index, cache or server setting. Record the change and how to reverse it.

    Step resultOne change that can be checked
  3. Check the result

    Repeat the same scenario under comparable load. Compare timings and resource use, and check that records and calculations remain correct.

    Step resultA before-and-after comparison
Keep the improvement. Repeat when needed.

If the checks confirm the improvement, we keep the change and monitor it in use. If not, we revert it and investigate the next cause.

Explore the E-Commerce buying journey

A related portfolio case follows parts discovery, product selection and guided checkout.

Explore the related work
From this case to your business

Planning a similar system.

We help turn your current workflow into a practical development plan, then handle the agreed design, engineering, testing and launch work with your team.

Which trade workflow should a first release connect?

Choose one recurring reconciliation problem: a purchase, warehouse transfer or customer balance. We map the records and owners, build the agreed journey and review it with the people who will use it.

Can existing accounting and warehouse tools remain in use?

We assess their APIs and data ownership first. The scope then defines which system owns each record, how updates are synchronised and how staff resolve duplicates or discrepancies.

How do currencies and cross-border documents affect the design?

Your finance and domain specialists confirm the rules using representative trades. We turn those decisions into calculations, documents and review screens, then test the examples together.

Your next system

Which part of your order is hardest to explain?

Bring one order that required a call between sales, warehouse and finance. We can map the records each team needed, where their answers diverged and which connected workflow would make a useful first release.

Map your order workflow Explore the development service