A build-to-order Frappe app that adds Tabby Buy-Now-Pay-Later as a first-class ERPNext payment method — Pay in 4, monthly installments, eligibility pre-scoring, and product/cart promo messaging. ECOSIRE scopes, builds, installs, and supports it on your ERPNext v15/v16 instance. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $349.00 USD; request a quote for a scoped proposal.

A build-to-order Frappe app that adds Tabby Buy-Now-Pay-Later as a first-class ERPNext payment method — Pay in 4, monthly installments, eligibility pre-scoring, and product/cart promo messaging. ECOSIRE scopes, builds, installs, and supports it on your ERPNext v15/v16 instance.
لا حاجة للدفع الآن. يؤدي هذا إلى إرسال طلب عرض سعر إلى فريقنا — وسنتواصل معك عبر البريد الإلكتروني بالأسعار والخطوات التالية.
GCC retailers running ERPNext consistently lose cart conversion and average order value at the payment step: shoppers in the UAE and Saudi Arabia now expect a Tabby "Pay in 4" option, and when they don't see it they abandon or downsize the basket. ERPNext core ships card and generic payment-gateway integrations, but it has no native concept of a Buy-Now-Pay-Later provider — no pre-checkout eligibility scoring, no product/cart promotional messaging ("or 4 payments of AED X"), and no way to reconcile a BNPL settlement that is captured, partially refunded, or clawed back on a schedule that differs from the sale document. Bolting this onto ERPNext with ad-hoc client scripts creates silent reconciliation gaps that surface as unbalanced payment entries weeks later.
Dedicated Frappe app `erpnext_tabby` with its own module, installed via bench as a versioned, upgrade-safe application rather than loose customizations
`Tabby Settings` single DocType for API keys, merchant code, environment (test/live) toggle, currency and locale config — secret key stored as a `Password` fieldtype, never exposed to the browser
Pre-scoring and eligibility checks invoked through whitelisted server methods so the customer only sees the Tabby option when their cart qualifies
Pay in 4 and monthly installment plans surfaced at checkout with the correct per-installment amounts computed from the live cart total
Product-page and cart-page promo messaging ('or 4 interest-free payments of AED X') rendered via client scripts and Website assets, locale-aware for Arabic and English
`Tabby Session` DocType that logs every checkout session, its Tabby session/payment ID, amount, and status for full traceability
We build a proper Frappe application — erpnext_tabby — installed on your bench as a versioned app, not a pile of loose customizations. It introduces its own module and DocTypes: a Tabby Settings single DocType (holding public/secret API keys, merchant code, environment toggle, and currency/locale config, with secrets stored as Password fieldtype), a Tabby Session DocType logging every checkout session and its provider ID, and a Tabby Webhook Log DocType for idempotent event capture and replay. The checkout flow calls Tabby's pre-scoring endpoint through whitelisted server methods (@frappe.whitelist()) so the browser never touches your secret key; eligibility results and installment plans are returned to the storefront via the Frappe REST API. On the web storefront we register client scripts and Website-level assets that render Tabby's promo snippet on product and cart pages, honoring the shopper's cart total and locale.
The lifecycle is wired through hooks.py document events and scheduler hooks. When a Sales Order or Sales Invoice is submitted against a Tabby session, on_submit doc events create and reconcile the corresponding Payment Entry; capture, refund, and cancellation each map to the correct accounting document so your general ledger always ties out. Tabby's asynchronous settlement is handled by a whitelisted webhook endpoint that verifies the signature, writes to Tabby Webhook Log with a dedupe key (so retries are idempotent), and updates the linked sale document's status. A scheduler_events hourly job reconciles any sessions that were authorized but whose webhook never arrived, closing the gap between "customer paid Tabby" and "ERPNext knows about it." Access is governed by a dedicated role and role profile so only finance and store-admin users can view keys or trigger manual refunds, and all sensitive actions are captured in the standard Frappe audit trail.
Because this is build-to-order, nothing ships as a blind download. We start with a scoping call to confirm your ERPNext version (v15 or v16), storefront setup, Tabby merchant account, currencies, and reconciliation rules, then build against a staging copy of your instance. You review the working integration in UAT before we touch production. Typical delivery is 2 to 4 weeks from confirmed scope. You receive the full app source in a git repository you own, installed and configured on your bench, with documentation, a training session, and a post-go-live support window — no vendor lock-in and no black box.
Runs an online store on ERPNext's web storefront and is losing conversions because shoppers expect Tabby. Wants Pay in 4 live at checkout with promo messaging on product pages to lift both conversion and average order value.
Owns the general ledger and needs every Tabby capture, refund, and settlement to post to the correct Payment Entry so the books reconcile. Cares about the idempotent webhook log, the hourly recovery job, and a clean audit trail.
Manages the bench and other Frappe apps. Wants a properly packaged app with clean hooks.py events, whitelisted methods, and a role profile — not brittle client-script hacks — and full source in git so they can maintain it.
Focused on checkout conversion and AOV. Needs eligibility-aware Tabby messaging on product and cart pages, locale-aware for Arabic and English shoppers across the GCC.
قم بشراء الترخيص من موقع ecosire.com وقم بتنزيل تطبيق Tabby BNPL for ERPNext ZIP من لوحة تحكم حسابك.
قم باستخراج ملف ZIP إلى مجلد تطبيقات مقعدك، أو قم بتشغيل "bench get-app" مع المسار إلى التطبيق المستخرج.
قم بتشغيل `bench --site SITE_NAME install-app APP_NAME` متبوعًا بـ`bench migrate` لتثبيت Tabby BNPL for ERPNext وتطبيق مخططه.
افتح إعدادات ترخيص ECOSIRE على موقعك وقم بتنشيط مفتاح الترخيص الخاص بك. يتطلب تطبيقي ecosire_connect وecosire_license_client المجانيين.
| المعيار | ECOSIRE | بناء مخصص | منافس | أودو الأصلي |
|---|---|---|---|---|
| BNPL support in ERPNext | Purpose-built Tabby app with Pay in 4 and installments | Whatever you scope and build yourself | Generic gateway plugin, often not Tabby-specific | |
| Eligibility pre-scoring | Live pre-scoring via whitelisted server methods | Must design and secure the API calls yourself | Rarely included; usually card-only | |
| Promo messaging on product/cart | Locale-aware snippets via client scripts and Website assets | Hand-built client scripts to maintain | Limited or none | |
| Settlement reconciliation | Idempotent webhook log plus hourly recovery job into Payment Entries | DIY reconciliation, easy to leave gaps | Basic status update, often no recovery job | |
| Code ownership | Full source in a git repo you own | You own it but carry the full build cost | Vendor-controlled, often closed or licensed | |
| Delivery and testing | Staging UAT, rollback plan, 2-4 week build-to-order | Depends entirely on your in-house capacity | Install-and-hope, minimal onboarding | |
| Version fit | Built and tested against your v15/v16 bench | Whatever you target | Generic release, may lag your version | |
| Support after launch | Post-go-live support window plus training | Self-supported | Forum or paid tier, variable |
No. Tabby BNPL for ERPNext is build-to-order. ECOSIRE scopes it to your ERPNext version, storefront, and Tabby merchant account, then builds, installs, and supports it. There is no instant download — you receive a working, tested app installed on your bench with the full source in a git repository you own.
Typical delivery is 2 to 4 weeks from confirmed scope. The timeline starts once we've completed the scoping call and agreed on your ERPNext version, currencies, storefront setup, and reconciliation rules. Complex multi-currency or custom-storefront requirements can extend this, and we confirm the estimate in writing before starting.
We support Frappe/ERPNext v15 and v16. We build and test against your actual bench and Frappe/Python version so the app is upgrade-safe rather than pinned to a generic release.
Capture, refund (full or partial), and cancellation each map to the correct ERPNext Payment Entry or Journal Entry via `hooks.py` doc events. A signature-verified webhook writes to an idempotent `Tabby Webhook Log`, and an hourly scheduler job reconciles any authorized session whose webhook was delayed, so your general ledger always ties out.
Yes — you provide your own Tabby merchant credentials. Secret keys are stored in a `Tabby Settings` DocType as a `Password` fieldtype and are only used inside whitelisted server methods, so the browser and storefront never see them. Access is restricted to a dedicated finance/store-admin role.
Every build includes a post-go-live support window for bug fixes and configuration adjustments. Because you own the git repository and full source, you or your implementation partner can maintain and extend it freely; ECOSIRE can also provide ongoing support or enhancements under a separate agreement.
Yes. We build against a staging copy of your instance and you sign off in UAT before we touch production. We include a documented rollback plan, and the environment toggle in `Tabby Settings` lets you validate in Tabby's test mode before switching to live.
A build-to-order Frappe app that adds Tabby Buy-Now-Pay-Later as a first-class ERPNext payment method — Pay in 4, monthly installments, eligibility pre-scoring, and product/cart promo messaging. ECOSIRE scopes, builds, installs, and supports it on your ERPNext v15/v16 instance.