Skip to main content
Tap Payments Gateway for ERPNext — A Frappe app that wires Tap Payments into ERPNext checkout, sales invoices, and subscripti — 1/1Illustrative preview

A Frappe app that wires Tap Payments into ERPNext checkout,

sales invoices, and subscriptions with native support for KNET, mada, benefit, Apple Pay, and GCC card schemes.

ECOSIRE builds it to your scope, installs it on your bench, and supports it after go-live — this is not an instant marketplace download.

What is Tap Payments Gateway for ERPNext?

A Frappe app that wires Tap Payments into ERPNext checkout, sales invoices, and subscriptions with native support for KNET, mada, benefit, Apple Pay, and GCC card schemes. ECOSIRE builds it to your scope, installs it on your bench, and supports it after go-live — this is not an instant marketplace download. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

Native `Payment Request` and Web Checkout integration so ERPNext orders route to Tap without leaving the standard payment lifecycle
KNET, mada, benefit and GCC local scheme acceptance configured per enabled brand in `Tap Payments Settings`
Apple Pay and Google Pay buttons rendered on checkout via the goSell SDK Client Script
goSell hosted checkout for redirect-based flows plus direct Charges API for embedded card capture
Tokenized recurring charges driven from the ERPNext `Subscription` DocType using stored Tap `customer`/`card` tokens
Webhook endpoint that verifies Tap's `hashstring` HMAC signature before mutating any document
`Payment Entry` posted against the correct account only on Tap `CAPTURED` status, keeping ledgers reconciled
`@frappe.whitelist()` methods for charge creation, status polling, capture and refund from server or client scripts
Scheduler event that reconciles pending charges and expires abandoned checkout sessions automatically
Full and partial refunds initiated from the ERPNext UI, writing back Tap refund IDs to the source document
Multi-currency GCC settlement handling with per-transaction currency stored on the charge record
Idempotent charge creation keyed to the `Payment Request` name to prevent double-billing on retries
Role profile and permission rules restricting live secret keys to a Payments Manager role
Structured `Tap Charge Log` DocType capturing raw request/response payloads for reconciliation and dispute evidence
Test/live key toggle so staging UAT runs on Tap sandbox before the production cutover

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your ERPNext.

  3. 3

    Go live + support

    You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.

Technical Specifications

ERPNext Compatibility
—
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
MariaDB 10.6+

About this Product

GCC e-commerce merchants running ERPNext hit a wall the moment they try to take real local payments. ERPNext ships generic gateway hooks (Razorpay, Stripe, PayPal, Braintree) and a Payment Gateway / Payment Request flow, but none of them speak the schemes your Kuwaiti, Saudi, and Emirati customers actually use — KNET, mada, benefit, or Apple Pay through a regional acquirer. Merchants end up bolting a hosted redirect onto the website, reconciling settlements by hand, and manually marking Sales Invoices as paid, which breaks the audit trail and leaves recurring billing impossible.

We build a proper Frappe app (erpnext_tap) that integrates Tap Payments directly into ERPNext's payment lifecycle. It registers a Tap Payments Settings single DocType for credentials and scheme configuration (test/live secret keys, merchant ID, enabled brands, settlement currency), extends the standard Payment Request and Web Checkout so charges are created through Tap's Charges API or the goSell hosted checkout, and captures the customer on Tap's token/source objects. Doc events wired through hooks.py (Payment Request on_submit, Sales Invoice on_update) create the charge and post a Payment Entry against the correct account only after Tap confirms CAPTURED — so ledgers never drift from acquirer reality.

Technically, the app exposes @frappe.whitelist() methods for charge creation, status polling, and refunds, plus a public webhook endpoint that validates Tap's hashstring HMAC signature before updating the linked document — guarding against spoofed callbacks. A scheduler event (hooks.py scheduler_events) reconciles pending charges and expires stale sessions, so a dropped redirect never leaves an order stuck. For subscriptions we store the Tap customer and card tokens against the ERPNext Customer to drive tokenized recurring charges from the Subscription DocType. Client Scripts render the goSell card SDK and Apple Pay / Google Pay buttons on the checkout, and role profiles plus permission rules keep secret keys visible only to your Payments Manager.

Because this is build-to-order, nothing ships as a one-click install. After a short scoping call we confirm your acquirer setup, enabled schemes, settlement currency, and ERPNext/Frappe version (v15 or v16). We build against a staging bench, run UAT with your real Tap test keys, hand over a git repository plus install and configuration docs, then install on your production bench and stay on a support window through go-live. Typical delivery is one working week from confirmed scope.

What you get

  • Installable Frappe app source code (`erpnext_tap`) targeting your confirmed ERPNext/Frappe v15 or v16
  • Installation on your bench plus configuration of Tap credentials, schemes and settlement currency
  • Technical documentation — DocTypes, hooks, whitelisted methods, webhook contract and reconciliation logic
  • End-user guide and a live training session for your finance and store-operations team
  • UAT on a staging bench against Tap sandbox keys, with a documented rollback plan
  • Post-go-live support window covering defect fixes and configuration assistance
  • Git repository handover with full commit history and tagged release
  • Reconciliation runbook mapping Tap settlement reports to ERPNext Payment Entries

