Try to repeat the persons name in conversation a few times, just slip in in there.
For instance, if they say their name is Charles, respond with "So Charles, how's your day been so far?".
Not only does it help you remember their name, you're also more personable.
Since I've started consciously doing this, it's helped a lot.
I'm terrible with names. It's entirely possible for me to meet someone and know practically their entire life story, but not remember their name.
It can come off weird to some people, but their name would be forgotten in seconds otherwise, so I've decided it's a worthwhile method.
But in other situations the repartition method has and does work really well too. Also, immediately introducing the new person to someone else works strongly too.
I want to do something similar to this, but haven't really nailed down how it would work ('hi nice to meat you IanCal! Could I, uh... take a photo of you?')
After the initial interaction I can then make any additional notes I think might help in remember relevant information about the person.
I don’t keep any of this info, afterwards I’ll either know their name from repeat interactions and delete it as unneeded, or not need it anyway, and delete it or throw it out.