دليل الاستخدام

كيفية تقليل رسوم تحويل USDT عبر API : خطوة بخطوة باستخدام API TronNRG

باختصار: تستهلك عملية تحويل USDT TRC-20 القياسية 65,000 Energy . إذا لم يكن لديك Energy في محفظتك، Tron تخصم ما يقارب 13 TRX من رصيدك لتغطية هذا النقص. باستخدام API TronNRG يمكنك تفويض نفس Energy مقابل 4 TRX - أي ما يعادل خصمًا بنسبة 70% تقريبًا على كل عملية إرسال. تتضمن عملية التكامل ثلاث عمليات HTTP: إرسال TRX إلى عنوان الإرسال، وتوقيع رسالة ملكية، وإرسال طلب POST إلى نقطة النهاية /delegate. يشرح هذا الدليل كل خطوة بالتفصيل مع توضيح التعليمات البرمجية والأخطاء الأربعة الأكثر شيوعًا التي قد تواجهها أثناء التشغيل الفعلي.

قبل أن تبدأ

تحتاج إلى ثلاثة أشياء قبل أول استدعاء API :

محفظة Tron تحتوي على TRX . يلزم توفير 4 TRX على الأقل لدفع رسوم تفويض واحد. في بيئة الإنتاج، ستحتاج إلى مبلغ أكبر - ستدفع مقابل كل عملية تحويل، وشحن المحفظة الساخنة بشكل دوري أسهل من تمويلها بشكل جزئي لكل عملية إرسال.

طريقة لتوقيع رسائل Tron . يوفر TronWeb الدالة tronWeb.trx.signMessageV2() . يستخدم بايثون الدالة tron.trx.sign_message_v2() عبر مكتبة tronpy. يستخدم PHP مكتبة iexbase/tron-api. يحتوي مرجع API TronNRG على أمثلة عملية باللغات الأربع.

عنوان محفظة المستلم. حدد مسبقًا ما إذا كنت ستفوض إلى محفظة الدفع نفسها (أبسط الحالات) أو إلى محفظة أخرى تتحكم بها (إعداد الخزينة). كلا الخيارين صحيح. يربط التوقيع بينهما.

ما تقوم ببنائه فعلياً

غلاف برمجي لوظيفة إرسال USDT الحالية لديك. يقوم هذا الغلاف بثلاث عمليات HTTP (الدفع، التوقيع، المطالبة)، ثم ينتظر وصول Energy ، ثم يستدعي منطق تحويل USDT الحالي لديك. هذا هو التكامل الكامل. فيما يلي تفاصيل كل خطوة.

الخطوة 1: إرسال TRX إلى عنوان الإرسال

أرسل TRX من المحفظة التي تدفع ثمن Energy إلى عنوان إرسال TronNRG . الحد الأدنى هو 4 TRX (ما يعادل 65,000 Energy ، تكفي لتحويل USDT قياسي واحد). الحد الأقصى لكل تفويض هو 1,000 TRX (16.25 مليون Energy ). السعر ثابت عند 16,250 Energy لكل TRX .

في TronWeb :

الخطوة 1: الكود

const DISPATCH = 'TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx';
const payment = await tronWeb.trx.sendTransaction(DISPATCH, 4 * 1e6);
// payment.txid is what you will sign in Step 2

خطأ شائع: إرسال TRX بأعداد صحيحة مُقوَّمة بعملة SUN مع إغفال التحويل. تحتوي TRX على ستة أرقام عشرية. 4 TRX تساوي 4_000_000 SUN ( 4 * 1e6 ). يؤدي هذا الخطأ إما إلى إرسال مبلغ ضئيل جدًا (سيكون التفويض صغيرًا جدًا) أو إلى إرسال مئات من TRX (سينجح التفويض ولكنك ستدفع مبلغًا يفوق الحاجة بكثير). دائمًا ضاعف المبلغ قبل إرساله إلى sendTransaction .

الخطوة الثانية: توقيع رسالة التفويض

يتطلب API إثباتًا بأن الشخص الذي يطالب بالتفويض هو نفسه الشخص الذي قام بالدفع. يمكنك تقديم هذا الإثبات عن طريق توقيع رسالة باستخدام المفتاح الخاص لمحفظة الدفع. صيغة الرسالة هي:

{payment_tx_hash}:{delegate_to_address}

حيث يمثل payment_tx_hash معرّف المعاملة (txid) المُعاد في الخطوة 1، ويمثل delegate_to_address عنوان Tron الذي تريد تفويض Energy إليه. في TronWeb :

