PayPal Payment Gateway Plugin For Acelle

Description

PayPal Payment Gateway Plugin For Acelle

PayPal for Acelle Mail

Accept payments through PayPal — the world’s most-recognised checkout brand, 200+ countries, 25+ currencies — directly from your Acelle Mail install. Ships as TWO payment gateways: one-off and recurring. Customers without a PayPal account can still pay with debit/credit card on the one-off flow. No webhook setup, no IPN configuration, no merchant gateway approval. Drop-in plugin for Acelle Mail. Paste Client ID + Secret, save, sell.

Why PayPal?

PayPal is the single payment method customers know without explanation:

  • 200+ countries supported — PayPal handles the country / language / payment-method matrix for you.
  • 25+ currencies with automatic conversion at PayPal-side rates.
  • Guest card payment — for one-off purchases, buyers WITHOUT a PayPal account can still pay with debit/credit card on PayPal’s hosted page (no signup required, no friction added).
  • No merchant-gateway approval — every PayPal Business account can start accepting card + PayPal balance immediately, no waiting for underwriting.
  • Buyer-side recognition — “Pay with PayPal” reduces checkout abandonment vs unfamiliar card forms. Many customers will choose PayPal specifically because they don’t want to type card numbers into yet another website.
  • PayPal Credit / Pay Later — buy-now-pay-later eligibility is exposed automatically in supported markets at no extra integration cost.
  • Built-in buyer protection — increases trust, especially for cross-border B2C SaaS.

Pair PayPal with Acelle Mail and you get a globally-credible checkout option alongside your existing Stripe / Offline / regional gateways.

What this plugin does

Adds two payment gateways to Acelle’s admin under one plugin:

  • PayPal (Direct Payment group) — one-off charges via PayPal Orders v2. Customer pays with PayPal account OR as a guest with debit/credit card.
  • PayPal Subscription (Remote Subscription group) — recurring billing via PayPal Subscriptions v1. Customer approves once at PayPal; auto-charge each cycle.

Both share the same form (Client ID + Secret + Environment) and use the same PayPal REST app. Enable one or both depending on what your customers need — they show up as two entries in the gateway picker, register independently, and are managed independently. Registers without modifying Acelle core code. Requires Acelle 4.0.24+ and PHP 8.1+.

 

Headline features

Two gateways shipped together — pick one or both

Acelle’s billing layer distinguishes between Direct Payment (Acelle owns the subscription record) and Remote Subscription (vendor owns the subscription record). PayPal does both, but through different APIs. This plugin gives you BOTH as separate, independently-configurable gateway entries:

  • PayPal (Direct Payment) — calls PayPal’s POST /v2/checkout/orders. Customer approves, return handler calls /orders/{id}/capture inline. One transaction per customer click. Best for: one-time plan purchases, top-ups, pay-as-you-go credits.
  • PayPal Subscription (Remote Subscription) — calls PayPal’s POST /v1/billing/subscriptions against a pre-mapped PayPal Billing Plan. Customer approves once; PayPal handles every renewal forever after. Best for: SaaS plans with monthly / annual auto-renewal.

The admin chooses which to enable. Some operators ship both (one-off for ad-hoc credits, subscription for the actual plans); some ship only one. Both use the same PayPal REST app credentials — there is no separate “subscription credential” at PayPal.

Guest card payment — no PayPal account required (one-off gateway)

On the one-off PayPal gateway, PayPal’s hosted checkout exposes a “Pay with Debit or Credit Card” option below the standard “Log in to PayPal” option. The customer can pay with a card directly without signing up for PayPal — meaning you don’t lose customers who associate PayPal with mandatory account creation.

This is automatic on PayPal’s side; no extra integration work. Acelle just sees a successful capture.

Pull-only sync — no public webhook endpoint required

Unlike most payment integrations that require you to expose /webhooks/paypal and verify IPN / signatures, this plugin does not need any inbound URL:

  • One-off completion commits inline at the return URL — the browser brings the ?token=… back, Acelle captures, done.
  • Subscription renewals + cancellations are detected by RemoteSubscriptionSyncService polling GET /v1/billing/subscriptions/{id} hourly through Acelle’s existing scheduler.
  • Manual “Refresh” button on each subscription page forces a fresh fetch.

Net result for the admin: no webhook_id to copy into PayPal’s developer dashboard, no IPN URL to configure, no event subscriptions to maintain, no HMAC secret rotation. Drop the plugin in, save Client ID + Secret, done.

Modern REST API — no IPN, no Express Checkout legacy

PayPal has multiple integration generations. This plugin only uses the latest REST APIs:

  • OAuth 2.0 for authentication (POST /v1/oauth2/token against Client ID + Secret) — no legacy API username / password / signature triple.
  • Orders v2 for one-off (replaces the legacy Payments v1).
  • Billing Subscriptions v1 for recurring (replaces the legacy Express Checkout Recurring Payments).

If you’ve used older PayPal integrations and dread “IPN handler” or “Express Checkout signature”: those are not part of this plugin. Modern PayPal REST is straightforward; this plugin just wraps it cleanly for Acelle.

25+ currencies, 200+ countries

PayPal handles the country / currency / local-payment-method matrix for you. Configure your Acelle gateway in USD and your German customer can still pay in EUR through PayPal — currency conversion happens at PayPal’s side at their published rate. Brazilian customer can pay with their local Boleto if their PayPal account supports it. Japanese customer sees JCB / domestic options. No extra integration work required.

Supported currencies include USD, EUR, GBP, JPY, AUD, CAD, CHF, NZD, SGD, HKD, SEK, DKK, PLN, CZK, HUF, BRL, MXN, TWD, THB, PHP, MYR, ILS, NOK and more.

Free, fully-isolated Sandbox

PayPal’s Sandbox is bundled with every developer account at developer.paypal.com — completely isolated from Live (separate API hosts, separate balances, separate accounts). Test buyer accounts come pre-funded with play money. You can develop, demo, and QA against Sandbox without ever touching real funds — the plugin’s Environment dropdown switches API hosts cleanly. Flip to Live only when you’re ready.

Other features

  • Drop-in installation — upload the ZIP through Acelle’s standard plugin installer; activate with one click
  • Sandbox + Live environments selectable per gateway
  • Multiple gateways side by side — one Sandbox + one Live + both one-off and subscription = up to 4 distinct PayPal rows, all independent
  • Plays nicely with other gateways — Acelle supports PayPal alongside Stripe, Offline, Paddle, etc. concurrently
  • Connection test on save — wrong Client ID / Secret fails immediately at configuration, not later at customer checkout
  • Saved payment-method display at customer checkout (PayPal account email or card brand + last 4)
  • Remote Plan Mapping UI — admin picks the local-plan ↔ PayPal-plan pairing in a dropdown sourced live from GET /v1/billing/plans
  • Resume cancelled subscriptionsresumeRemoteSubscription exposed for admin un-cancel flow before the period ends
  • Multi-tenant friendly — each Acelle tenant configures its own PayPal app
  • Disable without uninstall — flip the plugin to inactive and both PayPal gateways disappear from the picker; existing rows preserved
  • Translated — English included; ships with translation hooks so your installed Acelle language packs auto-cover the new strings
  • Unobfuscated source — plain .php files, no ionCube, no encoder. Audit and customise freely under the Envato license

 

There are no reviews yet.

Write a review