Old app versions in the wild
Users don't all update. The API must keep serving older app versions while new features are added, or those users break.
Mobile · Backend & APIs
We build the APIs, accounts, notifications, sync and admin tools behind your app, and connect them to the systems your business already runs on.
Mobile app backend development is building the server-side systems a mobile app depends on: the APIs it calls, user authentication, the database, push notifications, file storage, background jobs and the admin panel staff use to manage content and users. A mobile back end must also cope with conditions web back ends often don't, such as unreliable networks, offline edits, old app versions still in use and battery-sensitive clients.
An app is only as reliable as the server behind it. Common failures are rarely in the app itself: APIs that return far more data than a phone needs, logins that expire unpredictably, notifications that never arrive, offline changes that overwrite each other, and no admin tool, so every content change needs a developer. When the business already runs on Odoo or another ERP, a second copy of customers, products and orders creates a reconciliation problem too.
Users don't all update. The API must keep serving older app versions while new features are added, or those users break.
Field users lose signal. Edits made offline must sync later without duplicates or silently overwriting someone else's change.
When the app keeps its own customers, prices and stock separate from the ERP, the two drift apart and staff reconcile by hand.
Firebase-style services start fast but can become limiting or costly as rules and integrations grow; a custom back end needs more upfront work.
REST or GraphQL APIs shaped around app screens, with pagination, compact payloads, versioning and an OpenAPI contract shared with app developers.
Email, phone OTP, social and Sign in with Apple logins, token refresh, role-based access and account deletion flows that app store policies require.
Delivery through Firebase Cloud Messaging and Apple Push Notification service, with device token management, topics, scheduling and user preferences.
Change tracking, conflict rules and background sync so apps keep working without a connection and reconcile cleanly when back online.
Web dashboards for staff to manage users, content, orders, notifications and app configuration without developer help.
Connecting the app to Odoo through its external API, or to other ERPs, so orders, stock, customers and invoices come from one source.
When the app reads from your ERP, staff and customers see the same prices, stock and order status.
Designed sync lets users continue their work without signal and catch up later.
An admin panel removes routine content and user changes from the developer queue.
API versioning lets you ship new app features without breaking users on older versions.
Sales reps see live prices and stock from Odoo, take orders offline and sync them back as quotations or sales orders.
Accounts, carts, payments, order status notifications and an admin panel for staff to manage it all.
Driver or technician apps sending location and job updates, with real-time status for dispatchers and customers.
Moving an app from a backend-as-a-service to a custom API when business rules, cost or data control require it.
The API contract is agreed before either the app or the server is built, so both teams work to the same specification.
Entities, ownership and which system is the source of truth for each, including any ERP.
Managed services, a custom back end or a mix, decided against your rules, integrations and expected growth.
Endpoints and payloads agreed with the app team in an OpenAPI spec before implementation.
API, database, auth, notifications and jobs developed with automated tests and a staging environment.
Connections to Odoo, payment gateways and other services, tested with realistic data.
Authentication, authorization and rate limits checked; endpoints tested under expected load.
Containerized deployment, logging, alerts and backups configured before launch.
| Criterion | Backend-as-a-service (e.g. Firebase) | Custom back end |
|---|---|---|
| Time to first release | Shorter for standard features | Longer setup |
| Complex business rules | Limited; often needs cloud functions | Fully supported |
| ERP / Odoo integration | Possible via functions, can be awkward | Direct and fully controlled |
| Data location & control | Within the provider's options | Your choice of hosting |
| Cost as usage grows | Usage-based, can rise sharply | Mostly infrastructure cost |
| Best fit | MVPs and apps with simple data | Business apps with integrations and rules |
Every request checked on the server for who the user is and what they may access; the app is never trusted alone.
Short-lived access tokens, refresh token rotation and revocation when a device is lost or an account deleted.
Rate limiting, input validation and protection for OTP and login endpoints against brute force.
Stateless API containers that scale horizontally, database backups and tested restore procedures.
We build the Flutter or native app and its back end together, so the API fits the screens that use it.
We also implement and customize Odoo, so connecting your app to it is familiar territory.
We'll recommend Firebase-style services when they fit and a custom back end when they don't, with the trade-offs written down.
Admin panels, logs and alerts are part of the scope, because someone has to run the system after launch.
Fixed-price packages with the scope written down, paid stage by stage. Your project goes live once it's fully paid.
Official documentation and guidance if you want to read more about this topic.
Most do, as soon as the app has user accounts, shared data, notifications or payments. Only fully offline, single-user apps such as simple utilities can run without one.
Firebase and similar services suit MVPs and apps with simple data rules. A custom back end is usually better when you have complex business logic, ERP integration, specific data-hosting requirements or costs that grow with usage. Many apps use both, for example Firebase for push notifications and a custom API for business data.
Yes, an app can use Odoo's external API, but we usually place a thin API layer in between. That layer limits what each user can access, shapes data for the app and keeps working if Odoo is upgraded.
The back end sends messages to Firebase Cloud Messaging for Android and to Apple Push Notification service for iOS, which deliver them to devices. The back end stores each device's token and decides who receives which notification and when.
The app stores data locally and records changes while offline, then syncs them when a connection returns. The back end applies agreed conflict rules, such as last-write-wins or flagging conflicts for review, depending on the data.
Yes. We agree an API contract with the app team, or document the one the app already expects, and build the back end to it.
Next step
Tell us what your app needs to do and which systems it must talk to. We'll outline the API, data flow and hosting.