رمز الخطوة 2

const message = `${payment.txid}:${delegateTo}`;
const signature = await tronWeb.trx.signMessageV2(message);

لماذا هذا التصميم؟ لأنه يُغني عن الحاجة إلى مفاتيح API مع الحفاظ على أمان التفويض. لا يمكن لأي شخص آخر المطالبة بدفعتك لأنك أنت وحدك من يملك المفتاح الخاص. يمكنك أيضًا الدفع من المحفظة (أ) والتفويض إلى المحفظة (ب)، طالما أنك تتحكم في المحفظة (أ) - وهذا مفيد للخزائن التي تموّل Energy لعدة محافظ إرسال من جهة دفع واحدة.

خطأ شائع: استخدام طريقة التوقيع الخاطئة. لدى Tron معياران لتوقيع الرسائل: signMessage (القديم) و signMessageV2 (متوافق مع EIP-191). تتوقع API استخدام V2. سيؤدي استخدام المعيار القديم إلى إنتاج توقيع يبدو صحيحًا، لكن API ترفضه لعدم تطابق التوقيع.

الخطوة 3: المطالبة بتفويضك

أرسل تجزئة الدفع، والمحفظة المستهدفة، والتوقيع إلى api.tronnrg.com/delegate بصيغة JSON.

رمز الخطوة 3

const res = await fetch('https://api.tronnrg.com/delegate', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
tx_hash: payment.txid,
delegate_to: delegateTo,
signature
})
}).then(r => r.json());

تقوم API بإرجاع ثلاثة حقول ستستخدمها: res.energy (كمية Energy المفوضة، تساوي TRX المرسلة مضروبة في 16250)، res.delegations[0].tx (تجزئة معاملة التفويض على السلسلة - قم بتخزين هذا لسجل التدقيق الخاص بك)، و res.ref (معرف مرجعي مثل nrg_d_42 مفيد لاستفسارات الدعم).

يتم تسجيل التفويض على سلسلة الكتل في غضون ثلاث ثوانٍ تقريبًا من عملية المطالبة الناجحة، ويستمر لمدة 15 دقيقة من تلك اللحظة. بعد انقضاء هذه المدة، تعود أي Energy غير مستخدمة إلى مجمع TronNRG تلقائيًا، دون أي استرداد جزئي.

الخطوة الرابعة: بث عملية تحويل USDT الخاصة بك

قبل بث تحويل USDT ، تأكد من وصول Energy فعليًا. استعلم عن موارد الحساب في المحفظة المستهدفة باستخدام tronWeb.trx.getAccountResources() حتى يصبح EnergyLimit - EnergyUsed 65,000 على الأقل. الفاصل الزمني القياسي هو 500 مللي ثانية مع مهلة 30 ثانية.

ثم أرسل عملة USDT كالمعتاد. تغطي Energy الرسوم. لا يتم حرق أي TRX من محفظة الإرسال.

نمط الخطوة 4

// Wait for Energy to arrive
await pollUntilEnergyAvailable(delegateTo, 65000, { interval: 500, timeout: 30000 });

// Broadcast the USDT transfer
const contract = await tronWeb.contract().at( USDT _CONTRACT);
const txHash = await contract.transfer(recipient, amount).send({ feeLimit: 20_000_000 });

حدد دائمًا حدًا أقصى للرسوم. إذا لم تصل Energy لأي سبب من الأسباب، واستمر برنامجك في البث، فإن هذا الحد الأقصى للرسوم يحدد الحد الأقصى لعملة TRX التي يمكن للشبكة حرقها. يُعدّ 20 TRX (أي ما يعادل 20,000,000 SUN) حدًا معقولًا، فهو يكفي لتغطية عملية تحويل واحدة في حال انقطاع Energy ، كما أنه يمنع أي خلل برمجي من استنزاف المحفظة الساخنة.

ما الذي يوفره لك هذا فعلاً؟

تُحدد قيمة التوفير لكل عملية تحويل TRX : حوالي 9 TRX يتم توفيرها في كل عملية إرسال قياسية USDT (تجنب حرق 13 TRX ، مطروحًا منها 4 TRX مدفوعة مقابل Energy ). هذا الرقم لا يتغير بتغير ظروف السوق، فهو خاصية على مستوى بروتوكول شبكة Tron . ما يتغير هو القيمة الدولارية التي يمثلها مبلغ 9 TRX .

عند حجم الأعمال الحقيقي، تتراكم الوفورات بسرعة:

