Use uma Checkout UI Extension quando é preciso mostrar ou coletar informação na interface. Use uma Function de pagamento ou entrega para ordenar, ocultar ou renomear opções. Use uma Function de validação quando a regra precisa impedir o avanço até que critérios sejam atendidos. A escolha também depende de plano, target, dados, permissões, app e homologação.
Comece pelo efeito, não pelo nome da tecnologia
A mesma solicitação comercial pode esconder necessidades diferentes. Um aviso de elegibilidade, por exemplo, pode pedir uma interface; uma regra para esconder um meio de pagamento pode pedir uma personalização de pagamento; uma condição que não pode ser contornada pode pedir validação. Descrever o resultado observável, o momento do fluxo e a consequência de não atender à condição torna a decisão rastreável. Isso também evita chamar toda customização de checkout de “Function” ou toda mensagem de “validação”, termos que não bastam para definir o recurso adequado.
Quando a interface é parte da solução
Checkout UI Extensions adicionam interface e lógica dentro de targets definidos pela Shopify. Elas são apropriadas para orientar, exibir contexto, captar informações ou aplicar alterações permitidas no checkout. A disponibilidade varia por target e configuração, e os passos de informações, frete e pagamento têm requisito de Shopify Plus segundo a documentação atual. Como a extensão opera em ambiente isolado, o escopo deve ser pensado a partir das APIs e componentes oferecidos, não como uma alteração livre da página. Dados protegidos e acessos externos exigem revisão específica de permissões e capacidades.
Quando transformar pagamento ou entrega
Functions de personalização tratam opções que já estão disponíveis no checkout. A API de pagamento permite operações como ordenar, renomear e ocultar métodos, além de recursos documentados de termos e revisão em contextos aplicáveis. A de entrega permite renomear, ordenar e ocultar opções de entrega. Elas não significam que qualquer método, gateway, país ou combinação de carrinho poderá ser alterado. Restrições geográficas e de plano, superfícies suportadas, regras de nomenclatura e informações efetivamente presentes na entrada precisam ser verificadas durante o discovery e a homologação.
Quando uma validação precisa bloquear
Uma Function de validação é indicada quando a regra de negócio deve impedir que a compra avance ou seja concluída até que a condição seja atendida. Ela é diferente de uma extensão que apenas informa algo ao comprador e diferente de uma Function que transforma a lista de opções. O briefing deve registrar condição, dados necessários, texto da mensagem, responsável pela regra e caminho quando o dado estiver ausente. A implementação também precisa testar carrinhos de loja online, checkout e demais superfícies documentadas para o recurso, sem assumir cobertura universal.
Fontes
Conteúdo revisado pela Buda Digital em .