External:
Internal:
Parked Cars:
LicensePlate (PK)
Time (DateTime)
Rates:
ID (FK from Place, PK)
Rate (Float)
Places:
PlaceID (PK)
User selects type if there is type
Client side sends information to calculate price
Once third Part App goes through succesfully, we would update parked Cars
/getPrice -> Send info to clientside to show price
/pay -> User attempts to pay
/sendPayment -> Attempt to pay through third party
Serverside would calculate price and send to clientside
Clientside pays
Serverside pay through internal endpoint using third party
Once third party payment app is succesful, we update ParkedCars's time to be (currentTime+paid_hours)
Explain any trade offs you have made and why you made certain tech choices...
Failure in third party -> Retry
What are some future improvements you would make? How would you mitigate the failure scenario(s) you described above?