Great Ideas. Always Flowing.

We are not happy until you are happy. Client satisfaction guaranteed. Whatever your needs and requirements, we have the skills and resources for the job!

Ready to get started?

Help Files / User Guides

Review the new and improved user guides including instructions on setting up the Dynamic Forms module, explanation of features,  product information, and more!


User Guide (PDF)



View Dynamic Forms Demonstrations

Dynamic Forms Video Tutorial


Trial Version

Get the Dynamic Forms Trial


Purchase Dynamic Forms

Dynamic Forms at Snowcovered


License Agreement

See License Options available.


Recently Viewed...

To help you navigate to pages you most recently visited, select from the links below.    
Ajax/Asp.Net/JQuery Articles

Implementing PayPal Subscriptions w/ Dynamic Forms

CAPTCHA code image
Speak the codeChange the code


You can offer a link to your Terms and Conditions here.



Dynamic Forms Demonstration 16 - Implementing Dynamic Forms w/ PayPal subscriptions

This demonstration showcases the use of Dynamic Forms 2.7 to set up two different subscription types using PayPal as the payment gateway.  It illustrates Dynamic Forms' advanced functionality to handle subscriptions with varying amounts and billing cycles.  It also demonstrates the use of recurring payments with PayPal.  In addition, a variety of completion events such as adding roles and sending emails are linked to PayPal notices.


This demonstration also covers enhancements included in the Dynamic Forms 2.7 release such as the Advanced Question Wizard.  The Drag & Drop functionality and the Recycle Bin are also presented here under Feature Hightlights.  The feature called "Enable the enter key to submit the form" is also available but is turned off in this instance.   This choice was made in order to prevent unintentional submission when the user uses the enter key while filling in the Comments box.



PayPal is a leading payment processing option that has gained tremendous popularity over the internet marketplace.  Dynamic Forms with PayPal Integration allows customers to offer their users more flexibility in the way they pay for their transactions.  To find out more about PayPal, please visit


 A term that is often used here is Instant Payment Notification (IPN).  This is the definition obtained from PayPal’s website:

Instant Payment Notification (IPN) is PayPal's interface for handling real-time purchase confirmation and server-to-server communications. IPN delivers immediate notification and confirmation of PayPal payments you receive and provides status and additional data on pending, cancelled, or failed transactions.


 In all demonstrations related to PayPal integration, the focus would be in 3 general areas:


1.  The parameters used to pass transaction details to PayPal.
2.  The creation of completion events that are tied to different IPN’s.
3.  Highlights on new features available in Dynamic Forms 2.7.


You will need to have a PayPal seller account to process payments this way.  We recommend obtaining a PayPal Sandbox account while you are in test mode.


Please remember that the page and the form need to be visible to all users in order for PayPal to communicate with it with IPN's.


Setting Payment Gateway to PayPal


1. Go to Module Configuration, Payment Gateway.  Set Enable Payment Gateway to Yes and select PayPal as the gateway.


2.  Click on PayPal Gateway and observe the following:



Key Pointers:

a.  Enter the email you set for your PayPal seller account.

b.  Select Subscription as the PayPal Payment Ttype.

c.   PayPal URL is either (test) or (production).

 Setting Parameters


Parameters are the way we pass transaction details to PayPal using a variety of tokens.  We encourage you to review the description of various PayPal variables (also referred to as tokens). There are more variables to consider in a subscription type of transaction. Here's a general description of the variables used in this demo:


The a3 is the amount that will be charged for the subscription.  The variable t3 defines the billing cycle unit while p3 is the regular billing cycle.  The variable src=1 means that payment will recur unless the customer cancels the subscription.  You may also use sra=1 if you PayPal to try again after payment fails.


Because we will need a different set of parameters for each type of subscription here, we are using the option value of each type to define the item name, a3, t3, and p3 as shown in  these images:




Notice how the Update Option Value for each type is set with the required PayPal variables.  The Monthly amount is 10.00 and the t3 is M (for Monthly).  In contrast, the Annual Subscription amount is set to 100.00 the t3 is Y (Yearly).


The Additional Parameters box for this demonstration should look like this in Module Configuration, PayPal Gateway.





