ProDon:Integration with Online Donation Forms
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
Some tools are put to your disposition to obtain some total or some transactions list.
Caution, the utilization of these tools is billable.
Utilization fee
There are no fee linked to the utilization of "Link", of "Link with information transfer" and of "Link with Information Transfer and Transaction Retrieval (post-treatment)".
There is a fee attached to the utilization of "Available tools on demand". Because these tools can generate important traffic and demand substantial resources, a fee is billed for each call. We recommend you to favor the utilization of post-treatment and to limit the calls on these tools on demand.
Actual pricing (subject to changes without notice) : 0.05$ by call (25$/month maximum).
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
- Form list
- [/test]: Test Mode active (unspecified = production mode)
- ORG_DIR[_test]: Test Mode active (unspecified = production mode)
- [/FORM] : Code of the form to call (unspecified = list of forms)
Examples of links:
- List of forms: https://www.imakeanonlinedonation.org/logilys
- GEN form: https://www.imakeanonlinedonation.org/logilys/GEN
- GEN forms (test mode): https://www.imakeanonlinedonation.org/logilys_test/GEN
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):
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 for integration is configurable in ProDon. Go to "Web form management", "Configure Your Website", "Access IMakeAnOnlineDonation" the go look for "Encryption key".
- Directory: Organization directory on IMakeAnOnlineDonation (add “_test” to activate test mode).
- Code: Code of the form to be used for the information transfer.
- Personal information used in the example: Country, Title, First name, Last name, Address, City, Province (FrmProvinceUID), Postal code, Email, Home phone.
- Transaction information used in the example: Amount, Activity (FrmActUID), Payment method (FrmPayUID) and Receipt (FrmReceipt).
- The "UID" parameters of FrmCountryUID (Countries list) and FrmProvinceUID (Provinces list) are global, they can easily be found by looking at the source code of the form.
- 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.
- callback.php, callback.txt : example of code to recover the transaction (see point 3).
3. Link with Information Transfer and Transaction Recovery (Post-treatment URL)
This type of integration requires programming skills.
Before continuing, see technical explanations of “link with information transfer”. This integration allows you to recover the transaction after. There is no utilization fee for post-treatment of the URL address.
The transaction information will be transferred (POST) in XML format to the URL address of your choice (configured in ProDon, see below).
Configuration of a post-treatment URL address in ProDon
To configure your post-treatment URL address from the edition of a Web form file with ProDon, go to "Advanced Option", "JDEL Integration"then "URL address configuration for the post-treatment integration".
Additional input parameters (optional) 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).
Output parameters sent to the post-treatment URL address
- 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: Call done by « UserAgent » from: Mozilla/5.0 (Windows NT 6.1; Win64; rv:40.0) Gecko/20100101 Firefox/40.1.0 Waterfox/40.1.0
4. Available tools on demand
This type of integration requires programming skills.
Caution, the utilization of theses tools is billable.
Configuration of an access to the integration tools on demand with ProDon
To configure an access in ProDon, go to "Web form management", "Configure your Website", "Access IMakeAnOnlineDonation", then "Add an access". You will have to specify an email, to check the "Integration on demand" checkbox then specify a "Password for the integration".
Calling procedure
https://www.jedonneenligne.org ou https://www.imakeanonlinedonation.org /REP_ORG[_test] /web.integration.phpDéfinition :
- REP_ORG : Répertoire de l’organisme sur JeDonneEnLigne ou IMakeAnOnlineDonation
- [_test] : Mode test actif (non spécifié = mode production). Il n'y a aucun frais pour les appels en mode test.
Paramètre POST à spécifier :
- username : Le courriel configuré dans ProDon
- password : Le mode de passe configuré dans ProDon
- type : Type de rapport
- 0 : Nombre et total des transactions entre 2 dates
- 1 : Liste des transactions entre 2 dates
- 2 : Transaction par identifiant unique
- startdate1 : Date de début (Y-m-d H:i:s)
- enddate1 : Date de fin (Y-m-d H:i:s)
- frm_code1 : Code du formulaire (* = tous les formulaires)
- On peut utiliser aussi frm_uid qui est le id unique du formulaire
- PersonalId2 : identifiant unique de la transaction à récupérer
Légende :
- 1: requis pour type 0 et 1
- 2: requis pour type 2
Document name: ProDon:Integration with Online Donation Forms