Ich entwickle ein Online-Ticketsystem für Veranstaltungen (wie Konzerte). Ein Basisteil ist eine Seat Chart, wo den Besuchern die verfügbaren Plätze/Tickets zur Auswahl angeboten werden. Sobald sie eine Auswahl treffen, versucht das System sofort, die Tickets für 10 Minuten zu reservieren (indem die Ticket-IDs in eine Tabelle eingegeben werden, in der die Ticket-ID der Schlüssel ist). Nur wenn die Reservierung erfolgreich war, wird eine Paypal-Taste angezeigt, um die Zahlung vorzunehmen.Online-Ticket-Buchung mit PayPal: Verhindern, dass mehrere Besucher dasselbe Ticket kaufen
All dies funktioniert gut. Ticket Reservierung ist kein Problem für mich. Ich kann das in meinem System handhaben. Aber sobald Paypal ins Spiel kommt, wird es schwierig. Das Problem: Wenn der Benutzer aus irgendeinem Grund viel Zeit in Paypal verbringt (mehr als 10 Minuten), verfällt die Ticketreservierung auf meiner Website, so dass die Tickets von einem anderen Besucher gekauft werden können, was passieren könnte bevor Besucher 1 die Zahlung leistet. Besucher 1 sieht nichts davon, weil er immer noch in Paypal ist ... Irgendwann wird er es schaffen, die Zahlung zu leisten (zB nach 15 Minuten), was perfekt funktionieren wird, da paypal nichts über abgelaufene Reservierungen weiß .
Am Ende könnte ich zwei Besucher haben für den gleichen Ticket/Sitzplatz bezahlt haben!
Wie kann ich das verhindern? Wie gehen Sie mit den Rennbedingungen um, wenn zwei Systeme involviert sind und eines davon außer Kontrolle ist?
Mein Denken war: Eigentlich sollte ein Scheck gemacht werden, bevor die Zahlung stattfindet, aber natürlich habe ich keine Kontrolle darüber, was in Paypal passiert!
Ich weiß, dass ich Paypal's IPN und so verwenden kann, aber dies geschieht nur NACH Zahlung, die zu spät ist.
Alternativ wäre es toll, wenn paypal mich über API gebeten hat, eine Zahlung zu bestätigen. Dann könnte ich "Nein" sagen, falls die Tickets an jemand anderen verkauft wurden. Aber ich denke nicht, dass dies mit Paypal möglich ist.
danke. Express Checkout hört sich gut an und ich werde das untersuchen. Über den zweiten Teil: Ist das eine Besonderheit von Paypal? Ich habe gesucht und nicht wirklich etwas über "Autorisierung" gefunden. – user1595494
Nein, Autorisierungen sind in der Kreditkartenindustrie üblich. Diese Seite gibt einen guten Überblick über die verschiedenen Zahlungsarten, die Express Checkout anbietet: https://www.x.com/developers/paypal/documentation-tools/express-checkout/integration-guide/ECRelatedAPIOps –