If you set up a static mesh with blueprint, there is a checkbox named something like “generate overlap events”.
You’re doing this with the code but should be same thing, I assume you should enable this to get it working.
Collision capsule is a component meant to be used for generating events like touch, overlap etc, so either make the StaticMesh generate overlap events or just add a collision capsule to your code. I’m sure if you try to do this with blueprint it will work, I haven’t tried this with the code yet thou.