I would put a really nice scratching post right next to the sofa. Whenever they pass by the post, you walk over to the post and scratch on it.....they will do the same, I swear. That is how I trained my cats. I scratched on it.....(I have several) and now they do it on their own. I still catch my guys scratching the chairs but for the most part, the stick to the post.

Hope this helps.

Oh, they sell sticky paper/strips to put up where the cats scratch....they don't like it.....other than that.....There may be sprays, but I would be afraid they would stain the sofa!

Keep us posted! Good luck .... it's a tough habit to change once they have started!