Skip to main content
Fawry Payment Gateway for Odoo (Egypt) — Egyptian cards, wallets, and Fawry pay-at-outlet cash on Odoo — reference codes, web — 1/1Illustrative preview

Egyptian cards, wallets, and Fawry pay-at-outlet cash on Odoo

— reference codes, webhook reconciliation, EGP, and refunds. Built to order.

What is Fawry Payment Gateway for Odoo (Egypt)?

Egyptian cards, wallets, and Fawry pay-at-outlet cash on Odoo — reference codes, webhook reconciliation, EGP, and refunds. Built to order. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

Native Odoo `payment.provider` + `payment.transaction` extension — Fawry appears as a first-class payment method in eCommerce checkout, sales order 'pay now' links, and customer portal invoices
Accept Egyptian debit/credit cards through Fawry's hosted card flow (3-D Secure handled by Fawry, so no PCI card data touches your Odoo server)
Mobile wallet payments — Vodafone Cash, Etisalat Cash, Orange Money and other Fawry-supported wallets — selectable at checkout
Pay-at-outlet cash flow: generates a Fawry reference code the customer takes to any Fawry point, machine, or app to pay in cash
Configurable reference-code expiry window (e.g. 24/48/72 hours) with the deadline shown to the customer and stored on the `payment.transaction`
QWeb-rendered Fawry payment voucher/receipt attached to the order and emailed automatically, showing the reference code, amount in EGP, and expiry
Signed webhook controller that validates Fawry's SHA-256 hash signature on every callback and rejects tampered or replayed notifications
Automatic reconciliation — a verified Fawry callback moves the Odoo order/invoice to paid, posts payment to the mapped EGP journal, and confirms the sale order
EGP localization: currency, amount rounding, and Fawry's minor-unit formatting handled correctly so totals match to the piastre
Refund support from the Odoo transaction form (partial and full where your Fawry contract permits), with the refund state synced back onto the record
Sandbox/production toggle on the provider record — validate the full flow with test reference codes before flipping a single field to go live
Full transaction traceability: Fawry order reference, merchant reference, payment method, and raw callback payload logged on each `payment.transaction` for audit and support
Credentials (merchant code, secure hash key) stored on the provider record and guarded by `ir.model.access.csv` + record rules — never committed to code, never exposed to portal users
Scheduled automated action that expires stale pending reference codes and cancels their draft orders so your pipeline stays clean
Optional XML-RPC/JSON-RPC exposure so external POS, kiosks, or your own frontend can create Fawry charges against Odoo programmatically

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 Odoo.

  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

Odoo Compatibility
Odoo 17, Odoo 18, Odoo 19
Editions
Enterprise & Community
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
PostgreSQL 12+

About this Product

Fawry is how Egypt actually pays. Between debit cards, mobile wallets (Vodafone Cash, Etisalat, Orange), and the ubiquitous "pay at any Fawry outlet with a reference code" flow, a large share of Egyptian customers will not — or cannot — complete a card-only checkout. If your Odoo eCommerce, sales, or invoicing sends buyers to a Stripe or PayPal button they don't recognize, you lose the sale at the last step.

This is a BUILD-TO-ORDER Odoo payment provider. ECOSIRE designs, builds, installs, and supports a native Fawry integration for your Odoo 17, 18, or 19 database — Community or Enterprise. It is not an existing apps.odoo.com download you install blindly; we engineer it against your Fawry merchant account, your EGP journals, and your checkout flow, then hand you a clean, upgrade-safe module with source code. Typical delivery is one working week from confirmed scope and access.

Under the hood it is a proper Odoo payment.provider extension. We add a Fawry provider record with your merchant code and secure hash keys (stored, never hardcoded), a payment.transaction subclass that talks to Fawry's ChargeRequest / PayAtFawry API, and the redirect/inline OWL flow so customers pick card, wallet, or "pay at outlet." When a buyer chooses the cash option, the module generates a Fawry reference code with a configurable expiry window and shows it — plus a QWeb-rendered voucher — right on the confirmation page and in the order email. Payment lands asynchronously when the customer walks into any Fawry point; our webhook controller validates Fawry's signature hash, reconciles the transaction, moves the Odoo order/invoice to paid, and posts to the correct EGP journal. Refunds are supported from the Odoo transaction view where your Fawry plan allows them.

You get security done the Odoo way (ir.model.access.csv + record rules so only the right users see credentials and transactions), sandbox-first delivery so you test with real reference codes before going live, and full source so you're never locked in. Works with Odoo eCommerce, the sales/invoicing "pay now" links, and any custom flow via the standard payment API — and it survives Odoo upgrades because it extends core models instead of forking them.

What you get

  • Installable Odoo module (17.0 / 18.0 / 19.0 as required) with a complete `__manifest__.py`, models, views, security, controllers, and QWeb templates — delivered as source you own
  • Configured Fawry `payment.provider` record wired to your merchant credentials, plus mapped EGP journal(s) and enabled payment methods (card, wallet, pay-at-outlet)
  • End-to-end sandbox setup and a joint test pass: real reference-code generation, a simulated outlet payment, webhook reconciliation, and a refund
  • Production go-live: credentials cutover, webhook URL registered with Fawry, and a live smoke-test transaction verified together
  • Admin & finance documentation — how to read transaction states, handle a stuck/expired reference code, reconcile, and issue refunds
  • A live handover/training session for your team plus a config runbook and support-contact sheet
  • Post-launch support window (bug fixes and reconciliation help) at the tier agreed in your quote
  • Odoo-upgrade guidance so the module carries forward to your next major version

Who this is for

Egyptian eCommerce merchant on Odoo

Runs an Odoo Website/eCommerce store in Egypt and is losing checkout conversions because customers want Fawry cash and wallets, not a foreign card gateway. Needs Fawry to appear natively at checkout with a reference code and email voucher.

Finance / accounting manager

Owns EGP reconciliation in Odoo and is tired of manually matching Fawry settlements to invoices. Wants signed webhooks to auto-post payments to the right journal, clear transaction states, and refund handling inside Odoo.

Odoo partner or in-house developer

Needs a clean, upgrade-safe Fawry provider that extends core `payment.provider`/`payment.transaction` rather than a fragile fork — with source code, sandbox parity, and an API surface (XML-RPC/JSON-RPC) they can build on.

Subscription / services business billing in EGP

Sends Odoo invoices with 'pay now' links and needs Egyptian customers to settle them via Fawry outlets or wallets, with automatic status updates and dunning that respects reference-code expiry.

How Fawry Payment Gateway for Odoo (Egypt) Compares

CriterionECOSIRECustom BuildCompetitorOdoo Native
Fawry cards, wallets, and pay-at-outlet cash in one flowIncludedPartial supportPartial supportNot included
Reference-code generation with configurable expiry + emailed voucherIncludedPartial supportPartial supportNot included
Signed webhook reconciliation into the correct EGP journalIncludedPartial supportPartial supportNot included
Built and tested against your Fawry account and Odoo version/editionIncludedIncludedNot includedNot included
Refund support from inside the Odoo transaction viewIncludedPartial supportPartial supportNot included
Upgrade-safe (extends core payment.provider, not a fork)IncludedPartial supportPartial supportIncluded
Full source code ownership + team trainingIncludedIncludedPartial supportIncluded
Dedicated post-launch support & reconciliation helpIncludedNot includedPartial supportNot included
Sandbox-first delivery with a joint go-live smoke testIncludedPartial supportNot includedNot included

Frequently Asked Questions about Fawry Payment Gateway

How long until it's live, and what's the delivery process?

This is a build-to-order module, not an instant download. Typical delivery is one working week from kickoff, depending on scope (number of payment methods, custom checkout, journals). We work sandbox-first: we build against Fawry's test environment, run a joint test pass with real reference codes and webhook reconciliation, then cut over to production and verify a live transaction with you. You receive the full module source at handover.

How do you handle support and Odoo upgrades after go-live?

Every build includes a post-launch support window (fixes and reconciliation help) sized to the tier in your quote. Because the module extends Odoo's core `payment.provider` and `payment.transaction` instead of forking them, it carries forward across Odoo upgrades; we provide upgrade guidance, and can re-validate the module against your next major Odoo version under a maintenance agreement.

Does this work on Odoo Community, or only Enterprise?

Both. The payment framework we extend exists in Odoo Community and Enterprise for 17, 18, and 19. We confirm your exact version and edition at kickoff and deliver a module built for it. Some higher-level accounting automations differ between editions, and we map the reconciliation flow to whichever you run.

Which payment methods does the Fawry integration cover?

Egyptian cards (via Fawry's hosted, 3-D Secure card flow), mobile wallets such as Vodafone Cash, Etisalat Cash, and Orange Money, and the pay-at-outlet cash flow where Odoo generates a Fawry reference code the customer pays at any Fawry point, machine, or app. The exact wallet set depends on what your Fawry merchant contract enables.

How does a cash 'pay-at-outlet' payment get reconciled in Odoo?

When a customer chooses pay-at-outlet, the module creates a Fawry reference code with a configurable expiry and shows it on the confirmation page and in the order email with a QWeb voucher. The order sits pending. When the customer pays at a Fawry outlet, Fawry sends a signed callback; our webhook controller validates the SHA-256 hash, marks the `payment.transaction` done, posts the payment to your EGP journal, and confirms the order — no manual matching.

What do you need from us to build it, and is Fawry's own account included?

You provide your Fawry merchant account and API credentials (merchant code and secure hash keys) — the Fawry contract itself is between you and Fawry, we don't resell it. From there we need your Odoo version/edition, access to a staging database, and your EGP journal setup. We handle the rest: module code, provider configuration, webhook registration, testing, and training.

Is it secure, and where are the credentials stored?

Credentials live on the Odoo provider record, protected by `ir.model.access.csv` and record rules so only authorized users can see them — never hardcoded in source. Card data is handled by Fawry's hosted flow, so raw card numbers never touch your Odoo server. Every webhook is signature-verified to block tampered or replayed callbacks, and each transaction logs its Fawry references and raw payload for audit.

Request a quote

Fawry Payment Gateway

Egyptian cards, wallets, and Fawry pay-at-outlet cash on Odoo — reference codes, webhook reconciliation, EGP, and refunds. Built to order.

  • Native Odoo `payment.provider` + `payment.transaction` extension — Fawry appears as a first-class payment method in eCommerce checkout, sales order 'pay now' links, and customer portal invoices
  • Accept Egyptian debit/credit cards through Fawry's hosted card flow (3-D Secure handled by Fawry, so no PCI card data touches your Odoo server)
  • Mobile wallet payments — Vodafone Cash, Etisalat Cash, Orange Money and other Fawry-supported wallets — selectable at checkout
  • Pay-at-outlet cash flow: generates a Fawry reference code the customer takes to any Fawry point, machine, or app to pay in cash

Request a Quotation

Tell us about your Fawry Payment 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.