New Order from .com billing page results in {"last_name":["can't be blank"]}
### Summary [Customer](https://gitlab.zendesk.com/agent/tickets/176452) (internal link) attempted to purchase a new Bronze SaaS subscription _from within GitLab.com_ group billing page. Upon attempting to complete the order, they received the error: > {"last_name":["can't be blank"]} This prevents the purchase, and resulted in a support ticket. The workaround was for customer to create a customerDot account, and proceed with purchase in the traditional manner. I'm opening this bug on the gitlab-org/customers-gitlab-com project for now because it's not fully clear to me yet where exactly the bug is at, though I suspect it's on the .com side. We can move it as needed. My suspicion that this is a .com bug is based on a few factors: 1. [Quite some time ago](https://gitlab.com/gitlab-org/gitlab/-/issues/13661), gitlab.com began [experimentally](https://gitlab.com/gitlab-org/growth/engineering/-/issues/64) requiring a "Last Name" field for new user registration 1. A [separate MR](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/42346) recently began to "split" legacy names into a first and last name field. If I understand the design in that MR, it *can* cause an empty string for a last name 1. [Kibana log](https://log.gprd.gitlab.net/goto/7e98fff77a38dda1a9a7ed869137d7d2) of the customer hitting `SubscriptionsController#create` via `/-/subscriptions/new` on GitLab.com. There is no associated Sentry errors for customer.gitlab.com that I can locate 1. Prior to the support ticket being created, customer never had a customersDot account, so it's not possible that they would have attempted a purchase from customer portal. However, I'm unfamiliar with the behind-the-scenes code, so it's possible group billing page is calling out to customerDot to process the transaction. To the best of my knowledge, purchases from customersDot do require a `last_name` field. ### Steps to reproduce Presumably using any GitLab.com user without a `last_name` (or a blank one), from any group not currently on a paid tier, navigate to Settings > Billing page, click "Upgrade" under any of the 3 paid tiers. Note, "Upgrade" is displayed regardless if it's a new subscription or an actual upgrade from a lower tier. Proceed normally by filling in details. Purchase fails. ### What is the current *bug* behavior? New purchase workflow from GitLab.com UI results in inability to purchase. ### What is the expected *correct* behavior? A successful transaction ### Workarounds * Use customersDot. * *Possibly* edit GitLab.com user profile `name` field to be two "words", causing the name to split into a first and last name. This was not confirmed * It is currently [not possible](https://gitlab.slack.com/archives/CDLCBGEDV/p1603382908188600?thread_ts=1603381169.185600&cid=CDLCBGEDV) to edit one's profile and manually enter a Last Name, nor is it possible for an admin to enter one. ### Related Issues / Epics 1. [Move SaaS purchasing and account management into GitLab.com](https://gitlab.com/groups/gitlab-org/-/epics/1888) 1. [[UX/Design] Move all SaaS billing from the portal to GitLab.com](https://gitlab.com/gitlab-org/gitlab/-/issues/31849) 1. [New checkout flow improvements](https://gitlab.com/gitlab-org/gitlab/-/issues/247463) 1. [Move New GitLab.com Subscription flows to GitLab.com UI](https://gitlab.com/gitlab-org/customers-gitlab-com/-/issues/1986) 1. [Slack conversation](https://gitlab.slack.com/archives/CDLCBGEDV/p1603381169185600)
issue