Finanzierungs-Wallet
Funding Wallet: Agent Java SDK v0.3.0-Integration, Beispiele, Parameter und Antwortsemantik.
Dieser Leitfaden richtet sich an Agent Java SDK v0.3.0, Java 8+ und den getaggten öffentlichen Auftrag. Beispiele werden nach der Initialisierung von client in einem Partner-Backend ausgeführt Schnellstart.
Beispielvoraussetzungen
Die Java-Snippets teilen diese Importe. Initialisieren Sie client mit Quick Start und rufen Sie platformUserId aus der gespeicherten Bindung ab. Beispiel-Benutzer-/Bestell-IDs müssen durch Ihre eigenen persistenten Werte ersetzt werden.
Wallet-Abfragen und Überweisungen
Unterscheiden Sie die drei Geldbörsen
queryAccount Fragen Sie das Margin-Konto der Händlerplattform ab, nicht die Wallet des Händlerbenutzers. Diese Schnittstelle verfügt nicht über environment-Parameter und kann nicht als simuliertes Benutzer-Asset abgefragt werden.
Fragen Sie die beiden Plattform-Wallets simulierter Benutzer ab:
Schnittstelle: POST /v1/agent/query-user-assets. Eine Finanzierung wird nur beantragt, wenn includeFunding=true; Standardmäßig wird die ursprüngliche Abfragesemantik für Vertragsvermögenswerte verwendet.
Beträge werden als Zeichenfolgen oder BigDecimal behandelt, nicht als float/double.
Anweisungen zur Finanzierungsübertragung
Erstellen: POST /v1/agent/wallet-transfer, SDK walletTransfer.
Die aktuelle Währung unterstützt nur USDT. Der feste Betrag muss eine positive Zeichenfolge mit bis zu 8 Dezimalstellen sein und darf nicht in wissenschaftlicher Schreibweise angegeben werden. Wenn transferAll=true, lassen Sie amount weg und notieren Sie es als endgültige Antwort amount; „Alle“ umfasst nur die auszahlbaren Gelder.
Beispiel: Händler überweist 10 USDT an eine simulierte Finanzierung. Speichern Sie zunächst den Geschäftsauftrag und die Umgebung im Händlersystem und senden Sie dann die Anfrage:
Finanzierung Übertragen Sie alle Gelder, die auf den simulierten Vertrag übertragen werden können:
Derselbe Vorgang muss weiterhin das Original agentOrderNo verwenden. Unterschiedliche Vorgänge und unterschiedliche Umgebungen verwenden unterschiedliche Bestellnummern. Änderungen der Menge, des Benutzers, der Richtung oder der Umgebung mit derselben Bestellnummer werden abgelehnt. Finanzierungs-/Vertragsübertragungen können nur innerhalb derselben Umgebung durchgeführt werden und simulierte Gelder können nicht in echte Gelder übertragen werden.
Ergebnisbestätigung und Wiederherstellung unbekannter Ergebnisse
Finanzierungsantworten werden durch status, SUCCESS, PROCESSING oder FAILED dargestellt und als orderNo, direction, currency zurückgegeben. amount, resultCode usw. code=0 bedeutet nur, dass die Anfrage erfolgreich bearbeitet wurde und Sie weiterhin status beurteilen müssen.
Die Finanzierungsabfrage verwendet die dedizierte Schnittstelle POST /v1/agent/wallet-transfer-status:
Verwenden Sie diesen dedizierten Endpunkt, um den ursprünglichen Finanzierungsvorgang wiederherzustellen. queryOrder kann es nicht ersetzen. Speichern Sie die ursprüngliche Umgebung und übergeben Sie sie bei der Wiederherstellung explizit. Wenn environment in wallet-transfer-status weggelassen wird, verwendet der Server die in der ursprünglichen Bestellung gespeicherte Umgebung, einschließlich simulierter Bestellungen. Eine explizit widersprüchliche Umgebung gibt 102002 (order environment mismatch zurück. Wenn der Aufrufer die Umgebung weglässt, wird in der Antwort auch environment weggelassen; Dies bedeutet nicht, dass es sich bei dem ursprünglichen Auftrag um einen Produktionsauftrag handelt.
Die lokalen Ein- und Auszahlungen der Händler sind idempotent; Permanente Aufträge und Salden werden vor der Initiierung reserviert und zur Bestätigung reserviert, wenn das Ergebnis unbekannt ist. Der Finanzierungszugriff verwendet eine spezielle Abfrage, um den endgültigen Status zu bestätigen. Gehen Sie nicht davon aus, dass alte Vertragsübertragungsmethoden Webhook oder Stornierungsmethoden automatisch auf die Finanzierung anwendbar sind.
Vorhandener Vertragsübertragungsablauf
Die ursprünglichen transfer, transferAllOut, reverse, queryOrder, listOrders verarbeiten weiterhin den ursprünglichen Vertragsübertragungsprozess. queryOrder fragt Geldtransferaufträge ab, listOrders ist eine Transferabgleichsliste; stattdessen, Ständige Abfragen werden für unbefristete Handelsaufträge verwendet.
Die ursprüngliche Finanzierungsantwort verwendet orderStatus; In der Finanzierungsantwort wird status verwendet. Mischen Sie diese nicht. Die ursprüngliche Übertragung Webhook wird mit X-Agent-Timestamp, X-Agent-Nonce, X-Agent-Signature überprüft, und der ursprüngliche Signaturtext ist timestamp + nonce + rawBody; Der ursprüngliche Anfragetext wird zunächst überprüft, dann deserialisiert und idempotent. Explizite simulierte Umgebungsbenachrichtigungen enthalten environment=SIMULATED, Produktionsbenachrichtigungen bleiben mit alten Feldern kompatibel. Menge, Bestellnummer, Status und Umgebung müssen mit der örtlichen Geschäftsbestellung abgeklärt werden.