Ubiquitous Language

Following DDD’s design principles, a ubiquitous language is neccesary for us in order to speak both on the dev side and on the business side of things. This page is focused entirely on the key terms that both the reality of the problem and the system uses and their definitions. A glossary in short.

Guest

A user that doesn’t have its internal KakeiBro user created just yet.

Internal User

A user that’s saved in KakeiBro’s database, it has been hydrated with Google’s info on the user’s email and has a System Token assigned to it.

Grace Period

Used to refer specifically to the time a user will have to log in without needing to re-authenticate with Google. The moment the user logs in through Google OAuth, a new timestamp marking the end of the Grace Period is created.

System Token

A synonym for Google’s OAuth Token, however specifically under the Authentication Domain this will refer to the token that’s encrypted in the database.

OAuth Token

The raw token (without encryption) that comes all the way from Google and then gets saved encrypted. Its usage for now is just nominal, no extra checks or other endpoints will be called with it.

2FA

Two Factor Authentication. The method used for logging in with a timed-code that a user’s device (usually a smartphone) generates. It adds an extra layer of security to an account.

OAuth

The protocol that is used with Google Services in order to authenticate with them and get back a yes or no response for a login attempt. Bookkeeper:: This is the base user that will use the system the most and runs most of the workflows. Adds, edits, deletes data alongside querying it in its various forms.

SysAdmin

This is a super-user that gets access to user management, CRUDs of bookkeepers, reset credentials. Auth Handshake:: This is the term defined to the background process that takes place between the KakeiBro API and Google’s Services to find a corresponding e-mail registered on their side and exchanging information and confirmation of said user.