La campagne de Syrie commence en février 1799 : il s'agit de devancer une offensive ottomane et, dans l'esprit de Bonaparte, d'ouvrir peut-être une route vers l'Inde. El-Arich et Gaza tombent ; Jaffa, place fortifiée tenue par une garnison turque, refuse de se rendre et fait décapiter les parlementaires envoyés. Elle est prise d'assaut le 7 mars et livrée au pillage pendant deux jours.
Reste le problème des prisonniers : entre deux mille cinq cents et quatre mille hommes, dont une partie avait déjà capitulé à El-Arich en promettant de ne plus servir. L'armée n'a ni vivres, ni escorte, ni moyen de les renvoyer. Les 8, 9 et 10 mars, ils sont conduits par groupes sur la plage et fusillés ou tués à la baïonnette pour économiser les munitions. L'ordre vient de Bonaparte ; il ne l'a jamais nié.
La peste éclate presque aussitôt dans la ville encombrée de cadavres. Le 11 mars, il visite l'hôpital installé dans un couvent et, selon plusieurs témoins, touche ou soulève un malade pour montrer que la contagion n'est pas fatale. Le geste est réel ; sa mise en image est une commande politique, exécutée par Gros en 1804 pour effacer, précisément, le souvenir des exécutions.
Au retour d'Acre, en mai, une seconde accusation surgit : celle d'avoir fait administrer de l'opium aux pestiférés intransportables. Bonaparte a reconnu avoir posé la question au médecin Desgenettes, qui aurait refusé. Historiens et témoignages divergent encore sur l'exécution. Jaffa reste le lieu où la légende et le dossier se contredisent le plus frontalement.