Skip to content

Miscellaneous

Some details should be considered seriously, for they affect security and integrity of the data. With the extension, further functions such as rebooking, are provided and therefore a new in CiviCRM. Please note again that due diligence was applied to the legal terms of the matter, but does and can only refer to german legislation. The responsibility for compliance rests with the user.

Receipted donations

In the donation data, no manipulations or changes will be allowed after receipting. The most significant fields of these are:

  • status
  • financial type
  • amount

It is these fields that are also blocked against changes when an active snapshot has been taken. This assures consistency between donation data details and the (valid) receipts. When dealing with a huge amount of contacts or when using CiviCRM with multiple users, that is of essence.

Access control

In the Drupal access control, the following permissions may be granted to one or various roles:

  • View receipts and make copies thereof
  • Create and reset receipts, editing
  • Delete receipts

Template

The template used for generating receipts as pdf-files is done in HTML. It will be converted to PDF via the program selected in the CiviCRM settings (either dompdf or wkhtmltopdf - the latter one is recommended). Within the template, you can implement program logic using "Smarty".

Tokens

Tokens are made use of, still every organisation will have to do some editing in the template before use. It is highly recommended to draw and store a copy of the template before applying changes. Please note that the process "HTML to pdf" ist not straightforward, setting up a new or modified template will take try and error.

The following tokens are supported within the extension:

Remark: What is referred here as tokens, in fact are are Smarty variables. Therefore, they cannot be selected from the Token Menu of the editor, but have to be entered as descripted below.

Token Type Comment
{$id} Integer ID of the donation receipt
{$status} ORIGINAL, COPY, WITHDRAWN, WITHDRAWN_COPY Status of donation receipt
{$type} Buld or single donation receipt
{$issued_by} Integer Contakt-ID of the admin user who issued the receipt
{$issued_by_display_name} String Name of the issuer
{$issued_on} ISO date Date of issueing the receipt
{$total_amount} Float Total amount
{$total} Float equal to {$total_amount}
{$totaltext} String {$total} als german text string
{$totalmoney} String {$total} in CiviCRM's currency format
{$today} ISO date egual to {$issued_on}
{$non_deductible_amount} Float Total of non-deductible amount
{$currency} ISO 4217 currency code (3 characters) Currently, always 'EUR'
{$date_from} ISO date Start of the period for the receipts
{$date_to} ISO date End of the period for the receipts
{$original_file} ID of the original file Set only, if there is an original donation receipt, and option is active
{$lines} Array of contributions see below
{$items} Array of contributions as{$lines}, only available for bulk receipts
{$contributor.id} Integer Contakt ID of contributor
{$contributor.contact_type} String Contact type of contributor
{$contributor.display_name} String Display name of contributor
{$contributor.addressee_display} String Adressee of contributor
{$contributor.street_address} String Street address of contributor
{$contributor.postal_greeting_display} String Postal greeting of contributor
{$contributor.email_greeting_display} String Email greeting of contributor
{$contributor.gender} String Gender of contributor
{$contributor.prefix} String Prefix of contributor
{$contributor.supplemental_address_1} String Supplemental address 1 of contributor
{$contributor.supplemental_address_2} String Supplemental address 1 of contributor
{$contributor.postal_code} String Postals code of contributor
{$contributor.city} String City of contributor
{$contributor.country} String Country of contributor
{$addressee.display_name} String Name of the person, who receives the donation receipt ("addressee")
{$addressee.addressee_display} String see above
{$addressee.street_address} String see above
{$addressee.supplemental_address_1} String see above
{$addressee.supplemental_address_2} String see above
{$addressee.postal_code} String see above
{$addressee.city} String see above
{$addressee.country} String see above
{$organisation.display_name} String Name of default organisation
{$organisation.addressee_display} String Addresse of default organisation
{$organisation.street_address} String see above
{$organisation.supplemental_address_1} String see above
{$organisation.supplemental_address_2} String see above
{$organisation.postal_code} String see above
{$organisation.city} String see above
{$organisation.country} String see above

To create a list of the contributions within a bulk donation receipt, use the following code example:

{foreach from=$items item=item}
  <p>{$item.receive_date|date_format:"%d.%m.%Y"} | {$item.financial_type} | {$item.total_amount|crmMoney:EUR}</p>
{/foreach}

Within this loop, the follwing tokens are available:

Token Type Comment
{$item.receive_date} ISO date Receive date of contribution
{$item.contribution_id} Integer ID of contribution
{$item.total_amount} Float Total amount of contribution
{$item.non_deductible_amount} Float Non deductible amount of the contribution
{$item.financial_type_id} Integer Financial type ID
{$item.financial_type} String Name of financial type