> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.6mm.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.6mm.com/_mcp/server.

# Πορτοφόλι χρηματοδότησης

Αυτός ο οδηγός στοχεύει **Agent Java SDK `v0.3.0`**, Java 8+ και τη δημόσια σύμβαση με ετικέτα. Τα παραδείγματα εκτελούνται σε ένα backend συνεργάτη μετά την προετοιμασία του `client` στο [Γρήγορη εκκίνηση](/el/sdk/agent-sdk/java/quick-start).

## Παράδειγμα προαπαιτούμενα

Τα αποσπάσματα Java μοιράζονται αυτές τις εισαγωγές. Αρχικοποιήστε το `client` χρησιμοποιώντας Γρήγορη εκκίνηση και αποκτήστε `platformUserId` από την αποθηκευμένη δέσμευση. Παραδείγματα αναγνωριστικών χρήστη/παραγγελιών πρέπει να αντικατασταθούν με τις δικές σας σταθερές τιμές.

```java
import com.sixmm.agent.*;
import com.sixmm.agent.model.*;
import java.util.*;
```

## Ερωτήματα και μεταφορές πορτοφολιού

### Ξεχωρίστε τα τρία πορτοφόλια

| πορτοφόλι                       | Πηγή υπολοίπου                                                 | χρήση                                                                               |
| ------------------------------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
| Το πορτοφόλι χρήστη του εμπόρου | Το λογιστικό σύστημα του ίδιου του εμπόρου                     | Το διαθέσιμο υπόλοιπο του χρήστη από την πλευρά του εμπόρου                         |
| Χρηματοδότηση πλατφόρμας        | `queryUserAssets` από `funding`                                | Δευτερόλεπτα διαπραγμάτευση κεφαλαίων και αμοιβαία μεταφορά χρηματοδότησης/Σύμβασης |
| Συμβόλαιο πλατφόρμας            | Το πεδίο περιουσιακών στοιχείων της σύμβασης `queryUserAssets` | Περιθώριο αορίστου συμβολαίου και μεταβιβάσιμο υπόλοιπο                             |

`queryAccount` Υποβάλετε ερώτημα στον λογαριασμό περιθωρίου της πλατφόρμας εμπόρου και όχι στο πορτοφόλι χρήστη του εμπόρου. Αυτή η διεπαφή δεν έχει παραμέτρους `environment` και δεν μπορεί να αναζητηθεί ως προσομοιωμένο στοιχείο χρήστη.

Ρωτήστε τα δύο πορτοφόλια πλατφόρμας των προσομοιωμένων χρηστών:

```java
QueryUserAssetsResponse assets = client.queryUserAssets(
        QueryUserAssetsRequest.of(platformUserId)
                .withFunding()
                .withEnvironment(ExecutionEnvironment.SIMULATED));
```

Διεπαφή: `POST /v1/agent/query-user-assets`. Η χρηματοδότηση ζητείται μόνο όταν `includeFunding=true`; Η σημασιολογία ερωτήματος περιουσιακών στοιχείων του αρχικού συμβολαίου χρησιμοποιούνται από προεπιλογή.

| πεδία απόκρισης                                                                     | έννοια                                                                                                                                           |
| ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| `walletBalance`, `availableBalance`, `frozenMargin`, `usedMargin`, `isolatedMargin` | Ποσά που σχετίζονται με το πορτοφόλι συμβολαίου                                                                                                  |
| `funding.assetCode`                                                                 | Επί του παρόντος USDT                                                                                                                            |
| `funding.availableAmount`, `heldAmount`, `totalAmount`                              | Διαθέσιμη χρηματοδότηση, κατειλημμένο και συνολικό ποσό                                                                                          |
| `funding.materialized`                                                              | Εάν ο λογαριασμός Χρηματοδότησης έχει υλοποιηθεί;                                                                                                |
| `environment`                                                                       | Αυτό το πεδίο επαναλαμβάνεται όταν το περιβάλλον μεταβιβάζεται ρητά. παλιά αιτήματα που παραλείπουν το περιβάλλον δεν επιστρέφουν αυτό το πεδίο. |
| `isSimulatedUser`                                                                   | Ταξινόμηση λογαριασμού; δεν μπορεί να αντικαταστήσει την επιλογή περιβάλλοντος συναλλαγών                                                        |

