Orders & fulfillmentRefund an order

Refund an order

Issue a full or partial refund, choose whether to restock and notify the customer, and understand when the money lands.

You can refund a whole order or just part of it from the order's page. Refunds send the money back to the customer's original payment method through your payment provider. If a gift card paid part of the order, that share goes back onto the gift card instead; see Refunding an order paid with a gift card below.

Before you start

You refund from the order's payment. In the Orders list, open the order's menu and choose Manage Payment to see the payment status, amount, and the refund option.

The Manage Payment view showing the provider, paid status, amount, and the Create Refund button

You can only refund once the payment is captured and your payment provider supports refunds in Brainerce, unless a gift card settled the whole order, in which case there is no provider payment to wait for and you can refund it straight away. If the payment hasn't settled yet, the refund will fail with "No refundable payment found for this order". The Refund action is still offered, so the error is the signal: wait for the payment to settle, or cancel the order instead. Some providers require you to refund from their own dashboard; if so, the order shows a note instead of the Create Refund button. Morning (Green Invoice) is the only provider that does this by design, and a refund you make in Morning's own screens never comes back to Brainerce. The order here will still say paid afterwards. Record it yourself: see The money went back but the order still says paid.

Morning is not the only order that can lose the button. A MAX (מקס) order loses it too when your MAX terminal was connected without an API password, and that note carries no link to anywhere. It is fixable in about a minute, and it is not the same thing as a refund being declined. See There is no Create Refund button on a MAX order.

That "No refundable payment found" error means nothing settled this order at all, neither a card payment nor a gift card. It is not what you get on an order a gift card paid for.

The order total is not always what the customer was charged

The Total on an order is what the order was worth. That is not always what came off the customer's credit card, and the difference is worth reading before you refund anything.

When a gift card settled part of the order, the order summary shows the gift card under the total, and then an Amount charged line:

Line on the orderExampleWhat it means
Total₪500What the order was worth. VAT was worked out on this figure.
Gift card ····4821-₪200Paid by the gift card, so your payment provider never took it.
Amount charged₪300What your provider actually charged the customer's card.

The same three lines print on Print Order, so the receipt the customer keeps matches what they see on their card statement.

A gift card pays, it does not discount. The total deliberately stays at ₪500, because VAT was calculated on ₪500. Nothing on this list reduces the order's value, your revenue figure or your tax figures.

Only the last four digits of a gift-card code are ever shown, here and everywhere else in Brainerce. The full code is not stored, so no screen can show it to you and support cannot look it up. Those four digits are what the customer reads off their own email, and they are enough to find the card under Marketing → Gift cards.

Issue a full refund

  1. In Manage Payment, click Create Refund.
  2. Choose Full Refund (the full order total is pre-filled).
  3. Choose your options:
    • Restock inventory returns the items to stock (on by default).
    • Notify customer via email lets the customer know (on by default).
  4. (Optional) Add a Reason for your own records.
  5. Click Create Refund.

The Create Refund dialog set to Full Refund, with Restock inventory and Notify customer options

If a gift card paid part of this order, a full refund does not all go back to the credit card. It returns everything that settled the order, split between the gift card and your payment provider in the same proportions they paid. Before you promise a customer a figure on their card, check the Amount charged line on the order, and see Refunding an order paid with a gift card below.

Refund specific items

To return only part of an order, choose By Items instead of Full Refund.

  1. In the Create Refund dialog, choose By Items.
  2. Under Select items, tick the items coming back and set the quantity to refund for each, and the Refund amount adds up automatically. You can also enter a Custom amount (for example, to refund shipping only, or give a goodwill amount).
  3. Set Restock inventory and Notify customer as needed, add a reason, and click Create Refund.

The Create Refund dialog set to By Items, listing the order's items to select with a refund amount

You cannot choose where the money comes out of. If a gift card settled part of the order, whatever amount you enter here is split proportionally between the gift card and your payment provider. There is no option to send it all to the credit card and none to send it all to the gift card. The dialog spells the split out under the amount before you confirm, so read that line rather than telling the customer the whole figure is coming back to their bank.

If the same product appears on the order twice, check your stock afterwards. An order can list the same product or variant on two separate lines. That happens when the two were bought with different options, gift wrapping or a note. When you refund by items, Brainerce can put the money back correctly but may not be able to tell those two lines apart for the Restock inventory step, so one of them can be left out. The refund itself still goes through and the customer is unaffected. This only applies to refunding specific items. A full refund always restocks every line.

