How to set up Paystack Payment Forms for WordPress
The Payment Forms plugin is the most versatile Paystack plugin. Other Paystack plugins are built for specific WordPress themes/plugins like WooCommerce or WHMCS, but Payment Forms allow you to use Paystack on any WordPress site.
It's literally a simple form that you embed on a page to be able to receive payments. You can use Payment Forms to receive one-time and recurring payments, sell products, receive donations, sell event tickets, etc.
Installation and configuration
Follow this link to download and install the Payment Forms plugin. Instructions for installing the plugin are on the page. After installing the plugin, you will find a tab on your WordPress dashboard named 'Paystack Forms'.
Next, you will need to enter your Paystack API keys. Click on the API Keys Settings link under the Payment Form tab. You can get your Test and Live API Keys from the Settings page on your Paystack Dashboard.
Creating a Payment Form
Click on any of the 'Add New' links on the menu tab or beside the title. This will lead to the 'New Payment Form' page.
Fill in the 'Add Payment Form' fields as needed. We'll explain all the settings on the Form below and how or when to use them.
After you create the payment form and publish it, a shortcode will be generated for that Payment Form. The shortcode will look like '[pff-paystack id="01"]'.
Copy the code and paste it into the WordPress page where you want to receive the payments.
When you publish the page, it should look like this (the form below the text is loaded into the page by the Payment form shortcode):
Paystack Payment Form settings
Here are the settings you'll see when you're creating a Payment Form and when to use them:
Form Title: This is where you set the title of the Payment form. This will be the name you'll use to identify this particular payment form from your list of forms.
Extra Fields: If you want extra fields on the form (address, mother's maiden name, etc.), this is where you add them. They are defined within square brackets. You can click on any of the 'INSERT' buttons on top of the field to select the type of input field you want (text fields, dropdown, checkboxes, etc) and name the field appropriately. They should look like: [text name="Address"] [select name ="Gender" options="Male, Female, Not sure"] etc.
Hide Form Title: If you check this box, the form's title will not be shown on the page where the form will be displayed. This comes in handy when the form displays very close to the top of the page, the page title is already displayed, or you don't want two big bold headings showing together.
Recurring Payment: The payment form allows you to receive Recurring Payments. This is perfect for when you want to receive a payment that needs to be renewed at recurring intervals, for example, monthly membership dues, annual subscription payments, monthly tithe collection, etc.
After the first payment, the user is billed automatically for subsequent payments.
The recurring payment has two options:Optional Recurring: With this, the user chooses the interval they want to pay. This works well if you are receiving recurring donations, where the users input the amount they want to pay and the interval they want to pay.
Paystack Plan: You can create a Plan on your Paystack Dashboard and paste the plan code generated in the 'Paystack Recur Plan Code' field below the Recurring option dropdown.
Quantity Payment: If you're collecting payment for a quantifiable product (tickets, shoes, etc), you can set 'Quantified Payment' to 'Yes'. In the field below it, you can set the maximum quantity that a user can buy in one payment.
Amount: This is where you set the amount you want to receive. If you leave it at 0, this means that the user can enter any value they want. This can be useful for donations, where a set payment amount is not necessary. If you check the 'Make Amount Minimum Payable' checkbox below the amount field, this means that users can enter any amount they want, but it must not be less than the value in the input field.
Variable Dropdown Amounts: If you are selling different classes or variations of a product or service with different prices, instead of creating different payment forms, you can create variable amounts so the users can select the package they want to pay for, and the price will be reflected upon checkout.
To do this, you fill in the options in the input field. The format is "product_variation_1: price_1, product_variation_2: price_2,..." For example: "VIP Ticket: 5000, Regular Ticket: 2000". Next, you check the 'Use dropdown amount option' box.Pay Button Description: You can change the text that shows on the pay button to fit the purpose of the Payment form. So you can change the text to Buy, Donate, etc. This lets you choose whether to add or include the transaction charges to the amount you want to charge. When a user pays, Paystack takes their transaction charges from the amount that was paid and remits the rest to you. With this option, if you need to get the full Payment Form amount in your bank account (NGN 5000, for example), you can add the transaction charges to the amount so that after it is taken out, what is left will be the full amount you want.
User Logged in: This option lets you choose whether or not to restrict the payment form to only logged-in users. By default, the User must not be logged in.
Thank you message: Here, you can change the thank you message that is displayed to the user upon successful payment.
File Upload Limit and Redirect URL: With the payment form, users can upload files to the payment form to you. Here, you can set the maximum size of each file to be uploaded. If you want the user to be redirected to another page after a successful payment, you add the URL here. If you leave it blank, the Thank you message will be displayed.
Send email receipt: This option allows you to choose whether or not to send a receipt to the user after Payment.
Agreement Checkbox: If your user needs to agree to some terms and conditions before paying, you can set the option to yes and enter the link to the terms and conditions page.
Sub-accounts: If you have a sub-account that you want to split the payment of the product/service here, you can add the sub-account code in the input field. You can choose who bears the transaction charges. If you want the main account to take a fixed amount of the payments (as opposed to a percentage), you can enter the fixed amount in the Merchant Amount box.
Subscribe to Plan After Date: This feature allows you to subscribe users to a particular payment plan after a set number of days. This means that if you set that number to 7, after seven days, the customer is automatically subscribed to whatever plan code you entered in the field below. The Plan field should be a plan code from your Dashboard.
Email Receipt Settings
16 through 19 are settings for the email that can be sent to the customer upon successful payment. Edit them to your needs.
If you encounter any issues while integrating the plugin, contact us at techsupport@paystack.com or via our contact form.