دراسة حالة

ZestAMC

منصة إدارة استثمارات العملات الرقمية تربط المستثمرين بمديري صناديق محترفين.

$10M+

أصول مُدارة على المنصة

200K+

مستخدم مسجّل

5

بوابات حسب الدور

179

ترحيلات SQL

في الإنتاج منذ 2024
zestamc.com
ZestAMC marketing landing page

التحدي

شركة إدارة صناديق عملات رقمية بدون منصة

كان فريق ZestAMC يدير عدة صناديق عملات رقمية عبر جداول بيانات وتحويلات بنكية يدوية. مديرو الصناديق تتبعوا تخصيصات المستثمرين يدوياً. المدفوعات كانت تستغرق أياماً. خطأ عشري واحد في صندوق بقيمة $2M يعني خسارة أموال حقيقية.

احتاجوا منصة يستطيع فيها المستثمرون تصفح الصناديق، وإكمال التحقق من KYC، والاستثمار، وتلقي مدفوعات عملات رقمية آلية، بينما يتتبع مديرو الصناديق الأداء بدقة مالية. خمسة أنواع مستخدمين مختلفة (مسؤول، مدير صندوق، مستثمر، مسؤول صندوق، دعم) كل منها يحتاج عروضاً وصلاحيات مختلفة.

المنصة أيضاً كان عليها الامتثال لأنظمة KYC/AML، ودعم شبكات عملات رقمية متعددة (TRC20، ERC20، BEP20)، والتعامل مع توزيع الأرباح عبر سلاسل إحالة معقدة، كل ذلك بدون خطأ تقريب واحد.

ما بنيناه

10 أنظمة. منصة واحدة.

5 بوابات حسب الدور

كل نوع مستخدم يرى تطبيقاً مختلفاً. المسؤولون يديرون الصناديق والمستخدمين. مديرو الصناديق يتتبعون الأصول المُدارة ويوزعون الأرباح. المستثمرون يتصفحون المؤشرات ويستثمرون ويسحبون. مسؤولو الصناديق يتعاملون مع سير عمل الامتثال. وكلاء الدعم يحلون المشكلات عبر الدردشة الفورية. قاعدة كود واحدة، خمس تجارب مختلفة، كلها تشترك في نفس طبقة البيانات.

ZestAMC application dashboard showing fund management interface

محرك مدفوعات عملات رقمية آلي

دمجنا NOWPayments لمعالجة المدفوعات عبر شبكات TRC20 وERC20 وBEP20. مهام BullMQ في الخلفية تتعامل مع توزيع الأرباح على مرحلتين: أولاً للمستثمرين، ثم لسلاسل الإحالة. كل دفعة تعمل كمعاملة ذرية. إذا فشلت أي خطوة، تُعاد الدفعة بالكامل.

ZestAMC investment steps showing the investor flow

امتثال KYC/AML ودقة مالية

Sumsub يتعامل مع التحقق من الهوية عبر SDK والاستدعاءات الراجعة. كل مستثمر يكمل KYC قبل استثماره الأول. على الجانب المالي، جميع القيم النقدية تستخدم NUMERIC(30,8) في Postgres مع decimal.js على طبقة التطبيق. لا تلمس العمليات الحسابية بالفاصلة العائمة الأموال. 30 خانة، 8 منازل عشرية، صفر أخطاء تقريب.

ZestAMC platform features overview

شرائح ذكية ومصادقة بدون كلمة مرور

المستثمرون يشترون في الصناديق عبر شرائح. نظام تجميع مؤجل يجمع الاستثمارات الصغيرة في مدخلات مجمعة أكبر، مما يقلل عمليات الكتابة في قاعدة البيانات ويحسن أداء الاستعلام في تحليلات الصناديق. المصادقة تستخدم OTP بدون كلمة مرور، مما يلغي تذاكر الدعم المتعلقة بكلمات المرور ويقلل سطح الهجوم.

ZestAMC indices section showing available crypto funds

البنية التحتية والأدوات

  • دردشة دعم فورية عبر Supabase Realtime، ليتواصل الوكلاء والمستثمرون بدون تحديث الصفحة أو الاستقصاء.
  • نظام علامات الميزات للنشر التدريجي، يتيح للفريق الإطلاق لمجموعة فرعية من المستخدمين قبل الإصدار الكامل.
  • 179 ملف ترحيل SQL مع اختبارات قاعدة بيانات pgTAP، تضمن أن تغييرات المخطط لا تكسر بيانات الإنتاج.
  • توزيع أرباح وإحالات على مرحلتين عبر مهام BullMQ في الخلفية، تعالج المدفوعات بشكل غير متزامن دون حظر الخيط الرئيسي.

القرارات التقنية

لماذا اخترنا هذا الحزمة التقنية

React 19 + Vite 6

خمس بوابات تشترك في قاعدة كود React واحدة. اتحاد وحدات Vite يبقي أحجام الحزم صغيرة لكل بوابة. ميزات React 19 المتزامنة تتيح للوحة التحكم عرض تحليلات الصناديق دون تجميد الواجهة أثناء جلب البيانات الكبيرة.

Hono على Fly.io

Hono يشغل طبقة API. يبدأ في أقل من 50 مللي ثانية، وهو أمر مهم لنموذج التصغير إلى الصفر في Fly.io. البدايات الباردة تحدث؛ يجب أن تكون سريعة. نظام البرمجيات الوسيطة في Hono يتعامل مع المصادقة وتحديد المعدل والتحقق من الطلبات في سلسلة قابلة للتركيب.

Supabase + Upstash Redis

Supabase يوفر Postgres وأدوات المصادقة واشتراكات Realtime لدردشة الدعم. Upstash Redis يتعامل مع تخزين الجلسات وتحديد المعدل على الحافة. كلا الخدمتين تتوسعان دون عبء تشغيلي.

NUMERIC(30,8) + decimal.js

نوع Number الأصلي في JavaScript يفقد الدقة فوق 2^53. لمنصة تدير $10M+ من أصول العملات الرقمية، هذا غير مقبول. نخزن جميع القيم النقدية كـ NUMERIC(30,8) في Postgres ونستخدم decimal.js لكل عملية حسابية في طبقة التطبيق. الحساب بالفاصلة العائمة لا يلمس الأموال أبداً.

React 19 Vite 6 Hono TypeScript Tailwind CSS v4 shadcn/ui TanStack Query Supabase Upstash Redis BullMQ decimal.js Cloudflare Pages Fly.io NOWPayments Sumsub pgTAP

النتائج

أرقام الإنتاج

$10M+

أصول مُدارة على المنصة

200K+

مستخدم مسجّل عبر جميع البوابات

179

ترحيلات SQL مع اختبارات pgTAP

5

بوابات حسب الدور في قاعدة كود واحدة

تواصل معنا

ابدأ محادثة

أخبرنا عن مشروعك. سنردّ خلال 24 ساعة بخطة واضحة، وجدول زمني تقديري، ونطاق التسعير.

البريد الإلكتروني

hello@savibm.com

مقرّنا في

الإمارات والهند