Refunding an order paid with a gift card

If a gift card paid part or all of the order, the money does not all come back the same way.

Gift-card value goes back to the gift card, never to a bank card and never as cash. There is no setting that redirects it.

  • The refund is split proportionally across everything that paid. An order settled ₪200 by gift card and ₪300 by credit card, refunded ₪100, returns ₪40 to the card and ₪60 to the credit card. You just enter the amount; Brainerce works out the split.
  • The card's share appears on the card immediately, in its movement history as Refunded to the card.
  • An order paid entirely by gift card involves no payment provider, so there is no 3 to 10 day wait. The value is back on the card as soon as the refund is recorded.

The split cannot be undone. Once the refund is recorded, the gift card's share is back on the card and nothing reverses it. If you refunded the wrong amount, refund the remaining difference separately, or adjust the card's balance by hand.

If the refund fails at your payment provider, check the gift card before you retry. Brainerce puts the gift-card share back before it calls your payment provider, so the value can already be on the card while the provider's half failed. Retrying the same amount will not credit the card a second time. Retrying a different amount will, so refund the outstanding difference rather than re-entering the original figure.

If a customer insists on cash instead, settle that outside Brainerce and then adjust the card's balance down, or you will owe the same money twice. See Gift card liability and refunds.

There is no Create Refund button on a MAX order

On a MAX (מקס) order the Create Refund button can be missing altogether. Where it should be, the order shows a short note saying refunds are not available for this provider, and unlike Morning that note points nowhere: there is no link, no reason and nothing to suggest it is fixable. It is.

The API password (סיסמת API) is what is missing

A MAX terminal that was connected without an API password cannot refund anything. MAX asks for three things: a terminal number, an API key, and an API password. The first two are enough to take money. The API password is the only one that can give money back, and MAX will not accept the API key in its place for a refund, a cancellation or a charge to a saved card. Connecting without it is easy to do, because the field is optional in the connect form.

Nothing warns you about this at any point. The connect form does not say the password is what refunds need, no test payment fails without it, and the note on the order does not name it. You find out on the day of your first refund, which is usually the worst possible day.

On a test connection there is never a password. The shared MAX test terminal is issued none at all, so refunds are always unavailable in test mode. That is expected and there is nothing wrong with your store.

Add the password and the button comes back

  1. Go to Apps and open your MAX installation.
  2. Choose Reconfigure.
  3. Re-enter your MAX credentials, this time including the API password (סיסמת API) from your MAX terminal. Ask MAX for it if you were never sent one.
  4. Save, then open the order again. Create Refund is there.

The password is stored encrypted and is never shown back to you, so keep your own copy.

This is not the same as a refund being declined

A MAX terminal can be short of two separate things, and fixing one does nothing for the other:

  • No API password saved means no Create Refund button at all. That is this section.
  • No credit permission (הרשאת זיכוי) on the terminal means the button is there, you press it, and the credit card company refuses it. That is The refund was declined by the credit card company below, and it is a phone call to MAX rather than anything you can change in Brainerce.

If you have no button, adding the password is the whole job and there is no point calling anyone about permissions yet.

MAX is still in draft and cannot be installed yet, so this applies from the day it opens up rather than today.

The refund was declined by the credit card company

Sometimes the refund fails and the error says the credit card company declined it. That message is not coming from Brainerce. Your payment provider asked the credit card company to send the money back, and the credit card company said no. Trying again straight away gives the same answer.

With Cardcom, the usual reason is that your terminal was never given permission to issue credits. Permission to charge a card and permission to credit one are granted separately, so a terminal can take payments happily for months before anyone discovers the credit side was never switched on. Call Cardcom, ask them to enable refund permission (הרשאת זיכוי) on your terminal, then issue the refund again once they confirm.

With iCredit (ריווחית) it is the same permission and the same answer. An iCredit terminal can be allowed to charge cards without ever being allowed to credit them, and nothing tells you at setup: the refund is simply declined the first time you need one. Call iCredit on 03-7466300, שלוחה 3, ask them to enable the credit permission (הרשאת זיכוי) on your terminal, then issue the refund again in Brainerce once they confirm. iCredit is still in draft and cannot be installed yet, so this applies from the day it opens up rather than today. A credit you issue in iCredit's own screens instead never reaches Brainerce, and the order here stays marked paid: see The money went back but the order still says paid.

