They both can be used, but in everyday talks, it's an that is mostly used (if it can help)
– MaryannahMay 23 at 6:13

@jlliagre: I don't think it would be wise to close such specific questions as duplicates of a generic question that can only be answered with guidelines and rules of thumbs that are usualy hard to interpret.
– Stéphane Gimenez♦May 23 at 7:20

No, that wouldn't be wrong, just less common than ils font, une fois par an, un défilé. Note also that most of the occurrences of ils font, une fois par année are from Québec so the expression might be more mainstream there.
– jlliagreJun 1 at 8:42

In your example, qu'une fois par an is expected, as an is used as a unit of time. It's also possible to use année, denoting an individual period of time, but you'd have to phrase it qu'une fois chaque année (once each year).

Both are correct French; this can be asserted since both expressions are found before a full stop, as can be verified in the ngram. However, "une fois par an" is very common in written material, whereas the usage of "une fois par année", which is far from rare but yet far from being as important, could be due to the greater freedom in the choice of words that is characteristic of writing, and therefore this means that the frequency in the spoken language could be lower still. Nevertheless, both can be used in speaking. Personally, I wouldn't find "année" odd. I would find "une fois l'année" very unusual, even though it is still correct and I wouldn't use this form, keeping to "une fois l'an". Notice from this ngram that "une fois par an" is much more common than "une fois l'an".