PatronManager Help

Payment and Confirmation Exceptions on Ticket Orders and How to Resolve Them

Updated on

Use this link to share with your colleagues:

Payment and Confirmation Exceptions on Ticket Orders and How to Resolve Them: https://help.pm.leapevent.tech/a/1613050

Sometimes, when a Ticket Order is processed, unexpected things can happen which result in an Exception on the Order that needs to be resolved. There are two types of Exceptions that can happen on Ticket Orders:

Payment Exceptions happen when a credit card payment times out - something has gone wrong between PatronManager, the card processor, and the internet. To fix the issue, sometimes you'll need to rerun the transaction; other times, you'll just need to manually enter some info into PatronManager.

Confirmation Exceptions happen when payment has been processed successfully, but something prevents the Order Confirmation email from being sent to the patron. To fix the issue, you'll typically need to manually send the confirmation.

So how do you know what to do? That's what we're here for! In this article, we'll walk you through how to resolve your Payment / Confirmation Exceptions on Ticket Orders from start to finish:

  1. Find a list of your Ticket Order Payment / Confirmation Exceptions
  2. Enter the Resolve Exception process
  3. Resolve the Exception based on the screen you see

If you've received an email about a Payment or Confirmation Exception, you can start on step 2 - entering the Resolve Exception process.

This should take approximately 10-30 minutes, depending on which resolution path you need to follow.

Your Order Fulfillment Administrator gets an email for every Ticket Order in Payment / Confirmation Exception. Those folks should make sure they resolve any Exceptions as soon as possible.

If you're not sure who your Order Fulfillment Administrator is, you can find that from PatronTicket Settings.

1. Find a list of your Ticket Order Payment / Confirmation Exceptions

While your Order Fulfillment Administrator should keep on top of all the Payment and Confirmation Exceptions as they come in, sometimes you'll want to see a list of any and all Exceptions in your system.

Here's how to find your Ticket Order Payment / Confirmation Exceptions

1. Go to the PatronTicket Hub and click View Ticket Orders

2. Change the view to Exceptions, then click Apply Filter

3. Click the Order Name to get to the Ticket Order in exception

2. Enter the Resolve Exception process

On a Ticket Order, click the Resolve Exception button in the upper right:

3. Depending on what you see next, resolve the exception

Look for the words "Payment Exception" or "Confirmation Exception" on your screen, then expand the corresponding section below for detailed steps.

I have a Payment Exception

Resolve a Payment Exception

OK, we've arrived at the "Choose Your Own Adventure" portion of this article; what you do next depends on what you see. First, check if you have this "IMPORTANT" message on your screen:

If you see "IMPORTANT: YOU MUST COMPLETE THESE STEPS IN ORDER", click here

This means that PatronManager was unable to determine whether the patron's card was charged or not, and you'll need to do a little research to sort things out.

Now see if the message says "Stripe" or if it says "STS":

My message says "Stripe"

Okey doke! You'll need to:

  • Gather a little information about the transaction thus far in PatronManager
  • Go into your Stripe account to research the transaction (including if the transaction was processed)
  • Depending on those results, rerun or record the transaction in PatronManager

Let's do it!

3.1. Make sure you know the Buyer's Name, the transaction amount, and the transaction date/time

For a ticket order, the best place to find this information is on the PatronTicket Orders tab:

The "Date Created" on this list refers to the Ticket Order itself, so it may be a minute or two before the transaction.

3.2. In a different tab, log into your Stripe portal

Here's a link to their website.

3.3. Run a report of transactions from that date, then look for a transaction matching the name, amount, and time you wrote down earlier

Not sure how to run a Stripe report or find a transaction? Contact Stripe for assistance, or refer to their robust documentation.

Did you find one? Click here

This means your patron's card has already been charged. Still in Stripe, be sure to write down the following details:

  • Transaction ID
  • Credit Card Type (Visa, etc)
  • Transaction Date/Time

Got it? It's time to move to the next step (resolving the exception).

You didn't find one? Click here

Your patron's card has not been charged. You can move onto the next step (resolving the exception).

3.4. Head back to the Exception Resolution screen in PatronManager

If your patron's card was already charged, enter the details you gathered from Stripe and click Record Transaction (1). The exception will resolve.

