رابط تثبيت التطبيق
بتبني تطبيق لـ متاجر كتير؟ متطلبش من كل تاجر ينسخ مفتاح. ابعته على رابط تثبيت: يدخل، يشوف تطبيقك طالب إيه بالظبط، يوافق — وإحنا بنبعت مفتاح متجره لسيرفرك.
اعمل الرابط
https://elmatajer.com/install-app
?app_name=YOUR_APP_NAME
&app_description=WHAT_IT_DOES
&app_icon=https://your-app.com/icon.png
&permissions=orders.read,webhooks
&callback_url=https://your-app.com/elmatajer/callback
&webhook_url=https://your-app.com/elmatajer/webhook
&redirect_url=https://your-app.com/connected
| الحقل | إلزامي | الوصف |
|---|---|---|
app_name |
نعم | اسم تطبيقك، بيظهر في شاشة الموافقة. |
callback_url |
نعم | رابط سيرفر (https) بيستلم المفتاح — تحت. |
permissions |
نعم | الصلاحيات مفصولة بفاصلة. |
app_description |
لا | سطر عن تطبيقك. |
app_icon |
لا | رابط صورة مربعة (https). |
webhook_url |
لا | فين تتبعت أحداث المتجر (الويب هوك). محتاج صلاحية webhooks. |
redirect_url |
لا | فين يروح التاجر بعد الموافقة. |
بعد موافقة التاجر
بنبعت POST على callback_url:
{
"api_key": "51|o2NDtg7cT…",
"store_id": 5907,
"scope": "orders.read webhooks",
"webhook_secret": "9fK…",
"api_base": "https://elmatajer.com/api/v1/vendor"
}
احفظ api_key وwebhook_secret لكل متجر. وبعدها المتصفح بيروح لـ redirect_url ومعاه ?status=connected&store_id=5907 (أو status=denied لو التاجر رفض).
بتربط متاجر Easy Orders أصلًا؟
استخدم نفس الرابط اللي بتستخدمه مع Easy Orders — العنوان بس يبقى https://elmatajer.com/install-app. إحنا بنقرا حقول Easy Orders وأسامي صلاحياته زي ما هي:
| Easy Orders | هنا |
|---|---|
orders_webhook |
الطلبات الجديدة، بشكل طلب Easy Orders نفسه (id، cost، shipping_cost، total_cost، status، full_name، phone، government، address، payment_method، cart_items[…product, variant]) |
order_status_webhook |
{"event_type": "order-status-update", "order_id", "old_status", "new_status", "payment_ref_id"} |
الهيدر secret |
كل webhook معاه secret: <webhook_secret> (السر اللي بنبعته لـ callback_url بتاعك) |
orders:read، orders:update، products:read، categories:read، shipping_areas… |
بتتحوّل لـصلاحياتنا، وwebhooks بتتضاف لوحدها |
الـ callback بيستلم api_key وstore_id (ومعاهم webhook_secret وapi_base). كلمات الحالة: pending، confirmed، shipped، delivered، cancelled، returned — وتغيير الحالة بيقبل confirmed وcanceled كمان.
أول ربط بيتراجع
أول مرة تطبيقك يتثبّت، المتاجر بتراجعه. بعد الموافقة أي متجر يقدر يثبّته فورًا. والتاجر يقدر يسحب الصلاحية في أي وقت من التطبيقات المرتبطة.
عايز OAuth 2.0 العادي؟ شوف OAuth.