Lors la Première Restauration, il est fait chevalier de Saint-Louis le , et est mis en disponibilité le septembre suivant. Confirmé dans son grade de maréchal de camp par le roi Louis XVIII le , il prend sous les Cent-Jours le commandement d'une brigade sous les ordres du prince Jérôme Bonaparte. Il participe aux batailles des Quatre Bras et de Waterloo. Il est placé en non activité le , et le , il est nommé lieutenant de roi de classe à Brest, puis à Valenciennes le . Commandant de la place de Metz le , il est remis en activité et maintenu dans son emploi le . Le , il reçoit la croix de commandeur de la Légion d'honneur, et il est nommé commandant du département de la Creuse le . Soye ne peut rejoindre son affectation, et il meurt du choléra le .