Notes about the Events functionality in Payments2Us, previously known as AAkonsult Payments.

Things to know

Features

Customising

The standard events forms, like the payment forms are a bit ugly, but there are levels of customisation you can do. 

In all of these options, the registration and payment details are only ever stored in Salesforce, and not duplicated on your website. 

Basic

Custom Theme

Custom Website

Custom Registration Form

Custom Payment Form

Payment Forms

Say you run a number of events - you have different brands or groups within your organisation, and each group runs different events like Seminars, Workshops and the like. Each seminar and event has different ticketing options. You need to set up a Payment Type for each Event "type". 

Using a different payment form for each different type of event has some good and bad points:

Good

Bad

Set up Events to have Invoice Me option

So, you run events, you have people that attend events but their work pays for it. They won't use their own credit card to pay for events, they want an Invoice to be sent to them so that they can send the invoice to their accounts department. When the accounts department gets the invoice, they may choose to pay by EFT or Cheque or even pay by Credit Card - we need to allow them to come back to the registration / payment form to pay by credit card. 

This process requires AAkonsult Payments version 3.19 or later. Update from the Appexchange if you have an earlier version.

 

Process Diagram

Setup Steps

Merchant Facility

URL Token

Now, we are going to create a special URL Token to use ONLY when they come back to the Payment Form to make a payment by Credit card. At this stage, we don't want to offer them the ability to Invoice Me again. So we use the URL Token to "turn off" that option. With the URL Token you can also turn off:

So set up the URL Token with no other details other than the Payment Method to have Credit Card only chosen. As paying by Credit Card will be the only time they come back to this page then. 

Now, when we send the Invoice to the purchaser, we will send them a hyperlink to the Payment form with this URL Token appended. We could hard code this into the formula that generates this hyperlink, but I prefer to have it as a field. So we create a new field on the Payment Form to take the URL Token for Invoice - lookup field to URL Tokens.  

Payment Form

Payment Txn

Create a few new fields on the Payment Txn object to handle the Invoice. Receipt or Invoice (Text formula):

IF(TEXT( AAkPay__Status__c ) = "Awaiting Payment", 

AAkPay__Payment_Type__r.PaymentDetails__c + BR() 
+ HYPERLINK( 
IF(ISBLANK( AAkPay__Payment_Type__r.URL_Token_for_Invoice__c ), 
AAkPay__Payment_Setting__r.AAkPay__Site_URL__c & "AAkPay__checkout?id="&Id, 
AAkPay__Payment_Type__r.URL_Token_for_Invoice__r.AAkPay__Full_Text_URL__c&"&id="& Id) 
,"Pay Now by Credit Card", "_blank"), 

"Please retain this receipt for your records.")

What does this do:

IF the Status of the Payment Txn is "Awaiting Payment" (eg, an Invoice has been sent), 

THEN show the wording of the Payment Details with a URL back to the Payment form so they can pay by Credit Card. 

    The URL will append the URL Token for Invoice if there is one on the Payment Form. 

ELSE, the Status of the Payment Txn is not "Awaiting Payment" so we are sending a Receipt, so we just say a generic line about the receipt, or even leave it blank. (for bonus points, store this text in a custom setting so that users can update it easier than going into formulas). 

Payment Form

Receipt Text

Edit the Receipt text to be very generic. Note: depending on how you set up your Receipt Text, this will be done in the Campaign(s) or in the Payment Form. The Campaign overrides the Payment Form. 

Include the field:

{{{!AAkPay__Payment_Txn__c.ReceiptOrInvoice__c}}}

 in the Receipt Text field

Payment Details

Here's the text I set up in the Payment Details field:

You can pay this invoice to ABCXYZ Pty Ltd in one of three ways:

Cheque 
PO Box 999 Suburb XXX 9999

EFT 
BankName BSB: 999-999 Account: 9999999 

Credit Card

The Credit Card URL will show below the Credit Card heading. 

Email Template

Do these steps:

  1. Edit the standard Payment Receipt template to remove the c: from before PDFReceiptComponent. 
  2. Clone the Payment Receipt template and name it Payment Invoice
  3. Change all the wording in the email template related to Receipt and make it Invoice or Tax Invoice - you need to replace the fields with hard coded text because we are using the one Payment Form and "PDF Receipt" for both Invoicing and Receipting. (for Bonus Points you could create custom settings to store this text in case the government changes the requirements for Tax Invoices again at a future date (and don't think they won't)). 
  4. Change the component to be the following <AAkPay:PDFReceiptComponent PT="{!RelatedTo}" receiptLabel="TAX INVOICE" suppressStatusUpdate="true"/>

It will look like this (code about plain text and rich text removed for clarity - it still needs to be there:

<messaging:emailTemplate subject="Tax Invoice for: {!RelatedTo.AAkPay__FirstName__c} {!RelatedTo.AAkPay__LastName__c}, {!RelatedTo.AAkPay__Receipt_No__c}" recipientType="Contact" relatedToType="AAkPay__Payment_Txn__c">
 
...
 
Dear {!RelatedTo.AAkPay__FirstName__c},
Thank you for your registration, please find attached your PDF Tax Invoice. 
You will need a PDF reader to open or print your Invoice (available free from www.adobe.com).
Kind regards,
{!$Organization.Name}
{!$Organization.Street}
{!$Organization.City} {!$Organization.State} {!$Organization.PostalCode}
{!$Organization.Country}
P: {!$Organization.Phone}
F: {!$Organization.Fax}

...

<messaging:attachment renderAs="PDF" filename="Tax Invoice - {!RelatedTo.AAkPay__Receipt_No__c}.pdf">

<AAkPay:PDFReceiptComponent PT="{!RelatedTo}" receiptLabel="TAX INVOICE" suppressStatusUpdate="true"/>

(for bonus points, change the email subject to be the Company Name field if they need to be invoiced to a specific Company). 

Change the wording of the email to suit what you want for your registration process. Eg, you may say something like, "Entry to the event is not guaranteed until you receive a confirmation from us, after we have received payment." Be very careful that there is nothing on this invoice that indicates that they have paid for a ticket. I would also put this text in the Receipt or Invoice field if it is critical for your business process. 

Create a workflow on Payment Txn 

Clone existing Send Receipt Automatic. 

 TEST! TEST! TEST!

Process

Credit Card

Cheque

EFT

 

I hope that's it. I hope that works for you. Let me know! 

Gotchas

This is a lot of work and is a bit of hack, so if anything changes in the way AAkPayments works, you may need to re-jig your process. I would love AAk to do this as a real option, using existing Invoice fields. 

If you have a situation where you also take donations on top of events payments, AND you want to use suggested amounts, when you click on the hyperlink to pay by Credit Card after issuing the Tax Invoice, the donation amount will not be there. There is a workaround to this, but it is such a hack and there are so many steps, it is probably not worth it. Hopefully this weird scenario will be fixed in a future release. For now, just turn off suggested amounts, and it will work.