MAX (מקס) needs the same credit permission (הרשאת זיכוי), and it is the second of two separate things a MAX terminal can be missing. If the Create Refund button is there and the refund comes back declined, your API password is saved correctly and the gap is on the terminal itself. Call MAX, ask them to switch the credit permission on, then issue the refund again once they confirm. If there is no Create Refund button in the first place, this is not your problem yet and calling about permissions will not help: see There is no Create Refund button on a MAX order above. MAX is still in draft and cannot be installed yet, so this applies from the day it opens up rather than today.

Brainerce cannot force the refund through. There is no override, no retry that behaves differently, and no setting on our side that changes the answer. Until the credit card company accepts the credit, the only way to get the money to the customer is one you arrange yourself, such as a bank transfer.

If you give up and credit the customer in the Cardcom dashboard instead, Brainerce will never know. Cardcom does not report a refund taken in its own screens back to us. The order here stays marked paid, the promo code the customer used stays spent, their lifetime spend is not reduced and the loyalty points stay with them. Nothing arrives later. Record it by hand once you have done it: see The money went back but the order still says paid.

A full refund on the same day the order was paid can behave differently. Same-day full refunds are sent as a cancellation of the original charge rather than as a new credit, and a cancellation is sometimes accepted where a credit is refused. That is why a refund on an older order can be declined while a refund on today's order goes through. Partial refunds are always sent as credits, whatever the date.

Nothing was sent to the customer. The refund is recorded as failed and the order is left exactly as it was, so you can issue it again once the permission is sorted out.

What the customer sees

  • If Notify customer is on, they receive a refund confirmation email.
  • The funds return to their original payment method. Timing depends on the provider and the customer's bank, usually 3 to 10 business days.
  • Anything a gift card paid goes back onto that gift card, not to their bank. It is on the card's balance straight away, with no 3 to 10 day wait, and it will never appear on their card statement or bank statement. If a customer expected the whole amount back on their card and only part of it arrived, this is the explanation. The order's Amount charged line tells you how much their card was charged in the first place.

What a partial refund does not undo: promo codes, loyalty points and customer totals

A refund puts money back. It does not automatically unwind everything else the order set in motion, and a partial refund and a full refund behave differently here. This catches people out on goodwill refunds in particular, because a small partial refund leaves the rest of the order standing in every other respect.

Refunding part of an order in Brainerce leaves all of this alone:

  • The promo code the customer used is still spent. Its use count is not given back, so a code limited to one use per customer stays used up for them, and a code with a total limit of 500 stays at the number it reached.
  • A discount rule's usage allowance is not given back either. That is a separate counter from the promo code's, and it is left as it was too.
  • The customer's lifetime spend is not reduced, so their total on their customer profile still counts the full original order.
  • Loyalty points earned on the order are kept. See Pending points and the return window.

Refunding the whole order reverses all four: the promo code's use is released, the discount rule's usage is voided, the customer's lifetime spend comes down by the order total, and the loyalty points earned on it are taken back.

This is deliberate, not an oversight. After a partial refund the customer still has the order and still had the benefit of the discount, so giving the code back would let them use it twice for one purchase.

If you want the code released, refund the whole order. There is no separate control for it, and no way to hand a promo code back to one customer by hand. The nearest workaround is to issue that customer a new single-use code.

A refund you make in your payment provider's dashboard

Whether Brainerce ever finds out depends on which provider took the money, and the two halves of that list behave nothing like each other.

Stripe, PayPal and Grow report the refund back to Brainerce. The order is marked refunded or partly refunded, and a full refund releases the promo code, reduces the customer's lifetime spend and takes back the loyalty points, exactly as it would if you had refunded here.

Cardcom, iCredit, MAX, Morning, Sola and Takbull report nothing. A refund you take in one of those dashboards never reaches Brainerce at all. Read The money went back but the order still says paid below before you do it.

Two things are different even on Stripe, PayPal and Grow, and both need you to act.

