Making payments pending

I think the reason I’m not making business is because I charge fees per payment to pay square their fees, even when I issue refunds. My competitors who use Eventbrite never have to deal with fees when refunding people over canceled events, but I personally hate Eventbrite.

I just thought a way I could possibly remedy this situation is this:

Create a payment-on-hold (pending) state until the event date approaches. If the event runs, charge the customer’s card at that point, and square will receive the fees. If the event doesn’t run, cancel processing the payment, and neither I or square will receive money.

If this is possible, then:

How long can the state last for? (or how long is the token that’s generated from a valid credit card number or other payment source valid for)?

Will the hold be placed on the customers card during this pending state?

Is there a limit on the funds I can receive at any one time?

:wave: I’m Square Dev AI, here to help answer your question!
Based on the information you’ve provided, the following documentation will help answer your question:

Additional Documentation

Refund Payments
Square Developer
Guidelines and Limitations

If this documentation helped you find a solution, please check the box indicating that this reply solves the problem.
Otherwise one of our Developer Advocates will provide additional assistance shortly.

Square provides a feature called “Delayed Capture” which allows you to authorize a payment and capture it at a later time. This can be useful in situations where you want to ensure funds are available but don’t want to charge the customer until the service is provided or the event takes place.

The time threshold for capturing a payment varies depending on the type of payment. For card payments, you have 36 hours for in-person payments and 7 days for online payments to capture the payment. After this period, if the payment isn’t in a terminal state (COMPLETED, CANCELED, or FAILED), Square automatically cancels the payment.

During this period, the funds are not held on the customer’s card, but the authorization ensures that the funds are available.

As for the limit on the funds you can receive at any one time, Square does not specify a maximum limit for transactions. However, unusually large transactions may trigger a review by Square’s risk evaluation system.

Please note that while the payment is in the “Delayed Capture” state, it cannot be voided using the VoidTransaction endpoint. Transactions are captured using the Payments API on a backend service.

This answer was reviewed by @Bryan-Square.


I read in your douments that the longest I could hold the payment for is 7 days, but is there a way to hold the payment for 5 weeks?

I ask because I advertise new events 5-6 weeks in advance and someone might instantly buy a ticket, then if on event day, the event cancels, then I want to be able to cancel the hold to all ticket holders in that time frame, not just to those ticket holders who buy tickets up to 6 days before the event date.

At this time 7 days is the longest that a payment can be held. We’re constantly working to improve our features based on feedback like this, so I’ll be sure to share your request to the API product team. :slightly_smiling_face:

And to clarify. If I put the customer’s money on hold through the preauthorization, and within the time limit (7 days) I cancel the payment, will square charge the customer or I any service fees?

No fees will be assessed if you cancel a payment. :slightly_smiling_face: