Accept Credit Card payments without requiring a PayPal account from your customers using PayPal Payment Buttons! PayPal Payment Buttons offer a quick and secure way for customers to make payments within the Blesta Billing system.
From £9.99 - View Pricing
What PayPal Payment Buttons gives you
Configure it independently for each brand on a multi-company install, so every company runs with its own settings.
Flip a single switch to run everything against the provider's sandbox while you test, then turn it off to go live.
Every staff and client label ships in editable language files, ready to translate into any language or reword to match your brand.
A client can clear multiple outstanding invoices in a single PayPal payment, and each one is credited the right amount back in Blesta automatically.
The debit or credit card button lets clients who have no PayPal account pay by card, so you are not turning away anyone who does not want to sign up.
Each invoice is sent to PayPal as its own line, so the client sees exactly what they are paying for on the PayPal screen and in their PayPal receipt.
A built-in demo mode runs the whole extension from bundled sample data, so you can trial every screen and action before you have an account or API key.
Choose the button colour, shape, label and whether the options stack vertically or sit side by side, so the payment area looks like part of your design.
Issue a full or partial refund straight from the transaction in your admin area and it is sent to the payment provider for you, with no need to open their dashboard.
PayPal's Smart Buttons render directly on the Blesta payment page, so the client stays on your site and only sees a PayPal window for the moment they approve the payment.
Your PayPal Client ID and Secret are authenticated the moment you save the settings, so a wrong key is caught immediately rather than on a client's first payment attempt.
Bill and take payment in any of 24 PayPal currencies, including USD, EUR, GBP, AUD, CAD, JPY, HUF and TWD, with the currencies that have no decimal places handled correctly.
Offer Venmo and PayPal's Pay Later options alongside the standard button, each as a single on or off setting, and hide the card button entirely if you would rather not offer it.
Order creation, every notification received and the payment capture behind it are recorded in Blesta's gateway log, so you can see exactly what happened on any payment without leaving your admin area.
A refund issued in the provider's dashboard, or a dispute raised against a payment, is picked up automatically and applied to the matching Blesta transaction, so your records stay in step without manual reconciliation.
Enter the ID of the webhook you registered with PayPal and every incoming notification is cryptographically verified with PayPal before it is recorded. Leave it blank and each payment is instead re-checked directly with PayPal.

Add PayPal payment buttons to allow fast and easy payments to your PayPal account without requiring the client to have a PayPal Account
Upload the source code to a /components/gateways/nonmerchant/paypal_payment_buttons/ directory within your Blesta installation path.
For example:
/var/www/html/blesta/components/gateways/nonmerchant/paypal_payment_buttons/
Log in to your Blesta admin area and navigate to:
/admin/settings/company/gateways/available/
Find the PayPal Payment Buttons gateway and click the "Install" button to install it
You're done!
Yes. Payments are recorded by a PayPal webhook, so you must register the gateway's callback URL against your REST app before taking payments. The URL is shown on the gateway's Manage screen under "PayPal Webhook", and it needs the Checkout order approved and Payment capture completed events subscribed. The usage guide walks through it.
Installing and updating extensions can now be done automatically through the Blesta Club Subscription Manager - this is the recommended way going forward.

Welcome, and thank you for purchasing the PayPal Payment Buttons Gateway! We're excited to have you as a customer and are committed to ensuring you have a seamless experience. This README will guide you through the installation of your new gateway. If you're new to Blesta or encounter any issues, please don't hesitate to reach out for support.
To install the PayPal Payment Buttons Gateway, please follow these steps:
Obtain the Gateway:
Upload to Blesta:
/var/www/html/blesta/components/gateways/nonmerchant/paypal_payment_buttons/Install the Gateway:
Configure the Gateway:
/admin/settings/company/gateways/installed/).Register the PayPal Webhook (required):
Enable Payment Processing:
Want to try the gateway before setting up a PayPal app? Tick Demo Mode on the Manage screen. The gateway then serves canned PayPal responses, takes no real payments, and needs no webhook. Turn it off before going live.
You're now done with the installation! Proceed to configure the gateway as needed by following the usage guide.
If you encounter any issues or have suggestions for improving the gateway, please get in touch with us. We are committed to providing robust updates and welcome customer feedback.
Installing and updating extensions can now be done automatically through the Blesta Club Subscription Manager - this is the recommended way going forward.

To ensure you're always using the latest version of the PayPal Payment Buttons Gateway, follow these steps to update the gateway within your Blesta installation.
/var/www/html/blesta/components/gateways/nonmerchant/paypal_payment_buttons/v1.1.0 changes how payments are recorded. You must register a PayPal webhook, or the gateway will stop recording payments after the upgrade.
Before v1.1.0 the gateway recorded the payment itself when the client's browser returned from PayPal. It now records from PayPal's own webhook instead, which means a payment is no longer lost when a client closes the tab before being redirected back.
To finish the upgrade:
CHECKOUT.ORDER.APPROVED) and Payment capture completed (PAYMENT.CAPTURE.COMPLETED).Also note in v1.1.0:
CNY and RUB have been removed from the currency list (PayPal does not settle them) and TRY has been added. If you had selected CNY or RUB, pick a different currency for the affected order forms.v2.0.0 adds refunds from Blesta, refund and dispute syncing, credential checking on save, button appearance settings, and optional webhook signature verification. Existing installs keep working with no changes, but two optional steps unlock the new syncing:
PAYMENT.CAPTURE.REFUNDED) and A dispute is created (CUSTOMER.DISPUTE.CREATED). A refund issued from the PayPal dashboard then marks the Blesta transaction refunded, and a new dispute marks it returned. Refunds issued from Blesta's own Refund button need no extra setup.Test Mode:
Transaction Testing:
Missing or Incorrect Files:
Payments stopped being recorded after updating:
Credential Issues:
Version Compatibility:
If you encounter any issues during the update process or have suggestions for improving the gateway, please reach out to us. We are dedicated to providing consistent updates and value your feedback.

