Use the /createHold endpoint to set aside part of an account's available balance. The held amount can't be spent until the hold expires or you release it with Release Hold. No money moves. For example, you can hold funds as a reserve while a payment can still be returned.
We send a transaction.createHold webhook when the hold is in place, and a transaction.holdExpired webhook when it stops holding funds.
If you don't get a result back (for example, the request times out or returns HOLD_OUTCOME_UNKNOWN), don't send Create Hold again, because that can place a second hold. Check List Holds instead. To cancel a hold, call Release Hold with the holdId and accountId.
Hold requests don't need a ZTM session or approval.
📘 Note: Holds must be turned on for your program before you can create them. Contact Spidr to set this up.
