Skip to main content

I have a simple Zap integration - need to send NEW Eventbrite orders to Square.  At the moment, I have this part working after some trial and error.  But I also wanted to include Zap to create refunds in Square if they occur in Eventbrite.

The Zap for refunds will give error that amount exceeds the sale.  I tested by purchasing a single ticket for an event, then I will issue myself a refund a couple min later and see this error:

 

If at all possible, are there any Zap Pros that might see this post and can send me message to consult - I have reached out to a few and have yet to get a response.

Hi ​@LoboSales 

For us to have more info about the error, post screenshots showing how your Zap steps are outlined and configured in EDIT mode with the field mappings visible.


2 steps as follows:

 

 

 

 

 


@LoboSales 

TIP: Click the field labels to see tooltips with more info about the fields.

Things to check…

  • For the Payment fields, looks like you have a static Payment selected, but you probably want that to be dynamic with a variable mapped.
  • For the Refund Amount field, check if it expects the value in cents or dollars, and check if the mapped variable value from Eventbrite is in cents or dollars

 


When I test the step:

 

I also receive email that Zap failed when I run a transaction and then refund the same transaction:

 


@LoboSales 

The error from Square indicates the requested refund amount exceeds the amount available to refund.

 

Feedback from Square API documentation that the following applies to refunds:

  • You cannot refund more than what was originally collected.
  • The refund amount must be available in the account's Square balance. If the amount is not available, Square attempts to take money out of the associated bank account. Refunds are in a state of PENDING until the funds are secured.
  • If funds cannot be secured, the refund is not completed and the buyer does not receive a credit. The refund has a status of FAILED. Future refunds to this payment are not allowed and the buyer should be reimbursed by other means.
  • You can refund only payments with status COMPLETED. You cannot refund an APPROVED payment; however, you can cancel an approved payment.

 

 

 


Troy,

I understand those requirements, but yet I still am unable to process the Zap.  I bought a single ticket, but when I refund that single ticket, I get the error.  The single ticket is the $33.22 in following:

 


@LoboSales 

The static Payment you have selected does not seem to match to the Transactions shown in Square.

  • Different Dates (Dec 20 vs Dec 23)
  • Different Timestamps (4:18 AM vs 9:33 AM)

 


Troy,

I had noticed that when I was testing the Zap, but I am still getting failures.

In Configure:

 

Test Fails:

 

 


@LoboSales 

In Square, find the Payment ID, often found in the browser URL, when viewing a Payment.

e.g. fjoNt…

Then make sure you have selected the same Payment ID in the Zap step.

 


Troy, appreciate the guidance, really troubling when error reporting is limited/vague.  I think i have the steps right, just get bounce back.


I also get one working, but others don’t:

 

 


@LoboSales 

To make this work dynamically, you need to know the Square Payment ID to use each time the Zap Runs.

That means you need to map a dynamic variable for the Payment field, so that each time the Zap runs it uses a different Payment ID.

If the Payment ID to use does not come from Eventbrite in Zap step 1, then additional Zap steps need to be added to find the Square Payment ID to use.

 

Realistically you probably need at least 4 Zap steps:

  1. Trigger: Eventbrite - Updated Attendee
    1. You may need to set a selection for the field: Filter by Status
  2. Action: Filter
    1. You may need to add a condition to only continue when certain field value conditions are met with the data from Zap step 1
  3. Action: Square - Find Payment
    1. NOTE: There is no Zap action available for Square to Find Payment
    2. Used to get the Square Payment ID to use in the next Zap step via a dynamic variable
    3. This may require using the Square API: https://developer.squareup.com/docs/payments-api/retrieve-payments
      1. Zap step logic may be needed like this: find the related Square customer to find the related Square Payments for the Customer to then derived the matching Square Payment based on the date and the amount, etc.
  4. Action: Square - Refund Payment
    1. Map the Payment ID from a previous Zap step to the Payment field

 

 


Reply