Ajax said the 24-year-old "mistakenly" took the banned diuretic Furosemide in October to deal with an illness. The substance, which is often used as a masking agent to hide other drugs, subsequently appeared in his urine during an out-of-competition check.
An investigation by UEFA's disciplinary body determined Onana had no intention of cheating, but the appeals body, which has the final say on urgent cases, imposed the year-long ban. Anti-doping rules state an athlete has a duty to know what substances enter their body.
Ajax will appeal the decision in the Court of Arbitration for Sport.
"We explicitly renounce performance-enhancing drugs, we obviously stand for a clean sport," Ajax managing director Edwin van der Sar said in a statement. "This is a terrible setback, for Andre himself but certainly also for us as a club.
"Andre is a top goalkeeper, who has proven his worth for Ajax for years and is very popular with the fans. We had hoped for a conditional suspension or for a suspension much shorter than these 12 months, because it was arguably not intended to strengthen his body and thus improve his performance."
Onana said he mistook his wife's medicine for aspirin because the "packaging was almost identical."
Van der Sar described the drug Onana ingested as a "weight-loss product" that "helps to deal with water retention after pregnancy."
Onana has played 142 matches for Ajax since 2015 and been previously linked with moves to Manchester United and Barcelona.
Earlier in the week, Ajax accidentally omitted club-record signing Sebastien Haller from their Europa League roster. The club admitted it was an administrative error.