Authorize.net
$39.00

The Credit Card Gateway That Actually Earns Its Keep

Authorize.Net — fully wired into your Joomla checkout. Saved cards. Subscription auto-billing. Admin void, refund, and charge-card in one panel. Real-time webhook sync. Twenty languages. No duct tape required.

Everything a Serious Joomla Store Needs From Authorize.Net

Not a redirect. Not a wrapper. A full Authorize.Net integration — checkout form on your domain, card data never touching your server, and every gateway capability surfaced directly inside J2Commerce.

Saved Cards & One-Click Checkout

Returning customers see their saved Visa, Mastercard, Amex, or Discover at checkout. One click to select, one click to place the order. First-time buyers tick "Save this card" and their next purchase is frictionless too.

Automatic Subscription Renewals

Renewal date arrives. The saved card gets charged. The subscription extends. The customer gets their confirmation email. Nobody lifted a finger. When a customer switches cards, every active subscription updates in one click.

Admin Void, Refund & Charge Card

Void unsettled transactions. Issue full or partial refunds against settled charges — the form shows the maximum refundable amount so you can't over-refund. Charge a stored card for any order without the customer present. All from the J2Commerce order screen.

Real-Time Webhook Sync

Authorize.Net fires events when transactions settle, refund, void, or get flagged for fraud. Every event is verified by cryptographic signature before your store acts on it. Order statuses stay accurate automatically — no cron job, no manual polling, no surprises.

Fraud Event Handling

Transactions held for fraud review or declined by Authorize.Net's fraud filters update your order status automatically. You see the flagged orders in J2Commerce before any customers start asking questions — and before any goods ship.

My Profile Payment Methods Tab

Customers manage their saved cards from their J2Commerce account — add, delete, update billing info. Before removing a card, they see exactly how many active subscriptions are using it. No accidental broken renewals. No confused support tickets.

Authorize Only Mode

Hold a card authorization at order time and capture the charge when you ship. Wholesale accounts get the float. You get payment certainty. Configure per-order — auth-and-capture for standard orders, authorize-only for pre-orders and custom jobs.

Geozone & Subtotal Controls

Assign a geozone and Authorize.Net only appears for customers whose billing address is in range. Set minimum and maximum order subtotals — the payment option disappears silently for orders outside the range. No error messages mid-checkout.

Surcharge Recovery

Configure a percentage surcharge, a fixed fee, or both. Assign a tax class if your jurisdiction taxes payment processing fees. The surcharge shows as a named line item on the order — transparent to customers, recoverable for you.

Real-World Use Cases

A Joomla store sells annual software licenses at $99–$499. Every customer is a repeat customer — renewal comes around every 12 months. With saved cards and automatic subscription renewals working together, renewal day means the card on file gets charged, the subscription extends, and the customer gets a confirmation email. No manual outreach. No login required. No spreadsheet of who needs billing. The store owner opens their dashboard and sees confirmed renewals, not a queue of customers to chase.

A Joomla ecommerce site serves wholesale accounts placing large orders. Some accounts pay by card but want payment deferred until goods ship. Authorize Only mode holds the card authorization at order time — the card is verified valid and the funds reserved, but no charge is made. When the order ships, the admin opens the order screen and captures the charge. Customers get the float. The store gets payment certainty. No contested "I didn't authorize this" disputes because the card was explicitly authorized at order time.

A Joomla store sells monthly curated boxes — $49/month, new contents each cycle. Renewal day fires automatically: charges run, orders confirm, fulfillment queue populates. A subscriber who gets a new credit card logs into their My Profile tab, adds the new card, and clicks "Use for All Subscriptions." Every active subscription switches to the new card instantly. The old card is removed. No broken renewals next month. No dunning workflow. No spreadsheet of which customers have expired cards.

A health and wellness store where most customers reorder every 6–8 weeks. Saved cards turn each routine repurchase into a 30-second checkout. When a customer calls within minutes of placing a wrong order — wrong variant, wrong address — the store operator voids the unsettled transaction directly from the order screen. No partial refund. No wait for settlement. Clean cancellation, order marked voided, customer confirms they'll reorder correctly. Support ticket closed in under 60 seconds.

A Joomla-powered consulting firm generates orders on behalf of clients — retainer fees, project invoices, hourly billing. Clients have saved cards on file. When an invoice is due, the admin opens the order, selects the client's card from the Charge Stored Card dropdown, confirms the amount, and processes payment. The order transitions to paid, the history records the admin charge with the initiating admin's action, and the client receives their confirmation. No POS terminal. No phone-in card capture workaround. Just a button in J2Commerce.

