A MyFatoorah aggregator integration for ERPNext that turns GCC-local rails — KNET, mada, Benefit, Apple Pay — into a single connector with invoice-based payment links, webhook-verified settlement, and refund sync. ECOSIRE builds, installs, and supports it after a scoping call; it is not an instant download. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $299.00 USD; request a quote for a scoped proposal.

A MyFatoorah aggregator integration for ERPNext that turns GCC-local rails — KNET, mada, Benefit, Apple Pay — into a single connector with invoice-based payment links, webhook-verified settlement, and refund sync. ECOSIRE builds, installs, and supports it after a scoping call; it is not an instant download.
Sin pago ahora. Esto envía una solicitud de presupuesto a nuestro equipo; te responderemos por correo con precios y próximos pasos.
Selling online across the GCC means supporting the rails buyers actually use — KNET in Kuwait, mada in Saudi Arabia, Benefit in Bahrain, plus Apple Pay and cards — and each one is its own integration, credential set, and settlement report. ERPNext ships payment gateway plumbing (Payment Gateway Account, the Integrations app, generic Razorpay/Stripe/PayPal connectors) but nothing that speaks MyFatoorah's aggregator API. Without it, finance teams reconcile MyFatoorah settlements by hand, sales orders sit unpaid while a customer waits for a bank-transfer instruction, and no ERPNext document ever knows a payment succeeded until someone types it in. That manual gap is where cash gets stuck.
`MyFatoorah Settings` single DocType with live/test toggle, base country/currency, and API secrets stored via Frappe's encrypted-field mechanism rather than in code
`MyFatoorah Transaction` DocType logging InvoiceId, PaymentId, source ERPNext document, gateway, status history, and settlement/refund records as a permissioned, reportable document
Aggregated `InitiatePayment` + `SendPayment` flow presenting KNET, mada, Benefit, Apple Pay, and cards through one API, with per-method routing driven by MyFatoorah's supported-methods response
`hooks.py` `doc_events` on Sales Invoice / Sales Order submit to auto-generate a payment link and dispatch it through ERPNext's standard email/notification pipeline
Payment Request integration so ERPNext's native 'pay now' URL resolves to a live MyFatoorah hosted checkout instead of a placeholder
Signature-verified webhook exposed as a whitelisted `@frappe.whitelist(allow_guest=True)` endpoint that creates the `Payment Entry` server-side — browser callback status is never trusted
We build a proper Frappe app — myfatoorah_erpnext — installed on your bench alongside ERPNext, not a fragile script bolted onto Payment Request. It ships a MyFatoorah Settings single DocType (API key, live/test toggle, currency, default success/error URLs, encrypted secrets) and a MyFatoorah Transaction DocType that logs every InvoiceId, PaymentId, invoice reference, status transition, and settlement/refund record so every payment is a queryable, permissioned ERPNext document. Whitelisted methods wrap MyFatoorah's SendPayment, ExecutePayment, GetPaymentStatus, and refund endpoints, and its InitiatePayment call lets you present KNET, mada, Benefit, and Apple Pay in one API instead of routing per method. Because MyFatoorah is an aggregator, one connector covers many local gateways with a single credential.
Technically, the flow hangs off ERPNext's own documents. A hooks.py doc_events handler on Sales Invoice / Sales Order submit can generate a MyFatoorah payment link and email it to the customer via the standard notification pipeline; a Payment Request gets a working "pay now" URL instead of a dead one. Confirmation comes back through a webhook exposed as a whitelisted, signature-verified endpoint — we validate MyFatoorah's callback, then create the ERPNext Payment Entry against the invoice on the server side so status is never trusted from the browser. A scheduler event (scheduler_events in hooks.py) polls GetPaymentStatus for pending transactions and pulls settlement and refund updates, so reconciliation is automatic. Client scripts surface a "Pay via MyFatoorah" action and live status on the invoice form; role profiles and DocType permissions keep API keys and refund actions restricted to the roles you nominate. Recurring and embedded-checkout flows are wired the same disciplined way. Everything targets Frappe/ERPNext v15 and v16 and is delivered against your exact edition and workflow.
This is a build-to-order engagement, not a marketplace download. It starts with a short scoping call to confirm your MyFatoorah account type, the methods you need (KNET / mada / Benefit / Apple Pay / cards), the trigger documents, and your ERPNext version. We then build against a written scope, validate on a staging bench with UAT, and only cut over to production with a rollback plan agreed in advance. Typical delivery is 2-4 weeks from confirmed scope, and you receive the full source and git repository so nothing is a black box.
A retailer or wholesaler selling across Kuwait, Saudi Arabia, and Bahrain who needs KNET, mada, and Benefit accepted from one ERPNext connector instead of maintaining a separate integration and reconciliation process per country.
Owns cash application and month-end reconciliation. Wants MyFatoorah settlements and refunds landing as Payment Entries automatically, with a permissioned audit trail, so no one keys payments in by hand or reconciles bank deposits in a spreadsheet.
Runs the bench and owns the app estate. Needs a proper Frappe app with clean hooks, encrypted credentials, role-gated permissions, and full source in a git repo — not an unmaintainable script — running cleanly on v15/v16.
Bills recurring or embedded-checkout payments and needs MyFatoorah's recurring and inline-payment capabilities tied back to ERPNext invoices and subscriptions with reliable, webhook-verified status.
Compre la licencia en ecosire.com y descargue la aplicación ZIP de MyFatoorah Payment Gateway for ERPNext desde el panel de su cuenta.
Extraiga el ZIP en la carpeta de aplicaciones de su banco o ejecute `bench get-app` con la ruta a la aplicación extraída.
Ejecute `bench --site SITE_NAME install-app APP_NAME` seguido de `bench migrar` para instalar MyFatoorah Payment Gateway for ERPNext y aplicar su esquema.
Abra la configuración de licencia de ECOSIRE en su sitio y active su clave de licencia. Requiere las aplicaciones gratuitas ecosire_connect y ecosire_license_client.
| Criterio | ECOSIRE | Construcción personalizada | Competidor | Odoo Nativo |
|---|---|---|---|---|
| GCC method coverage (KNET/mada/Benefit/Apple Pay) | All via MyFatoorah aggregator in one connector | Each method integrated and maintained separately | Usually single-gateway (Stripe/Razorpay), no MyFatoorah | |
| Fit to your ERPNext workflow | Built to your v15/v16 documents and triggers | Fully custom but you own the whole build | Generic; you bend your process to fit it | |
| Payment confirmation integrity | Signature-verified webhook, server-side Payment Entry | Depends on your team's rigor | Varies; often trusts redirect status | |
| Settlement & refund sync | Automated settlement match + refund API + reversing entry | Build it yourself | Rarely included | |
| Source & ownership | Full git repo + source handover | You own it; you also built it | Closed or partial source | |
| Support & maintenance | Post-go-live window + optional ongoing support | Your team maintains everything | Vendor SLA, often paid tiers | |
| Time to production | 2-4 weeks build-to-order from confirmed scope | Months, unpredictable | Fast install but poor GCC fit | |
| Credential & permission security | Encrypted fields + role-gated refunds and keys | Depends on implementation | Varies by app |
No. This is a build-to-order engagement. ECOSIRE builds the `myfatoorah_erpnext` app for your specific ERPNext version and workflow, installs it, and supports it. It is not an existing marketplace app you download and self-install.
Typical delivery is 2-4 weeks from confirmed scope. The clock starts once we've agreed the written scope on a short scoping call — MyFatoorah account type, the methods you need (KNET / mada / Benefit / Apple Pay / cards), the trigger documents, and your ERPNext version. Complex multi-company or recurring setups can extend this, which we flag before you commit.
We build and test against Frappe/ERPNext v15 and v16. If you're on an older version we can discuss a compatible build or an upgrade path during scoping.
Yes. MyFatoorah is the payment aggregator and merchant of record for your funds; you hold the account and API credentials, and the enabled methods (KNET, mada, Benefit, Apple Pay, cards) depend on your MyFatoorah contract. We integrate ERPNext with your account — we don't resell payment processing.
Confirmation is server-side. MyFatoorah's callback hits a signature-verified whitelisted webhook, and only after validating it do we create the ERPNext Payment Entry. The browser redirect is never trusted as proof of payment, and a scheduler job re-polls `GetPaymentStatus` to catch any missed webhook, with idempotent posting so retries never double-count.
Every engagement includes a post-go-live support window for defect fixes and configuration adjustments. Because you receive the full git repository and source, your team can maintain it too. Ongoing maintenance — new MyFatoorah methods, ERPNext version upgrades, or enhancements — is available as a separate support arrangement.
Yes. Refunds are initiated from a permission-gated action that calls MyFatoorah's refund API and writes a reversing Payment Entry. A settlement sync pulls MyFatoorah deposit records and matches them to Payment Entries so month-end reconciliation is automatic rather than manual.
A MyFatoorah aggregator integration for ERPNext that turns GCC-local rails — KNET, mada, Benefit, Apple Pay — into a single connector with invoice-based payment links, webhook-verified settlement, and refund sync. ECOSIRE builds, installs, and supports it after a scoping call; it is not an instant download.