How to set which site will be used for which customers or handle "consignment"/"sale or return" stock

Firstly, let’s clarify the meaning of the terms Sites and Locations.

  • Sites in Breww represent physical buildings.
  • Locations in Breww are subdivisions of Sites and allow you to have more granular control of where stock is within a specific Site.

Which sites can be used to fulfill orders?

You can choose if a site can be used to fulfill orders. By default, all sites can be used for order fulfillment, but you can choose to prevent this by editing the site and unticking the “Can be used to fulfill orders” box. There must always be at least one site that can fulfill any order to any customer.

Linking a customer to a site (or sites)

It’s possible to link a customer to a specific site (or sites). To do this go to the customer’s main page in Breww. You can also choose at this point if you’d like this customer to only get stock from their linked site(s), or if this is just a preference and stock can be used from other sites if required.

Handling “consignment” stock (sale-or-return)

Consignment stock is a supply chain model in which a product is sold by a retailer, but ownership is retained by the supplier until the product has been sold. Because the retailer does not actually buy the inventory until it has been sold, unsold products can be returned.

Breww can handle this for you. We suggest setting up a new site specifically for this customer, then linking the customer to the site and restricting the customer to only receive stock from their linked site. You should also go into the site’s settings and tick the “Only fulfill orders for linked customers” box as this will ensure that other customers never use the stock from this site.

When you move stock to this customer on a “consignment” basis, you can simply move the stock’s location in Breww to this customer’s site. Don’t raise an order/invoice/delivery at this stage. For information on how to move stock, see How do I move products to a different site/location? If the stock’s original location is bonded and the customer’s site is not bonded, this will trigger the duty at this point.

Later, when some of this stock has been sold by your customer, and you are ready to invoice them for it, you can raise the order and complete the delivery/invoice. This will only use stock from their linked location and, of course, result in the invoice being generated to account for the sale.

How does Breww pick the site to use for an order

If you have chosen a “Default fulfillment site” in SettingsOrder/invoice settings, and the customer in question isn’t explicitly linked to any sites, Breww will use the default site that you have chosen.

If the customer is linked to specific fulfillment sites, or you haven’t set a default site, Breww will follow the process outlined below to determine the site to use:

Firstly, Breww will determine the customer’s “priority sites” and “non-priority sites”.

  • If the customer is linked to some specific sites, these will be their “priority sites”.
  • All other sites will be “non-priority sites”. If the customer is linked to some specific sites and marked as can only use those specific sites, this customer will not have any “non-priority sites”.

This will result in some customers having both priority sites and non-priority sites, and some customers only having sites in one of those two groups. Having determined the sites for each group, Breww will order these by the distance (line of sight) to the customer. If a site doesn’t have an address set, then Breww will assume the site is at your main address (as entered when your account was created). We would recommend making sure all your sites have an address set.

Next, Breww will go through all the customer’s priority sites (if they have any) in order of closest-first and look for a site that has the required stock available to fulfill this order. As soon as it finds a site that has enough stock, it will use this site to fulfill the order.

If there isn’t a priority site that has the required stock available (or there are no priority sites at all), Breww will repeat the same process for the customer’s non-priority sites.

If this still results in no site matching (i.e. you don’t have the required stock available from any site), then Breww will go through the sites again and determine a simple percentage of stock required that is available for each one. For example, if an order has four items on it and a site has enough stock of three of these items, this would be a 75% match. Breww will pick the highest matching site (from either priority sites or non-priority sites). If multiple sites have the same percentage of stock available, Breww will look for the closest site to the customer and also choose a priority site over a non-priority site if there is one.

Please note that you can mark sites as not able to fulfill orders, in which case they will be completed ignored in the above process and will never be used to fulfill any orders at all.

Manually forcing an order to be shipped from a specific site

When you’re viewing an order, in the top-right section where the delivery information is shown, Breww will show you the site that will be used to fulfill the order. You can manually adjust this here to any of your sites that are enabled for order. There is also an option to force the order to be locked to this site, which will prevent Breww from ever getting involved in the automatic site selection for this order again.

Hi, how do I move some kegs of beer between sites?
I can see how to move between locations but not between sites.

You should be able to move between sites & locations using the method mentioned first in this article.

