محفظة التمويل
محفظة التمويل: التكامل Agent Java SDK الإصدار 0.3.0 والأمثلة والمعلمات ودلالات الاستجابة.
يستهدف هذا الدليل Agent Java SDK v0.3.0، Java 8+، والعقد العام الموسوم. يتم تشغيل الأمثلة في الواجهة الخلفية للشريك بعد تهيئة client في بداية سريعة.
مثال المتطلبات الأساسية
تشترك مقتطفات Java في هذه الواردات. قم بتهيئة client باستخدام البدء السريع واحصل على platformUserId من الرابط المحفوظ. يجب استبدال معرفات المستخدم/الطلب بالقيم الثابتة الخاصة بك.
استعلامات المحفظة والتحويلات
التمييز بين المحافظ الثلاث
queryAccount الاستعلام عن حساب هامش منصة التاجر، وليس محفظة مستخدم التاجر. لا تحتوي هذه الواجهة على معلمات environment ولا يمكن الاستعلام عنها كأصل مستخدم تمت محاكاته.
الاستعلام عن محفظتي النظام الأساسي للمستخدمين المحاكيين:
الواجهة: POST /v1/agent/query-user-assets. يتم طلب التمويل فقط عندما includeFunding=true; يتم استخدام دلالات الاستعلام عن أصول العقد الأصلي بشكل افتراضي.
يتم التعامل مع المبالغ كسلاسل أو BigDecimal، وليس float/double.
اتجاهات تحويل التمويل
إنشاء: POST /v1/agent/wallet-transfer، SDK walletTransfer.
العملة الحالية تدعم فقط USDT. يجب أن يكون المبلغ الثابت عبارة عن سلسلة موجبة تحتوي على ما يصل إلى 8 منازل عشرية ولا يمكن استخدام التدوين العلمي. عندما transferAll=true، احذف amount وسجله كرد نهائي amount؛ “الكل” يشمل فقط الأموال القابلة للسحب.
مثال: يقوم التاجر بتحويل 10 USDT إلى التمويل المحاكى. قم أولاً بحفظ أمر العمل والبيئة في نظام التاجر، ثم أرسل الطلب:
التمويل تحويل جميع الأموال التي يمكن تحويلها إلى العقد المحاكى:
يجب أن تستمر نفس العملية في استخدام agentOrderNo الأصلي؛ تستخدم العمليات المختلفة والبيئات المختلفة أرقام طلبات مختلفة. سيتم رفض تغيير المبلغ أو المستخدم أو الاتجاه أو البيئة بنفس رقم الطلب. لا يمكن إجراء تحويلات التمويل/العقود إلا في نفس البيئة، ولا يمكن تحويل الأموال المحاكاة إلى أموال حقيقية.
تأكيد النتيجة واسترداد نتيجة غير معروفة
يتم تمثيل استجابات التمويل بواسطة status أو SUCCESS أو PROCESSING أو FAILED، ويتم إرجاعها orderNo، direction، currency، amount، resultCode، وما إلى ذلك. code=0 يعني فقط أن الطلب تمت معالجته بنجاح وتحتاج إلى الاستمرار في الحكم على status.
يستخدم استعلام التمويل الواجهة المخصصة POST /v1/agent/wallet-transfer-status:
استخدم نقطة النهاية المخصصة هذه لاستعادة عملية التمويل الأصلية؛ queryOrder لا يمكن استبداله. احفظ البيئة الأصلية وقم بتمريرها بشكل صريح أثناء عملية الاسترداد. إذا تم حذف environment من wallet-transfer-status، فسيستخدم الخادم البيئة المحفوظة في الطلب الأصلي، بما في ذلك الطلبات التي تمت محاكاتها. ترجع البيئة المتعارضة بشكل صريح 102002 (order environment mismatch). عندما يحذف المتصل البيئة، فإن الاستجابة تحذف environment أيضًا؛ وهذا لا يعني أن الأمر الأصلي هو أمر إنتاج.
الودائع والسحوبات المحلية للتجار غير فعالة. يتم حجز الأوامر والأرصدة المستمرة قبل البدء، ويتم حجزها للتأكيد عندما تكون النتيجة غير معروفة. يستخدم الوصول إلى التمويل استعلامًا مخصصًا لتأكيد الحالة النهائية؛ لا تفترض أن نقل العقد القديم Webhook أو طرق الإلغاء تنطبق تلقائيًا على التمويل.
تدفق نقل العقد الحالي
يستمر transfer، transferAllOut، reverse، queryOrder، listOrders، في معالجة عملية نقل العقد الأصلي. queryOrder يستعلم عن أوامر تحويل الأموال، listOrders عبارة عن قائمة تسوية التحويلات؛ بدلاً من، الاستعلامات الدائمة تستخدم لأوامر التداول الدائمة.
تستخدم استجابة التمويل الأصلية orderStatus؛ تستخدم استجابة التمويل status، فلا تخلط بينهما. تم التحقق من النقل الأصلي Webhook باستخدام X-Agent-Timestamp، X-Agent-Nonce، X-Agent-Signature، ونص التوقيع الأصلي هو timestamp + nonce + rawBody؛ يتم التحقق أولاً من نص الطلب الأصلي، ثم يتم إلغاء تسلسله ويصبح غير فعال. تحتوي إشعارات البيئة المحاكاة الصريحة على environment=SIMULATED، وتظل إشعارات الإنتاج متوافقة مع الحقول القديمة. يجب التحقق من المبلغ ورقم الطلب والحالة والبيئة من خلال أمر العمل المحلي.