Eine x402-Zahlungsoption auswählen, ohne Bedingungen zu vermischen
Anleitungen
Bietet eine Zahlungsaufforderung mehrere akzeptierte Verfahren an, wähle eine vollständige Bedingung, die dein Client versteht. Vermische niemals Felder verschiedener Optionen.
Eine x402-Zahlungsaufforderung beschreibt die geschützte Ressource und enthält ein accepts-Array. Jeder Eintrag darin ist eine vollständige Zahlungsbedingung. Mehrere Einträge sind Alternativen des Servers und keine Auswahl einzelner Felder, aus denen ein Client neue Bedingungen zusammensetzen darf.
Bestätige zuerst, dass die Ressource zur beabsichtigten Anfrage passt. Bewerte danach jede angebotene Bedingung als Einheit: Verfahren, Netzwerk, Betrag, Asset, Empfänger, Zeitlimit und die Felder unter extra. Verwirf eine Option, wenn der Client nicht alle zahlungsrelevanten Felder unterstützt und versteht. Ein bekanntes Asset oder ein niedrigerer Betrag macht eine sonst nicht unterstützte Option nicht sicher autorisierbar.
Übernimm nach der Auswahl dieselbe Zahlungsbedingung in das accepted-Feld der Zahlungsnutzlast und erstelle dafür die verfahrensspezifische Autorisierung. Verwende nicht das Netzwerk aus einem Eintrag, den Betrag aus einem anderen und ersetze auch nicht den genannten Empfänger. Vermischte Felder erzeugen eine Zahlung, die der Server nicht angeboten hat, und entziehen der Prüfung vor der Signatur ihre Grundlage.
Auch der Zahlungsablauf ist relevant. Das Protokoll verlangt, dass Clients Optionen mit einem unbekannten paymentFlow überspringen. Bietet dieselbe Anfrage sowohl einen Autorisierungsablauf als auch einen Ablauf mit Mittelbindung vor der Ressourcenausführung an, empfiehlt die Spezifikation den Autorisierungsablauf. So bleibt die angegebene Reihenfolge von Prüfung, Ausführung und Abwicklung erhalten.
Nutze für die tatsächliche Autorisierung die aktuelle Live-Zahlungsaufforderung. Ein Discovery-Dokument oder Verzeichnis kann zeigen, dass ein Dienst ein Zahlungsverfahren unterstützt, ersetzt aber nicht die Zahlungsbedingungen für die konkrete Anfrage. Ändert sich die gewählte Option oder verschwindet sie, stoppe und rufe eine neue Zahlungsaufforderung ab, statt gespeicherte Bedingungen zu signieren.
Bewahre die genaue Anfrage, die ausgewählte Bedingung, die signierte Nutzlast und die Zahlungsantwort zusammen auf. Diese Belege zeigen, welche Alternative der Client gewählt und was die Zahlungsschicht gemeldet hat. API-Ergebnis und Lieferung bleiben getrennte Belege und dürfen nicht aus der bloßen Existenz einer akzeptierten Zahlungsoption abgeleitet werden.