Woocommerce - Show "Local Pickup" only when a coupon is added - wordpress

I have scoured the internet, but have not seen anything that speaks to what I'm trying to accomplish. Essentially, at the checkout screen, I have shipping & handling set to a flat rate of $4.99. I am using a coupon code to enable free shipping, but I want to offer the user the choice of local pickup if they enter the coupon code. In my shipping zone, I've enabled all three shipping options (flat rate, free shipping, local pickup) unfortunately, with this approach, local pickup shows up by default as a second option to $4.99 shipping & handling.
Is there any way to achieve this?

Related

Woocommerce + Stripe issue

I need some info. I have a WordPress website using Hivepress theme + Woocommerce extension with Stripe integration. Everything is working as this:
user book the hotel and pay
we get the money and hold it
users release the payment by clicking on a button. The payments go directly from our stripe account to the hotel one.
I want to add a commission to it. It's actually easy from woocommerce so I can see everything in the cart 100$ hotel + 15% commission and I get the total amount to my stripe. The problem is that the payouts I mentioned before will contain also this commission (so the hotel is getting the total + my commission).
I can't split this amount and fees in my stripe.
I should be able to see those 18$ in "Collected fee" in Stripe.
Anyone one can help?
"Collected fees" will display amounts that have been collected as application fees: https://stripe.com/docs/api/payment_intents/create#create_payment_intent-application_fee_amount
It sounds like the commissions are being included in the PaymentIntent amount instead of as a separate application_fee_amount. If WooCommerce manages the PaymentIntent creation, I recommend working with them to see if their Stripe integration supports the use of application fees.

Creating order without shipping/delivery

We need to create Intershop order with product that doesn't require delivery (mobile network plan with monthly payments). As far as we know each basket and order requires to have a shipping method and addresses for it.
Is there a way to avoid setting shipping method or addresses on basket and order since we are not using it, or to setup a shipping method that requires no address.
We also tried to skip setting shipping method on basket and create order with it but it failed.
Also we have tried searching Intershop documentation for digital products and there were a few mentions only of digital addresses but no further info could be found that is relevant to our case.
EDIT: We are not using PWA and we do have physical products (mobile phones) for which we are using standard shipping methods.
To totally circumvent shipping method and shipping address might be quite hard. Are you using PWA? Are there only digital products in your system?
The imho easiest way to achieve something similar out of the box is to use FreightClass "DIGITALDELIVERY" for your products. You will still need to add a shipping address, but an email on that shipping address should be enough (maybe just take over from invoice address? it will then belong to destination region "email-addresses"). Then shipping method "E-mail Delivery" should be available.

NopCommerce 3.6 Tax By Country & State & Zip always results in zero tax

The NopCommerce 3.6 Tax By Country & State & Zip plugin always returns zero tax for one of my stores. I have the same results locally and remotely, but the database was not copied from local machine. I performed the steps locally and then again remotely to help eliminate the particular environment as a factor.
What might be wrong?
Here are some screen shots to demonstrate.
Tax provider marked primary :
Test customer address contains example zip code.
No roles are marked exempt.
Set tax based on shipping address, etc.
Tax rates were imported via SSMS.
Customer is not exempt.
General tax category has been added.
CountryID of 1 is present.
Specific tax rate for test shipping address is identified.
I also attempted a test with a specific StoreId of 1, though there is only 1 store. Also the field is not nullable, zero acts as the wildcard.
All products are taxable and assigned to General tax category.
No tax displayed in the cart.
No tax displayed in checkout.
No relevant errors in the log.
As much as I wanted to avoid thinking it was true, this problem was created by a third party plugin. A vendor's alternate "One Page Checkout" was clearing the tax for the cart once the Checkout page was hit, and preventing that user from ever obtaining tax calculations in the cart afterward. Removing the plugin corrected the problem, and I've reached out to the vendor for support.
Thanks for anyone who took the time to look at this!
EDIT: To be clearer, what's occurring is that the Real One Page Checkout plugin creates NULL fields in the Address table and associates them with the customer. Therefore, any subsequent orders put in the cart by that customer will never calculate taxation again. I didn't investigate what else might be happening as a result.
I've downloaded the latest copy of the plugin and tested with the same results. All orders placed without the plugin installed work fine, with the plugin installed there are blank records added to the Address table and associated with the Customer.
Here is how the One Page Checkout plugin for nopCommerce works:
When the customers open the checkout page they start with blank addresses (that is why initially you see two empty addresses in the database - one for the billing address and another one for the shipping address) and that is why your taxes are 0 since there is still no any country selected.
Once the customer selects a country then the address in the database will be updated with the country id and all the tax calculations will be based on the newly selected country. The order total will also be updated and the customers will see the new taxes. If the customer changes the country again then the order total will again be updated again with the new taxes based on the new country.
By looking at the provided screenshots, your customer already has an address in his address book and you expect him to use the same address for any new orders.
In that case you can simply check these settings in the administration of the One Page Checkout plugin - Preselect Last Customer Billing Address and/or Preselect Last Customer Shipping Address.
This way when the customer starts the checkout it will not start with a blank address but with the address he has used to make his latest order.
Since the preselected address should already has a country selected then your taxes will automatically be shown for that country right from the start of the checkout.

