As far as I know, the best way to name polyatomic ions is to learn them from a table
. There are however a few rules that can be useful:
Oxyanions containing elements such as S,P,As,N,B,Se,Te,C when at their most oxidised state, have the suffix -ate eg SO4 2- sulfate, AsO4 3- Arsenate, NO3- Nitrate etc.
When they are in a lower oxidation state they often have the suffix -ite eg SO3 2- Sulfite, NO2- Nitrite, AsO3 3- Arsenite
If the ion is partially protonated it has the prefix bi- eg HSO4- Bisulfate and HCO3 2- bicarbonate