أداة المبادلة من Pera تضع صندوق تداول جاهزاً داخل تطبيقات Algorand الأخرى
تتيح محفظة Pera محرك التوجيه الذي يقف خلف عمليات المبادلة في تطبيقها على شكل أداة قابلة للتضمين وواجهة برمجية، بحيث يربط الزائر محفظته ويطّلع على السعر ويوقّع من دون مغادرة التطبيق المضيف. ويعرض موقع تجريبي أربع طرق لربطها، ويمكن جلب عروض الأسعار من دون حيازة أموال.

صندوق تداول يبقى داخل التطبيق
أداة المبادلة من Pera هي صندوق تداول يستطيع أي تطبيق على Algorand أن يضعه داخل شاشاته: يربط الزائر محفظته، ويختار أصلين، ويطّلع على السعر ويوقّع، من دون أن يغادر الصفحة. ويقف خلفها P.E.R.A.، محرك التوجيه الذي تستخدمه محفظة Pera1 للمبادلة داخل تطبيقها، وهو معروض الآن للمطورين الخارجيين على شكل حزمة يمكنهم تضمينها كاملة أو استدعاؤها عبر واجهة برمجية مع بناء واجهتهم الخاصة.
طريقتان لاعتمادها. الأسرع هي إطار iframe يشير إلى الأداة المستضافة لدى Pera2، ويُضبط عبر عنوانه: الشبكة، والمظهر، والأصل الداخل (ALGO ما لم يُحدَّد غير ذلك) والأصل الخارج (USDC افتراضياً). والطريقة الأكمل هي بناء شاشة مبادلة خاصة بك على واجهة المبادلة البرمجية؛ ويصوغ README3 الخاص بالحزمة الخيار على أنه تضمين الأداة 'داخل إطار iframe، مع توقيع المعاملات اختيارياً بمحفظتك الخاصة4'، أو بناء 'واجهة مبادلة خاصة بك فوق واجهة Pera Swap API (عروض الأسعار، والمعاملات، والأصول)'.
التوقيع هو الجزء الذي يحدد مكان المحفظة. فعند تفعيل التوقيع من الصفحة المضيفة، لا تفتح الأداة أي اتصال محفظة خاص بها وتطلب من الصفحة المضيفة التوقيع بدلاً منها؛ ويذكر README أن واجهة Pera API وقّعت سلفاً المعاملات التي لا تصدر من حساب المستخدم، لذا لا تعيد الصفحة المضيفة إلا توقيعاتها الخاصة.
بهذا الترتيب يصبح التوجيه دالة يستدعيها التطبيق بدلاً من مكان يقصده المستخدم. فالتطبيق لا يتحول إلى بورصة ولا يحوز الأصل المتداول؛ كل ما يحتاجه أن يكون المكان الذي يوجد فيه المستخدم أصلاً. ويتكرر هذا النمط حيثما كانت خدمة على السلسلة مجرد توجيه في معظمها، وهو ما يجعل الباني على الطرف الآخر هو العميل.
تجربتها، وما تطلبه من المستخدم
يبدأ المطورون من موقع تجريبي5 يستعرض أربع طرق للربط: توليد عنوان الأداة، وبناء إطار iframe برمجياً، واستدعاء واجهة المبادلة مباشرة، أو إسناد التوقيع إلى الصفحة المضيفة. ويمكن طلب عروض الأسعار من دون حيازة أي شيء، لكن إعداد صفقة يتطلب حساباً ممولاً: فطلب المعاملات لعنوان لا يحمل ALGO أعاد رسالة 'Algo balance is insufficient' ولم يُنتج شيئاً.
المستخدم العادي لا يثبّت أي شيء. بل يصادف الصندوق داخل التطبيق الذي ضمّنه، فيربط محفظته ويتداول. وإذا كان الرمز الذي يشتريه جديداً على حسابه، تنبّهه المحفظة إلى الاشتراك فيه كجزء من المبادلة.
كم تكلف المبادلة، وماذا تقول خانة الرسوم
يذكر مركز المساعدة6 لدى Pera أن المحفظة تتقاضى رسماً يصل إلى 17% على عمليات المبادلة، يُحتسب على قيمة الأصل 'المصدر' ويظهر باسم Pera Fee على شاشة عرض السعر قبل التوقيع. وتضع الصفحة نفسها رسم المجمع لدى المنصة عند 0.258–0.3% عادةً، وتقول إنه يذهب إلى مزوّدي السيولة؛ وهذا المعدل عرفٌ لدى المجمع وليس شيئاً تحدده الشبكة، وهو يختلف من منصة إلى أخرى. أما الحد الأدنى الثابت على Algorand فهو 0.001 ALGO لكل معاملة؛ وتضع صفحة Pera رسم الشبكة عند أقل من 0.019 دولار وتنوّه إلى أنه يُطبَّق سواء نجحت المبادلة أو فشلت، وأن المبادلة الواحدة قد تكون عدة معاملات في مجموعة واحدة.
الأصل الذي تُحتسب به خانة الرسوم يغيّر معناها. فشاشة المراجعة الخاصة بالأداة تطبع Pera Fee بوحدة ALGO، بقسمة المبلغ الخام على مليون للوصول إلى ذلك.
لوحة الموقع التجريبي تسمي الرقم نفسه على نحو مختلف. فقد أظهرت عروض أسعارها في 5 نوفمبر رسم Pera Fee قدره 0.01 على مبادلة بـ 1 ALGO تعيد 0.097522 USDC، ورسم Pera Fee قدره 1.00 على مبادلة بـ 100 ALGO تعيد 9.748322 USDC، وكلاهما موسوم بـ USDC. والشيفرة النموذجية التي تقف خلف تلك اللوحة تنسّق الرسم بكسور الأصل الخارج واسم وحدته، ومن هنا يأتي وسم USDC. والرقم هو 1% مما أدخله المستخدم في الحالتين — 0.01 من 1 ALGO، و1.00 من 100 ALGO — بينما لو قُرئ على أنه USDC لكان نحو عُشر الصفقة، خارج حد الـ 1% الذي تصفه صفحة Pera. لذا فإن وسم ALGO في الأداة هو المطابق للرسم المنشور، ووسم USDC في الموقع التجريبي يُقرأ على أنه خطأ تنسيق في مثال؛ وما تطبعه واجهة مبنية يدوياً متروك لمن يبنيها.
المنصات التي تقف خلف السعر
يسمّي مركز المساعدة10 لدى Pera أربع منصات خلف المجمّع: Vestige وTinyman وFolks Finance وDeflex (TxnLabs). أما الحزمة المطروحة فتعرّف ثلاثة أسماء لمزوّدين يمكن للمستدعي طلبها — tinyman وtinyman-swap-router وvestige-v4 — ولا قيمة لـ Folks Finance أو Deflex. فالباني الذي يقرأ وصف المنتج يتوقع أربع منصات، بينما تقبل الشيفرة ثلاثاً.
من يبنيها، وكيف تسير
محفظة Pera منتج لشركة Pera Wallet, Lda، وتصف نفسها بأنها غير احتجازية وذاتية الاستضافة: فالمفاتيح والأصول تبقى على جهاز المستخدم، وتقول الشركة إنها لا تخزّن عبارات الاسترداد ولا تستعيدها. وقد بدأت بوصفها محفظة Algorand الرسمية وأُعيد تسميتها في فبراير 2022، وأطلقت إعادة بناء كاملة للإصدار 7.011 لتطبيقاتها على الهاتف في أغسطس (تلك القصة)، وفي يناير استبدلت بوابة الإيداع الأقدم لديها بمسار تمويل أصيل في المحفظة هو Pera Fund.
أُعلن عن واجهة المطورين البرمجية على مدونة Pera12 في 9 أكتوبر 2025، حيث وُصف P.E.R.A. بأنه مجمّع التوجيه لمنظومة Pera، وعُرضت حزمة npm وتطبيق تجريبي. وكانت الحزمة13 على npm منذ 14 أغسطس 2025؛ ونُشرت 1.0.014-beta.5، وهي النسخة الحالية، في 28 أكتوبر 2026، أي بعد نحو عام من النسخة التي سبقتها. وقد نُزّلت 466 مرة15 في الثلاثين يوماً المنتهية في 4 نوفمبر، ويُظهر المستودع3 أربع نجوم، وآخر دفعة فيه كانت في 2 نوفمبر. والتنزيلات تحسب التثبيتات الآلية والنسخ المتطابقة كما تحسب الأشخاص، لذا لا يقيس أي من الرقمين عدد التطبيقات التي تحمل الصندوق.
كما يَعِد منشور الإطلاق المدمجين بـ 'إيرادات رسوم مستقرة — اكسب رسوم المبادلة بعملة USDC أو أي أصل مستقر مفضل16'. وكيف تُحدَّد هذه الإيرادات أو تُقسَّم أو تُحصَّل لا يظهر في أي من المواد المنشورة حول الحزمة: فالمقبض الوحيد المتاح للعميل هو رابط إحالة اختياري، موثّق لأغراض النسبة. وقد يكون الأمر مرتباً من جهة الخادم، أو عبر حقل لا يعرضه README.
البديل هو أداة المبادلة الخاصة بـ Tinyman17، الموثقة والتي يصونها الفريق الأساسي في Tinyman، وهي توجّه عمليات المبادلة عبر Tinyman Swap Router — أي عبر موجّه منصة واحدة بدلاً من جولة تسوّق بين عدة منصات.
ما قد يخطئ
تضع شروط Pera الصفقة نفسها على عاتق طرف آخر: فهي تنص على أن Pera 'لا تشغّل معاملات المبادلة ولا تتحكم فيها ولا تنفذها ولا تسوّيها18'، وأن التسعير والتنفيذ والتوجيه تأتي حصراً من مزوّد طرف ثالث، لذا فإن تنفيذاً خاطئاً مسألة بين المستخدم والمنصة التي نفّذته. أما خانة الرسوم فمنفصلة: فهي رسم الأداة نفسها، الذي يضعه مركز المساعدة لدى Pera عند حد أقصى 119% لتمويل تطوير المحفظة وصيانتها، ويُطبَّق فوق حصة المجمع.
كما تسمّي الشروط الولايات المتحدة وكندا والصين وإسرائيل بين أماكن قد يكون تداول ALGO محظوراً فيها، وتحتفظ بحق حجب الوصول بحسب الإقليم. ونشر الأداة لمستخدمين هناك قرار يتخذه الباني وهذه الصفحة أمام عينيه.
المبادلة المؤكدة تُسوّى. وإذا نُفّذت بسعر أسوأ مما أظهرته الشاشة، ضمن الانزلاق الذي سمح به المستخدم، فإن التنفيذ يبقى قائماً. أما المبادلة الفاشلة فتكلّف مع ذلك رسوم المعاملات المقدَّمة من أجلها — وقد تكون المبادلة عدة معاملات في مجموعة واحدة — وتبقى الأصول في المحفظة.
أغلقت نسخة 1.0.0-beta.5 ثغرة في طريقة تواصل الأداة المضمّنة مع الصفحة المحيطة بها. فقبلها، كما يذكر سجل التغييرات، كان بإمكان أي صفحة أو إطار إرسال طلب توقيع وإثارة تنبيه في المحفظة وتلقّي المعاملات الموقّعة. أما الآن فلم يعد المتحكم يقبل الرسائل إلا من أصل أداة Pera ويتجاهل ما سواه بتحذير واحد في وحدة التحكم، وعلى كل من يستضيف الأداة في مكان آخر أن يسمّي ذلك الأصل صراحةً. ولا تزال النسخ الأقدم على npm، لذا فإن النسخة التي يثبّتها الباني هي ما يحدد وجود الحماية من عدمه.
الشبكة الافتراضية هي الفخ الآخر، وهناك افتراضان. فصفحة الأداة نفسها تفترض شبكة الاختبار، لذا فإن إطار iframe مكتوباً يدوياً ويغفل معامل الشبكة يضع الزوار على سلسلة لا تساوي عملاتها شيئاً. أما دوال المساعدة في الحزمة فترسل الآن شبكة دائماً وتفترض الشبكة الرئيسية، لذا فإن أداة مبنية عبرها تفتح على الشبكة الرئيسية ما لم يُحدَّد غير ذلك.
كما أن مركز التوثيق20 الخاص بـ Pera لا يذكر أي شيء من هذا: فهو يسرد Pera Connect، وواجهة برمجية لبيانات الأصول، ومواصفات تحليل NFT، ومخططات روابط التطبيقات، من دون أي مدخل لواجهة المبادلة أو للأداة. فالتعريف بها يجري عبر README ومقالة مدونة واحدة والموقع التجريبي.
ما يقرره الباني إذن هو اعتماد على طرف آخر: نسخة تجريبية تصدر نحو مرة في السنة وتتعطل حين تتغير، وقائمة توجيه أقصر في الشيفرة منها على الصفحة. أما القارئ الذي يصادف الصندوق داخل تطبيق غيره، فما يهمه هو ما على الشاشة قبل التوقيع — المزوّد، والحد الأدنى المستلم، وأثر السعر، وخانة الرسوم مع التحقق من وحدتها.
المصادر
- Swap (registry.npmjs.org)13
- Breaking Changes3
- Pera Wallet – How to Swap Tokens in Pera Wallet10
- Pera Wallet – Understanding Swap Fees and Slippage in Pera6
- Introducing the P.E.R.A. API: Seamless Swap Integration | by Joseph Cecala | Pera Wallet12
- Pera Swap Widget Examples5
- Swap Widget | Tinyman Docs17
- Pera Wallet – Terms of Service21
- Pera swap (github.com)3
- Swap (api.npmjs.org)15
تم التحقق من 9 أرقام في هذه القصة.عرض كل عمليات التحقق
المصادر
- 1محفظة Pera perawallet.app↩
- 2الأداة المستضافة لدى Pera swap-widget.perawallet.app↩
- 3README github.com↩
- 5موقع تجريبي perawallet.github.io↩
- 6مركز المساعدة support.perawallet.app↩
- 10مركز المساعدة support.perawallet.app↩
- 12على مدونة Pera blog.perawallet.app↩
- 13الحزمة registry.npmjs.org↩
- 15نُزّلت 466 مرة api.npmjs.org↩
- 17أداة المبادلة الخاصة بـ Tinyman docs.tinyman.org↩
- 20مركز التوثيق docs.perawallet.app↩
- 21Pera Wallet – Terms of Service perawallet.app↩