Preauthorization hold not working on credit card in production


I am using square in a production environment to test small payments of 4 and 5 cents both where holding funds is enabled and disabled.

I am using my own credit card to run the tests. In all cases, my credit is in good standing and I have sufficient available balance.

When I do a test payment of 5 cents without doing a hold, that charge appears on my credit card almost right away.

However if I do a hold which converts to a charge in 7 days, I noticed that my bank never took note of the hold amount.

Here’s what I made different in my call to the payments API to create a credit card hold instead of an instant payment:

I set:
delay_action to COMPLETE
delay_duration to P7D
accept_partial_authorization to false
autocomplete to false

also, today, four hours ago I converted a hold to a charge by calling the complete payments function, then I buy something at a store all with the same credit card. I noticed the items from the store instantly appear in my account but I don’t notice any charge from my business.

Is 4 cents too small of a hold amount? or is there some undocumented parameter I need to call in the api?

When I do the holds, I ensure the status is “approved” before continuing. and in my tests the statuses returned are correct.

This doesn’t sound like a Square related issue. If all the authorizations and charges are successful on the Square side this sounds like its a problem with how your bank is showing the payments within your banks UI. I’d recommend reaching out to them about this. Also please note what you see may differ from your customers if they have a different bank. :slightly_smiling_face: