For any online payment gateway not directly supported, you need to set up a custom payment submission that posts all the correct fields to the gateway.
NOTE: This is a legacy payment gateway, which you can continue to use, but please note that any changes made to the gateway by the service provider could disrupt your online payment system. The new gateway integration platform is designed to avoid these disruptions and seamlessly update as required.
1.Custom Payment Form: This is the payment form used when accepting payments for events, invoices, and/or registrations.

Custom Payment Gateway Definition
a.When you set up your account with an online payment gateway provider, you should receive a snippet of HTML code that you are instructed to put on your website. Copy and paste that code into this memo field. You may then need to adjust some of the text to ensure that values are properly passed to the payment gateway.
b.Every payment gateway takes their own specific values, but a sample code
<form name="payment" action="https://www.samplegateway.com/scripts/payment/payment.asp" method="POST">
<input type="hidden" name="merchant_id" value="123456789">
<input type="hidden" name="trnAmount" value=$Contact.PaymentAmount>
<input type="hidden" name="ref1" value="$Contact.PaymentCustomData">
<input type="hidden" name="ordName" value="$Contact.Name">
<input type="hidden" name="ordEmailAddress" value="$Contact.PrimaryEmail">
<input type="hidden" name="ordPhoneNumber" value="$Contact.PrimaryPhone">
<input type="hidden" name="ordAddress1" value="$Contact.PrimaryAddress.AddressLine1">
<input type="hidden" name="ordAddress2" value="$Contact.PrimaryAddress.AddressLine2">
<input type="hidden" name="ordCity" value="$Contact.PrimaryAddress.City.ItemCode">
<input type="hidden" name="ordProvince" value="$Contact.PrimaryAddress.State.ItemCode">
<input type="hidden" name="ordPostalCode" value="$Contact.PrimaryAddress.PostalCode">
<input type="hidden" name="approvedPage" value="https://connect.eventpro.net/DefaultInstall/Payments/CustomSuccess.asp">
<input type="hidden" name="declinedPage" value="https://connect.eventpro.net/DefaultInstall/Payments/CustomFailure.asp">
</form>
|
c.The input fields will depend on the payment gateway to which you will be posting this form.
d.The reference field needs to be a field that is passed back from the payment gateway, and must have PaymentCustomData in it.
e.All the values can pull data from all fields in the Contact or Event tables using the format in the sample above, i.e. $Contact.Field or $Event.Field.
f.The "Contact" will be the...
i.Attendee Contact on Registration payments,
ii.Event Contact on Event payments, and
iii.Invoice Contact on Invoice payments.
g.Both tables also have fields that pull special information, namely PaymentItemName, PaymentItemNumber, PaymentAmount, and PaymentCustomData.
h.The "approved" and "declined" pages are the pages that the User will be returned to after leaving the payment gateway. The approved/declined pages are described in the sections below, which explain how to set up success and failure responses.
2.Success and Failure Responses: Some payment gateway providers will post back a Success or Failure response to a given address. EPConnect is capable of handling these responses if set up correctly. See examples of responses below:
•To handle Success Responses from payment gateways, you typically need to create an intermediary page that handles the payment gateway's response and converts it to a response that our website would recognize.
•It is easiest to create the Success Response page as an ASP page, and have it automatically post a form containing the proper field names with the values converted from the form. (Remember to turn on the feature that allows ASP pages in your Windows Features.)
•Here is a sample Success Response conversion page:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Payment Successful</title>
</head>
<body>
<form action="https://connect.eventpro.net/payments/custom.aspx" method="post" name="payment">
<input type="hidden" name="Reference" value="<% = Request.QueryString("trnId") %>" />
<input type="hidden" name="CustomData" value="<% = Request.QueryString("ref1") %>" />
<input type="hidden" name="Amount" value="<% = Request.QueryString("trnAmount") %>" />
<input type="hidden" name="Name" value="<% = Request.QueryString("trnCustomerName") %>" />
<input type="hidden" name="TransactionDate" value="<% = Request.QueryString("trnDate") %>" />
</form>
<script type="text/javascript" language="javascript">
document.payment.submit();
</script>
</body>
</html>
|
•To see the fields that EPConnect accepts on a payment response, go to Valid Response Input Fields. |
•There are two possible ways that EPConnect can handle Failure Responses from payment gateways:
oPass the proper link to the payment gateway, or
oCreate a page that handles the payment gateway's response and converts it to a response that our website recognizes.
•If you are able to use the first option, the easier approach, you simply need to pass the payment gateway the proper link to use, for example:
https://connect.eventpro.net/default.aspx?page=paymentfailed&objecttype=$Contact.PaymentObjectType&id=$Contact.PaymentObjectID&bookingnumber=$Contact.PaymentItemNumber
•However, some payment gateways return their own set of values, in which case you need to use the second option and create an ASP conversion page. (Remember to turn on the feature that allows ASP pages in your Windows Features.)
Here is a sample Failure Response conversion page:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Payment Failed</title>
</head>
<body>
<form action="https://connect.eventpro.net/DefaultInstall/payments/custom.aspx" method="post" name="payment">
<input type="hidden" name="CustomData" value="<% = Request.QueryString("ref1") %>" />
<input type="hidden" name="PaymentFailed" value="1" />
<input type="hidden" name="Message" value="<% = Request.QueryString("messageText") %>" />
</form>
<script type="text/javascript" language="javascript">
document.payment.submit();
</script>
</body>
</html>
|
•To see the fields that EPConnect accepts on a payment response, go to Valid Response Input Fields. |
Field (*required)
|
Description
|
Reference*
|
The Reference Number or ID for this payment.
|
CustomData*
|
The custom data that was sent to the payment gateway.
This field is used to link the payment properly.
|
TransactionDate
|
The date the transaction was made on.
If no date is supplied, the current date will be used.
|
Description
|
The description of the payment.
If one is not supplied, the default “Online Payment” is used.
|
Amount*
|
The payment amount.
|
FirstName
LastName
|
The first name of the person making this payment.
The last name of the person making this payment.
If a first name and last name are not supplied, the first and last names for the Contact or Attendee will be used.
|
Name
|
The full name of the person making this payment.
This field will override the first and last name fields.
|
Address1
|
The first address line of the person making this payment.
|
Address2
|
The second address line of the person making this payment.
|
City
|
The city of the person making this payment.
|
State
|
The state of the person making this payment.
|
ZipCode
|
The zip code of the person making this payment.
|
Country
|
The country of the person making this payment.
|
PaymentFailed
|
Set to 1 to indicate a failure.
When set to 1, only the CustomData field is required.
|
Message
|
The error message returned by the payment gateway.
This is used with the PaymentFailed option.
|
|
•When you have completed the payment settings for this Payment Gateway Definition, refer back to the topic Define Legacy Payment Gateways to save your changes.