medusajs / medusa

The world's most flexible commerce platform.
https://medusajs.com
MIT License
25.9k stars 2.59k forks source link

Shipping address outside cart's region should be allowed? #4692

Open BorisKamp opened 1 year ago

BorisKamp commented 1 year ago

Hi guys! Im creating a checkout flow and really like MedusaJS. However, I noticed I cannot update the cart with a shipping address where the country is not included in the cart's region.

i.m.o. it should be perfectly valid to have a billing address in The Netherlands (for example) and ship your order to the US. This is a perfectly valid use case for B2B orders like we have.

In this case I would need to change the cart's region to the US region but that has the downside that there's no tax applied. We're based in The Netherlands and only our NL region has tax applied. So in the above use case, the business who orders needs to pay tax, but should be allowed to ship it to the US.

Am I missing something or is this indeed a limitation/bug?

gfomengia commented 1 year ago

This is a very important feature i have seen in other platforms. In magento you enable it and limit the max qty of products to be shipped to multiple addresses.

This must apply only for registered customers.

It would be great if medusa implements this.

srindom commented 1 year ago

I am not 100% sure about this, but as far as I remember, taxes and customs are to be charged based on the country a product is shipped to, not the country where the customer is billed. It might be different for B2B sales, so it would be great if we could gather some information on this to determine the correct controls.

srindom commented 1 year ago

ChatGPT says this:

I am not a tax consultant or legal professional, but in general, the VAT (Value Added Tax) regime in the European Union (EU) is designed to tax the consumption of goods and services within the EU. When goods are exported outside the EU, they are usually not subject to EU VAT. Here's a general breakdown:

  1. Exports outside the EU: When goods are exported directly outside of the EU, they are typically zero-rated for VAT purposes, meaning that VAT should not be charged on the sale by the seller. The recipient might, however, be liable for import duties and taxes (like VAT or its equivalent) in the country of import.
  2. Documentation: It's essential that the seller has the necessary proof that the goods have been exported outside the EU. This proof can include transport documents, bill of lading, airway bills, etc.
  3. Goods Shipped to Another EU Country First: If the goods are initially shipped to another EU member state (before being exported outside the EU), the situation can be more complex. In such cases, there could be scenarios where VAT is applied in the initial sale, but the company can potentially reclaim it once they have proof of export outside the EU.
  4. Triangular Trade: Your situation seems like it might involve a triangular trade scenario, where goods are sold between three separate entities in three different countries. There are specific VAT rules around such situations in the EU, especially when the intermediate company is in the EU but the final destination of goods is outside the EU. Given the potential complexities and the financial implications, it's essential to:
    • Consult with a tax professional or expert who is familiar with EU VAT regulations and international trade.
    • Ensure you and the seller have clear terms in your contract regarding VAT and other charges.
    • Retain all documentation related to the shipment and sale of goods, as this will be crucial if there are any queries or disputes regarding VAT. Remember, regulations can vary between EU member states, and changes in VAT regulations or trade agreements can also impact the situation.
gfomengia commented 1 year ago

ChatGPT says this:

I am not a tax consultant or legal professional, but in general, the VAT (Value Added Tax) regime in the European Union (EU) is designed to tax the consumption of goods and services within the EU. When goods are exported outside the EU, they are usually not subject to EU VAT. Here's a general breakdown:

  1. Exports outside the EU: When goods are exported directly outside of the EU, they are typically zero-rated for VAT purposes, meaning that VAT should not be charged on the sale by the seller. The recipient might, however, be liable for import duties and taxes (like VAT or its equivalent) in the country of import.
  2. Documentation: It's essential that the seller has the necessary proof that the goods have been exported outside the EU. This proof can include transport documents, bill of lading, airway bills, etc.
  3. Goods Shipped to Another EU Country First: If the goods are initially shipped to another EU member state (before being exported outside the EU), the situation can be more complex. In such cases, there could be scenarios where VAT is applied in the initial sale, but the company can potentially reclaim it once they have proof of export outside the EU.
  4. Triangular Trade: Your situation seems like it might involve a triangular trade scenario, where goods are sold between three separate entities in three different countries. There are specific VAT rules around such situations in the EU, especially when the intermediate company is in the EU but the final destination of goods is outside the EU. Given the potential complexities and the financial implications, it's essential to:
  • Consult with a tax professional or expert who is familiar with EU VAT regulations and international trade.
  • Ensure you and the seller have clear terms in your contract regarding VAT and other charges.
  • Retain all documentation related to the shipment and sale of goods, as this will be crucial if there are any queries or disputes regarding VAT. Remember, regulations can vary between EU member states, and changes in VAT regulations or trade agreements can also impact the situation.

I still don't understand what this has to do with allow shipping to a different address out of the cart.

You have already mentioned that taxed is levied based on the shipping to location and not billing. This is correct.

You should note that the shipping location or address must be within the merchant shipping or avaliable zones. In this the taxes will be setup already in the z9nes and will apply automatically for that location. For example as a customer, I am in Europe and I want buy and ship a product to USA. So my billing address will be EU and shipping location in USA. If USA is not a shipping location as setup by the merchant then I will be able to buy and ship this product to USA.

Also shipping to multiple addresses is generally approved with caution and its not automatic for security reasons. Most often you have to check with the buyer etc

BorisKamp commented 1 year ago

I will try to consult with somebody on what the legal standpoint is on billing on country A and shipping to country B and get back here.

FYI: In our B2B use case, the business is located in Swiss and wants to ship directly to the address where our products are used: Italy.

srindom commented 1 year ago

@BorisKamp - did you learn anything new you can share?

BorisKamp commented 1 year ago

@BorisKamp - did you learn anything new you can share?

@srindom according to the company's accountant it's very 'tricky' in general We'll we already knew that. What he advises is the following:

We we're/are a bit busy with other stuff and for now accept that shipping cannot be outside the region of the cart. I will dom more research tho and when I have conclusions I will post back for sure.

BorisKamp commented 6 months ago

@srindom I am bumping against this limitation again. The use case here is dropshipping where a business is located in England, where the billing should take place but the shipping should be in the Netherlands, where the items are physically needed. There are two separate regions in my Medusa:

Screenshot 2024-05-14 at 10 17 41

UK belongs to 'Rest of world' here. We need those different region for the for tax purposes.

Would love to hear your thought on how to solve this.

buffcode commented 1 month ago

Has anybody found a solution to this? We have the same use case: selling in Germany, both billing and shipping address can be in another EU country.

Eg. billing country is Austria, shipping country is Luxembourg.

To have the different taxes applied based on the billing address I created three regions (Germany, Austria, Luxembourg) with all required tax information. We're just stuck with this restriction that the customer cannot ship to Austria, when it is billed in Germany.

When using Amazon I can ship to whatever (EU) country I want (eg. when in holiday), only the billing country is relevant for taxes.