بحاجة لـ Backend Developer متخصص في Laravel لإكمال تطبيق Marketplace/On-demand في السعودية

تفاصيل المشروع

🔹 عن المشروع

منصة توصيل تضم 4 تطبيقات: عميل، تاجر، مورد، سائق. الـ Backend مبني بـ Laravel 12 + Sanctum + Reverb (WebSocket) + MySQL.

البنية التحتية المستخدمة:

- السيرفر: DigitalOcean (Staging + Production منفصلان)

- الدومين وDNS: NameCheap

- إدارة المهام: ClickUp (كل التسليمات عبره)

- التواصل والدفع: مستقل حصراً

جزء كبير من الكود موجود وجاهز، نحتاج إكمال المهام التالية:

🔹 المهام الأساسية (P0 — لازم تخلص أول)

• إضافة Payment Gateway حقيقي (Tap أو HyperPay أو Moyasar):

- Charge / Authorize / Capture

- Webhook مع signature verification

- Refund flow + Admin approval queue

- الكود الآن يحتوي GatewayRegistry جاهز — فقط نحتاج إضافة Gateway class

• إكمال Refund Logic:

- Backend logic + Admin approval

- Reverse ledger entries عند الاسترجاع

- إشعار العميل بنتيجة الاسترجاع

• محفظة العميل:

- Client Wallet Model + Balance API

- Apply wallet at checkout

• Driver Proof Photo Endpoint:

- POST /driver/orders/{delivery}/proof

- رفع صورة + تحديث الطلب

🔹 المهام التشغيلية (P1-P2)

• نظام موافقة التاجر (KYC):

- رفع رخصة تجارية + Admin Review + State Machine

• نظام تحقق هوية السائق:

- Iqama + Driving License + Vehicle Docs + Admin Review

• لوحة التحكم التشغيلية:

- Active Orders + Manual Reassign للسائق

- إدارة المحافظ + Payouts

• Driver Offer & Accept:

- Backend Dispatch مع 30-second Timeout

- قبول/رفض الطلب من السائق

• ETA حقيقي:

- Google Distance Matrix API + Caching

- Geofence Auto-Arrival (arrived_at_* من GPS)

- إعداد بيئة DigitalOcean:

- فصل Staging عن Production

- إعداد SSL + Nginx

- إعداد Queue Workers (Supervisor)

- إعداد Database Backups تلقائية

- إعداد Laravel Reverb على السيرفر

🔹 نظام الإعلانات الداخلية — Backend (P2)

نحتاج بناء نظام إعلانات داخل التطبيق يُدار بالكامل من لوحة التحكم:

• جدول Advertisements في قاعدة البيانات:

- نوع الإعلان: صورة / فيديو / بانر

- موضع الظهور: الرئيسية / قائمة المتاجر / صفحة المنتج / Checkout

- تاريخ البداية والنهاية

- الحالة: نشط / متوقف

- رابط عند الضغط (URL أو deep link)

- ترتيب الظهور (sort_order)

• API endpoints للتطبيقات:

- GET /ads?position=home — إعلانات الرئيسية

- GET /ads?position=store_list — إعلانات قائمة المتاجر

- Impression tracking (كم مرة ظهر)

- Click tracking (كم مرة ضُغط)

• Admin Panel — إدارة الإعلانات:

- رفع صور وفيديوهات للإعلانات

- تحديد مواضع الظهور

- جدولة الإعلانات (بداية ونهاية)

- تفعيل/إيقاف فوري

- إحصائيات Impressions + Clicks

🔹 التشديد التقني (P3)

• Health Endpoint (/health)

• Sentry على الـ Backend + Structured Logs

• General API Rate Limiting (per-user + per-IP)

• Token Refresh (Sanctum Expiry + Refresh Endpoint)

• App Version Gate (Server-side Minimum-Version)

• ZATCA Fatoora compliance (QR Code + شكل الفاتورة)

- Dreams SMS: ربط خدمة OTP عبر Dreams SMS