التحويلات اليومية حرق TRX السنوي (بدون API ) TRX السنوي عبر API TRX المدخر سنوياً تخفيض
10 حوالي 47,450 14600 حوالي 32850 حوالي 69%
100 حوالي 474,500 146,000 حوالي 328,500 حوالي 69%
500 حوالي 2.37 مليون 730,000 حوالي 1.64 مليون حوالي 69%
1000 حوالي 4.75 مليون 1.46 مليون حوالي 3.29 مليون حوالي 69%
5000 حوالي 23.7 مليون 7.30 مليون حوالي 16.4 مليون حوالي 69%

للحصول على أرقام الدولار الأمريكي الحالية بسعر TRX المباشر، استخدم حاسبة رسوم TronNRG - أدخل حجم التداول اليومي وستظهر لك قيمة التوفير بالدولار في الوقت الفعلي.

إذا كنت تُجري أكثر من 500 عملية تحويل يوميًا، فمن المفيد أيضًا مقارنة ذلك بالتخزين الذاتي لعملة TRX لتوليد Energy الخاصة بك. يتميز التخزين الذاتي بتكلفة شبه معدومة لكل عملية تحويل، ولكنه يتطلب تجميد رأس مال كبير. تُوضح لك حاسبة نقطة التعادل للتخزين نقطة تقاطع خطي واجهة برمجة API والتخزين الذاتي لحجم معاملاتك المحدد.

استكشاف الأخطاء وإصلاحها

أربعة أخطاء تتكرر بشكل متكرر بما يكفي ليكون من المفيد معرفتها مسبقاً:

عدم تطابق التوقيع (الأكثر شيوعًا). يستخدم واجهة برمجة API التوقيع بالإصدار الثاني (V2)، بينما استخدمتَ أنت التوقيع بالطريقة القديمة signMessage . الحل: التبديل إلى signMessageV2 . تجد قائمة رموز الخطأ الكاملة في وثائق أخطاء TronNRG .

لم يتم العثور على الدفعة. لقد استدعيتَ /delegate قبل تأكيد عملية الدفع على سلسلة الكتل. الحل: انتظر كتلة واحدة على الأقل (حوالي 3 ثوانٍ) بعد الخطوة 1 قبل استدعاء الخطوة 3. في الكود، استعلم عن tronWeb.trx.getTransaction(payment.txid) حتى يُعيد نتيجة.

الدفع أقل من الحد الأدنى. لقد أرسلت أقل من 4 TRX . تعتبر عملية الشحن أي مبلغ أقل من 4 TRX غير صالح ويتم استرداد المبلغ تلقائيًا. الحل: تحقق من المبالغ قبل الإرسال - الحد الأدنى ثابت.

لم تصل Energy . نجحت عملية التفويض من جانب API ، لكن المحفظة المستهدفة لا تزال لا تعرض أي Energy . الحل: انتظر كتلة أخرى وأعد التحقق - قد تستغرق عملية النشر أحيانًا 6 ثوانٍ بدلًا من 3. إذا لم تظهر Energy بعد 30 ثانية، فتأكد من أن عنوان المحفظة المستهدفة الذي أرسلته يطابق العنوان الذي تستعلم عنه (عادةً ما يكون السبب خطأً مطبعيًا).

▸ API TronNRG متاحة الآن على api.tronnrg.com.

اقرأ الوثائق الكاملة →

بالنسبة لأحجام المؤسسات: تواصل مع TronNRG على Telegram للحصول على تأكيدات webhook، وأسعار الجملة، واتفاقيات مستوى الخدمة المخصصة.

أدلة ذات صلة: API Tron Energy للمطورين · أتمتة تحويلات USDT على نطاق واسع · إرسال USDT بأقل من دولار واحد

ثلاث مكالمات API . خصم 70% على كل عملية تحويل USDT .

خدمة TronNRG متاحة الآن على api.tronnrg.com. الحد الأدنى 4 TRX ، وتسعير خطي يصل إلى 1000 TRX . تفويض سريع خلال 3 ثوانٍ. مصادقة قائمة على التوقيع، لا حاجة لمفتاح API . وثائق كاملة بجميع اللغات المدعومة على support.tronnrg.com.

تأجير الطاقة →

FAQ

