Skip to main content
Ace Data Cloud X402 verwendet derzeit zwei Arten von Modellen: exact und upto. Sie lösen unterschiedliche Abrechnungsprobleme.

exact

exact bedeutet, dass der Preis vor dem Zugriff auf die Ziel-API festgelegt werden kann. Der vom Client signierte Betrag ist der endgültige Abhebungsbetrag. Geeignet für:
  • Festpreis-Bilderzeugung;
  • Festpreis-Videoprojekt-Erstellung;
  • Festpreis-Such- oder Tool-APIs;
  • Bestellzahlungen.
EVM exact verwendet USDC EIP-3009 TransferWithAuthorization:
Der Facilitator überprüft in der Phase /verify die Signatur und den Betrag und reicht in der Phase /settle diese Genehmigung auf der Blockchain ein.

upto

upto bedeutet, dass der Client einen maximalen Betrag genehmigt, und Ace Data Cloud nach Abschluss der Anfrage basierend auf dem tatsächlichen Verbrauch abrechnet, wobei der tatsächliche Abhebungsbetrag den Höchstbetrag nicht überschreiten darf. Geeignet für:
  • Chat-Vervollständigung: Der endgültige Preis hängt von den Prompt-Tokens und Completion-Tokens ab;
  • Streaming-Antworten: Die tatsächliche Ausgabelänge wird erst nach Abschluss bekannt;
  • Zukünftige nachgelagerte Abrechnungs-APIs.
upto verwendet Permit2 PermitWitnessTransferFrom. Der vom Client signierte Betrag ist keine feste Überweisung, sondern eine Genehmigung mit Zeugen für einen Höchstbetrag:
permitted.amount ist der Höchstbetrag, der nicht unbedingt der endgültige Abhebungsbetrag ist. Der Gateway wird in der Phase /record den tatsächlichen Verbrauch in amount umwandeln und an den Facilitator übermitteln. Der Facilitator darf nur amount <= permitted.amount abrechnen. Das Ergebnis der Basis upto-Programm-Ausführung:
Erläuterung:
  • Der in 402 zurückgegebene Genehmigungsobergrenze beträgt 95215 atomic USDC, der Client signiert mit diesem Höchstbetrag.
  • Nach der tatsächlichen Antwort des Modells wird nur 3 atomic USDC abgerechnet, die Blockchain-Transaktion kann auf BaseScan eingesehen werden.
  • Dieses Ergebnis verdeutlicht den entscheidenden Unterschied von upto: Der signierte Betrag ist die Obergrenze, die Blockchain-Abrechnung kann unter der Obergrenze liegen.
  • Wenn der tatsächliche Verbrauch die Obergrenze überschreitet, sollte der Facilitator die Abrechnung ablehnen, und der Client muss eine neue Genehmigung mit einer höheren Obergrenze erteilen.
upto wird derzeit nur auf Base angeboten. SKALE bietet nur exact an. Wenn Sie nachgelagerte Abrechnung benötigen, verwenden Sie bitte Base.

Warum ist Permit2 genehmigen erforderlich

upto wird letztendlich von x402 Proxy über Permit2 aus der Zahlung Brieftasche USDC abrufen. Vor der ersten Verwendung muss die Zahlung Brieftasche Permit2 einmal eine ERC-20 Genehmigung erteilen. Python CLI:
Programmierschnittstelle:
Nach Abschluss der Genehmigung muss bei jeder Anfrage weiterhin ein neues upto-Envelope signiert werden, da nonce, deadline, witness und Höchstbetrag unterschiedlich sind.

Nullbetrag-Abrechnung

upto unterstützt den Fall, dass der tatsächliche Betrag 0 beträgt. Beispielsweise, wenn die Ziel-API keine abrechnungsfähige Menge erfolgreich erzeugt hat, kann der Gateway amount = "0" übermitteln. Der Facilitator wird erfolgreich zurückgeben, aber keine Blockchain-Transaktion durchführen. Dies kann das Problem vermeiden, dass “Anfragen nicht erfolgreich sind, aber dennoch Gebühren auf der Blockchain abgebucht werden”.

Auswahlempfehlungen

Wenn Sie sich nicht sicher sind, welches Sie wählen sollen, verwenden Sie zunächst das Standardverhalten des SDK; das SDK wählt die vom Server zurückgegebene passende Netzwerk-Zahlungsanforderung.

Base upto Prüfcheckliste

Bei der Integration oder Fehlersuche stellen Sie bitte sicher, dass die folgenden Parameter aus derselben 402-Antwort stammen und bei der Client-Signatur konsistent bleiben: Häufige Fehler und deren Behebung: