View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006126 | OXID eShop (all versions) | 1.05. Users | public | 2015-04-20 12:57 | 2024-08-14 11:27 |
Reporter | henrik.steffen | Assigned To | |||
Priority | normal | Severity | feature | Reproducibility | always |
Status | confirmed | Resolution | open | ||
Product Version | 4.9.3 / 5.2.3 | ||||
Summary | 0006126: oxonlinevatidcheck: Business customers can't order with VAT-ID if check service is down | ||||
Description | This was reported years ago (and solved?) as 0001803 OXID is using this service for online validation of VAT IDs: http://ec.europa.eu/taxation_customs/vies/vatRequest.html As you can read here: http://ec.europa.eu/taxation_customs/vies/help.html Most countries have regular daily service interruptions. This means, that the online validation for German VAT IDs for instance, can't be performed at night during a time frame of 6 hours every night! This is an amazing conversion killer, because users can't complete the check-out when specifying their valid (!) VAT-ID during check-out. It should better be differed between a really invalid VAT-ID and a service interruption. The user could get a warning message like this: We can't confirm that your VAT-ID is correct at the moment. But we should not prevent the user from completeing his order. | ||||
Tags | Backlogged, Checkout, VAT | ||||
Attached Files | |||||
Theme | Azure | ||||
Browser | All | ||||
PHP Version | Not defined | ||||
Database Version | Not defined | ||||
related to | 0001803 | resolved | sarunas_valaskevicius | user is not allowed to finish order, if online vatId check is not accessible |
has duplicate | 0006131 | closed | QA | Wrong error-message if the online-vatid-check-service is not available |
has duplicate | 0007575 | closed | SvenBrunk | Error handler doesn't write in oxideshop.log, when VAT-ID-check fails due to a request limit |
|
What exactly is the expected behavior when the online check webservice is not available? Should the customer be able to place the order, and the shop owners should be notified that they have to check the VAT ID manually? |
|
IMHO, proper behavior would be an error message explaining why VAT couldn't be checked, and letting the user proceed with the checkout (but without deducting VAT). No idea what would be legally correct, though. |
|
yes, that would be a great solution. |
|
So the warning message should be something like this? "Your VAT ID cannot be checked currently. You will be able to continue, however please double-check your VAT ID manually." |
|
An error message should point out that VAT is not deducted because of the temporary unavailability of the web service. Something along the line of "Your VAT ID cannot be checked currently. You will be able to continue, but we hope for your understanding that VAT cannot be deducted." |
|
I preferred the former version of the warning message posted by florian.auer I'd in fact deduct the VAT anyways, because the user will probably not complete his order if the VAT is not deducted as expected. Imagine user would pay by creditcard or sofortüberweisung, then immediately the too high amount would get billed. It's not the fault of the user, that the vat-check is unavailable, so he should be able to perform the check-out as desired. On the other hand, it's the obligation of the merchant to ensure that the VAT-ID is really valid. So he should see a warning in the OXID backend, and there should be a flag somewhere on the OXORDER table, so ERP-Systems would also be able to detect that a manual cross-check is neccessary. Usually, placing an order in a web-shop is just an offer of the user to buy something from a merchant. It's up to the merchant to decide if he really wants to confirm the order and deliver the goods. So, if merchant finds out that the VAT-ID is invalid, he would be able to cancel the order or contact the user. |
|
This is really a tricky one. From a legal point of view, we must show the VAT if we do not know if the customer is B2C or B2B. On the other hand however, we do not want to create overhead for the shop owner, and also do not want to scare away the B2B customer (see comment 0006126:0010989). So, from my point of view, the following would be a feasable solution: - Deduct the VAT anyways - Force the customer to check a checkbox like "I hereby confirm that I'm a B2B guy and am eligible to receive invoices without VAT" - Let customer continue checkout - Add a warning for the shop owner to double check the VAT ID In any way, this will be a new feature, as not an existing functionality is macfunctioning, but new functionality will be added. |
|
yes, this sounds like a good solution. Well, It's certainly a feature - but at the same time, it's a workaround for a very poor current implementation. I would be happy, if this fix could high attention by product owner, so it can be implemented soon. Thank you! |
|
UPDATE: Currently, our customers experience even more problems with the VAT realtime check service, because the online webserver seems to be heavily used. There are reponse times between 8-12 seconds for each checkVat request. In the OXID source code, the timeout is limited to 5 seconds. So users will always see the error message "invalid vat-id" in the front end, if the webservice is delayed. That's really bad and displeases both merchants and users. |
|
Hi again, unfortunately, the solution I thought of in my previous comment is not the way to go. According to the EU website, this is what should be done when VAT cannot be validated: "Q18 : What do I have to do if I can not check the validity of the VAT number of my customer? If you believe that your customer is not a taxable person, you should not exempt the supply but should charge VAT." http://ec.europa.eu/taxation_customs/vies/faq.html?locale=en#item_18 |
|
Hi Florian, in a B2B shop we regularly believe that everyone who registers an account is a company with a valid vat-id. When the webservice to make it 100% isn't available or too heavily loaded, still in 99% we would believe that the company actually is a valid company. Nevertheless, the shop should indicate, that the given VAT number has not been confirmed to be valid by the webservice. Instead, the merchant should recheck once more manually. |
|
OK, but if you don't want to rely on the VAT webservice anyways, then why don't you simply disable it? (Master -> Core Settings -> "Settings" tab -> VAT -> Disable online VAT ID check") |
|
This is a feature request: - Do not charge VAT, even if VAT ID couldn't be checked - Allow check-out, even if VAT ID online check is enabled in settings but EU webservice is not reachable - Add hint to shop owner if VAT ID couldn't be checked automatically |
|
Added my User Story and some mocks for your information. We will have to double-check this from a legal point of view. If legal check is successful, the feature will run through our input management process for prioritization. |
|
Still reproducible. Change the value of OxidEsales\EshopCommunity\Core\OnlineVatIdCheck::$_sWsdl to some none existing website like 'https://sakdaslkdjaldlkasdjalksdjlsdsadljdskl.de' and the ust id check returns 'false' everytime. |
|
assigned to Sven. -MK |