Slaget ved Zama beskrives i detalj i egen artikkel, men det er naturlig å nevne Scipios bidrag til resultatet. Hannibal hadde satt opp sitt infanteri i tre linjer skapt for å overlappe de romerske linjene. Hans strategi var enkel: Et massivt frontalangrep støttet av krigselefantene ville skape sårbare hull i de romerske linjer, og disse ville bli angrepet fra linjer av infanteri og støttet av kavaleri. I stedet for å sette sine romerske styrker i de tradisjonelle manipelene i et rutemønster, med hans tunge elitekavaleri i diagonaler. Dette ble gjort for å svare på lengden i de karthagenske linjene, men også for å demme opp mot elefantene. Da de karthagenske elefantene angrep, ble de møtt av godt plasserte tropper i den romerske posisjonens front, og ved hjelp av trompeter ble mange elefanter drevet i panikk i redsel og forvirring. Romerske spydkastere ble brukt med godt resultat og de skarpe spydene stresset elefantene i den grad at de angrep tilbake inn i sine egne linjer. Men det romerske infanteriet var rystet og det var på dette tidspunktet at Massinissas numidiske og Laelius sitt romerske kavaleri begynte å angripe motstandernes kavaleri på slagmarken. Dette ble gjort med stor suksess, men kanskje litt for ivrig da begge kommandantene forfulgte sine karthagenske motparter. Det etterfølgende sammenstøtet mellom infanteriene var blodig og intenst og ingen av sidene klarte å få overtaket. Slaget ble vunnet da det allierte kavaleriet samlet seg og angrep Hannibals armé i ryggen, noe som førte til det mange historikere har kalt det «romerske Cannae».