Functional Requirements:

_User management:

  1. User should be able to register and login User activity:
  2. User should be able to add, edit and delete transactions with amount, currency, date and description
  3. Should be able to create, edit and delete expense group
  4. User should be able to get payment history

Expenses management:

  1. The user should be able to divide the amount by percentage, split type, and amount to selected friends
  2. The user should be able to send reminders to a friend for a due payment.
  3. Should be able to make secure payments and settle payment status

NFR

  1. Payment should be made secure
  2. Data consistency: User transaction should be consistent
  3. Durability: Data should not be lost
  4. Availability: 99.99%