Τα ποσά αντιμετωπίζονται ως συμβολοσειρές ή `BigDecimal`, όχι `float`/`double`.

### Οδηγίες μεταφοράς χρηματοδότησης

Δημιουργία: `POST /v1/agent/wallet-transfer`, SDK `walletTransfer`.

| `direction`           | Ροή κεφαλαίων                                           | `transferAll`                                          |
| --------------------- | ------------------------------------------------------- | ------------------------------------------------------ |
| `PARTNER_TO_FUNDING`  | Έμπορος → Χρηματοδότηση πλατφόρμας                      | Μόνο σταθερό ποσό                                      |
| `FUNDING_TO_PARTNER`  | Χρηματοδότηση πλατφόρμας → Έμπορος                      | Μόνο σταθερό ποσό                                      |
| `FUNDING_TO_CONTRACT` | Πλατφόρμα ίδιου περιβάλλοντος Χρηματοδότηση → Συμβόλαιο | Υποστηρίζει σταθερό ποσό ή όλα τα αναληφθέντα κεφάλαια |
| `CONTRACT_TO_FUNDING` | Πλατφόρμα ίδιου περιβάλλοντος Συμβόλαιο → Χρηματοδότηση | Υποστηρίζει σταθερό ποσό ή όλα τα αναληφθέντα κεφάλαια |

Το τρέχον νόμισμα υποστηρίζει μόνο USDT. Το σταθερό ποσό πρέπει να είναι θετική συμβολοσειρά με έως και 8 δεκαδικά ψηφία και δεν μπορεί να χρησιμοποιήσει επιστημονική σημείωση. Όταν `transferAll=true`, παραλείψτε το `amount` και καταγράψτε το ως την τελική απόκριση `amount`. Το "όλα" περιλαμβάνει μόνο τα αποσυρόμενα κεφάλαια.

Παράδειγμα: Ο έμπορος μεταφέρει 10 USDT σε προσομοίωση χρηματοδότησης. Πρώτα αποθηκεύστε την επιχειρηματική παραγγελία και το περιβάλλον στο σύστημα εμπόρων και, στη συνέχεια, στείλτε το αίτημα:

```java
String fundingOrderNo = "SIM-FUNDING-20261010-000001";
WalletTransferResponse transfer = client.walletTransfer(
        WalletTransferRequest.of(fundingOrderNo, "merchant-user-001",
                "PARTNER_TO_FUNDING", "10.00000000", false)
                .withEnvironment(ExecutionEnvironment.SIMULATED));
```

Μεταφορά χρηματοδότησης όλων των κεφαλαίων που μπορούν να μεταφερθούν στην προσομοιωμένη σύμβαση:

```java
WalletTransferResponse move = client.walletTransfer(
        WalletTransferRequest.of("SIM-F2C-20261010-000001", "merchant-user-001",
                "FUNDING_TO_CONTRACT", null, true)
                .withEnvironment(ExecutionEnvironment.SIMULATED));
```

Η ίδια λειτουργία πρέπει να συνεχίσει να χρησιμοποιεί το αρχικό `agentOrderNo`. διαφορετικές λειτουργίες και διαφορετικά περιβάλλοντα χρησιμοποιούν διαφορετικούς αριθμούς παραγγελίας. Η αλλαγή του ποσού, του χρήστη, της κατεύθυνσης ή του περιβάλλοντος με τον ίδιο αριθμό παραγγελίας θα απορριφθεί. Οι μεταφορές χρηματοδότησης/συμβολαίου μπορούν να πραγματοποιηθούν μόνο εντός του ίδιου περιβάλλοντος και τα προσομοιωμένα κεφάλαια δεν μπορούν να μεταφερθούν σε πραγματικά κεφάλαια.

### Επιβεβαίωση αποτελέσματος και ανάκτηση άγνωστου αποτελέσματος

Οι απαντήσεις χρηματοδότησης αντιπροσωπεύονται από `status`, `SUCCESS`, `PROCESSING`, ή `FAILED`, και επιστρέφονται `orderNo`, `direction`, `currency`, `amount`, `resultCode`κ.λπ. `code=0` σημαίνει μόνο ότι το αίτημα διεκπεραιώθηκε με επιτυχία και πρέπει να συνεχίσετε να κρίνετε `status`.