If your patron's card was not charged yet, you can either:

  • Retry Payment (2): PatronManager will attempt to process the payment again (and hopefully this time it'll work)
  • Delete Record (3): since no payment has been recorded, you can just scrap the whole Order and start over, if you prefer
    • This option will not be present if another partial payment has already been processed successfully

If you click Retry Payment and the patron's card has already been charged, you will double-charge your patron. Be sure to do your research in Stripe first!

3.5. Payment Exception Resolved! You're done
My message says "STS"
3.1. First, get in touch with STS

Send an email to [email protected] to ask for assistance. Let them know:

  • You are using the PatronManager/STS integration and you appear to have a payment error
  • You'd like to share with them the card holder's name, the card number (if you have it), the Order date and time, and the amount that was supposed to be charged to the gift card, but that you don't want to send this information over email, as it potentially constitutes PII (personally identifiable information)
  • You'd like to know if value was removed from the gift card or not
  • And that you'd like to speak with them over the phone to resolve the issue
3.2. When you get on the phone with an STS representative, work with them to figure out if the gift card transaction was processed on their end

Share with them the details they need to find the transaction on their end.

  • If they can find the transaction, your patron's gift card was already charged
  • If they cannot find the transaction, your patron's gift card has not been charged
3.3. With the representative still on the phone, pull up the Exception Resolution screen in PatronManager

It's time to resolve that exception!

If your patron's gift card was already charged, ask the STS representative for the transaction details PatronManager asks you to fill in (e.g. Transaction ID), then click Record Transaction (1).

Note: STS doesn't have a specific Transaction ID the same way a credit card processor would. Instead, they'll provide you with a unique number that corresponds to the date/time the transaction occurred (e.g. if the date and time of the transaction was: 8/17/2021 7:00:13 AM, they'll provide a "Transaction ID" of 817202170013). You'll enter this number as the Transaction ID.

If your patron's gift card was not charged yet, you can either:

  • Retry Payment (2): PatronManager will attempt to process the payment again (and hopefully this time it'll work)
  • Delete Record (3): since no payment has been recorded, you can just scrap the whole Order and start over, if you prefer
    • This option will not be present if another partial payment has already been processed successfully

If you click Retry Payment and the patron's gift card has already been charged, you will double-charge your patron. Be sure to do your research with STS first!

3.4. Payment Exception Resolved! You're done
If you do *not* see the "IMPORTANT" message, click here

OK, great! This means that PatronManager knows what happened, but needs your help to fix things up.

The message on the Order will tell you exactly what to do!

This warning box will say one of two things:

  • "The transaction succeeded and the credit card was charged, but PatronManager didn’t get all the details. Click "Record Transaction" to fix up the Ticket Order."
  • "Transaction failed: the credit card was not charged. Click "Retry Payment" to return to the Ticket Order and complete it with a new payment method. Or click "Delete Record" to clear the Ticket Order from the system and free up inventory."
    • Note: the "Delete Record" option will only appear if there are no previous successful payments for that Ticket Order.

I have a Confirmation Exception

Resolve a Confirmation Exception

When viewing a Confirmation Exception, first check for an Error Message. When one is present, it will give you additional information about what went wrong and what you'll need to fix in order to resolve the Exception and prevent more from happening.

In the example below, the organization has run out of licenses for Portal users, which caused a Confirmation Exception on a membership order. They would need to either deactivate some existing Portal users, or purchase additional licenses in order to resolve this Exception.

What are some common Error Messages?

Most of these Error Messages start with "The [ticket / membership / subscription] order has been processed, but there was an error sending the confirmation email:" so below we've listed what will appear after that text. Expand your Error Message for more information on how to resolve it.

3.1. Unable to activate portal user account for Contact with ID: [XXXXXXXX] due to the following error: Insert failed. First exception on row 0; first error: LICENSE_LIMIT_EXCEEDED, License Limit Exceeded

This Error Message means that you have run out of licenses for Portal users.

You will need to either deactivate some existing Portal users, or purchase additional licenses in order to resolve this Exception.

If you need to purchase additional licenses, you can do that using this survey.

3.2. Apex CPU time limit exceeded

This Error Message means that the Ticket Order is too large to send the Order Confirmation Email, usually because of a Ticket Order failing to generate a print-at-home ticket PDF with 50+ tickets.

To resolve this Confirmation Exception, you'll need to go back to the Ticket Order and temporarily change the Delivery Method to something other than Email.

Once you've resolved the Confirmation Exception, you can change the Delivery Method back to Email, if you wish. To get the patron their tickets, you can either print them, or email the tickets manually in smaller segments from the "Print" tab on the Order.

To send the patron a Confirmation Email with line items summarized rather than listed out, you may wish to create a custom Order Confirmation for larger ticket orders.

Alternatively, you can enable mobile tickets for all Email tickets, which will prevent this error from happening again.

3.3. UNKNOWN_EXCEPTION, portal account owner must have a role

Note that this error message appears above the rest of the Confirmation Exception information.

This error means that the internal User (i.e. staff member or employee) set as the Contact or Account Owner does not have a Role assigned to them.

You will need to go to the "Users" in Setup and ensure that all of your internal Users (including deactivated Users) have a Role assigned to them in order to resolve this Exception.

If you use PatronPortal, all of your internal Users must have a Role assigned to them.

3.4. UNVERIFIED_SENDER_ADDRESS, Organization-Wide Email Address has not be verified for use

This Error Message means that one of the emails set as an organization-wide email address has not been verified yet.

You will need to go to the "Organization-Wide Addresses" area of Setup to resend the verification request to any unverified emails. This will trigger an email from Salesforce to that address, and you'll need to click the link in the email to finish the verification process and then resolve this Exception.

3.5. INSUFFICIENT_ACCESS_OR_READONLY, Not profiled to access this Org-wide Email Address, Not profiled to access this Org-wide Email Address

This Error Message means that one of the emails set as an organization-wide email address was not set to "Allow All Profiles to Use this From Address."

You will need to go to the "Organization-Wide Addresses" area of Setup to ensure that the access for each of your Organization-Wide emails match these settings and then resolve this Exception.

3.6. Unable to activate portal user account for Contact with ID: [XXXXX] due to the following error: Duplicate Username. An inactive user with the username "[email address]" already exists.

This Error Message indicates that a User with this Username already exists in Salesforce, and because Usernames must be unique, the system was unable to generate a PatronPortal User for this patron. This may be because the patron was previously a Portal User and has since lost access (usually because of lapsed Benefits) or it could be that the patron's email address is in use as their Username in another company's Salesforce.

You will need to either go to the "Users" in Setup and change the Username for the inactive User with the same Username or ask the patron for an alternative email address to use as their Username. You can always go back and change the Email associated with their Portal User later to match the email address they wish to use. Then, you can go back and resolve the exception.

3.7. Unable to send confirmation email. The order confirmation email template could not be retrieved.

This Error Message means that the Email Template set as one of your Confirmation Templates can't be found by the system.

You will need to make the Email Template available again by checking the following things:

  1. Check that your Confirmation Email Templates in "Classic Email Templates" in Setup are checked as "Available for Use" and not deleted
  2. Check your PatronTicket Settings to ensure the default confirmation templates are correct, which should be these defaults:
    • Confirmation Email Template = PatronTicket : Order Confirmation Template
    • Subscription "Awaiting Fulfillment" Conf. Template = PatronTicket : Subscription Order Confirmation Template
    • Membership Confirmation Email Template = PatronTicket : Membership Order Confirmation Template
    • Subscription Renewal Email Template = PatronTicket : Subscription Renewal Template
    • Refund Confirmation Email Template = PatronTicket : Refund Confirmation Template
    • Exchange Confirmation Email Template = PatronTicket : Exchange Confirmation Template

Then you can resolve the exception.

3.8. FIELD_INTEGRITY_EXCEPTION, There's a problem with this country, even though it may appear correct. Please select a country/territory from the list of valid countries.: Mailing Country: [MailingCountry]

This Error Message means that one of the countries in your State and Country/Territory Picklists has an Integration Value that doesn't match its Country/Territory Name.

You will need to go to State and Country/Territory Picklists in Setup and adjust the Integration Value to match the Country/Territory Name for your countries by following steps 3.1 to 3.3.

Then you can resolve the Exception.

3.9. INVALID_OR_NULL_FOR_RESTRICTED_PICKLIST, bad value for restricted picklist field: [PICKLIST VALUE]: [PatronSignup__AccessRequirements__c]
INVALID_OR_NULL_FOR_RESTRICTED_PICKLIST error

This Error Message means that one of the countries in your Access Requirements picklist wasn't added to all Record Types that use the Global Value Set.

You will need to go to each Contact Record Type to ensure that all Access Requirement picklist values are available for each Record Type with these steps.

Then you can resolve the Exception.

But what if there isn't an Error Message?

When a Confirmation Exception occurs without a specific Error Message, it often means the email address on the Ticket Order isn't correct.

If you just need to update the email address...
3.1. On the Ticket Order, go to the Buyer Info tab
Update the email address on the Ticket Order
3.1. Once you've addressed the issue, go back and resolve the Exception
3.2. Confirmation Exception resolved!

If the underlying issue was fixed, the Order should no longer be in Confirmation Exception.

Previous Article How to Manage Chargebacks Using Stripe
Next Article How to Deal with Live Event Emergencies
Still Need Help? Continue to the Client Community