Skip to content

Entrusit portfolio · AI agents, automation & ERP projectsSoftware that runsreal businesses.

AI agents, ERP and finance automation, document AI and web platforms — designed, built and kept running from Skopje, for companies in North Macedonia and abroad.

7 Shipped4 In development5 Product Clients under NDA are shown by sector.

Ask Your Finances· live previewillustrative data
Chat with your books; anything that doesn't reconcile gets flagged.Try it ↓

Live demos

Five products,running right here.

Short simulations of systems we ship into client ERPs. The data is made up; the flow is the real one.

Ask Your Finances · illustrative data

Try a question

Product

Ask Your Finances

Pick a question — cash, receivables, VAT, unbooked invoices. Answers come from the books with their sources, and anything that doesn't reconcile is flagged.

Selected work

Projects,products & builds.

Filter by what we built or by status. Open any project for the problem, what we built and how it works.

Showing 16 of 16

  • Product
    01

    Smart Scan — AI document processing into the ERP

    Supplier invoices, receipts and bank statements read, checked and posted — no re-keying.

    For
    Entrusit product
    • AI agents
    • Data & documents
    • Automation
    • Live demo
    Quick view→

    The problem

    Finance teams were typing supplier invoices into the ERP line by line: supplier, VAT ID, dates, every item and every VAT rate. It was slow, and a single mistyped number only surfaced at month-end.

    What we built

    An extraction engine that reads PDFs, scans and phone photos (including iPhone HEIC), returns every field and line item with a confidence score, and hands the result to the ERP as a draft purchase ready for review.

    How it works

    1. 1Drop a file into the document inbox, or send a whole batch at once.
    2. 2The engine classifies the document type and extracts header fields, line items and VAT per rate.
    3. 3An arithmetic check verifies lines against totals; if they don't add up, a stronger model re-reads the document.
    4. 4Low-confidence fields are highlighted; a person approves and the purchase is posted.

    Highlights

    • Reads PDFs, scans and phone photos
    • Duplicate uploads detected by file fingerprint
    • Falls back between extraction providers if one is down

    Stack & integrations

    • Claude (Anthropic API)
    • Mindee OCR
    • Laravel queues
    • Pusher live updates
    • S3-compatible storage
  • Product
    02

    Ask Your Finances — an AI agent over your books

    Chat with your bank statements, purchases, expenses and sales — and get told what doesn't reconcile.

    For
    Entrusit product
    • AI agents
    • Automation
    • Data & documents
    • Live demo
    Quick view→

    The problem

    Owners and finance leads wait for month-end reports to learn how the business is doing, and the gaps — invoices not yet booked, payments with no invoice, duplicates — surface only when someone goes looking.

    What we built

    An AI chat agent with read access to the company's financial data: bank statements, the purchase and sales ledgers, expenses and reports. It answers from the actual books and bank data, shows the source records behind every number, and proactively flags anything that doesn't reconcile.

    How it works

    1. 1Connect read-only to the bank statements, ledgers and expense records.
    2. 2Ask in plain language — "How did we do last month?" — and the agent queries the data with dedicated tools.
    3. 3Every figure in the answer links back to the source records.
    4. 4A reconciliation pass flags unbooked invoices, payments without an invoice, duplicates, VAT mismatches and overdue receivables for review.

    Highlights

    • Answers from your books, not from the model's memory
    • Source records behind every number
    • Flags what doesn't reconcile — a person decides

    Stack & integrations

    • Claude tool use
    • Read-only finance connectors
    • Bank statement import
    • ERP / accounting ledgers
  • Product
    03

    Smart Product Import — messy supplier sheets to a clean catalogue

    An Excel file and a folder of photos in; grouped, enriched, shop-ready products out.

    For
    Entrusit product
    • AI agents
    • Web & e-commerce
    • Data & documents
    • Live demo
    Quick view→

    The problem

    Supplier catalogues arrive as spreadsheets with variable codes, colours and sizes mixed into one column, names in one language only, and photo folders that follow two different naming rules. Importing one by hand took days and a manual "needs review" file.

    What we built

    A staged import wizard that maps columns, cleans and enriches data, groups colour and size variants without touching the client's product codes, matches images and parks anything doubtful in a review queue.

    How it works

    1. 1Upload the spreadsheet and a zip of images; columns are auto-detected and you confirm the mapping.
    2. 2Codes, names, colours, sizes and categories are cleaned and fuzzy-matched to your taxonomy.
    3. 3Variants are grouped point-and-click; images are matched by EAN, code or filename.
    4. 4Rows with missing data, duplicates or a photo whose colour doesn't match go to review; the rest are applied or exported.

    Highlights

    • Product codes stay byte-identical to your POS
    • Flags mislabelled supplier photos by colour
    • Self-serve, or run for you by our team

    Stack & integrations

    • Laravel + Inertia/Vue wizard
    • Chunked queue jobs
    • Image colour analysis
    • Excel import/export
  • Shipped Under NDA
    04

    Doc Intelligence — purchase intake that learns

    Supplier documents read, checked against their VAT recap and turned into purchases — and every correction teaches the system.

    For
    Office supplies company, North Macedonia
    • AI agents
    • Data & documents
    • ERP
    Quick view→

    The problem

    An office supplies company receives a steady stream of supplier invoices, fiscal receipts and delivery notes. Bookkeepers re-typed each one, recapitulated VAT per rate by hand, and the same supplier named the same products differently every month.

    What we built

    Doc Intelligence, our purchase-intake system built on Smart Scan, running in the company's ERP: one intake screen for every document, a split-view review with a per-line grid, a three-level check with a VAT recap per rate, and a learning loop that turns each correction into a rule for that supplier.

    How it works

    1. 1Every incoming document is classified — invoice, fiscal receipt, delivery note, utility bill — and routed to the right flow.
    2. 2Each line is checked on its own, then against the per-rate VAT recap, then against what the ERP already holds.
    3. 3Supplier names and product aliases are matched to the company's catalogue.
    4. 4A bookkeeper reviews the flagged fields and approves; corrections are kept and reused for that supplier.

    Highlights

    • Keeps the document's printed VAT as the source of truth
    • Learns per supplier, and every rule is auditable
    • Purchases are posted only after a person approves

    Stack & integrations

    • Claude tool use (strict schema)
    • Laravel
    • Vanilla JS review UI
    • MySQL
  • Shipped Under NDA
    05

    Multi-tenant ERP for a food retail & distribution group

    Shop, invoicing, stock, purchasing, finance and time-clocking in one system.

    For
    Food retail & distribution group, North Macedonia
    • ERP
    • Web & e-commerce
    • Automation
    • Consulting
    Quick view→

    The problem

    The group ran its shops, wholesale customers, warehouse and staff across separate tools and spreadsheets. Every new company in the group meant another setup, and nothing talked to the accounting.

    What we built

    A multi-tenant ERP where each company gets its own isolated database and domain: invoices, pro-formas, delivery notes and credit notes, purchases and goods receipts, stock counts and transfers, consignment, projects with SLA billing, support tickets, time-clocking and payroll inputs — plus a website builder and online shop per tenant.

    How it works

    1. 1Process teardown with the finance and warehouse teams, one workflow at a time.
    2. 2New tenants are provisioned automatically, including domain and SSL.
    3. 3Modules are switched on per company as add-ons.
    4. 4Card payments, email and analytics are wired in; our AI add-ons plug into the same data.

    Highlights

    • Modules switched on per company
    • One codebase, isolated data per company
    • AI add-ons: document scan, product import, knowledge-base chat

    Stack & integrations

    • Laravel
    • Inertia + Vue 3
    • Backpack admin
    • Multi-tenancy (separate DBs)
    • MySQL
    • Local card payment gateways
    • Brevo / Mailgun
  • Shipped Under NDA
    06

    Bank statement import & automatic reconciliation

    Statements in, transactions categorised and matched to invoices and receipts.

    For
    Food retail & distribution group, North Macedonia
    • Automation
    • Data & documents
    • ERP
    Quick view→

    The problem

    Each morning someone downloaded statements from several banks and matched payments to invoices by eye. Card fees, salaries, loans and supplier payments all had to be booked to the right category by hand.

    What we built

    A finance automation module inside the ERP that reads the statement formats of major Macedonian banks, resolves who each counterparty is, classifies every transaction and matches it to open invoices, purchases and receipts.

    How it works

    1. 1Statements are imported per bank through dedicated parsers.
    2. 2Counterparties are resolved and invoice references read from payment descriptions.
    3. 3A rule engine categorises transactions; it suggests new rules from repeated corrections.
    4. 4Payments are matched and settled against invoices, with locks so nothing is settled twice.

    Highlights

    • Learns categories from the team's own corrections
    • Settlement locks prevent double-booking
    • Location-level rules for multi-site businesses

    Stack & integrations

    • Laravel
    • MT940 statement parsers
    • Rule engine
    • MySQL
  • Shipped Under NDA
    07

    Warehouse & order operations tool with an AI data assistant

    Ask in plain language which customers are slipping — and get the numbers, not a guess.

    For
    Food wholesale distributor, North Macedonia
    • AI agents
    • Automation
    • ERP
    • Live demo
    Quick view→

    The problem

    Cashiers, warehouse staff and sales reps each needed a different view of orders and deliveries, and managers wanted answers like "what did we ship to this chain last month, per branch" without waiting for a report.

    What we built

    A role-based internal tool for orders, fulfilment, delivery printing, B2B orders, returns, inventory counts and quality inspections — synced with the ERP — plus an AI assistant that answers questions by calling read-only query tools on live data.

    How it works

    1. 1Orders, prices, customers and products sync from the ERP.
    2. 2Each role (admin, cashier, warehouse, sales) gets its own screens.
    3. 3The assistant picks a tool — find a customer, revenue per branch, stale items, KPIs — and answers from the result.
    4. 4A daily summary and alerts go out on Telegram.

    Highlights

    • The assistant can only read, never write
    • Answers per branch for multi-location customers
    • Expiring-stock and returns alerts

    Stack & integrations

    • PHP 8
    • MySQL (managed)
    • Claude tool use
    • Telegram bot
    • GitHub Actions CI/CD
  • Product
    08

    AI chatbot for websites

    An assistant on your site that knows your products and pages, answers visitors and hands warm leads to your team.

    For
    Entrusit product
    • AI agents
    • Web & e-commerce
    • Live demo
    Quick view→

    The problem

    Visitors ask the same questions about products, delivery and opening hours — often outside working hours — and leave when nobody answers. Generic chat widgets don't know the business and make things up.

    What we built

    An AI assistant added to any website with one script, trained on the company's own pages, product catalogue and documents. It answers visitors, says when it doesn't know, captures contact details and hands the conversation to a person.

    How it works

    1. 1Your pages, products and documents are ingested into a private knowledge base.
    2. 2The widget is added to the site with a single script tag.
    3. 3Visitors get answers grounded in your content, with links to the source page.
    4. 4Leads and anything it can't answer are handed to your team by email or in the dashboard.

    Highlights

    • Answers only from your content
    • Lead capture and human handoff
    • Spend limits and a full conversation log

    Stack & integrations

    • Claude
    • Knowledge base retrieval
    • Embeddable widget
    • Usage & spend limits
    • Conversation log
  • Shipped Under NDA
    09

    EV charging platform — driver app, admin and charger control

    Drivers top up a wallet, start a charge from their phone, and get a numbered receipt.

    For
    EV charging operator, North Macedonia
    • Web & e-commerce
    • Automation
    • Consulting
    Quick view→

    The problem

    A charging operator needed its own platform: talk to real chargers over the industry protocol, let drivers pay, and give staff a single place to see stations, sessions and faults.

    What we built

    An OCPP 1.6-J central system that controls chargers directly, an installable driver web app with wallet, reservations and push notifications, and an admin panel for stations, sessions, faults and receipts.

    How it works

    1. 1Chargers connect to our central system over OCPP.
    2. 2Drivers fund a wallet by card; each session debits it.
    3. 3Every session produces a numbered receipt.
    4. 4Staff monitor stations and faults; a simulator tests chargers before go-live.

    Highlights

    • Talks to real charging hardware
    • Separate staging environment
    • Charger simulator for testing before go-live

    Stack & integrations

    • Node.js / Express
    • OCPP 1.6-J
    • SQLite + Knex
    • PWA
    • Card payment gateway
    • Firebase push
    • Playwright tests
  • Shipped Under NDA
    10

    Online ordering, loyalty & cashback for food outlets

    Order online per location, pay by card, earn cashback — all landing in the same ERP.

    For
    Food retail & distribution group, North Macedonia
    • Web & e-commerce
    • ERP
    Quick view→

    The problem

    Orders came in by phone and social media, loyalty was a paper card, and nothing connected the counter to stock or accounting.

    What we built

    A storefront and food-ordering flow built into the ERP: menus and products per location, carts, card payments, loyalty and cashback, and orders that flow straight into fulfilment and invoicing. Recipes and nutrient calculation sit behind the menu.

    How it works

    1. 1Menus and products are managed once in the ERP and published per location.
    2. 2Customers order and pay online by card.
    3. 3Cashback and loyalty balances update automatically.
    4. 4Orders appear in fulfilment and become invoices without re-typing.

    Highlights

    • Per-location menus from one catalogue
    • Loyalty & cashback built in
    • Recipes & nutrition data behind each dish

    Stack & integrations

    • Laravel
    • Vue 3
    • Local card payment gateways
    • Pusher
    • MySQL
  • Product
    11

    Trading & markets automation

    Signals, rules and execution in one loop — with hard risk limits and a kill switch you control.

    For
    Entrusit capability
    • Automation
    • AI agents
    • Data & documents
    Quick view→

    The problem

    Strategies that work on paper break down in manual execution: signals are missed overnight, orders go in late or oversized, and discipline slips exactly when the market moves fastest.

    What we built

    An automation stack that turns market and data signals into explicit rules, executes through broker and exchange APIs within position and loss limits, and monitors every open position — backtested before it ever trades live.

    How it works

    1. 1Signals: market data and your own indicators are collected and normalised.
    2. 2Rules: the strategy is written as explicit, testable rules and backtested on historical data.
    3. 3Execution: orders go out through broker or exchange APIs, inside position, exposure and loss limits.
    4. 4Monitoring: positions, fills and errors are watched live, with alerts and a manual kill switch.

    Highlights

    • Backtest first, then paper, then live
    • Hard risk limits and a kill switch
    • Every signal, order and fill logged

    Stack & integrations

    • Broker & exchange APIs
    • Backtesting engine
    • Scheduled workers
    • Risk limits
    • Alerts & monitoring
  • In development Under NDA
    12

    Concert ticketing with a 3D arena seat view

    Pick your seat on a live map, see the stage from it in 3D, hold it and check out with a QR e-ticket.

    For
    Live events promoter, North Macedonia
    • Web & e-commerce
    Quick view→

    The problem

    Fans buying stadium tickets choose seats from a flat chart and only discover the view on the night. Promoters need a booking flow that sells seats and standing areas without double-selling.

    What we built

    A bilingual ticketing site with event pages and posters, an interactive seat map with best-available suggestions, a real-time 3D view of the stage from the selected seat, standing-area tickets, timed seat holds, checkout and QR e-tickets.

    How it works

    1. 1Fans browse concerts and open an event.
    2. 2They pick seats on the map — or take the best available — and preview the view in 3D.
    3. 3Selected seats are held for ten minutes while they check out.
    4. 4Each ticket is issued with a QR code for entry.

    Highlights

    • See the stage from your seat before buying
    • Timed holds prevent double-selling
    • Inventory layer ready to swap for the live service

    Stack & integrations

    • React 19
    • Three.js
    • Tailwind CSS
    • Zustand
    • QR codes
    • Playwright
  • In development Under NDA
    13

    Scroll-driven 3D story of a mountain ascent

    A real-time 3D climb you control by scrolling — real terrain, the real trail, from dawn to the summit.

    For
    Tourism & outdoor storytelling project, North Macedonia
    • Web & e-commerce
    Quick view→

    The problem

    A static gallery can't convey what a five-hour alpine climb feels like. The brief was a web experience that tells the story of a real route — place, time and effort — and still works on a phone.

    What we built

    A scroll-driven WebGL experience: one scroll position drives the camera, the time of day and the walker on the real trail, across nine chapters, built on real elevation data and satellite imagery, in three languages.

    How it works

    1. 1Elevation and imagery are baked into compact, verified assets by a build pipeline.
    2. 2The real trail is mapped and split into chapters and waypoints.
    3. 3Scrolling (or a hands-free film mode) moves the camera, light and walker together.
    4. 4Devices are tiered for quality, with a static fallback where WebGL2 is missing.

    Highlights

    • Real terrain and the real route
    • Keyboard controls and chapter deep links
    • Quality tiers and a no-WebGL fallback

    Stack & integrations

    • Three.js
    • Custom GLSL shaders
    • Vite
    • Copernicus elevation data
    • Satellite imagery
    • i18n (3 languages)
  • In development Under NDA
    14

    Health directory & symptom-triage platform

    Find a doctor, clinic or on-duty pharmacy — and get safe, non-diagnostic guidance on where to go.

    For
    Healthtech platform, North Macedonia (pre-launch)
    • Web & e-commerce
    • Data & documents
    Quick view→

    The problem

    Health information in North Macedonia is scattered: doctor licences, clinics, pharmacies on duty and first-aid advice all live on different sites, often out of date.

    What we built

    A Macedonian-first platform with a directory of doctors, clinics, hospitals, labs and pharmacies, a pharmacy product catalogue, moderated reviews, a community forum and a clinician-reviewed triage flow with red-flag rules.

    How it works

    1. 1Public registries are imported through a reviewed pipeline that tracks where every field came from.
    2. 2Editors approve changes in a review queue.
    3. 3The triage flow asks structured questions and points to the right level of care.
    4. 4Clinicians review the flows before they go public.

    Highlights

    • Triage is rules-based and clinician-reviewed
    • Every imported field keeps its source
    • Built for search in Macedonian

    Stack & integrations

    • Laravel API + Filament
    • Next.js
    • Import pipeline with field provenance
  • Shipped Under NDA
    15

    Website rebuild for a private dental practice

    A faster, clearer site that keeps every page and URL of the old one.

    For
    Private dental practice, Skopje
    • Web & e-commerce
    Quick view→

    The problem

    A long-established practice had years of treatment content on an ageing site, and couldn't afford to lose its search rankings in a redesign.

    What we built

    A static, fast Next.js rebuild with the full content carried over, a page-by-page parity checklist and a URL map so every old address redirects to its new home.

    How it works

    1. 1Harvest and transcribe every page of the existing site.
    2. 2Map each old URL to its new one.
    3. 3Redesign treatment pages for clarity on mobile.
    4. 4Check content parity page by page before switching over.

    Highlights

    • No content lost in the move
    • Old URLs keep working
    • Static hosting — fast and cheap to run

    Stack & integrations

    • Next.js (static export)
    • Tailwind CSS
    • Redirect map
  • In development
    16

    Vision-based portion & quality control at the kitchen pass

    A camera checks each plate against the reference dish before it leaves the kitchen.

    For
    In-house R&D
    • AI agents
    • Data & documents
    Quick view→

    The problem

    Restaurant groups can't see whether plates match the spec — portion size and presentation drift between shifts and locations, and food cost drifts with them.

    What we built

    A proof of concept that scans each dish with a depth camera and a vision model, compares it with a reference plate and logs the result to a dashboard per restaurant and dish.

    How it works

    1. 1Define the reference plate for each dish.
    2. 2A depth camera captures each plate at the pass.
    3. 3A vision model compares composition and portion against the reference.
    4. 4Results are logged per dish, shift and location.

    Highlights

    • Proof of concept stage
    • Works per dish and per location
    • Hardware + software, end to end

    Stack & integrations

    • Python / FastAPI
    • Depth camera (OAK)
    • OpenCV
    • Claude vision
    • SQLite

