Since it's a professional context, you could use fotografieren, as in:
Sie kontaktiert dann einen Fotografen vor Ort, der die Veranstaltung für sie gegen Entgelt fotografiert.
You could also use aufnehmen, as in
Sie kontaktiert dann einen Fotografen vor Ort, der die Veranstaltung für sie gegen Entgelt aufnimmt.
But aufnehmen without a specific context could also relate to recording something, either audio or video, so fotografieren is probably better. A variation of this would be:
Sie kontaktiert dann einen Fotografen vor Ort, der für sie gegen Entgelt Aufnahmen von der Veranstaltung macht.
There's your machen again, and there's nothing wrong with this one I think. If I had to choose one, I'd actually prefer the first one (fotografieren) or the last one (Aufnahmen machen), aufnehmen sounds a bit clumsy to me due to it's ambiguity. And if you're really concerned about the machen, in this context you could also exchange that for anfertigen.