You may view Demonstration # 17 to see how the parameters look like if there's only one paid subscription type.


Please note that the current settings for this demo is different from the above illustration.  The amount is defaulted to $1.00 and the src and sra variables were removed.  This is done to ensure that charges are limited to $1.00 in case you choose to do a complete transaction using your live PayPal account. 


Remember:  Absolutely no spaces are allowed within the parameters.  Even one space will cause your PayPal link to error out.   

Completion Events


Eight completion events were created for this demo.  After a completion event is created, it needs to be ‘tied’ to a PayPal IPN in the PayPal Gateway section under Module Configuration.  By doing this, the form knows which event to fire when it receives an IPN from PayPal.

The payment status called 'Redirect Successfully' is tied to the event Success Redirect.  This page redirection event will fire when a user clicks on 'Return to Merchant.'  from the PayPal page after the transaction. In this example, it is set to go back to this page.  You may choose to redirect to a different page that contains a 'Thank you.' message.  


Cancel Redirect will fire when a user clicks on 'Cancel'  during order processing.  In this example, it is set to go back to this page.  Again, you may choose to create a page to alert users that the order was not completed.  This event is tied to 'Redirect after Cancel.’


An  email event called ‘Pending Email’ is tied to Pending and is intended to notify customers of their order process should there be any delay.  If your customer used an e-check, the process may take several days to complete.


Both Add Role_Monthly and Add Role_Annual are tied to Completed (Subscription Payment) ensuring that these roles will be added only after payment is completed.  The key is to select the appropriate response when creating the event.  In the image below, notice how a specific response is required for this particular role event. 



In contrast, the role of Demo_Annual will only be added if the user response is Annual as illustrated below:





Another event tied to Completed (Subsciption Payment) is the Welcome email.  For this demonstration we used the token $(Type_Text) in the body of the email to eliminate the need to create a unique email for each subscription type.



Your customer may cancel the subscription by going to their PayPal account.  The events called Delete Role_Monthly and Delete Role_Annual are set to fire when the IPN Completed (Subscription Cancelled) is received from PayPal.  For this demonstration, we used an SQL event to remove roles.  You'll find the illustration below:




Feature Highlights


The ‘drag and drop’ feature provides much improved ease-of-use in managing questions.   In the image below, notice how you can enter your new field name.  You can then select what field type you want this to be:  a text field, a checkbox, radio buttons, etc.  Hold down the field type icon and drag it to where you want to position the question.  It's that easy!  You may also use drag and drop to change your question sort order or even to move the question to the recycle bin!



The recycle bin also comes with extended functionality.  Now, when you delete a question by putting it in the recycle bin, you may access this ‘deleted’ question in the future and restore it without having to create the question again from scratch.  Access the Recycle Bin through the Module Menu, under Advanced Features.


In the scenario below, let's say you deleted the fields Additional Parameters and Hidden Total earlier but decided that you want them on the form after all, simply check these fields in the recycle bin and hit Restore Objects.  It's that easy!



Another new important enhancement is available in the module menu under Advanced Features.  It is called the Advanced Field Wizard and is designed to allow administrators to perform an action to several fields in one step.



In the above illustration, all fields except Comments were selected to be set as Required Fields.  Quick and easy! 


Notice the Captcha field?  This is set with the new Advanced DataSprings Captcha Field which allows for 'Enable Captcha Refresh' and for 'Enable Captcha Sound.'  The Advanced Captcha requires additional one-time setup within your portal.   Instructions are available here.  Want to see the Captcha settings in Manage Questions?  Click here.





tip6.gifWould you like to setup your form just as this demonstration is setup? If so simply download this template and copy it to your DNN Portals Home Directory to use the IPORTABLE feature of the module (Select Import Content from the module menu and import the template):

Download Demonstration XML Export - Import into your module

Feedback Comments



Join our mailing list...

Get current news and events the easy way
Subscribe Me

Recent Blogs...

Copyright 2005 - 2011 by Data Springs, Inc.
  • film izle
  • 720 izle
  • film
  • sinema izle
  • film makinesi
  • T�rk�e dublaj film
  • film izle
  • film izle
  • baglan film izle
  • sinema izle
  • 1080 film izle
  • film mercegi