Sim, 0 é violação na API Pix e é rejeitado. Não sei se a Efí suporta, mas é possível você criar um QR-Code dinâmico com modalidadeAlteracao = 1 . Aí apesar de você colocar valor de 1 centavo, que é o menor valor possível de transações em Real de qualquer forma, mas o pagador pode alterar.