Initial sync is hanging forever because of unsupported image format webp
-
Hello,
Thanks to the logs I now understand why my product sync is not going through: my products webp images are not supported.
I disabled all products with images, but this isn’t very handy nor scalable and above all: it did not stop the error. I remain blocked and fail to sync my products to Zettle… is there a way to import by category for instance, or enable webp image support or simply ignore product images all together?Inpsyde\Zettle\PhpSdk\Exception\Validator\Image\UnsupportedImageFileTypeException: Image type webp is not supported. Must be one of GIF, JPEG, PNG, BMP, TIFF. [edc7e287c351b9936d2211c30838b5b4-1.webp] in /srv/data/web/vhosts/api.ciklet.cc/htdocs/wp-content/plugins/zettle-pos-integration/modules/zettle-php-sdk/src/Validator/WordPressImageValidator.php:139
Thank you for you help,
Christian- This topic was modified 2 years, 4 months ago by c7nj7n.
-
Hello @c7nj7n
thank you for reaching out, we are here to help.
The version of our plugin that is currently being used, has not had any features added for some time now. The 2 features that you ask for (Webp image support & category sync) are already in our backlog, but we currently are pending approval for these and other features to be developed and added.At the moment we cannot tell you when we will get approval to develop these features, but I have linked this thread to the feature requests, so you should be updated when they get released.
I am sorry that we cannot do much more regarding this shortcoming of the plugin (in regards to your WordPress setup) at the moment, but we cannot do much from our side without the approval mentioned before.
Let me know if you have any more questions for us.
Kind regards,
JoostThank you for your swift response.
Does this mean that work on the plugin is basically suspended? “The version of our plugin that is currently being used, has not had any features added for some time now” makes it really sound like that.
If I understand correctly I cannot use the plugin to sync my products, even though the products that I’d like to sync are not having any images. Is my assumption correct?
Hello @c7nj7n
if there are no product images present, you should be able to sync them to Zettle (no reason why this would not work). However, there is no option to sync the category to Zettle; after the sync is completed this needs to be added via the Zettle interface.
I hope this helps you further.
Let me know if you have any more questions.Kind regards,
JoostThe thing is that NONE of my products, even those that I explicitly marked as “not to be synced” cannot have webp images. Which is very annoying since I only planned to sync a subset of my products.
I had to go for the manual route and uninstalled the plugin. Too bad.
Hello @c7nj7n
Sorry to hear that the plugin is not giving you any propper outcome on your environment/setup, however, I did some testing on my environment and my result is very different from yours. This is what I did to test this:
– Disconnected the Zettle plugin.
– Added a new product with a webp image as the product image.
– Onboarded my Zettle account via our plugin.
The outcome was that all products, including the new product, synchronized to the Zettle library. However, the new product did not sync the picture to Zettle, but the product itself has been synchronized.This makes me believe that there is some other reason that your products are not synchronizing to Zettle. It is a bit basic, but please check this document and see if you might have missed anything that could avoid the sync to work on your products/setup.
If you don’t find anything, we would like to take a look at your system report and the logs from our plugin. You can copy these log files from here:
– WooCommerce > Status > Get system report > Copy for support
– WooCommerce > Status > Logs > select “zettle-pos-integration-[…]” in the dropdown and click on view.If you don’t feel comfortable sharing those details on a public forum, please open a ticket with our service desk. You can find the instruction for this here: https://zettle.inpsyde.com/docs/request-support/
(please add the URL of this thread in the ticket as well)Kind regards,
JoostThank you for having taken a closer look Joost, I appreciate it!
I re-activated the plugin to give it another try…Here’s what I have on my WooCommerce:
316 total products
43 published
4 drafts
269 private
2 trashed
Every published product but 9 are tagged “to not sync with Zettle”.When I run the import wizard, I get:
9 out of 316 WooCommerce + 9 PayPal Zettle products foundAnd here are the first lines of my error log, that just came freshly in:
2022-07-04T13:01:18+00:00 INFO Inpsyde\Zettle\PhpSdk\Exception\InvalidBuilderPayloadException: Could not build Inpsyde\Zettle\PhpSdk\DAL\Entity\Presentation\Presentation from the given payload in /srv/data/web/vhosts/api.ciklet.cc/htdocs/wp-content/plugins/zettle-pos-integration/modules/zettle-php-sdk/src/Builder/ValidatableBuilder.php:52 # Previous: Inpsyde\Zettle\PhpSdk\Exception\InvalidBuilderPayloadException: Could not build Inpsyde\Zettle\PhpSdk\DAL\Entity\Image\ImageInterface from the given payload in /srv/data/web/vhosts/api.ciklet.cc/htdocs/wp-content/plugins/zettle-pos-integration/modules/zettle-php-sdk/src/Builder/ValidatableBuilder.php:52 # Previous: Inpsyde\Zettle\PhpSdk\Exception\Validator\Image\UnsupportedImageFileTypeException: Image type webp is not supported. Must be one of GIF, JPEG, PNG, BMP, TIFF. [178100_light.webp] in /srv/data/web/vhosts/api.ciklet.cc/htdocs/wp-content/plugins/zettle-pos-integration/modules/zettle-php-sdk/src/Validator/WordPressImageValidator.php:139 2022-07-04T13:01:18+00:00 INFO Inpsyde\Zettle\PhpSdk\Exception\InvalidBuilderPayloadException: Could not build Inpsyde\Zettle\PhpSdk\DAL\Entity\Presentation\Presentation from the given payload in /srv/data/web/vhosts/api.ciklet.cc/htdocs/wp-content/plugins/zettle-pos-integration/modules/zettle-php-sdk/src/Builder/ValidatableBuilder.php:52 # Previous: Inpsyde\Zettle\PhpSdk\Exception\InvalidBuilderPayloadException: Could not build Inpsyde\Zettle\PhpSdk\DAL\Entity\Image\ImageInterface from the given payload in /srv/data/web/vhosts/api.ciklet.cc/htdocs/wp-content/plugins/zettle-pos-integration/modules/zettle-php-sdk/src/Builder/ValidatableBuilder.php:52 # Previous: Inpsyde\Zettle\PhpSdk\Exception\Validator\Image\UnsupportedImageFileTypeException: Image type webp is not supported. Must be one of GIF, JPEG, PNG, BMP, TIFF. [178100_light.webp] in /srv/data/web/vhosts/api.ciklet.cc/htdocs/wp-content/plugins/zettle-pos-integration/modules/zettle-php-sdk/src/Validator/WordPressImageValidator.php:139
Hello @c7nj7n
ok, in your situation 34 (43-9) should get synchronized to Zettle. Those errors do also show in my test but do not avoid the products from syncing.
Please take a look at the product overview and see what it says for the published products in the Zettle Status column. Usually, this gives a good indication of what is going on. Let me know if you find anything that helps.I see exactly the same errors in my logs as you are doing, so please don’t see them as a critical failure, but simply as notifications that the images are not getting synced.
Let me know if you find any other clues on the reason for the sync not working. You can also still engage us with the private ticket if you want to share details you don’t want to share on a public forum as informed before.
Kind regards,
JoostI’ll keep investigating, although the 9 products have been manually imported and are not linked to my WooCommerce products. What errors are actually breaking the import, I’ve seen a image too big error… the image format seems indeed to be just a notice. Looking forward to finding the keys to this enigma. Thank you so far!
I took another look, in vain. Tax class looks fine, everything else too. The error log only mentions the image format issue, I downsized one image which was too big but this didn’t result in letting the sync go through.
Here’s WooCommerce’s System Status Report concerning Zettle:
### PayPal Zettle POS ### Onboarding state: sync-param-products Price sync: yes Initial sync collision strategy: wipe First import: 23:06 07/04/2022 Number of products syncing: 0 PayPal Zettle VAT: 20 PayPal Zettle currency: EUR PayPal Zettle country: FR PayPal Zettle language: fr PayPal Zettle time zone: Europe/Paris PayPal Zettle contact email: [email protected] PayPal Zettle taxation mode: INCLUSIVE PayPal Zettle taxation type: VAT PayPal Zettle customer mode: LimitedCompany ### Status report information ### Generated at: 2022-07-04 23:12:34 +01:00
Hello @c7nj7n
Changing the image type/size will not get the product to start syncing, it might get the image to sync when the product is already getting synced. In your case, there must be another cause of ALL products not syncing.
The key to this issue should be found in the product overview. Here is an example of this overview: https://snipboard.io/SzcJDT.jpgIf that doesn’t show anything, I could still take a look myself, but again I would first ask to share the system report and logs of your site.
Kind regards,
JoostHello Jost,
Thank you for your perseverence, thanks to your constant help I managed to dig through this and find the issue:
I’m using the JWT Auth – https://github.com/usefulteam/jwt-auth – plugin, and this requires to whitelist endpoints. Here’s the configuration for those who stumble upon this issue too, just add the following lines to ‘jwt_auth_whitelist’
‘/wp-json/zettle-jwt/v1/*’,
‘/wp-json/zettle-product-debug/v1/*’,
‘/wp-json/zettle-queue/v1/*’,Thank you for your time Joost, I now do have a functional synchronization between my Zettle and WooCommerce products. Enjoy your day!
Hello @c7nj7n
that is very good to hear. Yes, the webhooks can be blocked by such a firewall, good catch! I will add this as a possible blocker for our plugin. Are you using this plugin: https://es.www.ads-software.com/plugins/jwt-auth/
Thanks again for letting me know!
Kind regards,
JoostThat’s the one! Thank you and best of luck!
Thank you, I was able to reproduce the issue. Will add it to our knowledge base!
- The topic ‘Initial sync is hanging forever because of unsupported image format webp’ is closed to new replies.