Skip to main content

Who a refund debits

A refund debits whoever owns the charge. That is not always the party whose customer paid, or the party whose product sold. Ownership is decided once, at charge creation, by which shape you used: A charge you collect on your own platform and split with standalone transfers afterward is liable the same way a destination charge is: your platform owns the charge, so your platform is debited. Direct is the only shape where a refund reaches into an account’s balance at all. On both the other shapes the charge was always your platform’s, so the refund never touches an account’s balance directly, whatever it later transferred out.

What a refund does not reverse

The customer gets back the full amount they paid. Nothing else about the charge unwinds with it: the platform fee is not reversed, and Bachs’s own processing fee is not reversed either. Both were earned when the charge settled, and a refund does not revisit that. This is deliberate policy, not an omission: the party debited by the refund is the one who absorbs the difference between what the customer gets back and what everyone else already kept.

On a direct charge

The account is debited the full amount the customer paid, but it only ever received the gross minus your platform fee. Work out the gap before an account asks you about it: on a 20% platform fee, a full refund leaves the account 20% short on that sale, because it is repaying more than it was ever credited.

On a destination charge

Your platform is debited the full gross of the refund. The account keeps the share it already received: the payout transfer that already moved to it is not reversed. A refund on a destination charge and the transfer it produced are two separate movements to Bachs, and refunding one does nothing to the other. If you want the account’s share back, there is no automatic route. Send it back yourself: act as the account with X-Account-Id and create a transfer with destination: "self". This only works while the funds are still in the account’s balance; once withdrawn, they are the account’s to keep, and recovering them is between you and the account, not something Bachs can do for you. See Transfers. The same holds if you collected the charge on your own platform and split it with standalone transfers afterward instead of naming an account on the charge itself: the charge was still your platform’s outright, so a refund debits your platform the same way. Nothing ties the refund to transfers you already sent out of it, since Bachs does not record that link, so a refund here does not touch, adjust, or even see them. Recovering a share works the same way: a transfer back with destination: "self", while the funds are still there.

When a refund is refused

A refund the debited party cannot fund is refused, not queued or partially applied. The debit is guarded against going into overdraft with no fallback: the post fails and nothing is written, so neither the customer nor the debited party’s balance moves. This returns the standard error envelope with BAD_REQUEST, 400, and the message Insufficient balance to refund. A balance already withdrawn cannot absorb a refund, since there is nothing to draw on. Unlike a lost dispute, an unfundable refund is not booked as a debt against a future settlement: a refund is voluntary, so it is refused instead. Fund the balance, then retry.