Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Goals

...

Goal

The purpose of Guest Checkout is to allow guests to place an order by providing some basic information in addition to the payment, without the need to register or login.

Designs

Figma: Burger King

Challenges

Overall Complexity

How to save these customers in the database and how to handle the case when such customers return again for an additional purchase.

  1. Lots of services rely on user data, therefore there is a high level of dependency if we decided to store user information in User entries (record = sk= v0_User in monotable) - we’d have to figure out how other services can consume guest data

    1. Eventually, based on the 2023-08-24 Guest checkout PoC works we went with the approach of not creating the User entity in the Cognito and DB. All Guest data will be stored in the Order DB entry.

  2. Database does not allow for adding multiple users with the same e-mail address

    1. (it’s not a problem anymore since we don’t store the guest data within the user entries in monotable)

  3. We need to create functionalities that are usable for all markets and due to architectural differences per market (transition from whitelabel-gql to fulfillment-service, currently DE uses whitelabel-gql but will have to transition to fulfillment-service eventually) , this posed a need for code duality since the code needs to be created in both places.

...