🔌 التكاملات

اربط أي متجر بوصّلني

متجرك يطلب التوصيل تلقائيًا، والعميل يتابع شحنته لحظيًا مع وقت الوصول المتوقّع. ابدأ بإضافة ووردبريس الجاهزة، أو استخدم الـ REST API العام الذي يصلح لأي منصة.

الطريقة الأسهل

إضافة ووردبريس / ووكومرس

إضافة PHP جاهزة تحوّل كل طلب ووكومرس إلى طلب توصيل في وصّلني — مع تحويل عنوان العميل إلى إحداثيات GPS تلقائيًا، وتتبّع الحالة و«الوصول المتوقع» داخل صفحة الطلب للعميل وللتاجر.

🚚 إضافة Wassalni Delivery v2.0

إنشاء تلقائي للتوصيلة عند اكتمال الطلب · ترميز جغرافي للعنوان (OpenStreetMap) · لوحة حالة للتاجر (المندوب/الـETA/إلغاء) · Webhook موقّع (HMAC) لمزامنة الحالة · لوحة تتبّع للعميل مع صورة إثبات التسليم · وضع تجريبي بمفتاح wsl_test_.

⬇️ تنزيل الإضافة (ZIP) وثائق الـ API ↗ ووكومرس 5.0+ · PHP 7.4+ · رخصة MIT

التركيب في 5 خطوات

  1. من لوحة ووردبريس: الإضافات ← أضف جديد ← رفع إضافة ثم ارفع ملف wassalni-woocommerce.zip وفعّلها.
  2. أنشئ مفتاح wsl_live_… من لوحة وصّلني ← مفاتيح API.
  3. اذهب إلى WooCommerce ← Wassalni Delivery وأدخل رابط الـ API والمفتاح وإحداثيات متجرك، ثم اضغط Test connection.
  4. في لوحة وصّلني أضف Webhook إلى الرابط الظاهر في صفحة الإعدادات (/wp-json/wassalni/v1/webhook) وانسخ مفتاح التوقيع إلى الإضافة.
  5. جرّب طلبًا — ستظهر التوصيلة في وصّلني، وتتدفّق الحالة و«الوصول المتوقع» تلقائيًا إلى ووكومرس.
لأي منصة

هل يمكن عمل تكامل لأي متجر؟ — نعم

الإضافة مبنية فوق REST API عام + Webhooks موقّعة. أي متجر (Magento، OpenCart، Salla، Zid، نظام مخصّص، أو حتى Google Sheet) يقدر يستفيد بإحدى ثلاث طرق:

🧩

إضافة جاهزة للمنصة

ووردبريس/ووكومرس الآن، ونفس البنية تتكرّر لأي CMS عبر الـ hooks الخاصة به.

الأفضل للتجار غير التقنيين
🔗

REST API مباشر

أي خادم يرسل POST /api/v1/orders بمفتاح Bearer عند إتمام الطلب، ويستقبل التحديثات عبر Webhook.

الأفضل للأنظمة المخصّصة

Webhook / No-code

اربط متجرك عبر Zapier/Make أو محوّل Webhook (مثل Shopify) دون كتابة كود خادم.

الأفضل للربط السريع

مثال: إنشاء توصيلة من أي خادم

curl -X POST https://tawsilah.softwiro.com/api/v1/orders \
  -H "Authorization: Bearer wsl_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "Order #1042",
    "payment_mode": "cod",
    "product_value": 350,
    "items": [{"name":"T-shirt","qty":2,"unit_price":175}],
    "locations": [
      {"type":"source","lat":30.0626,"lng":31.2497,"sequence":0},
      {"type":"destination","lat":30.0444,"lng":31.2357,"address":"15 Tahrir St","sequence":1}
    ],
    "contacts": [{"type":"destination","name":"Sara","phone":"01000000000"}]
  }'

استقبال تحديثات الحالة (Webhook)

سجّل رابطك عبر POST /api-keys/{id}/webhooks لتصلك أحداث order.accepted · order.picked_up · order.in_transit · order.delivered · order.location_updated · order.sla_breached. كل طلب موقّع بـ X-Wassalni-Signature: sha256=… = HMAC‑SHA256 للجسم بسرّك.

# Python — التحقق من توقيع الـ Webhook
import hmac, hashlib
def verify(secret, raw_body, header_sig):
    expected = hmac.new(secret.encode(), raw_body, hashlib.sha256).hexdigest()
    return hmac.compare_digest(expected, header_sig.removeprefix("sha256="))
ملاحظة أمان: مفتاح الـ API سرّي ويُستخدم من خادم متجرك فقط — لا تضعه في كود يعمل في المتصفح. لعرض تتبّع للعميل، استخدم إضافة المنصة (تمرّر الطلب عبر خادمك) أو محوّل Webhook كما في Shopify.
محوّل جاهز

Shopify

وصّلني يوفّر نقطة استقبال webhook لـ Shopify — تسجّل رابطًا واحدًا في Shopify وتُنشأ التوصيلة تلقائيًا عند تنفيذ الطلب، مع التحقق من توقيع X-Shopify-Hmac-Sha256.

الخطوةالقيمة
الحدثOrder fulfilled / Order paid
الرابط (URL)…/api/v1/integrations/shopify/order?key=wsl_live_YOUR_KEY
السرّانسخ Signing secret إلى SHOPIFY_WEBHOOK_SECRET في الخادم

التفاصيل الكاملة في وثائق الـ API وملف integrations/README.md في المستودع.