interchange/Amazon-MWS
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
master
Could not load branches
Nothing to show
Could not load tags
Nothing to show
{{ refName }}
default
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code
-
Clone
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more about the CLI.
- Open with GitHub Desktop
- Download ZIP
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
NAME Amazon::MWS - Perl interface to Amazon Marketplace Web Services VERSION 0.150 DESCRIPTION See Amazon::MWS::Client for the implementation of the low level Amazon MWS API. For the high level methods provided by the Amazon::MWS::Uploader you are going to need to supply database storage. Uploading products Basically you take the products which need to be uploaded to Amazon and create Amazon::MWS::XML::Product objects from them: use Amazon::MWS::XML::Product; use Amazon::MWS::Uploader; use Try::Tiny; my @upload; foreach my $product_object (@send_to_amazon) { my %prod = .... try { my $product = Amazon::MWS::XML::Product->new(%prod); push @upload, $product; } catch { warn "Failure with $prod{sku} : $_"; }; } Now you create an Amazon::MWS::XML::Uploader object and do the actual upload. my $uploader = Amazon::MWS::XML::Uploader->new(...); try { $uploader->products(\@upload); $uploader->upload; } catch { die "Uploader failure with: $_"; }; A product upload goes through the following steps: product Basic product data. inventory Product inventory count (required). price Product price (required). image Product images (required). Please note that only http:// links are allowed. If you pass https:// links, they will be rejected by Amazon. variants Product variants (optional). You are not by any means finished with the upload, see "Resume uploads". Delete products Deleting products is much more straightforward, but you have still to care of tracking the upload process, see again "Resume uploads". my $uploader = Amazon::MWS::Uploader->new(...); $uploader->delete_skus(@skus); Resume uploads This is necessary to check whether the upload has been processed by Amazon. my $uploader = Amazon::MWS::XML::Uploader->new(...); $uploader->resume; The uploader also goes automatically through the steps for the product uploads. MWS in practice Product price Every product uploaded needs a price of 0.01 or higher, otherwise you get the following error: 0.00 price (standard or sales) will not be accepted. Please ensure that every SKU in your feed has a price at least equal to or greater than 0.01 Shipping costs You need to configure the shipping costs in Amazon Seller Central, you can't pass them through MWS: https://sellercentral.amazon.com/gp/shipping/dispatch.html Stuck uploads There is no guarantee that Amazon finishes your uploads at all. We had uploads stuck for at least a week. Multiple marketplaces You can use this module and the uploader for multiple Amazon marketplaces. Please make sure that you disable Amazon's synchronisation between marketplaces. For marketplaces with a different currency you need to convert your price first. The list of marketplaces can be found at: http://docs.developer.amazonservices.com/en_US/dev_guide/DG_Endpoints.html Throttling and Quota With Amazon MWS you have to deal with Amazon throttling your uploads and imposing quotas. Possible reasons: Upload too often Stuck uploads Orders with orderlines Throttle Reponse <?xml version="1.0"?> <ErrorResponse xmlns="http://mws.amazonaws.com/doc/2009-01-01/"> <Error> <Type></Type> <Code>RequestThrottled</Code> <Message>Request is throttled</Message> </Error> <RequestID>a7b39ee6-4f76-48ee-92f1-43bc54f693df</RequestID> </ErrorResponse> Quota Exceeded Error Response <?xml version="1.0"?> <ErrorResponse xmlns="http://mws.amazonaws.com/doc/2009-01-01/"> <Error> <Type></Type> <Code>QuotaExceeded</Code> <Message>You exceeded your quota of 80.0 requests per 1 hour for operation Feeds/2009-01-01/GetFeedSubmissionList. Your quota will reset on Thu Dec 18 07:39:00 UTC 2014</Message> </Error> <RequestID>5115e00d-35a8-4589-8083-f0ef998f76ef</RequestID> </ErrorResponse> Upload Errors Error 8572: Incorrect UPCs/EANs/... error: You are using UPCs, EANs, ISBNs, ASINs, or JAN codes that do not match the products you are trying to list. Using incorrect UPCs, EANs, ISBNs, ASINs or JAN codes is prohibited and it can result in your ASIN creation privileges being suspended or permanently removed. This happened in our case with products having self assigned EAN codes, but with a well known manufacturer. Apparently Amazon knows about the EAN ranges for this manufacturer. Error 18181 The format of the tracking number passed to Amazon was invalid, e.g. wrong number of characters. Error 20013: Image file size error: Image file size: 13972730 bytes exceeds the the maximum allowed file size: 10485760 bytes. There is no point in using such big image files for Amazon. Error 99001: "brand_name" Brand is a required field for products. Uploader Module Amazon::MWS::Uploader is an upload agent for Amazon::MWS. XML Modules Generic Feed Amazon::MWS::XML::GenericFeed Feed Amazon::MWS::XML::Feed Product Amazon::MWS::XML::Product Address Amazon::MWS::XML::Address Order Amazon::MWS::XML::Order OrderlineItem Amazon::MWS::XML::OrderlineItem ACKNOWLEDGEMENTS James Risner (additional API methods). AUTHORS Paul Driver Phil Smith Marco Pessotto Stefan Hornburg (Racke) COPYRIGHT This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
About
API binding for Amazon's Marketplace Web Services.
Topics
Resources
Stars
Watchers
Forks
Packages 0
No packages published