The latest PayPal module leverages PayPal Checkout and PayPal's Smart Button technology which PayPal describes as follows:
"PayPal Checkout with Smart Payment Buttons gives your buyers a simplified and secure checkout experience. PayPal intelligently presents the most relevant payment types to your shoppers, automatically, making it easier for them to complete their purchase using methods like Pay with Venmo, PayPal Credit, credit card payments, iDEAL, Bancontact, Sofort, and other payment types."
Supported Payment Types
PayPal Checkout supports both One Time and Automated Recurring Subscription based purchases.
For One Time payments, all PayPal supported payment methods are made available. For Subscription purchases, payment methods such as PayPal Credit are not available due to restrictions imposed by PayPal.
With PayPal Checkout, users can elect to checkout using PayPal.
Clicking any of the checkout with PayPal buttons will launch a modal based payment authorization process.
Users will be asked to login to their PayPal account and confirm they approve payment, before being returned to the WHMCS shopping cart to complete the checkout process.
For new customers who are placing an order for the first time, upon completing the PayPal checkout workflow, the registration form within WHMCS will be displayed with their name, email and billing address prefilled to speed up the checkout process. For existing users, those not logged in will be presented with the login screen with their email address pre-filled to speed up sign-in.
Pictured below is the View Cart step of the order process, showing the PayPal Checkout options in addition to the default Checkout button.
Users who elect to use the express checkout options of PayPal Checkout will not see a payment method choice during checkout post authorization of payment by PayPal. They will instead see a message indicating they have pre-approved payment with PayPal.
Subscription Duplication Prevention
The PayPal Checkout module includes functionality designed to help prevent users from creating duplicate subscriptions for a given service.
When viewing an unpaid invoice assigned to the PayPal Checkout module that contain items for which an active PayPal subscription exists, WHMCS will notify the user through an informative message displayed prominently on the invoice as pictured below.
Users can click on the More Details link to view the details of the subscription associated with an invoice, including Subscription ID, Last Payment Amount and Date, Next Payment Date and Start Date.
Users can still elect to make a payment using the "Make a Payment" link. Selecting this option will reveal the PayPal payment buttons allowing the customer to make a one-off payment for the invoice balance. Note that the module will not allow users to create a subscription whilever an Active Subscription is found to be present.
Admin Area Subscription Management
Admin users can view the Subscription ID associated with a Product/Service or a Domain via the service details view within the WHMCS admin area.
For modules that support it such as PayPal Checkout, up to 2 additional buttons will be available alongside the Subscription ID field:
- Get Subscription Info - This button can be used to view subscription details in much the same way as clients have access to from an invoice within the client area. Clicking this button will open a modal and query the PayPal API to fetch the real-time status and information relating to the given PayPal Subscription ID.
- Cancel Subscription - This button can be used to cancel a subscription.
The subscription management buttons are shown in the screenshot below taken from the Product/Service view within the WHMCS admin area.
To get started with the PayPal Checkout module, you will need a PayPal Business account. If you don't already have one, please click here.
Once you have an account, follow the steps below to activate and configure PayPal Checkout for use in WHMCS.
- Begin by logging in to the WHMCS admin area and navigating to Setup > Payment Gateways
- Select the "All Payment Gateways" tab
- Find the "PayPal" option and click the button to activate it
- Visit https://developer.paypal.com/ in a new browser window
- Select the "Log into Dashboard" link
- Enter your PayPal account credentials
- Upon successful login, you should be automatically redirected to the "My Apps & Credentials" page
- Select the Live mode button
- Click Create App
- Enter a name for your app when prompted. We recommend using your company name.
- Click the Create App button
- Copy the automatically generated Client ID and Secret and enter those into the PayPal Checkout module configuration fields within WHMCS where prompted
- Click Save Changes to complete the setup process
The following limitations and restrictions apply to PayPal Checkout:
- Users who choose to use one of the PayPal Checkout express checkout options within the view cart step of the shopping cart workflow will not be asked to select a payment gateway in the checkout step.
- The option to apply credit during checkout for existing customers who have a credit balance is not displayed during express checkout to avoid conflicts with the pre-authorized amount at PayPal.
- MarketConnect Upsells will not be displayed after payment has been pre-authorized with PayPal to avoid changes being made to the cart total after authorization of the payment amount with PayPal.
- Subscription payments cannot be pre-authorized, and therefore are final at the time of payment approval. This occurs prior to checkout being completed which leads to three possible consequences:
- Subscription payments occur prior to fraud checks having been performed for the order
- The cart total could be adjusted/change after the subscription is created leading to the subscription being for a different amount
- Due to the inability to pre-authorize a subscription and capture later, if a user fails to complete the checkout process after authorizing a PayPal Subscription, the subscription payment may still occur.