Your Checkout Deserves a Gateway That Works While You Sleep

Saved cards for repeat buyers. Automatic subscription renewals. Void, refund, and charge-card from your order screen. Real-time webhook sync with fraud detection baked in. The whole Authorize.Net feature set, speaking native Joomla 6. Your customers start checking out faster tomorrow. Your admin workload gets lighter the same day.

Translated In The Following Languages

Arabic Unitag (ar-AA), Chinese, Traditional (zh-TW), Danish (da-DK), Dutch (nl-NL), English (en-GB), English, USA (en-US), Finnish (fi-FI), French (fr-FR), German (de-DE), Greek (el-GR), Hebrew (he-IL), Italian (it-IT), Japanese (ja-JP), Norwegian Bokmål (nb-NO), Persian Farsi (fa-IR), Polish (pl-PL), Portuguese, Brazil (pt-BR), Portuguese, Portugal (pt-PT), Russian (ru-RU), Spanish (es-ES), Swedish (sv-SE), Turkish (tr-TR)


  • Developer J2Commerce
  • Extension Type Payment
  • J2Commerce Version 4.x, 6.x
  • Joomla Version 4.x, 5.x, 6.x
Language Translations
Arabic UnitagArabic Unitag
Chinese, TraditionalChinese, Traditional
DanishDanish
DutchDutch
EnglishEnglish
English, USAEnglish, USA
FinnishFinnish
FrenchFrench
GermanGerman
GreekGreek
HebrewHebrew
ItalianItalian
JapaneseJapanese
Norwegian BokmålNorwegian Bokmål
Persian FarsiPersian Farsi
PolishPolish
Portuguese, BrazilPortuguese, Brazil
Portuguese, PortugalPortuguese, Portugal
RussianRussian
SpanishSpanish
SwedishSwedish
TurkishTurkish

Fix Refund the amount the admin entered on a store whose order currency is not the base currency

Fix Show the refundable amount in the currency the order was charged in

Fix Leave an order where it is when the gateway reports a partial refund

Fix Count a refund once when the gateway confirms one the admin screen just made

Fix Count every earlier refund when offering the refundable amount, not only the last one

Improvement Keep subscription renewal traces out of the error log and drop the profile ids from them

Update Requires Joomla 6.x + J2Commerce 6.x + an Authorize.Net merchant account

Fix Refund the amount the admin asked for on a store whose order currency is not the base currency

Fix Hold the order refund action to the same permission and amount limits as the refund button beside it

Fix Resolve a refund or void notice only to an order that holds the transaction it applies to

Fix Leave an order where it is after a partial refund instead of marking it fully refunded

Fix Count an authorised order in the repeat-charge guard, unless the gateway no longer holds it

Improvement Replace the muted text class with its supported equivalent in the card forms

Improvement Drop an unused parameter and an unreachable order-id fallback

Fix Compare a settlement against the amount the order was charged, not the order as it stands now

Fix Read the captured figure from the gateway so a partial capture no longer passes the amount check

Fix Match refunded and voided the same way the admin screen does, whatever the stored capitalisation

Improvement Take the newest matching order when a transaction id appears on more than one

Fix Hold the settlement webhook to the order's own amount before it completes the order

Fix Stop a late settlement notice from moving a refunded or voided order back to completed

Improvement Read the settled amount from the gateway when the notice does not carry one

Fix Fix a second charge being taken on an order whose first transaction was held for review, which left the first transaction unable to reach the order when it settled

Fix Fix an order being recorded as paid from a gateway response that carried no settleable transaction id

Fix Fix a transaction held for review never reaching its order when the hold was later released, leaving the order unpaid after the gateway had been paid

Improvement Hold every charge path to the transaction result, not the API envelope, so checkout, subscription renewal, after-sale supplemental charges and the admin Charge Card action all apply the same standard

Improvement Record the gateway transaction against the order when a transaction is held for review, so the order completes normally once it settles

Improvement Log the reason when the gateway answers with no settleable transaction id, so the cause is visible in the plugin log

Improvement Replace the card-number placeholder with a neutral mask on the checkout and saved-card forms

Update Requires Joomla 6.x + J2Commerce 6.x + an Authorize.Net merchant account

Fix Gateway callbacks now reach the plugin

Improvement Serve the gateway callback on the plugin's own com_ajax endpoint, so capture confirmations, refunds and cancellations recorded at the gateway are applied to the order