(بديل Twilio — السيستم حالياً يرسل OTP داخلياً ويرسل ف بعض التطبيقات otp فعلي ويعمل

🔹 التقنيات المطلوب معرفتها

• Laravel 12 (إلزامي)

• Payment Gateways (Tap / HyperPay / Moyasar) — الأهم

• MySQL + Eloquent + DB Transactions

• Laravel Reverb / Pusher (WebSocket)

• Queues + Jobs (Laravel Horizon أو Supervisor)

• Sanctum authentication

• Pest (PHP Testing)

- DigitalOcean (Linux server setup + Nginx + SSL)

- Supervisor (Queue Workers management)

- GitHub (إلزامي — كل الكود يُرفع عبره، لا ZIP)

🔹 متطلبات العمل

• خبرة موثقة في ربط بوابات دفع سعودية أو خليجية

• سبق بنى نظام Marketplace أو On-demand

• يكتب كود نظيف قابل للمراجعة

• متاح للتواصل اليومي عن طريق مستقل

• يقدر يبدأ خلال 48 ساعة

رفع المهام عن طريق click up

هناك مهام اضافية سوف تذكر حسب الحاجة اليها

يجب العمل ضمن الفريق

لا مشكلة في استخدام انظمة الذكاء الاصطناعي مع الحفاظ على جودة العمل وجودة التواصل والتسليم

يوجد ملفات داعمة سوف يتم مشاركتها مثل واجهات فيقما وملفات توضيحية ل هيكلية النظام

- التواصل: مستقل حصراً — لا واتساب ولا تيليجرام لأي اتفاق رسمي

- تسليم المهام: ClickUp (تُحدَّث حالة كل مهمة قبل طلب الدفع)

- الكود: GitHub فقط — commits على branch خاص، Pull Request للمراجعة

- الدفع: على milestones محددة بعد اختبار QA وليس مجرد "خلصنا"

🔹 طريقة التقديم

أجاوب على هذه الأسئلة في عرضك:

1. هل ربطت بوابة دفع سعودية من قبل؟ أي بوابة؟

2. كيف تتعامل مع Webhook وصل مرتين لنفس الطلب؟

3. كيف تصمم Wallet Ledger يمنع اختلاف الرصيد؟

4. ماذا تفعل لو تم الدفع ولم يتغير status الطلب؟

5. ما هي خطتك لأول أسبوع في المشروع؟

6. هل سبق عملت على سيرفر DigitalOcean؟ صف كيف تفصل Staging عن Production.

العروض بدون إجابات على هذه الأسئلة لن تُراجع.

حالة المشروع
مُغلق
تاريخ النشر
الميزانية
$250.00 - $500.00
مدة التنفيذ
15 يوما
المهارات

صاحب المشروع
احمد ع.
تاريخ التسجيل
معدل التوظيف
المشاريع المفتوحة 0
مشاريع قيد التنفيذ 1
التواصلات الجارية 9

تقدم للمشروع

العروض المقدمة

السلام عليكم وقبل البدأ فب كتابة تفاصيل العرض احب الأول أن اجاوب على آخر سؤال: الخاص ب digital ocean وتفرقة ال staging من ال production. - نعم، وأفصل البيئتين ب...

لدي خبرة عملية في إعداد السيرفرات السحابية وإدارة بيئات التشغيل: يتم إنشاء خادمين (Droplets) مستقلين تماما في حساب DigitalOcean، خادم للـ Staging وخادم للـ Prod...

أنا مطور Backend متخصص في Laravel، وأستطيع مساعدتك في إكمال تطبيق Marketplace الخاص بك في السعودية. سأقوم بدمج بوابات الدفع المحلية وتطوير نظام المحفظة الرقمية،...

السلام عليكم ورحمة الله وبركاته، اطلعت على تفاصيل المشروع بالكامل، وواضح أن المشروع مبني بشكل احترافي وفيه Architecture ممتاز وتقسيم واضح للمهام والـ Priorities...

مرحبا، شكرا على تفاصيل المشروع الواضحة. أفهم أنكم تبحثون عن مطور لديه خبرة حقيقية في بناء أنظمة Laravel Enterprise تعتمد على: - Payment Gateways - Webhooks - Wa...

السلام عليكم نعم، عملت على Digitalocean أكثر من مرة. عادة أفصل بين: Production droplet Staging droplet وكل بيئة يكون لها: Database مستقلة Domain/subdomain مستقل...

السلام عليكم و رحمة الله و بركاته أنا محمد مبرمج لارافل بخبرة تتجاوز الخمس سنوات قرأت المتطلبات جيدا و قادر على تنفيذها و قمت بتنفيذها مسبقا في مشاريع سابقة. 1....

السلام عليكم أنا محمد خبرة ٦ سنوات أمتلك خبرة قوية في Laravel SaaS والـ Marketplace Systems وعملت على أنظمة تشمل: Wallets Ledger Systems Multi Vendor Marketplac...

السلام عليكم أستاذ أحمد، اطلعت على ملف المشروع بالكامل، وواضح إن فيه شغل كبير متبني بالفعل في الـ core system، خصوصا في الطلبات، المحفظة، التعيين، والإشعارات، و...

أهلا احمد، طبعا مشكلة تكرار الWebhook نتايجها كارثية لاي عمل عشان بتخلي النظام يحسب للعميل اكثر من فاتورة وهو اصلا دفع مرة واحدة, وباتالي بتكون كارثة حسابات الم...

السلام عليكم ، مرحبا م أحمد .. مستعد للبدأ في المشروع بإذن الله وابدأ في أول تاسك وهي ربط بوابة الدفع المطلوبة .. أحتاج الإطلاع على ملفات الفيجما والapi لدارسة ...

أهلا بيك، قريت تفاصيل المشروع بتاعكم بتركيز، وبصراحة الشغل منظم جدا وتحديد الأولويات (من P0 لحد P3) بيوضح إنكم تيم محترف وعارفين إنتو عايزين إيه بالظبط، وده بيش...

قبولك لهذا العرض يعتبر اتفاقاً بينك وبين المستقل وسيبقى موقع مستقل وسيطاً بينكما حتى تسليم المشروع. تأكد من اختيارك للعرض المناسب باتّباع النصائح التالية:

  • راجع صفحة حساب المستقل الذي اخترته واطّلع على أعماله السابقة
  • إن كانت هناك تفاصيل غير مذكورة في المشروع، فتواصل مع المستقل وأخبره بها أولًا
  • بإمكانك أن تتواصل مع المستقل وتسأله عن أية أمور تحتاجها
  • احرص دائمًا على إبقاء التواصل مع المستقل داخل الموقع قدر الإمكان وذلك لضمان حقوقك
  • لا تتردد من التواصل معنا ان احتجت لأي مساعدة، نحن نحب مساعدتك!

المستقل غير متاح حالياً لاستلام مشاريع جديدة. يمكنك إرسال رسالة له لتحديث إعدادات حسابه وتفعيل خيار "متاح للتوظيف"، ثم إعادة المحاولة بعد ذلك، أو اختيار عرض مستقل آخر.