Who this is for

Kuwaiti online retailer on ERPNext

Runs a Frappe/ERPNext storefront and must accept KNET, the scheme most Kuwaiti shoppers expect. Needs checkout, invoice, and ledger to stay in sync automatically instead of manually marking invoices paid.

Saudi e-commerce finance manager

Wants mada and Apple Pay acceptance with settlement in SAR and clean reconciliation between Tap settlement reports and ERPNext Payment Entries for VAT and audit.

UAE multi-scheme merchant

Sells across the GCC and needs one gateway handling benefit, mada, KNET and international cards with multi-currency settlement, all inside their existing ERPNext instance.

Subscription/SaaS business on ERPNext

Bills recurring plans and needs tokenized card-on-file charges driven from the ERPNext `Subscription` DocType, with PCI-safe token storage rather than raw card data.

How Tap Payments Gateway for ERPNext Compares

CriterionECOSIRECustom BuildCompetitorERPNext Native
Local GCC schemes (KNET/mada/benefit)Native, configured per enabled brandPossible but you build each schemeRarely covers GCC schemesNot supported — generic gateways only
Apple Pay / Google PaygoSell SDK buttons on checkoutManual SDK integration effortSometimes, often partialNo first-class support
Ledger reconciliationPayment Entry on CAPTURED + runbookDepends on your build qualityBasic, often manualManual invoice marking
Tokenized recurring billingDriven from Subscription DocTypeSignificant extra engineeringUsually one-off charges onlyNot available for GCC gateways
Webhook securityHMAC hashstring verificationOnly if you implement itVaries, sometimes unsignedN/A
ERPNext v15/v16 fitBuilt and tested to your versionYour team's responsibilityMay lag core releasesCore, but no Tap support
Support & handoverSupport window + git repo + docsYou own all maintenanceVendor SLA variesCommunity forums only
Delivery modelBuild-to-order, one working weekLong in-house build cycleInstant but genericImmediate but no GCC gateway

Frequently Asked Questions about Tap Payments Gateway

Is this a ready-made app I can download and install today?

No. This is build-to-order. ECOSIRE builds the `erpnext_tap` app to your confirmed scope — your acquirer setup, enabled schemes, settlement currency and ERPNext version — then installs and supports it. There is no instant marketplace download.

How long does delivery take?

Typical delivery is one working week from confirmed scope. Timelines depend on how many schemes you enable, whether recurring billing is in scope, and how quickly your Tap acquirer credentials and staging bench are available.

Which ERPNext and Frappe versions are supported?

We build and test against Frappe/ERPNext v15 and v16. We confirm your exact version during the scoping call and target that release so the app installs cleanly on your bench.

What support and updates come after go-live?

You get a post-go-live support window for defect fixes and configuration help, plus the full git repository so your team can maintain it. Ongoing maintenance — Tap API changes, ERPNext upgrades, new schemes — can be arranged as a separate agreement.

How are card details and recurring payments kept secure?

The app never stores raw card data. Card capture happens in Tap's goSell SDK, and only Tap `customer`/`card` tokens are stored against the ERPNext `Customer` for tokenized recurring charges. Webhooks are verified via Tap's `hashstring` HMAC signature, and live secret keys are restricted by permission rules to a Payments Manager role.

Does it keep the ERPNext ledger reconciled with Tap settlements?

Yes. A `Payment Entry` is posted only when Tap confirms a `CAPTURED` charge, a scheduler event reconciles pending charges, and a `Tap Charge Log` captures raw payloads. We also hand over a reconciliation runbook mapping Tap settlement reports to Payment Entries.

Can it handle multiple GCC currencies and schemes at once?

Yes. You can enable KNET, mada, benefit and international cards together, with the transaction currency stored per charge and multi-currency GCC settlement handled through your Tap account configuration.

Request a quote

Tap Payments Gateway

A Frappe app that wires Tap Payments into ERPNext checkout, sales invoices, and subscriptions with native support for KNET, mada, benefit, Apple Pay, and GCC card schemes. ECOSIRE builds it to your scope, installs it on your bench, and supports it after go-live — this is not an instant marketplace download.

  • Native `Payment Request` and Web Checkout integration so ERPNext orders route to Tap without leaving the standard payment lifecycle
  • KNET, mada, benefit and GCC local scheme acceptance configured per enabled brand in `Tap Payments Settings`
  • Apple Pay and Google Pay buttons rendered on checkout via the goSell SDK Client Script
  • goSell hosted checkout for redirect-based flows plus direct Charges API for embedded card capture

Request a Quotation

Tell us about your Tap Payments Gateway requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.