Aramis: a comprehensive platform for smart urban services

One of Karzaan Software Group’s strategic products, the Aramis app has transformed access to urban and commercial services. By combining a multi-purpose card (healthcare, shopping, citizenship), a smart discount system and a merchant management panel, the platform provides an integrated ecosystem for citizens and businesses. This technical review looks at Aramis’s architecture, key technologies and how it works.


System architecture

The system is built on a modern three-layer architecture with a focus on real-time response.

User layer (frontend):

  • Cross-platform development with Flutter for iOS, Android and the web
  • Dynamic theming support for each organization’s branding
  • Bloc state management for the complex state of transactions
  1. Middle layer (backend):
    • Node.js + Express.js for processing high-frequency transactions
    • A RESTful API with real-time updates (WebSockets)
    • Specialized modules:
      • Card issuing
      • Discount engine
      • Payment splitting
  2. Data layer (database):
    • MongoDB Atlas (a managed cloud service)
    • Special optimization for financial transactions

Key technologies

Component

Technologies

Technical benefits

Frontend

Flutter 3.x + Dart 2.17

60 FPS rendering, hot reload

 

Firebase Analytics

Tracking user behavior

Backend

Node.js 18 + Express 4.x

10,000+ requests per second

 

Socket.io

Real-time notifications (such as payment confirmation)

Database

MongoDB 6.x

Automatic sharding, real-time backup

DevOps

GitHub Actions

Automated CI/CD

 

AWS Lambda (serverless functions)

 

MongoDB database architecture

Given the decentralized and dynamic nature of the data in Aramis, choosing MongoDB brought key benefits:

  1. Document model:
    • Storing user profiles with varying structures

·  Transaction optimizations:

  • Horizontal sharding to handle 100,000+ daily transactions
  • Compound indexes on frequently used fields
  1. ACID transaction support:
    • Multi-document ACID transactions for sensitive financial operations

Merchant (store) management system

A dedicated module for sellers with:

  • A real-time management panel:
    • Viewing transactions as they happen
    • Product catalog management (CRUD operations)
    • Daily/weekly sales reports
  • POS integration:
    • Connection to barcode scanners and receipt printers
    • Automatic inventory synchronization

Security considerations

  1. Data security:
    • TLS/SSL encryption on every layer
    • Field-level encryption for sensitive card information
  2. Authentication:
    • OAuth 2.0 + JWT for users
    • API key + IP whitelisting for merchants
  3. Legal compliance:
    • Following PCI DSS for financial processing
    • Compliance with Iran’s electronic commerce law

Technical strengths

  1. Extensibility:
    • A modular architecture for adding new services (such as a fuel card)
  2. Fault tolerance:
    • Retry/circuit breaker patterns in communication with banks
  3. A consistent user experience:
    • Native performance on every platform with Flutter
  4. Lower costs:
    • Serverless functions for periodic jobs (such as fee calculations)

Conclusion

Built on world-class modern technologies (Flutter, Node.js, MongoDB) and a scalable architecture, Aramis offers a secure, fast and easy-to-use platform for managing urban and commercial services. The app not only meets citizens’ needs with its multi-purpose card and smart discounts, but, by offering a dedicated merchant panel, has also digitized the whole value chain from consumer to seller. Through innovation in combining technology with urban services, the Karzaan team has taken a big step toward the smart city.

Ideas for future versions

  • Adding a store rating system
  • Implementing cross-border payments
  • Using AI for personalized discount suggestions

To learn how apps are designed, these articles on the Karzaan blog may help: