Fina Integration for Odoo
Register with Fina, clear invoices with ZATCA, collect payment through a link, and offer B2B Buy Now, Pay Later.
Confirm a quotation and the module does the rest: the order syncs to Fina Pay, the payment link goes out to your customer, ZATCA clears the invoice, and the invoice is created in Odoo with the payment reconciled. Every reference, status and URL is written back onto the order.
B2B Buy Now, Pay Later
Extend terms to your buyers. Keep your cash flow.
1. Onboard from your company profile
No API keys to copy. No separate signup form.
Fina Account
A Fina tab is added under Settings → Users & Companies → Companies. Company name (English and Arabic), CR number, VAT number, primary contact and address are pre-filled from your Odoo company record. Verify the phone by OTP, submit, and the status moves from In Progress to Registered. Refresh status and Reset Onboarding are there when you need them.
Fina Invoicing (ZATCA Phase 2)
Locked until the account is registered. Generate a one-time OTP in the ZATCA fatoora portal, paste it in and click Activate Invoicing. Once Enabled, tick Allow auto sync with Fina Invoicing after confirm sale order and every confirmed order is pushed automatically.
2. Your payment methods, synced live
Fina Pay and Fina BNPL, with status you can see.
Fina Pay
The customer payment methods configured on your merchant account are listed in Odoo with their English and Arabic names and a Verified status — Mada, Visa, MasterCard, generic credit/debit cards, Tamara and Fina. Change the on/off mix in the Fina portal and click Refresh methods; Odoo picks up the change.
Fina BNPL
BNPL registration is reviewed in the Fina portal. Fina notifies Odoo automatically when your merchant account is approved — the block flips to Approved / BNPL Available and the option becomes selectable on orders. Nothing else to configure.
3. Choose how this order gets paid
Per order, on the quotation form.
- Tick Process with Fina and pick a Fina Payment Method: offer the customer everything (All) or lock the order to Mada, Visa, MasterCard, cards in general, Tamara, or Fina BNPL.
- A banner confirms the integration is active and that the order will sync with Fina Pay on confirmation, based on your company configuration.
- Select the BNPL method and Odoo tells you up front what will happen: when the order is invoiced, the Fina BNPL provider is set as the invoice customer — so the receivable sits with Fina, not with your buyer.
4. Confirm once. The rest is automatic.
→
Synced
The order is pushed to Fina Pay the moment you confirm it.
→
Payment link sent
Your customer receives the link. The order shows Waiting for Payment until they pay.
→
ZATCA cleared
Clearance status comes back as Cleared and the invoice is created for you.
→
Paid
Payment is registered against the invoice and logged in the chatter.
5. What your customer sees
A hosted checkout page, in English or Arabic. No login. No app to install.
The payment link opens a checkout branded with your company name, showing the order lines, VAT and total, and only the payment methods you allowed on the order — card, Tamara or Fina. A language toggle switches the whole page to Arabic.
Confirm the number
The buyer confirms the phone number Fina uses to find their account.
Verify by code
A 4-digit code is sent by SMS and expires in 60 seconds.
Confirm the payment
Available balance, order amount, method and reference are shown before anything is charged.
Done
The buyer gets an order ID, and Odoo is updated with the payment on the next callback.
6. Every reference, on the order
Nothing silently fails between Odoo and Fina.
- Fina Integration: Fina reference, sync status, invoice ID, invoice URL, payment URL, voucher ID, payment status, the method the customer actually used, and the last sync date.
- Invoice info: Fina invoice count, credit note number, reversal reason and refund method.
- ZATCA state: the clearance state of the document, shown as a badge on the order.
- Support can answer “did it reach Fina, and did the customer pay?” without leaving the sale order.
7. Credit notes, the ZATCA way
Reverse an invoice with the reason ZATCA expects.
The standard Odoo credit note wizard gains a ZATCA Reason field, and the resulting credit note number, reversal reason and refund method are written back onto the order.
Requirements
- External service: this module connects to the Fina platform. A Fina merchant account is required for it to work. Registration, credit assessment, payment processing, ZATCA clearance and settlement happen at Fina, not inside Odoo.
- ZATCA: activating Fina Invoicing requires a one-time OTP that your company generates in the ZATCA fatoora portal.
- BNPL approval: the Fina BNPL method becomes selectable only after Fina approves your merchant account.
- Data sent to Fina: the company details shown on the Fina tab (name, CR, VAT, contact, phone, address) and the order or invoice data needed to process a transaction.
- Availability: designed for merchants operating in Saudi Arabia, invoicing in SAR.
- Dependencies: Sales and Invoicing.
Need help?
Our team supports every merchant using this module. Write to support@fina.sa and we will get back to you.
Bug reports, configuration questions and onboarding assistance are all covered.
تكامل Fina مع Odoo
سجّل شركتك في Fina، وفعّل الفوترة الإلكترونية المعتمدة من هيئة الزكاة والضريبة والجمارك، واستقبل المدفوعات عبر رابط، وامنح عملاءك من المنشآت خيار الشراء الآن والدفع لاحقًا.
أكّد عرض السعر وسيتكفّل التطبيق بالباقي: تتم مزامنة الطلب مع Fina Pay، ويصل رابط الدفع إلى عميلك، وتُخلَّص الفاتورة لدى هيئة الزكاة والضريبة والجمارك، ثم تُنشأ الفاتورة في Odoo وتُسوّى الدفعة. كل مرجع وحالة ورابط يُسجَّل تلقائيًا داخل أمر البيع.
الشراء الآن والدفع لاحقًا للمنشآت
امنح عملاءك مهلة سداد، واحتفظ بسيولتك.
١. التسجيل من ملف شركتك
بدون مفاتيح API، وبدون نموذج تسجيل منفصل.
حساب Fina
يضيف التطبيق تبويب Fina ضمن الإعدادات ← المستخدمون والشركات ← الشركات. تُعبّأ بيانات الشركة (الاسم بالعربية والإنجليزية، السجل التجاري، الرقم الضريبي، جهة الاتصال والعنوان) تلقائيًا من ملف شركتك. تحقّق من رقم الجوال برمز يصلك عبر رسالة نصية، ثم أرسل البيانات لتتحوّل الحالة إلى مسجّل.
فوترة Fina (المرحلة الثانية)
تبقى مقفلة حتى يُسجَّل الحساب. أنشئ رمزًا لمرة واحدة من بوابة فاتورة، والصقه، ثم اضغط تفعيل الفوترة. بعد التفعيل، فعّل خيار المزامنة التلقائية بعد تأكيد أمر البيع لتُرسل كل طلب مؤكَّد تلقائيًا.
٢. طرق الدفع، محدّثة مباشرةً
Fina Pay و Fina BNPL، مع حالة واضحة أمامك.
- تظهر طرق الدفع المفعّلة على حساب التاجر داخل Odoo بأسمائها بالعربية والإنجليزية وبحالة موثّقة: مدى، فيزا، ماستركارد، البطاقات الائتمانية، تمارا، و Fina.
- عدّل الطرق المفعّلة من بوابة Fina ثم اضغط تحديث الطرق ليلتقط Odoo التغيير.
- تتم مراجعة طلب الشراء الآن والدفع لاحقًا في بوابة Fina، وتُبلَّغ Odoo تلقائيًا فور اعتماد حساب التاجر لتتحوّل الحالة إلى معتمد ويصبح الخيار متاحًا.
٣. اختر طريقة دفع هذا الطلب
لكل أمر بيع على حدة.
- فعّل خيار المعالجة عبر Fina ثم اختر طريقة الدفع: أتِح لعميلك كل الطرق، أو حدّد مدى أو فيزا أو ماستركارد أو البطاقات أو تمارا أو الشراء الآن والدفع لاحقًا.
- عند اختيار الشراء الآن والدفع لاحقًا، يوضّح Odoo ما سيحدث مسبقًا: عند إصدار الفاتورة يصبح مزوّد Fina BNPL هو عميل الفاتورة، أي أن الذمة المدينة تقع على Fina لا على المشتري.
٤. أكّد مرة واحدة، والباقي تلقائي
المزامنة
يُرسَل الطلب إلى Fina Pay لحظة تأكيده.
إرسال رابط الدفع
يصل الرابط إلى عميلك، ويظهر الطلب بحالة بانتظار الدفع.
تخليص الفاتورة
تعود حالة التخليص مُخلَّصة، وتُنشأ الفاتورة تلقائيًا.
السداد
تُسجَّل الدفعة على الفاتورة وتُوثَّق في سجل المحادثة.
٥. ما الذي يراه عميلك
صفحة دفع مستضافة، بالعربية أو الإنجليزية. بلا تسجيل دخول، وبلا تطبيق.
يفتح رابط الدفع صفحة تحمل اسم شركتك، وتعرض بنود الطلب وضريبة القيمة المضافة والإجمالي، مع طرق الدفع التي سمحت بها في أمر البيع فقط. وزر تبديل اللغة يحوّل الصفحة بالكامل إلى العربية.
تأكيد الرقم
يؤكّد المشتري رقم الجوال المرتبط بحسابه في Fina.
رمز التحقق
يصل رمز من ٤ أرقام عبر رسالة نصية وتنتهي صلاحيته خلال ٦٠ ثانية.
تأكيد الدفع
يظهر الرصيد المتاح وقيمة الطلب وطريقة الدفع والمرجع قبل أي خصم.
تم
يحصل المشتري على رقم الطلب، ويُحدَّث Odoo بالدفعة تلقائيًا.
٦. كل المراجع داخل أمر البيع
لا شيء يضيع بين Odoo و Fina.
- تكامل Fina: المرجع، حالة المزامنة، رقم الفاتورة ورابطها، رابط الدفع، رقم القسيمة، حالة السداد، الطريقة التي استخدمها العميل فعليًا، وتاريخ آخر مزامنة.
- بيانات الفاتورة: عدد الفواتير، رقم الإشعار الدائن، سبب العكس، وطريقة الاسترداد.
- حالة الهيئة: حالة التخليص تظهر كشارة على الطلب.
٧. الإشعارات الدائنة وفق متطلبات الهيئة
اعكس الفاتورة مع السبب المطلوب نظاميًا.
يضيف التطبيق حقل سبب الهيئة إلى نافذة الإشعار الدائن في Odoo، ويُسجَّل رقم الإشعار وسبب العكس وطريقة الاسترداد داخل أمر البيع.
المتطلبات
- خدمة خارجية: يتصل هذا التطبيق بمنصة Fina، ويتطلب حساب تاجر فعّال. تتم عمليات التسجيل والتقييم الائتماني ومعالجة المدفوعات والتخليص والتسوية لدى Fina وليس داخل Odoo.
- هيئة الزكاة والضريبة والجمارك: يتطلب تفعيل الفوترة رمزًا لمرة واحدة تنشئه شركتك من بوابة فاتورة.
- اعتماد BNPL: يصبح خيار الشراء الآن والدفع لاحقًا متاحًا بعد اعتماد Fina لحساب التاجر.
- البيانات المُرسلة إلى Fina: بيانات الشركة الظاهرة في تبويب Fina، وبيانات الطلب أو الفاتورة اللازمة لإتمام العملية.
- النطاق: مصمَّم للمنشآت العاملة في المملكة العربية السعودية، وبالريال السعودي.
تحتاج مساعدة؟
فريقنا يدعم كل تاجر يستخدم هذا التطبيق. راسلنا على support@fina.sa وسنعود إليك.
الدعم يشمل بلاغات الأخطاء وأسئلة الإعداد والمساعدة في التسجيل.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Sales (sale_management) • Discuss (mail) |
| Community Apps Dependencies | Show |
| Lines of code | 2937 |
| Technical Name |
fina_pay_integration |
| License | AGPL-3 |
Please log in to comment on this module