If certain sites don’t seem to be showing for you, would you be able to open a support ticket giving us access to your account, and mention the exact product and location you’re trying to move stock to?

I should add that all locations are within a specific site. You can’t move stock to a site as such; you move it to a location within that site. So when moving stock, you should be looking for a location within a site, not just the site’s name.

Thanks Matt, got it. I think I was confused by the use of “Location” when I was looking for “Site”.

1 Like

Hi Luke,

We want to use the process you have suggested for handling consignment stock, whilst also raising a dummy order which serves to a) notify our logistics team of the order details, and b) remove the ordered stock from general availability immediately. We used to be able to do this without issue, but now the “prevent over-selling of stock” setting paired with the Customer-Site restriction we have set for stock availability (the customer can only have their orders fulfilled from a linked site) seems to be stopping us. We don’t want to move stock between the sites before delivery, as this would cause duty to be incurred prematurely.

Do you have any suggestions?


Thanks for the message, Greg.

It sounds like you were taking advantage of a bug that’s now been fixed. The bug meant that if the stock was available anywhere, you could add it to an order even if you had “prevent over-selling of stock” enabled (you still wouldn’t have been able to deliver it).

I appreciate this has had the knock-on effect of preventing you from doing something that you could before, but this is a bug fix, so it needs to remain, to be honest.

You could either move the stock so it is available (I know you said this wasn’t ideal), or you could temporarily disable the “Prevent over-selling of stock” feature to prepare the order, then enable the option again. Would that work for you?


I would like to keep Shopify stock & orders fulfilments COMPLETELY seperate from general stock & order fulfilment.

I’ve created WEBSHOP as a site, and when stock has been racked we move over the amount of cans we want to go on to the webshop. The integration has be set so that the WEBSHOP site is the primary site for stock sync & orders fulfilments on settings.

Ive also linked the customer “Shopify” to the WEBSHOP site

The problem I’m having is that when a TRADE order is being done, the stock for WEBSHOP is showing as available stock to use. If the sales person uses this stock it doesn’t automatically move the stock between sites and this can then lead to over selling because to stock stays on Shopify until someone(me) notices and have to move it over.

Could advise on a solution for this?

Apologies for the slow response, John.

Have you tried enabling the Only fulfill orders for linked customers option on the WEBSHOP site? This should do the trick. If you go to the site, there’s an edit button at the top-right and you should find this option in there.

If this doesn’t do what you need, please let us know. Cheers :beers:

Hi all, is it possible to set a specific Location as the default fulfilment site to a customer? We have 3 separate warehouses within our site (1 for Grocer orders, 1 for mixed picking and packing and 1 for Export orders) and would like to restrict which batches are available to which customers. This would also prevent stock taking issue where a customer needs to Return stock and we run our stock takes by Location. Thanks

Hi Alice,

Thanks for asking this on the community! Setting up a fulfilment site is possible, but not a fulfilment location. If you want the stock to be separated and lock customers to a specific stock pool, it may be worth setting these up as sites rather than locations in Breww to manage this. It would mean manually moving and controlling stock between sites, but if you are looking to control batches of stock available, I would suggest you would want to do this anyway.

Let us know if you need any more support at all.

Hey team,
So i want to start using this but wonder if there are some things im missing or some improvements that could be made. In an ideal life i love it to work like this:
Warehouse Name - S.O.R
Locations - Festival 1, Festival 2, Festival 3 etc
You then do a stock movement from Warehouse Main to Warehouse S.O.R Festival 1 when that one goes out. When that goes out, Breww generates a dummy order or a warehouse movement order or just something that represents the warehouse knowing there is that order to go out and it has gone out . I think the system you have put above is a good starting point but logistics really need to have an order on the system so it goes out but then if you put the order on the system then it gets picked up in your volume reports which i really dont want! I guess for the time being we could load an order and then delete it when it goes out but again, if i pull a volume report and it gets caught up in that and then i delete the order and now my numbers are out it could look odd.

Hi Justin,

Sure, I think the feature request for Stock transfer between sites/contract brewers/offsite packagers on delivery schedule (Stock Movement Documents) - #10 by luke would cover what you are looking for. It would be great if you have any specific requirements for the feature; if you could add your comments to that request, that would be great. If I have misunderstood, please get back to me, but hopefully, that feature request is what you are looking for.

1 Like