ما هي أسرع طريقة لتقليل رسوم تحويل عملة USDT برمجياً؟
استخدم API تفويض Energy . تتيح لك API TronNRG على api.tronnrg.com تفويض 65,000 Energy (ما يعادل تحويل USDT قياسي واحد) مقابل 4 TRX بدلاً من 13 TRX تقريبًا التي كانت الشبكة ستحرقها - أي توفير حوالي 70% من الرسوم. تتضمن عملية التكامل ثلاث عمليات HTTP: إرسال TRX إلى عنوان الإرسال، وتوقيع رسالة ملكية، وإرسال طلب POST إلى /delegate. يستغرق الأمر حوالي 3 ثوانٍ قبل أن تتمكن من بث تحويل USDT الخاص بك.
هل أحتاج إلى مفتاح API لاستخدام api.tronnrg.com؟
لا يتطلب مسار التفويض القياسي مفتاح API . تتم المصادقة بتوقيع رسالة باستخدام المفتاح الخاص للمحفظة المدفوعة. يثبت هذا ملكية البيانات على سلسلة الكتل، ويتيح API التحقق من الطلب دون الحاجة إلى إعداد حساب أو لوحات تحكم أو تغيير أي بيانات سرية. بالنسبة لأحجام التحويلات الكبيرة (أكثر من 500 تحويل يوميًا) مع تأكيدات عبر Webhook واتفاقيات مستوى الخدمة المخصصة، تواصل مع TronNRG عبر Telegram.
هل يمكنني الدفع من محفظة واحدة وتفويض Energy إلى محفظة أخرى؟
نعم. تربط الرسالة الموقعة رمز تجزئة معاملة الدفع بعنوان محفظة التفويض. طالما أنك تمتلك المفتاح الخاص لمحفظة الدفع، يمكنك تفويض Energy الناتجة إلى أي عنوان Tron . يُعد هذا مفيدًا لإعدادات الخزينة حيث تدفع محفظة التمويل ثمن Energy نيابةً عن محافظ إرسال متعددة.
ما هو نموذج التسعير؟ هل أدفع دائمًا 4 TRX بالضبط؟
يُحدد السعر بشكل خطي عند 16,250 Energy لكل TRX ، بحد أدنى 4 TRX (65,000 Energy ، عملية تحويل قياسية واحدة) وحد أقصى 1,000 TRX (16.25 مليون Energy ). لذا، فإن 8 TRX تكفي لشراء Energy كافية لعمليتي تحويل قياسيتين أو عملية تحويل واحدة إلى محفظة جديدة (بتكلفة مضاعفة)، و40 TRX تكفي لشراء طاقة كافية لعشر عمليات تحويل، وهكذا. تُحفظ التفويضات لمدة 15 دقيقة، مما يتيح لك الدفع مرة واحدة وإرسال عدة معاملات USDT خلال هذه الفترة.
ماذا يحدث إذا فشلت عملية التفويض بعد أن دفعت بالفعل؟
تقوم TronNRG تلقائيًا برد عملات TRX إلى عنوان المرسل على سلسلة الكتل إذا تعذر إتمام عملية التفويض لأي سبب. لا يوجد سيناريو لتجميد الأموال. مع ذلك، في بيئة الإنتاج، يجب عليك تطبيق آلية احتياطية: إذا فشلت عملية /delegate أو لم تصل Energy خلال مهلة زمنية معقولة، قم ببث عملية تحويل USDT بدون Energy (يتم حرق TRX في الشبكة، ولكن تتم عملية التحويل بنجاح) وسجل الحدث للتحقيق فيه.
هل خدمة TronNRG غير احتجازية؟
نعم. يتم تفويض Energy عبر آلية التفويض الأصلية لبروتوكول Tron . لا يحتفظ TronNRG USDT الخاصة بك، ولا يتطلب اتصالاً بالمحفظة، ولا يطلب أي موافقات على الرموز. توفر الخدمة Energy إلى عنوان محفظتك، وتقوم أنت بإرسال USDT من عنوان محفظتك. العمليتان مستقلتان تمامًا. الرموز الوحيدة التي يتعامل معها TronNRG هي TRX التي ترسلها لشراء Energy .
ما هي لغات البرمجة التي تحتوي على أمثلة عملية؟
تتضمن وثائق مطوري TronNRG على support.tronnrg.com أمثلة جاهزة للاستخدام بلغات JavaScript ( TronWeb ) وPython (tronpy) وPHP (iexbase/tron-api) وcURL. يمكن دمج أي لغة قادرة على توقيع رسالة Tron وإجراء استدعاء HTTP - وقد تم بالفعل نشر تطبيقات Go وRust وJava وC# على واجهة برمجة API هذه.
Telegram WhatsApp