Fix Fix a completed payment reported to the shopper as a network error when the payment confirmation response carried stray output ahead of its payload

Fix Align the admin AJAX access gate across the payment plugins

Fix State the admin AJAX task list explicitly across the payment plugins

Improvement Read the confirmation response as text and recover the payload from whatever precedes it, keeping the plugin's own error text when the body holds no payload

Update Requires Joomla 6.x + J2Commerce 6.x + an Authorize.Net merchant account

New Feature Add supplemental payment support for after-sale offer charges, billed to a CIM payment profile with ownership resolved before every charge

New Feature Add generic multi-gateway "Update Payment Information" relink support (onJ2CommerceSetSubscriptionRenewalProfile) — rebind a subscription's renewal charge to a saved card or a freshly vaulted Accept.js nonce without charging

New Feature Honor the CheckoutConfirmButtonLabel event and the shared paymentupdate surface (data-mode) on the gateway-rendered card form

Fix Fix #859: supplemental charges and subscription linking picked an arbitrary saved card when the customer has several on file (end($profiles) trusted CIM array order, which Authorize.net does not guarantee)

New Feature Resolve the card deliberately by matching the order's checkout transaction last4 — the locally stored transaction_details first, then a gateway transaction lookup; fall back to the sole saved card only when exactly one exists, otherwise fail the charge / leave the subscription unlinked instead of guessing

Update Requires Joomla 6.x + J2Commerce 6.x + an Authorize.Net merchant account

Improvement Multi-currency charge conversion

Fix Fix renewal + checkout finalize bypassing order status update (lost renewal email, stock decrement, and status event)

New Feature Route both finalize paths through OrderModel::updateOrderStatus with type-aware notification

New Feature Add idempotent finalize guard against double-finalize on cron re-entry

Deletion Drop direct order_state_id pre-set + OrderHistoryHelper::add that tripped the old==new short-circuit

Update Requires Joomla 6.x + J2Commerce 6.x + an Authorize.Net merchant account

Fix Casing fixed for type attribute of fields

Fix use type="Geozone" so the field loads on Linux

New Feature J2Commerce v6 and Joomla 6 support

Fix Language keys

Fix Display only last 4 in order_params

Update Update Server

Update is j2store 4 or not event

Update J2Store 4 support

Saved Cards Make Repeat Buyers Your Best Customers

One-click repeat checkout is not a luxury feature — it is the difference between a customer who orders twice a year and one who orders every six weeks. Authorize.Net's card vaulting stores payment profiles securely in Authorize.Net's own infrastructure. Your server never holds card data. Your customers' next checkout takes ten seconds.

  • Visa, Mastercard, Amex, and Discover supported — configure which brands you accept
  • "Save this card" checkbox at checkout — no extra steps for customers
  • Full card management in My Profile — add, remove, update billing address
  • Subscription-linked cards protected — system warns before removal
  • Switch all subscriptions to a new card in a single click
Saved Cards Make Repeat Buyers Your Best Customers
Three Admin Tools. Zero External Dashboard Tab-Switching.

Three Admin Tools. Zero External Dashboard Tab-Switching.

Every Authorize.Net action your team needs is in the J2Commerce order screen. Void an unsettled transaction before it hits settlement. Issue a full or partial refund once it settles. Charge a stored card for invoice payment, phone orders, or replacements. Each action writes to order history automatically and triggers the configured status update. Your team sees accurate data. Every time.

  • Void — available while transaction is pending settlement
  • Full refund pre-filled; partial refund with maximum refundable shown
  • Charge stored card — select from customer's saved cards, enter amount
  • Auto order status change on void or refund — configurable per action type
  • All actions logged to order history with transaction IDs

Webhooks That Keep Order Statuses Honest

Authorize.Net processes payments after the customer leaves your checkout. Settlement, refund processing, fraud review — it all happens in the background. This plugin receives those events in real time, verifies each one with a cryptographic signature, and updates your orders accordingly. No customer needs to return to your site. No cron job required. Fraud-held orders show up in J2Commerce before your fulfillment team ships them.

  • Payment capture events confirm orders automatically
  • Refund and void events update order transaction status
  • Fraud held and fraud declined events surface in order status
  • Cryptographic signature verification on every inbound event
  • Idempotent updates — duplicate events don't double-process

You may also be interested in these products

Stay Updated

Subscribe for free and be the first to know about the latest features, updates, and new additions.