Jump to content

Item.PictureDetails.PictureURL


stephan1978

Recommended Posts

Hello everyone!

I try via ebay module that is installed in Presrashop 1.6, several articles in ebay high load.

I get the error message "Item.PictureDetails.PictureURL"

Can someone tell me what that can be and how I can go to the error.

Thank you very much!
Link to comment
Share on other sites

Hello Stephan,

I'm Fabrizio, I’m in charge of technical support on the module eBay2 and I'm glad to help you :)

I can confirm you that the error 37, Item.PictureDetails.PictureURL only affects the free module.
In fact, following eBay's changes, the "UploadSiteHostedPictures" calls have started to become non-standard and we can not make the free version of our module compatible with this change.

By the way, version 2.1.0 of our module is fully compatible with these changes.

The development of the free eBay module has been permanently stopped since 21/07/2017. The latest release version (1.15.6) still works to date, but 202 ecommerce no longer provides support or corrections.
So pay attention: eBay regularly updates its API, and wholesale changes are already planned for 2018. Although the community has fixed some problems encountered since the end of our support, you will be confronted this year with a complete block, which a developer will not be able to solve quickly (and therefore, for free).

We recommend all users of the free module to switch to a paid offer:

- By making a simple update to the new version of our module: eBay 2,

- By installing another sync module working with eBay,

- Using a feed manager such as Shopping Flux.

Our eBay 2 module is of course the simplest solution because you only have to buy the module on Addons, then update the free module with this paid version. All the eBay configurations and ads are retained.
Thanks to 5 years of experience with the free module and a complete rewrite of the code of the new paid version, we are able to offer today a reliable and stable solution.

You will find all the information here.

For any further question, do not hesitate to contact us here :)

Thanks,
Fabrizio - 202 ecommerce

Link to comment
Share on other sites

Hello Stephan,

One of the reasons for this error could be connected to "https" enabled in your store.

Sorry, we not responsible for this module and support, but in other forum topics, the small dirty hack could help you transfer all information using https.

Please notice this hack is just about transferring all resources using https. Usually, ebay does not like "redirect" for image url, that done automatically if you pass image in HTTP.

 

File modules/ebay/classes/EbaySynchronizer.php

 

  METHOD:
    private static function __fillDescription($description, $medium_pictures, $large_pictures, $product_price = '', $product_price_discount = '')
    {
        return str_replace(
            array('{MAIN_IMAGE}', '{MEDIUM_IMAGE_1}', '{MEDIUM_IMAGE_2}', '{MEDIUM_IMAGE_3}', '{PRODUCT_PRICE}', '{PRODUCT_PRICE_DISCOUNT}'),
            array(
                (isset($large_pictures[0]) ? '<img src="'.Tools::safeOutput($large_pictures[0]).'" class="bodyMainImageProductPrestashop" />' : ''),
                (isset($medium_pictures[1]) ? '<img src="'.Tools::safeOutput($medium_pictures[1]).'" class="bodyFirstMediumImageProductPrestashop" />' : ''),
                (isset($medium_pictures[2]) ? '<img src="'.Tools::safeOutput($medium_pictures[2]).'" class="bodyMediumImageProductPrestashop" />' : ''),
                (isset($medium_pictures[3]) ? '<img src="'.Tools::safeOutput($medium_pictures[3]).'" class="bodyMediumImageProductPrestashop" />' : ''),
                $product_price,
                $product_price_discount,
            ),
            $description
        );
    }
    
    REPLACE WITH
    
        private static function __fillDescription($description, $medium_pictures, $large_pictures, $product_price = '', $product_price_discount = '')
    {
        $text = str_replace(
            array('{MAIN_IMAGE}', '{MEDIUM_IMAGE_1}', '{MEDIUM_IMAGE_2}', '{MEDIUM_IMAGE_3}', '{PRODUCT_PRICE}', '{PRODUCT_PRICE_DISCOUNT}'),
            array(
                (isset($large_pictures[0]) ? '<img src="'.Tools::safeOutput($large_pictures[0]).'" class="bodyMainImageProductPrestashop" />' : ''),
                (isset($medium_pictures[1]) ? '<img src="'.Tools::safeOutput($medium_pictures[1]).'" class="bodyFirstMediumImageProductPrestashop" />' : ''),
                (isset($medium_pictures[2]) ? '<img src="'.Tools::safeOutput($medium_pictures[2]).'" class="bodyMediumImageProductPrestashop" />' : ''),
                (isset($medium_pictures[3]) ? '<img src="'.Tools::safeOutput($medium_pictures[3]).'" class="bodyMediumImageProductPrestashop" />' : ''),
                $product_price,
                $product_price_discount,
            ),
            $description
        );
        
        return str_replace('http://', 'https://', $text);
    }
    
