O caminho das pedras:
- Crie um "objeto" vazio ( json_novo ).
- Faça um loop do json "velho" com uma condição verificando se o valor existe no json_novo. Use uma variavel do json que de para identificar se o produto é repetido, por exemplo "nome_do_produto".
Caso não exista no json_novo, você adiciona um novo item, onde a key é o valor de "nome_do_produto" e seu valor pode ser um objeto contendo o numero de repetições e a quantidade total. Por exemplo: "caderno": {repeticoes: 1, quant_total: 100}
Caso o item já exista no json_novo, você apenas atializa o item no json_novo, alterando (somando) os valores de "repeticoes" e "quant_total"
Caso ainda tenha dúvidas, posta um pedaço do seu json que a gente cria esse código ;)