Stock does not come back. The refund dialog in Brainerce asks whether to restock; a refund made in your provider's dashboard has nobody to ask, so nothing is returned to stock. If the customer sent the goods back, put the quantity back yourself on the product. This is on purpose: guessing wrong in the other direction would show stock you do not have and let it be oversold.

On an order that a gift card helped pay for, refunding the card in Stripe, PayPal or Grow is not a full refund of the order. The gift-card part is still outstanding, so Brainerce marks the order partly refunded and keeps the promo code and the loyalty points. To close it out, refund the gift-card part here.

The money went back but the order still says paid

You refunded the customer in Cardcom, iCredit, MAX, Morning, Sola or Takbull, the money left your terminal, and the order in Brainerce is still marked paid. That is expected, and it is not a delay.

None of those six tell Brainerce about a refund taken in their own dashboard. Nothing on our side changes: the order stays paid, the promo code the customer used stays spent, the discount rule's usage allowance stays used, the customer's lifetime spend is not reduced, the loyalty points they earned are not taken back, and stock is not returned. There is no sync, no overnight job and no button that fetches it. Waiting will not help, and neither will reconnecting the app.

Refund in Brainerce instead and all of that follows by itself. Open the order, choose Manage Payment, then Create Refund. Brainerce sends the refund to your terminal and records it here in the same step, which is the only way the order, the promo code and the points end up right. On Cardcom, iCredit, MAX, Sola and Takbull, do this rather than opening your terminal's own screens.

On MAX this works only if your terminal has an API password saved. Without one there is no Create Refund button to press, and you are stuck in Morning's position: refund at MAX, then record it here by hand with the steps below. Adding the password is a one minute job and it puts the button back, so do that first: see There is no Create Refund button on a MAX order.

Morning (Green Invoice) is the exception by design, and it is the awkward one. A Morning order has no Create Refund button at all, because Morning's system offers Brainerce no refund to call. The order shows a note pointing you to Morning's own dashboard instead. So on Morning you have no choice: refund in Morning, then come back and record it here by hand with the steps below. Expect to do that every time.

Do not press Create Refund for money you already sent back

Because Brainerce never heard about your terminal refund, the payment here still reads captured and Create Refund is still offered on the order. Pressing it asks your provider for a second refund of the same money. Never use it to write down a refund you have already made outside Brainerce. Use the manual steps below instead.

Record a refund you already took in your card terminal

There is nothing to import, so you record it by hand. In the Orders list, open the order's status dropdown and set it to Refunded.

That one change releases the promo code, gives back the discount rule's usage allowance, reduces the customer's lifetime spend and takes back the loyalty points the order earned, which is everything a full refund in Brainerce would have reversed.

Three things it does not do, so do them yourself:

  • Stock is not put back. If the goods came back, raise the quantity on the product under Products.
  • The payment still reads captured, with no refund recorded against it. The order status is the only trace, so put your terminal's own refund reference in the order's notes while you remember it.
  • No email goes to the customer. A status change to Refunded sends nothing, so tell them the money is on its way yourself.

Refunded is a final status. Once you set it the order cannot be moved to anything else, so make sure the refund really went through at your terminal first.

A partial refund you took outside cannot be recorded this way. On a paid order the status dropdown offers Refunded and nothing in between, and marking a partly refunded order fully refunded would hand back a promo code and strip loyalty points the customer is still entitled to. If you have not refunded outside yet, refund that part in Brainerce instead. If you already have, leave the order's status alone and keep your own note of the amount.

Good to know

  • Refunds go back the way the money came in, so you can't refund to a different method. Card payments return through the original payment provider, and anything a gift card paid returns onto that gift card. On an order both of them settled, one refund is split between the two, proportionally, and you cannot direct it to one or the other. See Refunding an order paid with a gift card.
  • A refund you take in your provider's own dashboard only reaches Brainerce from Stripe, PayPal and Grow. Cardcom, iCredit, MAX, Morning, Sola and Takbull do not report refunds at all, so on those the order stays marked paid until you record it yourself. See The money went back but the order still says paid.
  • You can't refund more than was captured. Refund the rest later if needed (the order shows as Partially refunded in between).
  • Refunds go through the payment provider that took the money. Nothing is pushed back to Shopify or WooCommerce. Those connectors have been retired, so if you have older orders that arrived through them, refund them in Brainerce and reconcile on the other side yourself.

What's next?

Need a hand with a refund? Email [email protected].