Faits : A. Le 9 avril 2019, A._, ressortissant canadien domicilié en Angleterre, a déposé à Genève une plainte pénale contre inconnu, pour escroquerie, subsidiairement abus de confiance et blanchiment d'argent. Il a indiqué qu'il avait, le 10 juillet 2018, commandé sur le site Internet B._ des billets pour assister à la finale de la coupe du monde de football, en Russie, en cas de victoire de l'Angleterre en demi-finale, pour un prix de 36'800 EUR. Titulaire d'un compte bancaire auprès de Banque C._ à D._, il avait donné ordre à celle-ci de débiter son compte au bénéfice de la société B._, aux Pays-Bas, auprès de la banque E._ aux Pays-Bas. L'Angleterre ayant perdu la demi-finale, une personne du "customer service" de la société B._ avait confirmé à A._ que sa commande serait annulée et la somme de 36'800 EUR restituée après déduction de 10% du montant à titre de frais. Selon l'intéressé, aucun montant ne lui avait pourtant été restitué. Le site Internet de B._ avait disparu et les démarches entreprises par sa banque auprès de la banque E._ en vue d'identifier l'ayant-droit économique du compte bancaire sur lequel le paiement avait été effectué étaient restées vaines. B. Par ordonnance du 23 mai 2019, le Ministère public de la République et canton de Genève a refusé d'entrer en matière sur cette plainte. C. Par arrêt du 9 juillet 2019, la Chambre des recours pénale de la Cour de justice genevoise a rejeté le recours formé par A._ contre cette ordonnance. D. A._ forme un recours en matière pénale au Tribunal fédéral contre l'arrêt du 9 juillet 2019, en concluant, avec suite de frais et dépens, principalement à sa réforme en ce sens que la cause est renvoyée au ministère public en vue de l'ouverture d'une instruction et, subsidiairement, à son annulation et au renvoi de la cause à l'autorité précédente pour nouvelle décision. E. Invités à se déterminer, la cour cantonale s'est référée à l'arrêt du 9 juillet 2019, tandis que le ministère public a conclu au rejet du recours.