عندك منصة وفيها تجار؟ اربط منصتك مرة واحدة مع SwiftPayIQ، ويستلم تجارك مدفوعاتهم من داخل نظامك أنت — بدون أن تبني منظومة دفع من الصفر.
يبقى كل تاجر مستقلاً بحسابه ومستنداته وأمواله. ونحن نتولى طبقة الربط التقني.
إذا كانت منصتك تخدم عدداً من التجار — سوق إلكتروني، تطبيق توصيل، نظام ERP أو نقاط بيع، منصة حجوزات، أو منتج SaaS — فإن كل تاجر منهم يحتاج وسيلة لاستقبال المدفوعات الإلكترونية.
اليوم، على كل واحد منهم أن يبحث عن مزوّد بنفسه، ويسجّل بنفسه، ويربط نظامه بنفسه. أغلبهم لن يفعل.
برنامج الشركاء يجعل ذلك جزءاً من منصتك: تربط منصتك بـ SwiftPayIQ ربطاً تقنياً واحداً، ثم تُدخل تجارك عبر هذا الربط. يوافق التاجر بنفسه، ويُراجَع ملفه، وبعد اعتماده تستطيع منصتك إنشاء الفواتير وروابط الدفع ومتابعة حالة كل عملية نيابةً عنه.
ربط واحد يخدم كل تجارك، بدل ربط منفصل لكل واحد منهم.
منصة تجمع عدداً من البائعين، وكل بائع يبيع باسمه ويستلم مستحقاته بنفسه.
مطاعم، عيادات، فنادق، مراكز تدريب — كل جهة داخل تطبيقك تصبح تاجراً مستقلاً.
برنامج محاسبة أو إدارة مبيعات يخدم شركات كثيرة، ويريد إضافة الدفع الإلكتروني إلى منتجه.
تبني حلولاً لعملائك وتريد أن يكون الدفع الإلكتروني جزءاً من الحل الذي تسلّمه.
منتج بالاشتراك يخدم أصحاب المشاريع، وتريد أن يبقى الدفع داخل تجربة المستخدم.
إذا كنت تاجراً واحداً وتريد استقبال مدفوعاتك، فصفحة التجار هي المكان المناسب.
هذه أهم نقطة في البرنامج، ونذكرها بوضوح قبل أي تفصيل تقني.
كل تاجر يستلم أمواله بنفسه.
مبالغ العمليات تنتقل من بوابة الدفع المرخّصة إلى حساب التاجر الخاص به مباشرة وبالكامل. لا تمرّ من منصتك، ولا تمرّ من SwiftPayIQ.
SwiftPayIQ منصة وساطة تقنية، ولا تحتفظ بأموال أحد ولا توجّهها بين الأطراف. والشريك كذلك لا يستلم نيابةً عن تجاره ولا يوزّع عليهم.
أما عمولتك أنت على خدمات منصتك، فتحصّلها من تجارك بالطريقة التي تعتمدها داخل منصتك، خارج مسار الدفع. ولوحتك تعرض حركات تجارك المرتبطين بك لتحتسبها بدقة.
التاجر هو من يمنح كل صلاحية بنفسه، ويستطيع سحب الارتباط في أي وقت من إعدادات حسابه. وعند فكّ الارتباط يتوقف مفتاح منصتك الخاص بذلك التاجر فوراً، بينما يبقى حسابه وأمواله ومفاتيحه الخاصة كما هي.
تستدعي منصتك واجهة الربط، فيُفتح للتاجر صفحة نستضيفها نحن.
يؤكّد رقمه برمز يصله، ويوافق بنفسه على الشروط وعلى ربط حسابه بمنصتك.
يرفع مستمسكاته ووثيقة تخصّ نشاطه. وتستطيع أنت تجهيز بياناته ورفع أوراقه عنه.
يُراجَع الملف من فريق التحقق في بوابة الدفع المرخّصة، وهم الجهة التي تقرّر فتح الحساب. تستغرق المراجعة أياماً لأن المستندات حقيقية والحساب حقيقي. لا نَعِد بموافقة ولا بمدة محددة.
بعد الاعتماد تستطيع منصتك إنشاء الفواتير وروابط الدفع ومتابعة حالة العمليات، ويستلم التاجر مستحقاته على حسابه هو.
نُعدّ لك عنوان العودة، ونصدر مفتاح منصتك، ونراجع خطة الربط معك. محادثة قصيرة توفّر محادثات طويلة لاحقاً.
You have merchants. We have the licensed payment gateways in Iraq. This is how a merchant on your platform becomes one we can charge for — without either of us asking them to copy a secret between two websites.
Almost every integration problem we see comes from using one where the other belongs. They are not interchangeable and they are not the same length of trust.
spp_live_…Your partner key. One per platform.
spi_live_…A merchant key. One per merchant you connect.
A merchant key is returned exactly once. We keep only a hash, so we cannot show it to you again — persist it before you respond to the request. Lose it and the merchant has to authorise you from the beginning.
We do not ask a merchant to copy a key and paste it into your site. They would not know what it was, they would paste it in the wrong box, and a secret that travels through a clipboard and a support chat is a secret nobody controls any more.
Call this with your partner key. You get back a single-use URL — open it for the merchant in a new tab. Every screen that touches a password or a verification code stays on our domain, so their credentials never pass through your servers.
POST /api/v1/partner/onboarding-sessions
Authorization: Bearer spp_live_…
Content-Type: application/json
{ "phone": "+9647701234567" }The page reads the merchant's own records each time rather than storing a step number, so somebody who stops halfway through uploading documents and comes back next week lands on exactly the screen they left.
We return the merchant to the address registered for your account with ?code= on the end. The code grants nothing on its own. It is worth something only in combination with your partner key, which is why it is safe for it to travel through a browser redirect.
POST /api/v1/partner/connections/exchange
Authorization: Bearer spp_live_…
{ "code": "…" }You receive that merchant's own spi_live_… key. From here you act as them: create payment links, issue invoices, read their payments.
A merchant who already trades with SwiftPayIQ is not handed to a platform on the strength of one button press. When they connect a business they already had, we record their consent and then wait for one of our admins to approve it.
Their consent is real and dated. What is missing is our decision — so they return to you with no code, and there is nothing for you to exchange yet.
Once an admin approves, the merchant is waiting for you to pick up. Ask for what is ready when you are able to exchange straight away — each entry carries a fresh code that lives five minutes.
GET /api/v1/partner/connections/pending
Authorization: Bearer spp_live_…
[
{
"businessId": "…",
"businessName": "Al Amal Store",
"code": "…",
"scopes": ["payment_links:write", "invoices:write", "payments:read"],
"expiresAt": "2026-09-04T20:31:00.000Z"
}
]An entry disappears once you hold a key for that merchant, so a run that fails halfway is safe to repeat — you are simply offered the ones you did not finish. An empty array means nothing is waiting.
| Error | What happened |
|---|---|
| partner.no_redirect_uri | No return address is registered for your account, so a finished journey would have nowhere to go. Ask our team to set it before you start. |
| partner.connection_code_invalid | Unknown, expired, already used, or issued for a different partner. One message covers all four on purpose — telling you which codes exist would tell an attacker the same. |
| partner.link_already_pending_review | This merchant's request is already on our desk. Nothing to retry; wait for the decision and collect them from the pending list. |
| partner.business_already_linked | The business belongs to a live connection already — yours or another platform's. A business has one partner at a time. |
The exchange endpoint accepts 30 requests a minute, which is far more than you need — you call it once per merchant, not once per payment. And a code is single use: if your server sends the same one twice at the same moment, exactly one wins and the other is refused.
A merchant can disconnect you at any time from their own settings. The key we issued you for that business stops working immediately; keys they created themselves are untouched.
SwiftPayIQ منصة وساطة تقنية. تتم معالجة المدفوعات وتسويتها حصراً عبر بوابات الدفع الإلكتروني المرخّصة.