É disparada pelo usuário no momento em que realiza a leitura do código de barras, ele utiliza um leitor que "pressiona o enter automaticamente" ao finalizar a leitura, comportamento comum que você consegue configurar entre leitores.

Mas não estou culpando nem o usuário e nem o frontend, gostaria de implementar a melhor maneira diretamente no backend para entender a melhor tratativa e poder replicar esse comportamento no futuro para outras aplicações e funcionalidades :)