Adding fees for paypal and credit card depends on customer geo zone

I have found this - WooCommerce: Add fees to card based on payment gateway selected nice plugin, but I would need a plugin that I can set up three different fees to customers from different geo zones..
For example. - Slovenia - 4.8% - Serbia - 4.9% ect..
How can I do that? With which plugin?
Or is it possible to modify upper plugin to add geo zones for each fee? I am not good at coding, so I do appreciate some help.
#Marin Atanasov - I can't, because this is not tax, it's fee and it's not acceptable for our inspection. I already had that tax created in paypal, but it's not ok, because I have three different webstores, one in OC, one in woocommerce, and one in shopmania. I found one extension for OC that already calculates my fee for slovenian users, so I removed tax (so called fee) for them in paypal, but than the webshop in shopmania targets costumers in ex yugoslavia. But, the OC shop also does not exclude ex yugoslavian costumers, so the fee can be charged twice. The problem is also with the third webshop - woocommerce- where I have now for all costumers set up 3.4% fee, but if the costumer from ex yugoslavia orders than the fee is again charged twice, because I didn't remove it from tax in paypal. I need to find a resolution so the all three webshops have their own extension to calculate the fee, and delete taxes that I already set up in paypal.
If paypal would allow multiple webstores under 1 company name, this would be easy to fix.. but I can not enter my credit card number for all three webstores.. :(
Do you have any idea what to do? I am lost.
Perhaps you can use the built-in taxes? They provide you with the option to specify custom tax rates for countries.
To do this, you would have to:
Create your custom tax rates for the preferred tax class under WooCommerce -> Settings -> Tax
Select your preferred tax class for each of the products, and make each product Taxable
Make sure the taxes are enabled and properly configured per your preferences in WooCommerce -> Settings -> Tax
You can also use one plugin to add commission to certain payment gateways with different percentages
Payment Gateway Based Fees and Discounts for WooCommerce

Ubercart - shipping not working for same state shipping

So suddenly my shipping will not show show for the same state in which my store is located or for a neighboring state but will work for states on the west and east cost.
I'm using USPS for shipping, Drupal v. 7.2x and Ubercart v. 7-3.6
I haven't seen any errors in either the Devel module or server log. I simply get the standard "There was a problem obtaining your shipping rates.." error message on the check out pane.
I'm wondering if it is an issue on USPS's end. I haven't contacted them at this point.
Ok, so it looks like the USPS module (or USPS themselves) no longer allows Parcel Post for local deliveries i.e. deliveries within the same state that the store is located. This is also true for "near by" states.
I’m not sure at what point the Parcel Post (now shown as Standard Post) option is allowed, but I can tell you it is allowed on states that are further away compared to a bordering state. So at some given distance, Standard Post becomes a viable option.
So, I had to enable a second USPS option - Priority Mail. When it comes to same state / “near by” states shipping, the USPS shipping quotes will only allow priority mail.
Now, with out of state shipping, such as California and Florida, the customer will have a choice between Standard Post and Priority Mail 2-Day.

Resources