Welcome, and thank you for purchasing the PayPal Payment Buttons Gateway! We're excited to help you get the most out of your new gateway. This guide will walk you through how to use the gateway effectively. If you're new to Blesta or encounter any issues, please don't hesitate to reach out for support.
The PayPal Payment Buttons Gateway allows clients to pay for services directly through PayPal using PayPal's Smart Payment Buttons. Below are the key features of the gateway:
Payments are recorded by a PayPal webhook, not by the client's browser returning to your site. If no webhook exists, clients can pay but nothing is recorded in Blesta.
As of this version, the gateway registers this webhook with PayPal for you automatically the first time you save your settings with a blank Webhook ID field, subscribed to all four event types below. In most cases there is nothing further to do - just enter your Client ID and Client Secret and save.
If automatic registration fails (for example, your PayPal REST app has the Webhooks feature turned off, or your credentials do not have permission to manage webhooks), settings will not save and the Webhook ID field will show an error. In that case, register the webhook manually:
/admin/settings/company/gateways/installed/), find "PayPal Payment Buttons" and click Manage.CHECKOUT.ORDER.APPROVED)PAYMENT.CAPTURE.COMPLETED)The first event captures the payment and records it as Pending; the second flips the same transaction to Approved. Both are needed.
Optional: to have refunds and disputes raised in PayPal reflected in Blesta automatically,
subscribe the webhook to two more events too: Payment capture refunded
(PAYMENT.CAPTURE.REFUNDED) and A dispute is created (CUSTOMER.DISPUTE.CREATED) - the
auto-registered webhook already includes both. Whichever way the webhook was registered,
having its ID in the Webhook ID setting has every delivery cryptographically verified
against PayPal before it is trusted; leaving it blank still verifies each payment by
re-fetching it from PayPal instead.
Once installed and configured, the PayPal Payment Buttons Gateway will be available for clients to use when paying for their services.
Configure the Gateway:
/admin/settings/company/gateways/installed/).Enable PayPal Button for Invoices:
If you encounter any issues or have suggestions for improving the gateway, please get in touch with us. We are committed to providing robust updates and welcome customer feedback.
v3.0.0 - 2026-09-15
PHP 8.2 - 8.4 · Blesta 6.x
Requires Blesta 6.0 or later; Blesta 5.x installs stay on v2.x
The settings page has been redesigned for the Blesta 6 admin interface, including dark mode
v2.0.0 - 2026-09-11
PHP 7.2 - 7.4, 8.1 - 8.4 · Blesta 5.x
Fixed webhook payments silently recording nothing: PayPal's capture response does not echo custom_id on the purchase unit (only order re-fetch does), so the client could never be identified and Blesta recorded no transaction for a genuinely captured payment
Fixed the success page showing only "Your payment is being processed" with no Transaction ID, Amount, Currency or Invoices listed below it
Added refunds from Blesta: the staff Refund button now issues full or partial refunds through PayPal
Added automatic syncing of refunds and disputes raised in PayPal, so a dashboard refund or a new dispute updates the matching Blesta transaction (subscribe your webhook to the "Payment capture refunded" and "A dispute is created" events)
Added validation of the Client ID and Client Secret when saving the gateway settings, so a wrong credential is caught immediately instead of at the first payment
Added button appearance settings (color, shape, label, layout) and funding options (Venmo, Pay Later, hide Debit or Credit Card)
Added an optional Webhook ID setting that cryptographically verifies incoming PayPal webhooks
v1.0.0 - 2024-09-22
PHP 7.2 - 7.3, 8.1 - 8.4 · Blesta 5.x
Blesta Club release
Get exactly what you need and want.
Requires PHP 8.2 - 8.4 · Blesta 6.x
Value: £42.3
Not sure whether to lease or own? Our FAQ explains how the licence types differ.
What our customers say
(0 customer reviews)
It is possible to leave a review only if you have purchased this extension or a Club tier which contains it.
We reserve the right to alter wording or formatting for presentation.
We will discuss any changes made and offer the option to withdraw review text if the changes can't be agreed on.
It may take up to 1 hour for a review to appear or update due to caching.
More extensions to explore
Gateway
Integrate Cryptomus for cryptocurrency payment processing.
PHP 8.2 - 8.4 · Blesta 6.x
Gateway
Integrate Dual PayPal Payment Buttons for handling multiple payment accounts.
PHP 8.2 - 8.4 · Blesta 6.x
Gateway
Integrate PayPal Billing Agreements for subscription management.
PHP 8.2 - 8.4 · Blesta 6.x
Gateway
Bill on demand with our Payment Intents gateway!
PHP 8.2 - 8.4 · Blesta 6.x