Plugin - Stripe (Create custom order forms)

The RSForm!Pro Stripe Payment Integration Plugin allows you to add a new payment method to the existing Payment Package of RSForm!Pro.
Downloading and Installing the plugin
Download
You can download the plugin by logging with your purchase user, then head to Downloads > My Downloads > RSForm!Pro - view all plugins and modules > RSForm!Pro Files > Plugins > "Stripe Plugin for Joomla! 3.x".
Configuring the plugin
Configuring the Stripe payment gateway can be done from Components > RSForm!Pro > Configuration > Stripe tab:
- Secret API Key (sk_): this should be located in your Stripe account settings (more details).
- Public Key (pk_): this should be located in your Stripe account settings (more details).
- Tax Type: Percent (%) / Fixed Rate
- Tax Value: Amount of tax. Total amount of the transaction must include this amount.
- Use Tokens: No/Yes - when enabled, this will include the Stripe js library which replaces your credit card fields with Stripe fields, sending all credit card data directly to Stripe instead of passing it through your server.
How to use the Stripe plugin
After configuring the Stripe parameters from Components > RSForm!Pro > Configuration > Stripe tab, there are some additional steps that needs to be taken in order the payment process to work properly:
Making sure the form is sent to the payment processor
The payment details will only be sent to the Stripe payment processor if the user selects Stripe from the "Choose Payment" field before submitting the form.
The "Choose Payment" field is used in order to allow the users to choose their payment method. It displays the payment methods added to the form in either a Dropdown or Radio Group. It can be shown on the form (allowing the user to select his preferred payment method) or not (forcing the user to pay using the default payment method).
If you are using a single payment method and you need to hide the Choose payment field, this can be achieved by editing the field and setting to "No" the "Show in front-end?" option within the "Attributes" tab.
In order the Stripe payment method to be available within the Choose payment field, the following payment related element has to be part of your form.
- (Payment) Stripe - actual payment related element that will be included within the Choose Payment selection on your form.
Mapping form information to Stripe for card processing
In order to collect the user's card information, the following fields needs to be added in the form:
- Card Number - a textbox field used in order the user to fill in the credit card number
- Card Security Code (CSC) - a textbox field used in order the user to fill in the credit card security code
- Card Expiry Month - a dropdown containing month numbers(Ex: 01 for January, 02 for February and so on).
- Card Expiry Year - a dropdown containing years(Format: yyyy, Ex: 2016, 2017)
- Customer Email - a textbox field where the user needs to enter his email address
Note: After adding the above-mentioned fields to the form, you need to go to Form Properties > Stripe Configuration tab and map the Stripe fields with the RSForm!Pro fields, in order to be populated automatically with user-supplied data.
Note: when testing Stripe, besides the fact that you'll need a testing Stripe API Key, you'll have to use a testing credit card.
Adding costs
In order to receive funds using RSForm!Pro and Stripe payment plugin, your form needs to include a cost. In order to add costs to your form you can use any of the following fields:
- Single Product - Adds a single product to the form. For this type of field you can set up a caption, description and a price.
- Multiple Products - Adds the ability to display multiple products to be purchased either in a Dropdown or a Checkbox. Its items need to be specified in the following manner: price | label (ex: 15 | T-shirt)
- Donation - Allows the user to type in the amount to be paid inside a standard Textbox.
- Total - This field is used alongside the Donation, Single and Multiple Products fields. It calculates the total price to be paid.
Modifying Stripe vars through Scripts called after form has been processed
This process is similar to the already existing example regarding the PayPal parameters control. First you will need to get a new instance of the Stripe object, which is done with:
$stripe = RSFormProStripe::getInstance(); //then you can override parameters as in this example: $stripe->args['description'] = 'This is a new description.';
The above example will change the description sent to the payment processor, for a more detailed list of parameters available in the API you can check the developer documentation
8 persons found this article helpful.