Stand with Ukraine. Fight for freedom and democracy


How to Set Recurring PayPal Payments in WordPress Form

The PayPal Recurring Payments addon for JetFormBuilder adds PayPal subscriptions to forms, manages their settings, keeps them up to date, and tracks all payments.

Table of contents:

What PayPal Recurring Payments PRO Addon Does

The PayPal Recurring Payments addon is a PRO addon for the JetFormBuilder plugin. The addon integrates pre-created PayPal subscriptions to forms and manages payment settings. The addon transfers payments according to the PayPal subscription settings (pricing plans, billing cycles, trial periods, subscription quantities, etc.). The addon aggregates subscription data through one dashboard.

Addon functionality:

  • Recurring payments: automatically supports periodic payments of different types (fixed, quantity-based, volume-based, or tiered) with trial time consideration;
  • Convenient subscriptions dashboard: allows viewing and editing subscription details (subscribers, billing cycle, status) and payment details (payer, payment shipping, dates, gross sums) through the dashboard;
  • Refunds: carries out refund payment from the Subscription dashboard;
  • Suspend or cancel subscriptions: sets the needed status for the user subscription from the dashboard.
  • Action Events: applies different actions as form settings (events) instead of the callbacks as php-functions;
  • Usability: applies PayPal gateway actions, syncs Access Token data, adds quantity fields, uses redirects, and creates custom payment success/failed messages.

Install Addon

Head to WordPress Dashboard > JetFormBuilder > Addons. Among all the available items, find the PayPal Recurring Payments and press the “Install Addon” button.

install paypal recurring payments addon

Then don’t forget to activate the addon to get access to all of its features. 

To do so, proceed to WordPress Dashboard > Plugins and find the installed addon. Hit the “Activate” button.

installed plugins

The addon should be installed and activated on the remote website. It is because PayPal sends information about the made subscriptions and payments that is possible only if the site is located on remote hosting.

How to Create a Subscription Plan

Initially, log in to your PayPal Developer account. Hover over the Pay & Get Paid section to see the available pages. The Subscriptions page is the one we need.

paypal pay and get paid dropdown menu

So, here we can see the PayPal subscription plans in the samely named tab. Click on the “Create Plan” button to build a new one.

manage subscriptions page

If you have already built some plans before, they will be suggested to you as options for selection. 

Or, press the “Create a subscription product” button to set a plan from scratch.

choose the subscription step

Fill in the suggested fields that correspond to the info about the product you will provide in a subscription.

the first part of the choose product step

You can complete the fields or leave some empty as they are not obligatory. Hit the “Next” button to proceed to the following step.

the second part of the choose product step

You can see the same window displayed before, but now the list includes the item we have just added. Select it and click the “Next” button.

new subscription product added

This step is one of the most important for customization. Pick the pricing option that is the most preferable for the subscription plan you create.

Then push the “Next” button once again.

create plan step

Give a name to the PayPal subscription plan and write a description. Click the “Next” button to continue the setup.

subscription plan description step

Adjust the settings concerning pricing. Specify the currency and check the other options available.

the first part of the pricing step

Don’t forget to specify the price in the corresponding field and decide how it will be charged. Hit the “Next” button to review the plan you have just customized.

the second part of the pricing step

It is the last step, now check the details and push the “Update” button next to the information if it needs to be edited.

the first part of the review step

Once done, hit the “Turn Plan On” button to make the plan live.

the second part of the review step

How to Create a Form with Plans

Before building the form, ensure that the PayPal gateways are activated for your website. Open the WordPress Dashboard > JetFormBuilder > Settings directory and check the Payments Gateways settings.

Toggle the Enable Gateways switcher. Optionally, you can also activate the Enable Test Mode feature.

Also, mind filling in the following Client ID and Secret Key fields. Complete them with the corresponding data and hit the “Save” button.

payment gateways settings

Go to WordPress Dashboard > JetFormBuilder > Add New. Give a title to the form and delete the default fields if you don’t need them.

form with default fields

Add all the desired fields to the form. For instance, our form includes a Hidden Field, several Text Fields, and one Action Button.

form fields added

Navigate to the Post Submit Actions tab and select the “Save Form Record” option from the available drop-down list. Otherwise, the PayPal Checkout settings will not be active.

Also, click on the pencil-shaped button to edit the action. In the appeared window, you can enable the “Store the IP address and other request headers” that will save the user’s IP address and User Agent data.

save form record settings

The “Edit” button next to the enabled PayPal Checkout becomes active. Press it to get to the settings.

gateways settings tab

Enable the Use Global Settings toggle to inherit the Client ID and Secret Key you have entered earlier in the JetFormBuilder settings.

Or, if you haven’t done it before or need to substitute data, you can do it right in the following fields.

Mind setting the Gateway Action by selecting the “Create a subscription” option from the drop-down menu. 

Push the “Sync Access Token” button to synchronize the data.

use global settings toggle enabled

As you see, the access token data is now updated. 

Select the needed option in the Subscription Plan Field. Here you can choose one of the fields you have added to the form or pick a “Manual Input” option. Now the last mentioned option is our case.

So as we have picked manual input, we need to specify the Subscription Plan we built earlier.

As for the Quantity field and Manual input of quantity fields, we leave them with the default values entered because, in our case, we don’t need to specify a quantity.

Or, type “1” in the Manual input of quantity field, and it will work in the same way.

subscription plan settings

Scroll down to available macros and fill in the messages shown to the user in the specific cases.

Click on the “Update” button to save the adjusted settings.

That’s it for the form; now, you can hit the “Publish” button.

macros list and messages

Action Events

This tool applies actions at different performing moments, i.e., during its execution, after request processing, after checkouts, etc.

Navigate to the Post Submit Action settings of the form settings and select the action you need from the appropriate drop-down menu. 