METHOD:

    public static function fillAllTemplate($data, $description)
    {
        return str_replace(
            array(
                '{MAIN_IMAGE}',
                '{MEDIUM_IMAGE_1}',
                '{MEDIUM_IMAGE_2}',
                '{MEDIUM_IMAGE_3}',
                '{PRODUCT_PRICE}',
                '{PRODUCT_PRICE_DISCOUNT}',
                '{DESCRIPTION_SHORT}',
                '{DESCRIPTION}',
                '{FEATURES}',
                '{EBAY_IDENTIFIER}',
                '{EBAY_SHOP}',
                '{SLOGAN}',
                '{PRODUCT_NAME}',
            ),
            array(
                (isset($data['large_pictures'][0]) ? '<img src="'.Tools::safeOutput($data['large_pictures'][0]).'" class="bodyMainImageProductPrestashop" />' : ''),
                (isset($data['medium_pictures'][1]) ? '<img src="'.Tools::safeOutput($data['medium_pictures'][1]).'" class="bodyFirstMediumImageProductPrestashop" />' : ''),
                (isset($data['medium_pictures'][2]) ? '<img src="'.Tools::safeOutput($data['medium_pictures'][2]).'" class="bodyMediumImageProductPrestashop" />' : ''),
                (isset($data['medium_pictures'][3]) ? '<img src="'.Tools::safeOutput($data['medium_pictures'][3]).'" class="bodyMediumImageProductPrestashop" />' : ''),
                $data['price'],
                $data['price_without_reduction'],
                $data['description_short'],
                $data['description'],
                $data['features'],
                Configuration::get('EBAY_IDENTIFIER'),
                Configuration::get('EBAY_SHOP'),
                Configuration::get('PS_SHOP_NAME'),
                $data['name'],
            ),
            $description
        );
    }
    
    REPLACE WITH
    
    
    public static function fillAllTemplate($data, $description)
    {
        $text =  str_replace(
            array(
                '{MAIN_IMAGE}',
                '{MEDIUM_IMAGE_1}',
                '{MEDIUM_IMAGE_2}',
                '{MEDIUM_IMAGE_3}',
                '{PRODUCT_PRICE}',
                '{PRODUCT_PRICE_DISCOUNT}',
                '{DESCRIPTION_SHORT}',
                '{DESCRIPTION}',
                '{FEATURES}',
                '{EBAY_IDENTIFIER}',
                '{EBAY_SHOP}',
                '{SLOGAN}',
                '{PRODUCT_NAME}',
            ),
            array(
                (isset($data['large_pictures'][0]) ? '<img src="'.Tools::safeOutput($data['large_pictures'][0]).'" class="bodyMainImageProductPrestashop" />' : ''),
                (isset($data['medium_pictures'][1]) ? '<img src="'.Tools::safeOutput($data['medium_pictures'][1]).'" class="bodyFirstMediumImageProductPrestashop" />' : ''),
                (isset($data['medium_pictures'][2]) ? '<img src="'.Tools::safeOutput($data['medium_pictures'][2]).'" class="bodyMediumImageProductPrestashop" />' : ''),
                (isset($data['medium_pictures'][3]) ? '<img src="'.Tools::safeOutput($data['medium_pictures'][3]).'" class="bodyMediumImageProductPrestashop" />' : ''),
                $data['price'],
                $data['price_without_reduction'],
                $data['description_short'],
                $data['description'],
                $data['features'],
                Configuration::get('EBAY_IDENTIFIER'),
                Configuration::get('EBAY_SHOP'),
                Configuration::get('PS_SHOP_NAME'),
                $data['name'],
            ),
            $description
        );
        
        return str_replace('http://', 'https://', $text);
    }
    

 

 

Link to comment
Share on other sites

Some products have been rejected by the eBay API due to the following errors:


37: Input data for the tag is invalid or missing. Check the API documentation.
Item.PictureDetails.PictureURL [1]

 
This is the result of the error that I find. Despite following the instructions of the documentation, in reducing the size in px and also in Mb, the problem persists. Although replacing the images with others of different resolution, the module fails to import the listing on ebay.
Other advertisements (in the same category), on the other hand, are transferred without problems.
I can not understand how to solve the rpoblema.

I use the version of Prestashop 1.6.1.12
The version of the eBay module is: eBay v1.15.5 - from PrestaShop - Official (
202 ecommerce)

Do any of you use this form? you know how to solve.
Thanks in advance to everyone !!!

 

****

37 : Input data for tag <Item.PictureDetails.PictureURL> is invalid or missing. Please check API documentation.

The eBay API is refusing listing because of the photos dimensions of the produit.

Solution:

Please delete the item’s photos in your PrestaShop catalog that gives the error in the eBay module and upload them again, but with a smaller dimension.
Then, please try again the synchronization.

 

Link to comment
Share on other sites

  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...