The solution requires one application for a driver terminal and one application for a passenger terminal. The applications will run on one specific Android device model with Android 4.4.
Each application has 3 to 5 screens.
The passenger application must read DESFire cards (but only the UID, no authentication required). The application keeps a simulated balance for a list of reconfigured card UIDs, i.e. no writing to the card is required.
There is no integration into any server APIs.
The two terminals (driver and passenger) are connected via Bluetooth or Wifi hotspot. This connection is only used by the driver terminal to instruct the passenger terminal to read a DESFire card and to simulate a "payment" transaction on the passenger terminal.
The terminals do not print anything. Potential print output will be simulated by showing the print on the screen.
We have screen designs and transaction flow.