edit action conditions and events popup

Except for the Save Form Record option, the Action Event settings are available for all Post Submit Actions from the drop-down menu..

Press the Condition button to open the Edit Action Conditions & Events popup window. Here select the Events Match tab and choose one or some options from the Add Event drop-down menu:

  • DEFAULT.PROCESS ー the event is performed simultaneously with the specified action. This event is executed before redirecting to check out if the PayPal/Stripe is functionality enabled;
  • BAD.REQUESTー the event is performed after processing the request if the form fields have errors like the wrong field format of the media field or the field text exceeds the limit;
  • DEFAULT.REQUIREDー the event is performed in any case, even if the form fields have errors or unsuccessfully performed actions. This event is launched at the end of the form response is submitted.

The DEFAULT.REQUIRED event is a default event for the Save Form Record action and cannot be added to other events.

  • GATEWAY.SUCCESSー the event is performed after the payment system has checked up on the payment made or subscription issued;
  • GATEWAY.FAILED ー the event is performed if users have returned from the checkout page of the payment system without making a payment or subscribing.
  • GATEWAY.SUBSCRIPTION.CANCELLEDー the event is performed if users have canceled the subscriptions;
  • GATEWAY.SUBSCRIPTION.EXPIREDー the event is performed if the subscription term of use has been expired;
  • GATEWAY.SUBSCRIPTION.SUSPENDED ー the event is performed if the subscription is suspended.

Users can add different actions with different events.

post submit actions

If you have some actions referring to the DEFAULT.REQUIRED event, assigning the Save Form Record the last action is recommended. Otherwise, the completed action status can be saved incorrectly.

Place a Form on the Page

You can place the form on the needed page or in the pop-up. Let’s take a look at the second case.

Navigate to WordPress Dashboard > JetPopup > Create New Popup. Give a title to the pop-up and push the “Edit with Elementor” button to open the Page Builder.

jetpopup create popup

Add the needed widgets to the pop-up and search for the JetForm one.

jetform widget in a pop-up
  • Choose Form — select the JetFormBuilder form you have just created;
  • Fields Layout — pick how the fields will be displayed, in a column or a row;
  • Required Mark — change the default mark for the obligatory fields if desired;
  • Fields label HTML tag — define the HTML tag used for the label of the fields;
  • Submit Type — select whether the page will be reloaded or the AJAX type will be applied once the form is submitted;
  • Enable form pages progress — activate the toggle if you have used Form Break Field in the form.

Publish the achieved result and head to the page editor where you want to place the button, which will lead to the pop-up. You can edit the existing one or create a new page. Once again, there are no limits; you can build a page both in Elementor and Gutenberg.

Form in Elementor

Add or search for the Button widget. Open the Advanced tab and find the needed item in the Attached Popup selector.

That’s it for the page editor, press the “Publish/Update” button and open the front end page.

button pop-up

Form in Gutenberg

As the JetPopup plugin is not available for Gutenberg, you can add a form there with the help of the JetForm block.

The settings presented here are the same as in Elementor.

jetform in gutenberg

We press the button to which we have attached a pop-up to see the form.

relaxing set on the front end

Complete the form with the required information and submit it by pressing the button below.

pop-up with a form

The user will be redirected to the PayPal payment page. Now log in to the account and select the bank card if needed. Press the “Continue” button.

paypal choose a way to pay

Check the provided info and press the “Agree & Subscribe” button.

paypal ship to window

Let’s check the subscription status by heading to WordPress Dashboard > JetFormBuilder > Subscriptions.


The payment status may be updated several minutes after the payment is actually made.

The new subscription info is right here. We can also see that its status is set to active.

If we hover over the item, we can spot the “Suspend” and “Cancel” buttons. We will return to these features later. 

Open the created subscription to see additional details about it.

jetformbuilder subscriptions

Look at the several blocks presented here. It is Payer Info, Payment Shipping, Subscription Details, and not less critical Related Form Record.

the first part of active subscription details

One more section available is Notes. Here you can see the messages about subscription status changes or add your note by completing the field and pressing the “Add Note” button.

the second part of active subscription details

You may also notice the “Suspend” and “Cancel” buttons here.

How to Suspend a Subscription

Let’s take a look at the ability to suspend the subscription. Press the “Suspend” button.

Specify the reason or leave the default value and push the “Suspend Subscription” button.

suspend subscription window

Or, there is another way to suspend the subscription. You can do it right through the PayPal account. Head to the Subscriptions tab and find the needed subscription.

Press the three dots shaped button and hit “Pause Subscription” there. From now on, the subscription will be paused.


If you suspend the subscription via PayPal, you need to wait a couple of minutes before the status will change on the WordPress website.

paypal subscriptions tab pause

Check the status; now it is changed to “Suspended.”

suspended subscription

How to Activate a Subscription

The subscription can be reactivated if needed. However, you can do it only from the PayPal account.

Click the “Activate Subscription” button next to the item to enable the subscription once again.

paypal subscriptions tab activate

How to Cancel a Subscription

Besides, you can discontinue the subscription. Press the “Cancel Subscription” button in the PayPal account.

paypal subscriptions tab cancel

Or, you can cancel the subscription from the WordPress Dashboard > JetFormBuilder > Subscriptions section.


If you cancel the subscription, it can not be activated once again.

cancel subscription pop-up

How to Make a Refund

A refund can also be made via PayPal. Head to the Activity > All Transactions and find the “Refund” button next to the received payment. Click on it to see the refund details.

paypal refund button

Specify the total of the refund in the Total Refund Amount. Optionally, you can fill in the Invoice Number and leave the Note to Buyer.

paypal issue refund window

That’s it; now you know how to use the PayPal Recurring Payments addon available with the JetFormBuilder PRO plugin.