Eine Zahlung akzeptieren
Der Ablauf
Abschnitt betitelt „Der Ablauf“- Der Kunde klickt auf Bezahlen; Sie öffnen den Checkout.
- Das SDK erstellt die Zahlung und zeigt die verfügbaren Chains und Token an.
- Der Kunde verbindet eine Wallet und wechselt zur richtigen Chain.
- Das SDK prüft das Guthaben, bevor es das Absenden zulässt.
- Der Kunde signiert;
onSuccesswird ausgelöst. - Ihr Server bestätigt die Zahlung und führt die Bestellung aus.
Die Schritte 2 bis 5 übernimmt das SDK. Schritt 6 ist Ihre Aufgabe, und genau dieser Schritt wird übersprungen.
Warum Schritt 6 nicht optional ist
Abschnitt betitelt „Warum Schritt 6 nicht optional ist“onSuccess bedeutet, dass die Wallet die Transaktion akzeptiert und gesendet
hat. Es bedeutet nicht, dass das Geld angekommen ist. Die Transaktion kann
fehlschlagen, durch eine mit höherer Gebühr ersetzt oder aus dem Mempool
verworfen werden.
Außerdem läuft es clientseitig und kann daher von jedem ausgelöst werden, der auf Ihrer Checkout-Seite die Browser-Konsole öffnen kann. Eine Ausführung, über die im Browser entschieden wird, ist eine Ausführung, die jeder anfordern kann.
onSuccess={(paymentId, txHash) => { // Right: hand it to your server and let the server decide. fetch('/api/orders/awaiting-confirmation', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ paymentId, txHash }), });
// Wrong: fulfilling here trusts the browser. // grantAccess();}}Bestätigen Sie anschließend serverseitig, entweder per Webhook oder indem Sie den Status mit Ihrem Key abrufen.
Guthabenprüfungen
Abschnitt betitelt „Guthabenprüfungen“Das SDK prüft vor dem Absenden, ob der Kunde genug vom Token und genug native Währung für Gas hat. So wird der häufigste Fehler, USDC zu haben, aber kein ETH für Gas, abgefangen, bevor eine Transaktion versucht wird, statt erst nachdem sie revertiert.
Beträge, die nicht übereinstimmen
Abschnitt betitelt „Beträge, die nicht übereinstimmen“Ein Kunde kann mehr oder weniger als den Rechnungsbetrag senden. Beides macht die Zahlung nicht kaputt, und für beides gibt es eine festgelegte Behandlung: siehe Überzahlungen und Rückerstattungen.
