CiviCRM Twingle Integration
Find a file
2018-12-21 14:20:26 +01:00
api/v3/TwingleDonation Add better date/time parameter documentation. 2018-12-20 11:30:28 +01:00
CRM/Twingle Add Validation for submitting time along with date for confirmed_at 2018-12-21 14:20:26 +01:00
docs Add a README and MKDocs documentation 2018-11-16 11:54:18 +01:00
l10n Fix case for API action names 2018-12-03 09:57:56 +01:00
settings [WIP] twingleDonation.Submit API action and general profile functionality 2018-10-05 15:25:31 +02:00
templates/CRM/Twingle Improve translatable strings in help template. 2018-11-12 15:35:15 +01:00
xml/Menu [WIP] twingleDonation.Submit API action and general profile functionality 2018-10-05 15:25:31 +02:00
info.xml Back to dev 2018-12-12 13:15:54 +01:00
LICENSE.txt Extension skeleton 2018-10-04 12:05:57 +02:00
mkdocs.yml Add a README and MKDocs documentation 2018-11-16 11:54:18 +01:00
README.md Add better date/time parameter documentation. 2018-12-20 11:30:28 +01:00
twingle.civix.php Extension skeleton 2018-10-04 12:05:57 +02:00
twingle.php Add and require permission for accessing API 2018-12-12 13:14:55 +01:00

Twingle API

Extension to connect to the Twingle fundraising service via its API.

The extension is licensed under AGPL-3.0.

Configuration

Configure Twingle

This section is yet to be completed.

Configure CiviCRM

  • Go to the Administration console /civicrm/admin
  • Open "Twingle API Configuration" at /civicrm/admin/settings/twingle

Configure CiviSEPA integration

Open "Configure extension settings" at /civicrm/admin/settings/twingle/settings and configure whether to integrate with the CiviSEPA extension.

This enables you to map incoming donations from Twingle with a specific payment method (e.g. debit_manual) to be processed with CiviSEPA, that is, creating a SEPA mandate and managing recurring payments.

Configure profiles

Open "Configure profiles" at /civicrm/admin/settings/twingle/profiles.

The default profile is used whenever the plugin cannot match the Twingle project ID from any other profile. Therefore the default profile will be used for all newly created Twingle projects.

Label Description
Profile name Internal name, used inside the extension.
Project IDs Twingle project IDs. Separate multiple IDs with commas.
Location type Specify how the address data sent by the form should be categorised in CiviCRM. The list is based on your CiviCRM configuration.
Financial type Specify which financial type incoming donations should be recorded with in CiviCRM. The list is based on your CiviCRM configuration.
Gender options Specify which CiviCRM gender option the incoming Twingle gender value should be mapped to. The list is based on your CiviCRM configuration.
Record Payment method as Specifiy the payment methods mapping for incoming donations for each Twingle payment method.
CiviSEPA creditor When enabled to integrate with CiviSEPA, specify the CiviSEPA creditor to use.
Sign up for groups Whenever the donor checked the newsletter/postal mailing/donation receipt checkbox on the Twingle form, the contact will be added to the groups listed here.

API documentation

The extension provides a new CiviCRM API entity TwingleDonation with API actions to record a new donation, end a previously submitted recurring donation and cancel previously submitted donation.

Submit donation

This API action processes submitted Twingle donations and donor information.

  • Entity: TwingleDonation
  • Action: Submit

The action accepts the following parameters:

Parameter Type Description Values/Format Required
project_id String The Twingle project ID Yes
trx_id String The unique transaction ID of the donation A unique transaction ID for the donation. Yes
confirmed_at String The date when the donation was issued A string representing a date in the format YmdHis Yes
purpose String The purpose of the donation
amount Integer The donation amount in minor currency unit Yes
currency String The ISO-4217 currency code of the donation A valid ISO-4217 currency code Yes
newsletter Boolean Whether to subscribe the contact to the newsletter group defined in the profile
postinfo Boolean Whether to subscribe the contact to the postal mailing group defined in the profile
donation_receipt Boolean Whether the contact requested a donation receipt
payment_method String The Twingle payment method used for the donation One of:
  • banktransfer
  • debit_manual
  • debit_automatic
  • creditcard
  • mobilephone_germany
  • paypal
  • sofortueberweisung
  • amazonpay
  • paydirekt
  • applepay
  • googlepay
Yes
donation_rhythm String The interval which the donation is recurring in One of:
  • 'one_time',
  • 'halfyearly',
  • 'quarterly',
  • 'yearly',
  • 'monthly'
Yes
debit_iban String The IBAN for SEPA Direct Debit payments A valid ISO 13616-1:2007 IBAN Yes, if payment_method is debit_manual and CiviSEPA is used
debit_bic String The BIC for SEPA Direct Debit payments A valid ISO 9362 BIC Yes, if payment_method is debit_manual and CiviSEPA is used
debit_mandate_reference String The mandate reference for SEPA Direct Debit payments
debit_account_holder String The account holder for SEPA Direct Debit payments
is_anonymous Boolean Whether the donation is submitted anonymously
user_gender String The gender of the contact
user_birthdate String The date of birth of the contact A string representing a date in the format Ymd
user_title String The formal title of the contact
user_email String The e-mail address of the contact A valid e-mail address
user_firstname String The first name of the contact
user_lastname String The last name of the contact
user_street String The street address of the contact
user_postal_code String The postal code of the contact
user_city String The city of the contact
user_telephone String The telephone number of the contact
user_company String The company of the contact
user_extrafield String Additional information of the contact

You may also refer to the code for more insight into this API action.

End recurring donation

  • Entity: TwingleDonation
  • Action: Endrecurring

The action accepts the following parameters:

Parameter Type Description Values/Format Required
project_id String The Twingle project ID Yes
trx_id String The unique transaction ID of the donation A unique transaction ID for the donation. Yes
ended_at Integer The date when the recurring donation was ended A string representing a date in the format YmdHis Yes

You may also refer to the code for more insight into this API action.

Cancel donation

  • Entity: TwingleDonation
  • Action: Cancel

The action accepts the following parameters:

Parameter Type Description Values/Format Required
project_id String The Twingle project ID Yes
trx_id String The unique transaction ID of the donation A unique transaction ID for the donation. Yes
cancelled_at String The date when the recurring donation was cancelled A string representing a date in the format YmdHis Yes
cancel_reason String The reason for the donation being cancelled Yes

You may also refer to the code for more insight into this API action.