If I’m understanding correctly from what you’ve described- you might be best to have a “Steps” table and stamp each step as a record - rather than having steps represented in a column. It takes a little bit of time to get used to pivoting the workflow from columns to rows, but is typically far more flexible, scalable and easier to manage.
The Touchpoint, steps and journey details would each be a select field, and there would be a linked field to a customer table.