Technology

One engine for your whole operation. Open by design.

A single data model, one instance per customer in the European cloud and API v4, fully documented, to connect everything. That is how attendo is built.

  • One database per customer
  • SaaS in the EU or on-premise
  • API v4 documented with OpenAPI
Record of an equipment breakdown with its AI analysis panel, assignment, priority and scheduling
An open document: type, priority, assignment, scheduling and the marIA panel.

The problem

Four programs means four databases

Each tool brings its own data model, its own users and its own way of integrating. Joining them takes a project, and keeping them joined takes another one every time one of them is updated. Traceability gets “integrated” through syncs that someone has to keep an eye on.

The single model

Every new type is born with everything

In attendo, the ticket, the work order, the opportunity and the service report are the same object: a document with a different type. Any type you create inherits the timeline, statuses, assignment, SLA, search and permissions. It also inherits costs, attachments, reports, printing and flows. Traceability is not integrated: it simply exists, because everything lives in the same place.

One document, four faces A central object called the document, with its timeline, and four branches coming out of it: ticket, work order, opportunity and field service report. Each branch has the color of its solution. THE DOCUMENT Comes in through its channel Gets worked and logged Gets closed with evidence TICKETING Ticket The customer’s request CMMS Work order What needs to be done CRM Opportunity What you can sell FIELD SERVICE Service report The technician’s work The type changes. The engine stays the same. Same timeline · same statuses · same search · same reports

The architecture

Where your data lives, and what it talks to

Architecture and data Deployment diagram: the attendo instance, delivered as SaaS with data hosted in the European Union, with its access, application and data layers, and the external systems it connects to. ARCHITECTURE Where your data lives and what attendo talks to SAAS · DATA IN THE EUROPEAN UNION ACCESS SSO sign-in Two-factor Single session Access log APPLICATION Document engine 3-layer permissions attendo Flows Queues and tasks Real time marIA (optional, per module) DATA Database per instance Attachments or S3 TLS in transit Backups Restore Full export WHO SIGNS IN Desktop user Mobile user (field) Customer (portal) Supplier (portal) Your systems (API) WHAT IT TALKS TO ERP (Odoo, BC, Holded…) Microsoft 365 / Google WhatsApp · Teams · Slack Phone system (VoIP) AI provider (your key)
SaaS on Kubernetes in AWS, OVHcloud or Google Cloud, in a European region. As a project, on-premise.
LayerWhat it includes
AccessSign-in with Microsoft, Google or Auth0, two-factor authentication, single active session and access log
ApplicationDocument engine, three-layer permissions, flows, background work queues, real-time updates and the optional AI layer
DataOne database per instance, attachments on the platform or in your S3 storage, encryption in transit and full export
Who gets inDesktop, iOS and Android app, customer, supplier and partner portals, and API v4
What it talks toYour ERP, Microsoft 365 and Google, Teams and Slack, WhatsApp, your phone system, OpenStreetMap and HERE maps, your GIS through GeoJSON, WMS or WMTS, your AI provider and third-party MCP servers

Instances and deployment

Your instance, in the European cloud

Each customer has its own instance: application, database, queues, scheduled tasks and storage. It can hold several companies and business lines, each with its own numbering series and its own brand.

  • Managed cloud on Kubernetes in AWS, OVHcloud or Google Cloud, always in a European region
  • SaaS by default: we run the platform, you only need a browser or the app. As a project, also on-premise, on your own infrastructure
  • Continuous updates, with no installs or planned downtime on your side
  • Configuration lives in data, so your instance updates without losing anything you have adapted

Under the hood

Proven technology, no black boxes

attendo is a modern web application with PHP and Symfony on the server, MariaDB as the database and React with TypeScript in the interface.

  • Background queues for email, reports, AI and syncs: the screen never waits
  • Scheduled tasks that catch up if they are delayed, instead of getting lost
  • Real time: what a colleague changes shows up without reloading
  • Server-side search and filters, even on large lists
  • Storage on the platform or in your own S3, with migration between the two
  • Performance monitor: administrators see which screen, action or background process is slow, and whether the time went to the database, an external service or waiting
  • Slow does not hold up the rest: every dashboard query has a time limit, and a slow screen does not keep the same person’s other tabs waiting

Open

Your systems work here too

  • API v4, a REST API documented with OpenAPI and organized in operation packages
  • Per-key permissions: each key only does what you allow, checked on every request
  • Webhooks: outbound, with history and resend, and inbound into flows
  • MCP server to query attendo from Claude or ChatGPT, with write access turned off
  • MCP client: attendo connects to third-party MCP servers from flows and from the record
  • Import and export almost everything you configure and run from Settings, with the same file both ways

See integrations

Mobile

In the field, only what is needed

Your field team works with the native attendo app for iOS and Android, or from the browser on their phone or tablet. Settings and visual editors stay on desktop on purpose: the technician does not need a canvas, they need the service report.

The app has its own sign-in with two-factor authentication and works offline: it syncs only the changes and resolves conflicts with clear rules. It receives notifications and the day’s route, calculated on the server. It only downloads what each profile is allowed to see.

attendo home screen on a phone with the day’s dashboard
The attendo app for iOS and Android, with the same data model as the desktop.

Artificial intelligence

AI as an optional layer

AI connects with the customer’s own provider and key, and turns off module by module. A rule in the code decides what data travels: the rows of your tables only go to Scaleway or to your Microsoft 365 Copilot.

See the attendo AI

What we do not publish

Some details do not belong on a website

We do not publish exact versions, names of internal components or platform limits. That information only helps someone who wants to attack it. If your IT team needs it to evaluate attendo, we share it on a technical call, under a non-disclosure agreement.

Frequently asked questions

Frequently asked questions

Can we install attendo on our own servers?

Yes, as a project. By default attendo is a SaaS service: we run it in a European region, with an instance and a database dedicated to your company, and updates and backups do not depend on your team. If you need it on your own infrastructure, we deploy it on-premise, with your data on your network and the code protected. How it works.

Is our data kept separate from other customers’ data?

Yes. Each customer has its own instance and its own database.

How does it integrate with our systems?

Through API v4, webhooks, the MCP client and connectors, which are validated against your test environment.

Can it handle high volume?

Heavy work runs in queues and searches run on the server. There is no limit on the number of documents. If you expect a lot of API traffic, we size it with you.

Which browsers does it support?

Recent versions of Chrome, Edge, Firefox and Safari, on desktop, tablet and mobile.

Is there a mobile app?

Yes, for iOS and Android, and it works offline. You can also use attendo from your phone’s browser, with a connection.

Request a demo

Talk to the people who built it

We give you access to an instance with your data, the API documentation and a technical call with the team that develops attendo.

  • With your operation, not a generic demo
  • A real person from our team replies
  • No cold calls afterwards

Would you rather talk first?

Which area do you want to see in the demo?

With your work email we prepare the demo around your case.

In one or two sentences.

If you chose Maintenance (CMMS)

If you chose Field work (Field Service)

If you chose Facility Management

If you chose any other area

Only if you would rather we call you.

Data protection. Controller: AxisOne Group SL. Purpose: preparing the demo you request and replying to you. Legal basis: your consent and the request you make. Recipients: we do not disclose your data; Cloudflare (website) and Brevo (email notices and confirmation) process it on our behalf. Rights: access, rectification, erasure, objection, restriction and portability, at privacy@attendo.me. More information in the privacy policy.

What happens when you send it. Someone from our team reads what you tell us and writes to you to agree on a time for the demo. Our hours: Monday to Thursday 9:30 AM to 6:30 PM and Friday 9:30 AM to 2:30 PM, Spain time.