With PayPal Payments Pro, customers shop and pay on your form. So, it's unnecessary for your users to have a PayPal account, or to take a detour to the PayPal website for payment. For those users who will want to pay with PayPal, you can give them the option to pay quickly and conveniently through their existing account, and a PayPal page will appear briefly at the point of payment. Customers who want to pay directly with a credit card remain on your website for the entire transaction.
Of course, you must have a subscription to PayPal WebSite Payments Pro. This solution contains features comparable to merchant accounts and gateways, at a low monthly cost. Learn more at the PayPal's Payments Pro webpage.
Preparing the Form
Your form must include the following fields:
|Total Dollar Amount||Billing City|
|Purchase Description||Billing Zip|
|Billing Address||Billing Country|
When you create a PayPal Payments Pro profile, the wizard will check for the PayPal Payment Method and Credit Card fields. If either of these fields is missing, you will receive a prompt you to add them. This is because PayPal requires that both Direct Pay and Express Checkout are given as options using WebSite Payments Pro.
Optional Express Pay Fields
When a user elects to pay through PayPal, the system will retrieve the user's name, email, and shipping address from PayPal and display the values in the fields you place in the form.
Providing these fields makes it easier for a user to create a new PayPal account if they don't already have one. Also, these fields should be present on your form before you start setup this integration. Otherwise, you'll have to exit the wizard, add the fields, and return to the wizard. You'll need to select these fields in the Field Mapping and Verification Settings panels of the wizard. See the Creating an PayPal Payments Pro Profile section below.
Creating a PayPal Payments Pro Profile
Though we offer you many options when creating this profile, it's quite easy when you follow the steps in the wizard:
Begin by choosing Post Processing > 3rd Party Integrations from the Form Designer Toolbar; or you can also right-click on the form in the Dashboard, then select Form Design Tools > 3rd Party Integrations.
The 3rd Party Integration management window will appear. To launch the wizard, click the Add Profile button. NOTE: If you encounter a listing containing one or more profiles, click the Add Profile menu item.
When the wizard that appears, click the Next button to begin.
In the Profile Type drop-down list, you'll find several types of 3rd party profile types. Choose PayPal Website Payments Pro, click Next, and click Next once more.
Follow these steps to configure the profile settings:
In the General & PayPal Settings panel of the wizard, enter a Profile Name and check the box for Default Profile if you want this to be the default profile.
The Manually Triggered Only option can be checked if you want to use a trigger to manually fire this profile. When checked, this profile will not be automatically executed when the from is submitted. Instead, you can set up a Run 3rd Party Trigger Action to call it via Respondent Update Mode, the Record Details window or as part of a workflow.
In the PayPal Account Settings section, enter the PayPal Email Address, PayPal API Username, PayPal API Password, and PayPal API Signature.
Set Test Mode to True when you are testing your form. To submit forms in this mode, you must have a PayPal Developer account, and the PayPal Email Address, PayPal API Username, PayPal API Password, and PayPal API Signature. fieldsmust correspond to that developer account. When you complete your form, come back to the profile and set this value to False , and also change the PayPal Email Address, PayPal API Username, PayPal API Password, and PayPal API Signature fieldsto values that correspond to your regular PayPal Payments Pro account.
Lastly in this panel, leave the Deferred Email Delivery value as True if you want to defer autoresponder / notification message delivery until after the user return from the PayPal website. It's important to realize that if you change this value to False, such messages will trigger immediately upon submission of the form, and will trigger again when the user returns from PayPal. This will result in two autoresponders / notifications per user. See more in the AutoResponders and Notifications section below.
Follow these steps to configure the payment settings:
There are a few optional settings on the PayPal Payment Page Settings panel. If the user chooses to pay with PayPal instead of using the Direct Pay method (see below), start by setting the Open PayPal in New Window value to True if you want the PayPal webpage to appear in a separate browser window. Otherwise, leave this value as False if you want to the PayPal webpage to display in the same browser session containing your form. NOTE: If the user chooses to pay with a credit card (instead of PayPal), this engages the Direct Pay scenario and will disregard this setting. No PayPal page will appear in this case.
Then consider if you have a Page Style already setup for your PayPal account and enter the name for that style here. This page style will appear if the user chooses to pay with PayPal. Otherwise, leave this value blank.
If you want payments to render in something other than the US Dollars, then set the Currency to another value.
Click the Next button to move on to the Field Mappings panel, in which all of the settings are mandatory.
Follow these steps to configure the field mappings:
For the first three settings, you must choose the fields on the form that correspond to a Total Dollar Amount, Quantity, and Purchase Description, all of which are required by PayPal.
Also, for Tax and Shipping, decide if you want to use the settings from your PayPal account of use a value that you take from the form.
When you're happy with the Field Mappings, click Next to move on the Direct Pay Fields step of the wizard.
Direct Pay and Express Checkout Settings
Follow these steps to configure the remaining settings:
Click the Edit Mapping button to map the fields required for Direct Pay transactions. These are transactions where the user enters their credit card and billing address information directly onto your form-no PayPal pages will appear. All credit card and address fields must be mapped for this profile to function correctly.
Click Next to go to the Express Checkout panel of the wizard. When a user elects to pay through PayPal, the system will retrieve the user's name, email, and shipping address from PayPal and display the values in the fields you place in the form. Select the fields on your form to display the information about the user returned from PayPal. All of these fields are optional, and Logiforms only retrieves the values from PayPal only in Express Checkout mode.
Click Next to move on to the last step in the wizard, Express Checkout Order Review. The Express Checkout mode will cause an order review page to display just prior to the completion of the purchase. You can edit the default page by clicking the Edit button. The default layout contains some control fields shown with square brackets, including [L_NAME0], L_AMT0], L_QTY], [ITEMAMT], [TAXAMT], [AMT], and [CURRENCYCODE]. These fields correspond to the item name, unit price amount, item quantity, item extended price, tax, total amount, and currency, respectively. We recommend that you preserve and avoid altering any of these fields, since they collectively represent the best practice for order review page design. Of course, you may make a variety of other changes, employing all the tools available in the Text Editor. Also, though you may edit the text of the submit button, it must retain its ID.
Click Finish to complete and save this profile. It will appear in the listing of the 3rd Party Integration management window.
A note about PayPal order approval
Behind the scenes, PayPal connects to Logiforms through IPN (Instant Paymemt Notification) to notify us about changes to order status. We get such notifications when at the time the order is first submitted, and again when the order changes from pending to approved. If you want to take some action when the order status changes to approved, you'll need to create an UPDATE mode trigger which performs additional processing when the values of the record change.
AutoResponders and Notifications
When you configure this profile, Logiforms will add a number of hidden fields to your form-each having the prefix "Paypal" and contain a value for the PayPal transaction. Several of these field values are available for your use in autoresponders and notifications. Also, after payment is made, you can use an AutoResponder rule to indicate a success or failure message depending on the result from PayPal.
Paypal Payment Status
This field can contains the result of the transaction. The initial value of this field will be Unprocessed , and is set immediately when the form is submitted and prior to PayPal's receipt of the transaction. When the user successfully completes the transaction at PayPal, the value is set to Completed. Depending on the result of user action or processing events, the value may be set to Failed or Pending.
This field indicates if the user has completed the payment at the PayPal website, after which it will contain the value postPayment. You can, for example, create an autoresponder containing a rule that checks for this value.
Using these two fields together, you can build autoresponder or notification profiles to meet your specific needs. A good practice is to delay sending such messages until after the user returns from PayPal. As we explain above in the section Creating a PayPal Payments Standard Profile, you can avoid sending autoresponder / notification messages immediately after form submission by setting Deferred Email Delivery value to True.
Here is a suggestion for creating suitable autoresponder profiles for PayPal Payments Standard:
Create two autoresponder profiles, one that tells the user the transaction was successful and a second that tells the user it has failed. You can include a redirect url and/or email autoresponder as part of your profile.
Create different rules in each of these autoresponders. One rule would have this structure: IF PayPal Return = postPayment AND Paypal Payment Status = Completed THEN (run the "Success" AutoResponder).
The other rule could take this form: IF PayPal Return = postPayment AND paypal_payment_status DOES NOT EQUAL 'Completed'THEN Send the "Failure" AutoResponder.
It's important, of course, to understand how rules work with autoresponders. Learn more in Managing AutoResponders.