Skip to content

Remove or disable email input when email is passed in the checkout.create method #966

Open
@razanor

Description

@razanor

Feature details

Currently, the email passed to the checkout.create method can be modified on the checkout page. Is it possible to remove or disable that input if an email is already passed?

A bit more context about our use case

We are using the customerAccessTokenCreateWithMultipass to retrieve an accessToken. This mutation also has a side-effect of creating a new customer if they do not exist. With that access token, we use the following query to retrieve customer orders:

query getcustomerOrders($customerAccessToken: String!) {
  customer(customerAccessToken: $customerAccessToken) {
    orders(first:100) {
    ...}
    ...}
...}

Basically, with this approach, we ensure that a signed-in user on our platform has a corresponding unique account in Shopify, and their orders are synced.

We are passing the user's email to the checkout.create method, and technically, that user could change the email in that input field. This action creates a brand new customer in Shopify and attaches their order to that account, resulting in a broken experience.

I understand that there are fields in the checkout that are required and can't be disabled, however I would expect if you passed the required field that your system rely on, it remains immutable.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions