Because @Becuzz's comment is so very good, I'm turning it into an answer.
Today I received a shocking call from his teacher that he was caught cheating. I'm shocked; this is so not him. ...Should I punish him?
You say, this is so not him. Maybe he didn't cheat then. As Becuzz said, the first thing to do is to get your son's side of the story. Teachers are not perfect; no one is. Though they may give the student the benefit of the doubt, some may not in an iffy situation. Once you've gotten your son's side of what happened, you can decide if the teacher or your son is most likely right. But if this is the first time such an event happened, I would tend to believe your son.
On the other hand, as @Wigwam already said, your son may have hit a wall in his schoolwork. You know your son better than anyone except perhaps his other parent. A student with straight A's may feel a lot of pressure to keep up those grades, even if it takes cheating to do so.
Another possibility was mentioned by @pojo-guy in comments. If your son is highly intelligent, this is not always a blessing when it comes to a work ethic in school. Highly intelligent kids tend to sail through grammar school without needing to study. Once they get to high school, where a different kind of learning needs to occur, they don't have the study skills to fall back on. They hit a wall, and because they may have found praise and self-esteem in good grades, they resort to cheating on a test.
You asked for advice on what to do assuming he cheated. If you suspect he did, then please have a long talk with him. Tell him character is more important than grades, and that you love him for his character - who he is - and not for how he does in school. Tell him effort, even if it doesn't meet with success, is more important in the long run than good grades. Make sure you praise effort, honesty and character, not outcome. Let him feel safe in telling you why he cheated.
If he tells you he did, there are four possible responses:
- just punish him
- just help him overcome a bad work habit
- do both
- do nothing, and hope he doesn't do it again.
If he admits that he has cheated in the past, he needs help in learning to study for himself. Help can come from you sitting with him while he does his homework (and you should always have a good idea of just what his homework is), or perhaps better, a tutor from an advanced grade to help him learn how to study.