Dem Threadersteller ging es um Gutscheine. Gutscheine sind etwas, was man in der Regel bezahlt und dann jemandem schenkt. Das funktioniert meist so, das der Händler den Gutscheinbetrag einem bestimmten Kundenkonto (E-Mail Adresse) gutschreibt. in der Datenbank wird also in dem Kundenkonto der Gutscheinbetrag hinterlegt.
Gibt es kein Kundenkonto so gibt es auch keine Datenbankzeile, in der man das eintragen könnte.
Das man ggf Coupons auch für Gäste freigeben könnte, ist richtig, aber wenn ich zB sage "nur 1x pro Person", es aber keine "Person" mehr in der Datenbank gibt sondern nur jede Menge Bestellungen - dann müsste ich also bei jeder CouponCode Eingabe ALLE bisherigen Bestellungen durchlaufen, ob diese E-Mail Adresse in einer der ORders vorkommt und ob dort bereits genau dieser Coupon Code eingelöst wurde. Ja, kann man wohl so machen. Ob das sinnig ist, sei mal dahingestellt. Ich persönlich halte es für sicherer, beides an Kundenkonten festzumachen. (es sei denn jemand bietet ausschließlich Coupons an, keine Gutscheine, und das in solch rauhen Mengen, das es ihm einfach egal ist, wer da wann was einlöst)