Capability map

Where we'vealready built.

Sectors against the kind of work. Each dot is a project on this page — pick one to see them.

Number of portfolio projects per sector and type of work
SectorAI agentsAutomationERPWeb & e-commerceData & documentsConsulting
Retail & distribution
Restaurants & food
Finance & accounting
Energy & mobility
Healthcare
Tourism & events
Cross-industry

Security & your data

How we handleyour data.

Most of what we build touches finance and operations data, so the rules are agreed before we see any of it.

  • NDA before the first call

    We sign an NDA before the first call, so you can show us the real process — real files, real numbers.

  • Least privilege, read-only by default

    Agents and integrations get the narrowest access that works, starting read-only. Write access is added per action, deliberately.

  • Humans approve sensitive actions

    AI agents never post, pay or send on their own: bookings, payments and outgoing messages wait for a person's sign-off.

  • You own the code and the data

    What we build for you is yours, and your data stays your data — we don't reuse it to serve other clients.

  • Your accounts and infrastructure

    Where possible we work inside your cloud, servers and API accounts, so access can be reviewed and revoked on your side.

  • GDPR and Macedonian data protection law

    Personal data is handled under the GDPR and North Macedonia's Law on Personal Data Protection, with only the data a task needs.

Questions

Before youget in touch.

What kind of projects does Entrusit take on?

AI agents that work inside your systems, process and finance automation, AI document processing, custom ERP modules, and the websites and shops that sit on top. Most projects start with one painful workflow — invoices, reconciliation, product imports — and grow from there once it saves time.

Why are most clients shown without names?

Most of our work runs inside clients' finance and operations, so it is covered by NDAs. We describe each client by sector and country instead, show what the system does and mark its status. On a call we can walk you through the real thing, with the client's permission.

Can these systems connect to the ERP we already use?

Yes. Smart Scan, Smart Product Import and our reconciliation engine were built as add-ons, so they work through APIs, file exchange or a database integration. We usually start by mapping where your data lives today, then connect to it rather than replacing what already works.

How does a project with Entrusit start?

With a free 30-minute process teardown. You show us one workflow as it really happens, we come back with a fixed-price proposal, and you see working software early — usually within days, not months. Larger platforms are delivered in phases that each ship on their own.

What we can build for you

What could webuild for you?

Bring the process that eats the most hours. We'll show you the automated version on the first call.

Book a free teardown