Difference between revisions of "ProDon:Integration with Online Donation Forms"

From Logilys
Jump to: navigation, search
Line 22: Line 22:
  
 
*Integration from a microsite  
 
*Integration from a microsite  
**Registration of teams / participants  
+
**Teams / participants registration
 
**Donation to a team / participant  
 
**Donation to a team / participant  
**Viral campaigns  
+
**Peer-to-Peer campaigns  
 
*Integration from a third-party organization  
 
*Integration from a third-party organization  
 
**Telemarketing firm  
 
**Telemarketing firm  
 
**Web development firm  
 
**Web development firm  
 
*Integration from a third-party system  
 
*Integration from a third-party system  
**In-house system (members, alumni management, etc.)
+
**In-house system (members management, alumni management, etc.)
  
 
Characteristics:  
 
Characteristics:  
  
 
*Programming required (examples provided)  
 
*Programming required (examples provided)  
*Simple integration by GET (encrypted) or POST parameters  
+
*Simple integration by GET parameters (encrypted) or POST parameters  
 
*Possibility to send information to the form, to auto-populate:  
 
*Possibility to send information to the form, to auto-populate:  
 
**Personal information  
 
**Personal information  
Line 40: Line 40:
 
**Customized form information (e.g. name/team ID, specific questions, etc.)
 
**Customized form information (e.g. name/team ID, specific questions, etc.)
  
=== 3. Link with Information Transfer and Transaction Retrieval  ===
+
=== 3. Link with Information Transfer and Transaction Retrieval (post-treatment) ===
  
 
This includes the possibility of a “link with information transfer” (see second method) while allowing you to retrieve the completed transaction. <br>Typical Uses:  
 
This includes the possibility of a “link with information transfer” (see second method) while allowing you to retrieve the completed transaction. <br>Typical Uses:  
Line 50: Line 50:
  
 
*Programming required (examples provided)  
 
*Programming required (examples provided)  
*Additional programming required for “CallBack” (to receive the transaction information in XML format)
+
*Additional programming required for post-treatment (to receive the transaction information in XML format)
  
 
=== 4. Available tools on demand ===
 
=== 4. Available tools on demand ===

Revision as of 10:10, 3 November 2016

Integration with Online Donation Forms

CAUTION: This document is conceived only for the 5.0.3.x VERSION of ProDon. To access the document of the 5.0.2.x version (FRENCH ONLY), click here. To access the document of the 4.7.3.x version (FRENCH ONLY), click here.

Explanations of the possible methods of integration

1. Link

This is the simplest integration method allowing you to guide your donors to your online donation forms.

Typical Uses:

  • Integration to your own website
  • Emailing the link

Characteristics:

  • Possibility to access your list of forms, or to access a form directly
  • No programming required (only add a hyperlink)

2. Link with Information Transfer

This is a more advanced integration, allowing you to prefill a form.
Typical Uses:

  • Integration from a microsite
    • Teams / participants registration
    • Donation to a team / participant
    • Peer-to-Peer campaigns
  • Integration from a third-party organization
    • Telemarketing firm
    • Web development firm
  • Integration from a third-party system
    • In-house system (members management, alumni management, etc.)

Characteristics:

  • Programming required (examples provided)
  • Simple integration by GET parameters (encrypted) or POST parameters
  • Possibility to send information to the form, to auto-populate:
    • Personal information
    • Transaction information (except for credit card information)
    • Customized form information (e.g. name/team ID, specific questions, etc.)

3. Link with Information Transfer and Transaction Retrieval (post-treatment)

This includes the possibility of a “link with information transfer” (see second method) while allowing you to retrieve the completed transaction.
Typical Uses:

  • Integration from a microsite allowing you to manage objectives
  • It allows the microsite or the organization to monitor in real time the progress of the donations

Characteristics:

  • Programming required (examples provided)
  • Additional programming required for post-treatment (to receive the transaction information in XML format)

4. Available tools on demand

Technical Explanations

1. Link

Format of the link:

https://www.imakeanonlinedonation.org/ or https://www.jedonneenligne.org/

ORG_DIR[_test][/FORM]

ORG_DIR[/test][/index.php?form=FORM]

Definition:

  • ORG_DIR: Organization directory on IMakeAnOnlineDonation or JeDonneEnLigne
  • For ProDon 4.7.3.x (version 1.1.8 of the site JDEL) :
    • [/test]: Test Mode active (unspecified = production mode)
    • [/index.php?form=FORM]: Code of the form to call (unspecified = list of forms)
  • For ProDon 5.x (version 2.x of the site JDEL) :
    • ORG_DIR[_test]: Test Mode active (unspecified = production mode)
    • [/FORM] : Code of the form to call (unspecified = list of forms)

Examples of links:

2. Link with information transfer

This type of integration requires programming skills. See working prototype:

  • For ProDon 5.0.3.x (version 2.1 of JDEL site):
    • Future prototype ...
    • Future sources downloading.

The prototype has been prefilled to make you experience the integration simply by clicking on “send data”.

Here are the possible settings of the prototype:

  • Key: Unique encryption key for each organization. The key in this example works for the “logilys_pbrochu” organization. This key is generated by Logilys upon request from the organization and then sent to the integrator (if necessary).
  • Directory: Organization directory on IMakeAnOnlineDonation (add “/test” to activate test mode).
  • Form (UID): Number of the form to be used for the information transfer.
  • Personal information used in the example: Country, Title, First name, Last name, Address, City, Postal code, Email, Home phone.
  • Transaction information used in the example: Amount, Activity (UID), Payment method (UID) and Receipt (logical value).
  • The different UID parameters are specific to the organization, but can easily be found by examining the source code of the form.

You can also download the complete sources of the prototype by clicking on “download sources”. Here are the contents of the zip file:

  • integration_prototype.php: the source code of the prototype
  • integration_js_prototype.php: other example in java script
    • encode64.js, mcrypt.js, rijndael.js: used by integration_js_prototype.php
  • list_parameters.txt: brief descriptions of the possible parameters.

3. Link with Information Transfer and Transaction Recovery

See technical explanations of “link with information transfer”, prior. This integration allows you to recover the transaction after.

The transaction information will be transferred (POST) in XML format to the URL of your choice (which will have to be specified in parameters when calling the form).

Additional inbound parameters to send when calling the form:

  • PersonalUrl (encrypted): the URL of your callback, example: &PersonalUrl=http://www.mysite.com/jdel_callback.php(encrypted).
  • PersonalId (not encrypted): Unique ID for your transaction, example: &PersonalId=00000001(not encrypted).

Outbound parameters sent to your “PersonalUrl”:

  • trx_xml (encrypted): xml of the transaction. See “callback return xml example.txt” in the sources of the prototype to view an example.
  • mode (not encrypted): Contains “TEST” or “PROD” whether the transaction was made in test or production mode.
  • PersonalId (not encrypted): Your unique ID.
  • Caution: For ProDon 4.7.3.x et 5.0.2.x (version 1.1.8 et 2.0.1 of JDEL site), the call is made without « UserAgent »

Document name: ProDon:Integration with Online Donation Forms