How can I fetch the BuyerID based on buyer-email using Amazon MWS Api - amazon-mws

When parsing through Orders from Amazon MWS Api report type _GET_AMAZON_FULFILLED_SHIPMENTS_DATA_,
I can see the Buyer Name property and other information about the buyer (address, etc.).
However, I don't see a BuyerID. I know I can use buyer-email (ie: fooamazoncustomer#marketplace.amazon.com) as a unique customer identifier.
But my purpose is to link the orders made of such buyer to his public page which I need the BuyerID instead of buyer-email.
So my question is, how can I fetch the BuyerID based on buyer-email using Amazon MWS Api or scraping?

Thanks ScottG and Sagar.
Answer:
I don't believe it's possible. Amazon uses anonymized emails to protect the customer and therefor they're probably not going to give you an id where you can see their profile or public page. I did verify that you can only get the buyers email address, again it's anonymous, from the Orders API using the GetOrder operation. – ScottG

Related

Is there any secuirty risk to let a seller save the merchant ID by his own?

I've some questions about the Merchant ID that I can use in react-paypal-js.
If there is a buyer on my platform will the money go 100% without a cut to the merchant?
And is there any security risk to let the merchant save his ID with a form to my DB and store it there. Should it be crypted or is it anyway a public id and there is no problem someone sees this ID?
It's public like a client ID. There is no risk, they simply identify the account receiving the payment.
The merchant will receive a normal PayPal payment, which will credit their account with the whole amount minus any credit card and PayPal processing fees, which vary by country.

How to create the LINK in data vault without having strong relationship keys (Foreign Keys)?

Our sales representatives call Leads to propose services. Leads are stored in Crm with attributes: LeadId, PrimaryContactNumber, SecondaryContactNumber. All calls are done via Teams and recorded. Calls could be extracted via Microsoft Graph Api and have attributes: CallId, UserId, CalleeNumber, CallerNumber, Duration. Users have these attributes: UserId, Username, Email. How can I generate LINK (relation between User, Lead) using data vault modeling when foreign keys are not known? I thought my design should look like this: User(hub)-Call(link)-Lead(hub), but my call has only userId, leadId could only be inferred from one of the Lead attributes(PrimaryContactNumber or SecondaryContactNumber) What is the best solution to this problem? Or should I model Call as a hub aswell and perform filter when loading data to datamart?
A call is not a business entities, it's rather a relation between a sales person and a lead. So, your first thought is right.
To answers your question, you might want take a look at the zero/ghost records concept. http://roelantvos.com/blog/unknown-keys-zero-keys-or-ghost-keys-in-hubs-for-dv2-0/
Basically, add a "Unknown" entry in your Lead(Hub). Then, when you generate the link and the Lead is not known, simply link it to the unknown entities. Make sure you add a satellite to you link, so you can track the period it was unknown, and when it is known.

GetMatchingProductForId() only returns a result if there's an active offer

As per subject, GetMatchingProductForId() returns results, eg. when querying by EAN and trying to get an ASIN back, only if active offers exist for that ASIN.
Essentially, if noone (else) is selling this product while we query, we can't get an ASIN for our EANs.
This behaviour is consistent with MWS's documentation.
The same behaviour applies to ListMatchingProducts() it does /not/ return results for non-buyable products.
As an example, using GetMatchingProductForId() for EAN 8301029074792 on the UK marketplace returns nothing whereas if you perform the same search using Seller Central you see that a listing does exist for that product.
Since Amazon wants developers not to create products if they already exist in their database, I wonder how we're supposed to query by EAN in order to get an ASIN.
There is no easy solution for this kind of problem. Both the affiliate's itemLookup and mws GetMatchingProductForId don't return asins if there's no current seller.
One solution I came up is to create a bot/crawler to programmatically run through all your (no matched) EAN/UPC list to the seller central's add-a-product page, search the EAN/UPC in the search bar and get the data result.
It returns the ASIN for the specific UPC/EAN query even though there's no current seller for the item.

Returning all Salesforce contacts associated with an account via query from third-party site

I'm using Survey Gizmo and I want to pull in all contact emails associated with an account.
This query works, but it only pulls in the first contact and I need them all:
SELECT Id,Contact.Email FROM Contact WHERE AccountId = 'Insert_Account_Id_Here'
How can I pull in more than one contact?
If that's not possible, is it possible to specifically pull in contact "N"? Then, question 1 could pull in contact 1, question 2 could pull in contact 2 and so forth.
Thanks... I'm new to this so let me know if that was unclear.
Select id,(select Email from contacts) from Acount where id =:'acountLd
for (contact con:acc.Contacts){ con.Email....}

Amazon MWS: Submit Prices and Quantity with ASIN

I would like to update my products with the Amazon MWS API. The problem: I only have the products ASIN's to identify them. Not the SellerSKU.
As far as I have seen until now, the Feed to update the products Data does only accept the SKU as an unique identifier for my product. Is there a way to get around this? Have I just missed the possibility to update with ASIN?
You can use the GetReport operation with the _GET_MERCHANT_LISTINGS_DATA ReportType to retrieve a document that will associate the ASINs with SKUs.
The SKU can be set by the Seller. In this case, the SKU was simply the Article No. Now I have the SKU and can simply use it.

Resources