When Holdback won't take a fee
Holdback refuses some charges on purpose. Each refusal is there so Holdback never takes money your customer didn't agree to — which is what turns into a chargeback, and a chargeback is what makes a hire shop uninstall a deposits app.
Every refusal below happens before anything is charged. Your customer's card is untouched, and Holdback tells you in plain words on the Rentals page.
Your customer may get two emails for one charge
When Holdback takes a fee from the saved card, your customer is emailed the amount and your reason. Shopify can also send its own payment receipt for the same charge (the order's timeline shows "Order payment receipt email was sent"), and Holdback has no setting to stop that. Holdback already asks Shopify not to send its order-edit notification, but the receipt for a payment is Shopify's own and goes out whatever the app asks. If your customer wonders why they have two, the answer is that Holdback's email says why the money was taken and Shopify's is the receipt. The fee-taken email tells your customer to expect it.
After the latest charge date
At checkout, your customer is shown a date. It's your hire period plus your inspection window (or the Latest charge setting, if you've set one), and it's the latest date Holdback can keep anything from the deposit.
Worth knowing, because customers ask: Shopify's own checkout says "Your card will be charged on [that date]", and that sentence can't be edited or removed by us. It isn't wrong so much as incomplete — what's charged on or before that date is whatever is owed, and on a hire that comes back fine there's nothing to charge for. Holdback's product-page notice and its first email both say so in as many words, so your customer has been told; if one asks you, that's the answer.
Once it passes, Holdback will not keep money from that saved card. Eligible late fees use Keep a late fee with a payment link instead. Recording a return takes no late fee. Releasing a deposit does not take money.
Holdback releases an untouched deposit before that date when no problem has been recorded. Do not use Shopify's Collect payment button to bypass a refusal: it can collect the whole outstanding balance.
How to avoid it
Finish before the date. Holdback emails you three days before and releases it itself the day before if no problem has been recorded. The Rentals page shows the date on every rental. If your hires regularly run long, raise Latest charge on the deposit rule so the date your customer is shown covers how far ahead they book. Booked dates that run past it are flagged on Rentals in red.
In a currency Holdback can't work in exactly
New deposit rules need a currency with two decimal places, such as GBP, USD, EUR or AUD. Holdback reads your shop's currency before showing or saving a rule; it does not substitute another currency.
JPY and other currencies with no decimal places, and currencies with three decimal places such as KWD or BHD, cannot be used for new deposit rules yet. The rule form explains the refusal. Existing records and receipts retain their original currency.
If you need one of these currencies, email support@holdback.co.uk. A merchant asking is what gets it built.
The other refusals you might see
- "That's more than the deposit your customer agreed to." Holdback never takes a late fee above the deposit your customer agreed to.
- "This order has been changed since the deposit was agreed." A line was added or removed, or part of the balance was collected in Shopify. Holdback won't guess. Undo the change, or send your customer a payment link for the extra.
- If you refund or remove an item from an order that has a deposit, type the refund amount in the same refund. Shopify's refund form starts at 0.00 and shows a negative "Outstanding balance". Pressing Refund with 0.00 removes the item and quietly takes its price off the deposit, so the order then owes less than the deposit and Holdback can't release it. Type the amount you are giving back before you press Refund, in the same step as removing the item. A separate refund afterwards doesn't put the deposit back. If it has already happened, don't refund again: write to support@holdback.co.uk with the order number.
- "The order changed in Shopify while Holdback was settling it." Something moved mid-charge. Nothing was charged. Check the order, then press Resume.
- "Another charge or release on this rental is already running." Two people, or two tabs. Wait a moment and refresh — only one of them will go through.
- "Your customer bought the damage waiver, so this can't be taken from their card." Damage and non-return are a claim: use Send a damage claim.
- "Damage is sent to your customer to approve and pay. Loss and non-return can be kept from the deposit on hires agreed under the new terms." Shopify Flow only releases deposits. Keep a late fee is the separate late-fee action on Rentals. Send damage as a claim with Send a damage claim; keep a lost or unreturned item from the deposit with It's back, then No, there's a problem, then It's not coming back or Mark as lost; see Damage, loss and non-return.
- "There's no saved card on this order any more." Shopify can remove the saved card after your customer pays anything through a payment link (a claim, an invoice or Collect payment), and on some stores once the order is paid in full. That's normal, not a fault. An eligible fee through Keep a late fee uses a payment link: the deposit is released, the fee goes on the order as its own line and your customer is emailed a link to pay it. Holdback never tries a card that isn't there.
- "The card was declined." Ask your customer to update their card with Ask for a new card. After a decline Shopify won't let the same card be tried again, so there's no Resume until they've updated it, and Holdback never retries a declined card on its own.
- "A claim is waiting for the customer on this rental." Nothing else can be charged or released until the claim is paid, withdrawn or written off, because the customer's payment page asks for the whole balance.
Another app is holding part of the same balance
Some apps — subscriptions, pre-orders, try before you buy — also leave a balance on an order for later, and Shopify shows the two added together. Holdback's charge takes the whole remaining balance, so on an order like that it has to be sure the balance is only its own.
It works that out from the plans themselves: what each of Holdback's own lines defers. If that comes to exactly the order's outstanding balance and exactly the deposit your customer agreed to, the other app's line is deferring nothing — a subscription that bills later but charges nothing today, for instance — and Holdback carries on as normal, discounting only its own lines.
If the numbers don't line up, or Shopify won't say what a plan defers, Holdback refuses rather than guess, and says so on the rental from the moment the deposit is opened. Finish that one from the order page in your Shopify admin, where you can see both balances and decide — bearing in mind that takes the whole remaining balance, with no cap and no email to your customer.
Releasing is almost never refused
Recording a return takes no late fee or extension fee. A release takes no money. An extension fee goes by a separate payment link. A release can still be refused when Holdback cannot establish the balance or safely edit the order:
- A currency with three decimal places (see above). Release the deposit from the order page in your Shopify admin instead.
- Another app's balance on the same order (see above). Same answer.
- A claim still open on the rental. The release waits until the claim is paid, withdrawn or written off.
- An order sent with Shopify's own Local delivery. Shopify refuses every change to it, so Holdback can't release it, and Holdback emails you once to say so. Cancel the order in Shopify or finish it with your customer by hand. Holdback keeps Shopify's Local delivery off hire orders; see "Local delivery for hires" in Getting started.
- An order older than 60 days, before you've approved full order history. Shopify only lets an app read recent orders by default, and a release has to read the order to reduce it. Open Holdback from your Shopify admin and approve the access it asks for, then release as normal. This is the one case where a deposit genuinely waits on you — so if you hire things out for months at a time, approve it before you need it.
In the first two, the deposit is still yours to release — just from Shopify's own order page rather than from Holdback.