| αποτέλεσμα                                                                     | Επεξεργασία εμπόρου                                                                                                                                                             |
| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `SUCCESS`                                                                      | Ολοκληρώστε την τοπική λογιστική επεξεργασία με βάση το πραγματικό ποσό                                                                                                         |
| `PROCESSING`                                                                   | Διατηρήστε το τοπικό για επιβεβαίωση και ελέγξτε την αρχική παραγγελία                                                                                                          |
| HTTP Λήξη χρονικού ορίου, σφάλμα δικτύου, το αποτέλεσμα δεν μπορεί να αναλυθεί | Το αποτέλεσμα θεωρείται άγνωστο και ερωτάται η αρχική παραγγελία. δεν μπορεί να προσδιοριστεί άμεσα ως αποτυχία ή να δημιουργήσετε μια νέα παραγγελία και να προσπαθήσετε ξανά. |
| Αναγνωρίστηκε `FAILED`                                                         | Απελευθερώστε την τοπική κράτηση σύμφωνα με το σαφές αποτέλεσμα αποτυχίας. δημιουργήστε μια νέα επιχειρηματική παραγγελία όταν η επιχείρηση πρέπει να ξεκινήσει ξανά            |

Το ερώτημα χρηματοδότησης χρησιμοποιεί την αποκλειστική διεπαφή `POST /v1/agent/wallet-transfer-status`:

```java
WalletTransferResponse recovered = client.queryWalletTransfer(
        WalletTransferQueryRequest.of(fundingOrderNo)
                .withEnvironment(ExecutionEnvironment.SIMULATED));
```

Χρησιμοποιήστε αυτό το αποκλειστικό τελικό σημείο για να ανακτήσετε την αρχική λειτουργία χρηματοδότησης. Το `queryOrder` δεν μπορεί να το αντικαταστήσει. Αποθηκεύστε το αρχικό περιβάλλον και περάστε το ρητά κατά την ανάκτηση. Εάν το `environment` παραλειφθεί από το `wallet-transfer-status`, ο διακομιστής χρησιμοποιεί το περιβάλλον που είναι αποθηκευμένο στην αρχική παραγγελία, συμπεριλαμβανομένων των προσομοιωμένων παραγγελιών. Ένα περιβάλλον ρητά σε διένεξη επιστρέφει `102002` (`order environment mismatch`). Όταν ο καλών παραλείπει το περιβάλλον, η απόκριση παραλείπει επίσης το `environment`. Αυτό δεν σημαίνει ότι η αρχική παραγγελία είναι παραγγελία παραγωγής.

Οι τοπικές καταθέσεις και αναλήψεις των εμπόρων είναι ανίκανες. Οι επίμονες παραγγελίες και τα υπόλοιπα δεσμεύονται πριν από την έναρξη και δεσμεύονται για επιβεβαίωση όταν το αποτέλεσμα είναι άγνωστο. Η πρόσβαση χρηματοδότησης χρησιμοποιεί ένα αποκλειστικό ερώτημα για να επιβεβαιώσει την τελική κατάσταση. μην υποθέσετε ότι οι μέθοδοι μεταβίβασης της παλιάς σύμβασης Webhook ή αντιστροφής ισχύουν αυτόματα για τη Χρηματοδότηση.

### Υφιστάμενη ροή μεταβίβασης συμβολαίου

Οι αρχικοί `transfer`, `transferAllOut`, `reverse`, `queryOrder`, `listOrders` συνεχίζουν να επεξεργάζονται την αρχική διαδικασία μεταφοράς συμβολαίου. Το `queryOrder` ζητά εντολές μεταφοράς κεφαλαίων, το `listOrders` είναι μια λίστα συμφωνίας μεταφοράς. αντί, [Διαρκή ερωτήματα](/el/sdk/agent-sdk/java/perpetual-queries) χρησιμοποιούνται για εντολές διαρκούς διαπραγμάτευσης.

Η αρχική απάντηση χρηματοδότησης χρησιμοποιεί `orderStatus`. η απάντηση χρηματοδότησης χρησιμοποιεί `status`, μην τα ανακατεύετε. Η αρχική μεταφορά Webhook επαληθεύεται χρησιμοποιώντας `X-Agent-Timestamp`, `X-Agent-Nonce`, `X-Agent-Signature` και το αρχικό κείμενο υπογραφής είναι `timestamp + nonce + rawBody`. το αρχικό σώμα του αιτήματος πρώτα επαληθεύεται, στη συνέχεια αποδεσμεύεται και είναι ανίσχυρο. Οι ρητές ειδοποιήσεις προσομοιωμένου περιβάλλοντος περιέχουν `environment=SIMULATED`, οι ειδοποιήσεις παραγωγής παραμένουν συμβατές με παλιά πεδία. Το ποσό, ο αριθμός παραγγελίας, η κατάσταση και το περιβάλλον πρέπει να ελεγχθούν με την τοπική επιχειρηματική παραγγελία.

## Πηγή και σχετικοί οδηγοί

* [Επίσημη πηγή έκδοσης 0.3.0](https://github.com/6mm-com/agent-java-sdk/tree/54aa3c1)
* [Επισκόπηση ερωτήματος και σελιδοποίηση](/el/sdk/agent-sdk/java/perpetual-queries)
* [Οδηγός αναβάθμισης](/el/sdk/agent-sdk/java/upgrade)

## Πεδία αιτήματος χρηματοδότησης

| Πεδίο                          | Υποχρεούμαι       | Εννοια                                                                                     |
| ------------------------------ | ----------------- | ------------------------------------------------------------------------------------------ |
| `agentOrderNo`                 | Ναί               | Παγκοσμίως μοναδικός αριθμός παραγγελίας συνεργάτη. επιμείνετε πριν την αποστολή.          |
| `agentUserId / platformUserId` | Ενας              | Προσδιορίστε τον δεσμευμένο χρήστη. αν παρέχονται και τα δύο πρέπει να ταιριάζουν.         |
| `direction`                    | Ναί               | Μία από τις τέσσερις κατευθύνσεις που τεκμηριώνονται παραπάνω.                             |
| `currency`                     | Προεπιλογή USDT   | Υποστηρίζεται μόνο το USDT.                                                                |
| `transferAll`                  | Προεπιλογή ψευδής | Μόνο οι εσωτερικές μεταφορές χρηματοδότησης/συμβολαίου υποστηρίζουν αληθές.                |
| `amount`                       | Υποθετικός        | Θετική δεκαδική συμβολοσειρά για σταθερή μεταφορά. παράλειψη για transferAll=αληθές.       |
| `environment`                  | Προαιρετικός      | Παραγωγή όταν παραλείπεται για νέα μεταφορά. Το SIMULATED επιλέγει προσομοιωμένα κεφάλαια. |

## Πεδία απάντησης χρηματοδότησης

| Πεδίο                          | Εννοια                                                                                                                            |
| ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- |
| `orderNo`                      | Επιστράφηκε αναγνωριστικό λειτουργίας. διατηρήστε μαζί με τον αρχικό αριθμό παραγγελίας συνεργάτη.                                |
| `status`                       | SUCCESS / PROCESSING / FAILED; καθορίζει την ολοκλήρωση της επιχείρησης.                                                          |
| `direction / currency`         | Επιβεβαιωμένη κατεύθυνση μεταφοράς και περιουσιακό στοιχείο.                                                                      |
| `amount`                       | Πραγματικό μεταφερόμενο ποσό ως συμβολοσειρά.                                                                                     |
| `transferAll`                  | Εάν αυτή η πράξη ζήτησε όλα τα αναληφθέντα κεφάλαια.                                                                              |
| `agentUserId / platformUserId` | Επιστράφηκε ταυτότητα χρήστη. συγκρίνετε με την αποθηκευμένη παραγγελία.                                                          |
| `resultCode`                   | Λεπτομέρεια αποτελεσμάτων λειτουργίας. κρατήστε για συμφιλίωση και υποστήριξη.                                                    |
| `environment`                  | Αντηχούσε όταν ο καλών το παρείχε ρητά. Η απουσία δεν αποτελεί απόδειξη παραγωγής για ένα ερώτημα κατάστασης αρχικής παραγγελίας. |