New Customer-Account Setup #322

Open
opened 2026-06-29 08:37:46 +00:00 by rob · 0 comments
Owner

We have a partial implementation of new-customer setup, but it's not complete. We should, at some point, finish it, if we can figure out how. This issue is beginning as just a place to keep notes on what we have, and what we'll likely need.

Initial Setup

Currently, the first step is to get a valid record into metapms.CustomerAccount for the new customer, and initialize their database in MySQL. There's a CLI script (what could be revised, or replaced) that takes a bunch of arguments and inserts a record. It's defined like so:

bin/pms3 customer create <custId> <customerEmail> <customerFullname> <customerUsername> <customerPassword> <customerInitials>

Here's an example usage:

bin/pms3 customer create timdev tim@timdev.com 'Tim Lieberman' tim mysecret THL

For some reason, the CLI script interactively asks you to type in a bunch of the stuff that was already passed via the command-line args. We should probably make it just use the arguments it's passed, and be non-interactive.

That will create a database, initialize the schema (and adds a few default Locations), and insert a CustomerAccount record for them. At that point, https://timdev.estack.com/ will work.

The CustomerAccount begins with setupStep: store. On first login, you reach the setup wizard. This walks the user through:

  • Adding basic Company Info
  • Adding their main shipping address
  • Choosing a printer type (thermal or laser)
  • Setting up their locale settings (timezone, currency, language)

Once they finish the locale screen, it just stops. They're not done -- we need to figure out what else needs to happen here. Off the top of my head:

  • Ensure ModuleConfiguration entities are inserted. This could be more wizard steps, or maybe just some sensible defaults for now.
  • Probably not much else, though we'll want to guide them to "next steps" like setting up channel integrations (which also needs a fresh look or overhaul to some degree).
We have a partial implementation of new-customer setup, but it's not complete. We should, at some point, finish it, if we can figure out how. This issue is beginning as just a place to keep notes on what we have, and what we'll likely need. ## Initial Setup Currently, the first step is to get a valid record into `metapms.CustomerAccount` for the new customer, and initialize their database in MySQL. There's a CLI script (what could be revised, or replaced) that takes a bunch of arguments and inserts a record. It's defined like so: ```bash bin/pms3 customer create <custId> <customerEmail> <customerFullname> <customerUsername> <customerPassword> <customerInitials> ``` Here's an example usage: ```bash bin/pms3 customer create timdev tim@timdev.com 'Tim Lieberman' tim mysecret THL ``` For some reason, the CLI script interactively asks you to type in a bunch of the stuff that was already passed via the command-line args. We should probably make it just use the arguments it's passed, and be non-interactive. That will create a database, initialize the schema (and adds a few default Locations), and insert a `CustomerAccount` record for them. At that point, https://timdev.estack.com/ will work. The `CustomerAccount` begins with `setupStep: store`. On first login, you reach the setup wizard. This walks the user through: * Adding basic Company Info * Adding their main shipping address * Choosing a printer type (thermal or laser) * Setting up their locale settings (timezone, currency, language) Once they finish the locale screen, it just stops. They're not *done* -- we need to figure out what else needs to happen here. Off the top of my head: * Ensure ModuleConfiguration entities are inserted. This could be more wizard steps, or maybe just some sensible defaults for now. * Probably not much else, though we'll want to guide them to "next steps" like setting up channel integrations (which also needs a fresh look or overhaul to some degree).
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: rob/pms3#322