I want to know the Latin for the phrase “public business must be done in public”.
A good general word for business is res, so "public business" could well be translated as res publica. But bear in mind that it also means "republic" (which is indeed a public business but in a very specific sense), so there is a risk of misinterpretation. Perhaps something like negotium could also work for "business", but that depends on context. Even in simple things like this, context does matter.
A good translation for "must be done" is agendum est, where est can be dropped and agendum must be declined to match gender and number.
There are a couple of ways to translate "in public". My suggestion is palam, which has translations like "openly, publicly, undisguisedly, plainly". At least to me it gives an idea of openness that goes beyond being technically public. But it is certainly not the only option, as you can see in the other suggestions.
So, my suggestion is:
Res publica palam agenda est.
Coram is a good word to use; it's classy.
cōram, adv. and prep. (Lewis and Short)
I. in the presence of, before the eyes of, in the face of, before.
coram populo, Hor. A. P. 185 "in the presence of the people."
coram judicibus, Suet. Aug. 56 "before the judges"