Como coletar informações adicionais no cadastro de clientes como CPF ou Data de Aniversário?
É possível coletar informações adicionais no cadastro do Shopify, no momento que é utilizado o formulário de registro do cliente.
O formulário sempre iniciará com a tag Liquid {% form 'create_customer'%}
e os seus quatro campos que seguem o padrão Shopify. O resultado será uma Tag registrada no campo Note, exibida quando consultada em Clientes.
Primeiramente, considere que o padrão é de 4 campos:
Nome
Tipo: text
Input: customer[first_name]
Sobrenome
Tipo: text
Input: customer[last_name]
Email
Tipo: text
Input: emailcustomer[email]
Senha
Tipo: password
Input: customer[password]
No exemplo, você pode coletar a informação da data de aniversário de um cliente, se ele possui alguma ou se ele aceita emails promocionais…
Enfim, seja lá qual for a informação, é possivel ser coletada no momento do cadastro do cliente e salvar dentro do campo Note e ter quantas entradas desejar. Tudo será enviado e salvo no campo Note.
O input precisa ter o atributo como:
name="customer[note][INFORMAÇÃO AQUI]"
Considere INFORMAÇÃO AQUI
como o título da Tag e ao mesmo tempo, a informação que você deseja coletar e enviar para o campo Note. Assim, quando algum usuário efetuar seu cadastro, o dado CPF será enviado para o campo Note e você terá esta informação mesmo sem efetivar uma compra.
Já utilizei para um cliente que precisava emitir Nota Fiscal usando o ERP SAP/Hana. O problema para este cliente era que, os clientes compravam pelo site até informavam o CPF no checkout mas as informações não ficam salvas nos dados do cadastro do cliente, que acabava aumentando o processo de manuseio da empresa. Era necessário conferir os dados do pagamento do Cartão de Crédito (isso quando não era com boleto) do cliente para poder emitir uma Nota Fiscal via SAP/Hana.
Tudo foi resolvido quando todo novo cliente passou a informar o CPF no cadastro. Então, apenas validei os dados do campo usando Javascript para habilitar uma máscara do CPF e proibir que o formulário fosse enviado com os dados inválidos ou incorretos.
Então, observe o código abaixo:
Neste exemplo, sendo bem objetivo, não fiz validação do CPF ou CNPJ. Mas é possível (e necessário) usar REGEX ou JS para validar estes campos.
Fonte: https://shopify.dev/themes/customer-engagement/additional-customer-information
https://shopify.dev/themes/architecture/templates/customers-register