Code Monkey home page Code Monkey logo

aceaccounting-cordova's Introduction

  1. Signup/Signin/Bank Update (Websocket with dialog)

B) User should be able to login/signup to an organization, and accept invitation to take role a in a company and manage bank account. this function is similar to xero where there is a table for invites and accepting

  • SignUp will include sending SMS (a rewrite of PHP package to send Nexmo/Kannel or Kavenegar SMS)

recrate forms for the login to bank account:

Bunq oAuth API (oauth api): https://doc.bunq.com/ ABNAmro Login Page (single stage with account / pass and otp device): https://www.abnamro.nl/portalserver/my-abnamro/my-overview/overview/index.html Rabbobank (Double stage with photo QR code): https://bankieren.rabobank.nl/klantenam=rabo_internetbankieren Testing Account Number: 307957888 Testing Card Number 1123 (After entering the Account and Card number, bank website will display a QR barcode, this needs to be sent to user)

ING (Single Step user/pass, Double stage is not known to us yet): https://mijn.ing.nl/login CIMB (Single OTP device and Double Mobile SMS): https://www.cimb.bizchannel.com.my/corp/common2/login.do?action=loginRequest Testing Org ID M0045750 Testing User Seyed (At stage two do not provide any password and login, otherwise the user will be blocked.) After successfully providing a password, the bank will SMS the OTP in case the account is Double Stage login and/or if the account is Single Stage, the user must provide OTP in advance, this means we must show to user a Radio option to choose SMS or Device OTP. Maybank (Single only): https://www.maybank2e.com/m2e/portal/portal.view

Two Stage Login and Single Stage: Single: Logins where user can provide user/pass with option of OTP to login Two Stage: User must first provide information such as user/pass/account no and pass number then bank website will show photo or send SMS otp to user phone then user must supply those to get the login completed.

this is one of the reason we use websocket so we can have two way communication with client.

######################################################################################################## 2. Price Calculator (example here: http://api03nl.aceaccounting.nl/package/basic_package

Price calculator will follow a json reply from server based on price for each item: the table is generated from table : https://docs.google.com/spreadsheets/d/1A22ZzSkdDNO9RoOx1iI5-31q4PZa5OLvqINhdeTVHHk/edit#gid=1027351096 and some items have fixed quantity and some are flexible.

the purpose of of the price calculator is to make sure user pays only for the items they are using in the company.

Camera Photo

Would take a photo and submit the photo to back-end in binary or base64 format. the will be a list of photos with small and medium thumbnails so user would be able to track the photos he or she takes.

######################################################################################################## 3. CRUD: Contact / Inventory / Chart of Accounts / Sales Invoice -> Create mock-up of www.xero.com

User should be able to use wizard and calculate the information the cost of using Ace App for him, the demo is available. upon completting this the user must pay for the first month and the organizations must be approved by accountant, once approved the link to Xero Auth must continue and Bank Account Setup must complete (It is linked to Mile Stone

  • Contacts
  • Inventory
  • Description, qty, discount
  • Chart of Account
  • Tax Rate
  • Add Payment Page
  • Print PDF / Email Invoice

######################################################################################################## 4. CRUD : Bill Expenses -> create mock-up of www.xero.com

Create the similar options as it is available in Xero.com

  • Contacts
  • Inventory
  • Chart of Account
  • Tax Rate
  • Add Payment Page

######################################################################################################## 5. Human Resources (as per sample in ionic creator)

CRUD Information about company staff Firstname Lastname Salary Join Date Phone Email Address TaxID DateOfBirth Position

API Document Link https://www.nmbrs.com/developer

######################################################################################################## 6. Batch pay bills A) User would select a list of bills(expenses) and check them to pay all at once: according to Xero API: https://developer.xero.com/documentation/api/batch-payments

B) Batch payment is inserted and Bunq API is called to insert/approve and process payment.

At this stage only Bunq api would support online batch payment. for other banks a SEPA XML format must be generated where user can download the file and upload to banks like ING, AbnAmro or Rabobank.

######################################################################################################## 7. Leave request (Request or Widthraw / Approve / and listing) push notification and managements

StaffID: Type: Medical / Vacation Salary: Paid / Unpaid Start Date / Time End Date / Time

A request is submitted by user and then it is pending approval or denial by management. there are then two tables in database:

  • LeaveRequest (status : approved, denied, withrawn)
  • LeaveApproved (status: taken/cancelled)

There will be general push notification at this point where the content of Push must have a Message, Flag(seen/unseen) for each user the notification is also linked to an object/item where front-end must open. Therefore all items including invoices/bills/leave request/ bank statement update

Example of push:

server-to-client
{
	"PUSH_GUID":"52208ff9-528a-4985-a9ad-b2b1d4210e38"
	"MESSAGE":"Your leave request was approved by Mr. Manager Name"
	"OBJECT":"LEAVE_REQUEST"
	"GUID":"6d42f03b-181f-43e3-93fb-2025c012de92"
}

client-to-server
{
	"PUSH_GUID":"52208ff9-528a-4985-a9ad-b2b1d4210e38"
	"STATUS":"SEEN"
}

aceaccounting-cordova's People

Contributors

behnamshateri avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.