How to integrate Amazon Selling Partner (SP-API) with SSRS
Learn how to quickly and efficiently connect Amazon Selling Partner (SP-API) with SSRS for smooth data access.
Read and write Amazon Selling Partner (SP-API) data effortlessly. Integrate, manage, and automate listings, orders, payments, and reports — almost no coding required. You can do it all using the high-performance Amazon Selling Partner (SP-API) ODBC Driver for SSRS (often referred to as the Amazon Selling Partner (SP-API) Connector). We'll walk you through the entire setup.
Ready to dive in? Download the product to jump right in, or follow the step-by-step guide below to see how it works.
Video Tutorial
This video covers the following topics and more, so please watch carefully. After watching the video, follow the steps outlined in this article:
- How to download and install the required PowerPack for Amazon Selling Partner (SP-API) integration in SSRS
- How to configure the connection for Amazon Selling Partner (SP-API)
- Features of the ZappySys API Driver (Authentication / Query Language / Examples / Driver UI)
- How to use the Amazon Selling Partner (SP-API) in SSRS
Create data source in ZappySys Data Gateway
In this section we will create a data source for Amazon Selling Partner (SP-API) in the Data Gateway. Let's follow these steps to accomplish that:
-
Download and install ODBC PowerPack (if you haven't already).
-
Search for
gatewayin the Windows Start Menu and open ZappySys Data Gateway Configuration:
-
Go to the Users tab and follow these steps to add a Data Gateway user:
- Click the Add button
-
In the Login field enter a username, e.g.,
john - Then enter a Password
- Check the Is Administrator checkbox
- Click OK to save
-
Now we are ready to add a data source:
- Click the Add button
- Give the Data source a name (have it handy for later)
- Then select Native - ZappySys API Driver
- Finally, click OK
AmazonSellingPartnerSpApiDSNZappySys API Driver
-
When the Configuration window appears give your data source a name if you haven't done that already, then select "Amazon Selling Partner (SP-API)" from the list of Popular Connectors. If "Amazon Selling Partner (SP-API)" is not present in the list, then click "Search Online" and download it. Then set the path to the location where you downloaded it. Finally, click Continue >> to proceed with configuring the DSN:
AmazonSellingPartnerSpApiDSNAmazon Selling Partner (SP-API)
-
Now it's time to configure the Connection Manager. Select Authentication Type, e.g. Token Authentication. Then select API Base URL (in most cases, the default one is the right one). More info is available in the Authentication section.
Amazon Selling Partner (SP-API) authentication
Amazon Sellers can use SP-API to set up private integrations and build solutions exclusively for their Amazon store. Private app is available only to your organization and is self-authorized. A private developer builds application(s) that integrate their own company with Amazon APIs. [API reference]
Perform the following steps to authenticate calls using Amazon SP-API Private app:
- Register as an Amazon Private SP-API Developer. You may need to wait for a day or two to get approved (check approval status).
-
Once your developer account is approved,
login to your account, visit developer console
and click Add new app client button to create a Private app:
-
Continue by naming your application in the App name field,
choose
SP APIas API Type, and select the Roles for your app (i.e. permissions):
-
Once you do that, click View link in LWA credentials column to
copy Client identifier and Client secret (we will use them later):
-
Now it's time to Authorize your app:
-
Finish authorizing it by presing Authorize app button:
-
Finally, copy the Refresh Token (we will use it in the next step):
-
Now go to SSIS package or ODBC data source and use Private app authentication configuration:
- In the ClientId field paste the Client identifier value you copied in the previous step.
- In the ClientSecret field paste the Client secret value you copied in the previous step.
- Leave the default value in the TokenUrl field.
- In the Refresh Token field paste the Refresh Token value you copied in the previous step.
- Click Test Connection to confirm the connection is working.
- Done! Now you are ready to use Amazon Selling Partner (SP-API) Connector!
API Connection Manager configuration
Just perform these simple steps to finish authentication configuration:
-
Set Authentication Type to
Private app [OAuth] - Optional step. Modify API Base URL if needed (in most cases default will work).
- Fill in all the required parameters and set optional parameters if needed.
- Press Generate Token button to generate the tokens.
- Finally, hit OK button:
AmazonSellingPartnerSpApiDSNAmazon Selling Partner (SP-API)Private app [OAuth]https://sellingpartnerapi-na.amazon.comRequired Parameters ClientId Fill-in the parameter... ClientSecret Fill-in the parameter... TokenUrl Fill-in the parameter... Optional Parameters TokenUIMode OnlyRefreshToken AuthUrl (Do not Use for Private app - Self Authorization) https://sellercentral.amazon.com/apps/authorize/consent?application_id=[YOUR-APPLICATION-ID]&version=beta OrdersApiVersion v0 SellerApiVersion v1 ShippingApiVersion v1 ServicesApiVersion v1 FbaApiVersion v1 SalesApiVersion v1 ReportsApiVersion 2021-06-30 ProductsFeesApiVersion v0 ProductPricingApiVersion v0 CatalogItemsApiVersion 2022-04-01 VendorOrdersApiVersion v1 RetryMode RetryWhenStatusCodeMatch RetryStatusCodeList 429 RetryCountMax 5 RetryMultiplyWaitTime True
-
Once the data source connection has been configured, it's time to configure the SQL query. Select the Preview tab and then click Query Builder button to configure the SQL query:
ZappySys API Driver - Amazon Selling Partner (SP-API)Read and write Amazon Selling Partner (SP-API) data effortlessly. Integrate, manage, and automate listings, orders, payments, and reports — almost no coding required.AmazonSellingPartnerSpApiDSN
-
Start by selecting the Table or Endpoint you are interested in and then configure the parameters. This will generate a query that we will use in SSRS to retrieve data from Amazon Selling Partner (SP-API). Hit OK button to use this query in the next step.
SELECT * FROM Orders --WHERE AmazonOrderId='902-1845936-5435065' WITH( CreatedAfter='1900-01-01T00:00:00' -- , CreatedBefore='1900-01-01T00:00:00' -- , LastUpdatedAfter='1900-01-01T00:00:00' -- , LastUpdatedBefore='1900-01-01T00:00:00' -- , OrderStatuses='Pending~Unshipped~PartiallyShipped~PendingAvailability~Shipped~Canceled~Unfulfillable' -- , MarketplaceIds='ATVPDKIKX0DER~A2Q3Y263D00KWC~A2EUQ1WTGCTBG2' -- , FulfillmentChannels='AFN~MFN' -- , PaymentMethods='COD~CVS~Other' -- , AmazonOrderIds='1111111,222222,333333' ) --CONNECTION( -- ServiceUrl='https://sellingpartnerapi-na.amazon.com' --)
Some parameters configured in this window will be passed to the Amazon Selling Partner (SP-API) API, e.g. filtering parameters. It means that filtering will be done on the server side (instead of the client side), enabling you to get only the meaningful datamuch faster . -
Now hit Preview Data button to preview the data using the generated SQL query. If you are satisfied with the result, use this query in SSRS:
ZappySys API Driver - Amazon Selling Partner (SP-API)Read and write Amazon Selling Partner (SP-API) data effortlessly. Integrate, manage, and automate listings, orders, payments, and reports — almost no coding required.AmazonSellingPartnerSpApiDSNSELECT * FROM Orders --WHERE AmazonOrderId='902-1845936-5435065' WITH( CreatedAfter='1900-01-01T00:00:00' -- , CreatedBefore='1900-01-01T00:00:00' -- , LastUpdatedAfter='1900-01-01T00:00:00' -- , LastUpdatedBefore='1900-01-01T00:00:00' -- , OrderStatuses='Pending~Unshipped~PartiallyShipped~PendingAvailability~Shipped~Canceled~Unfulfillable' -- , MarketplaceIds='ATVPDKIKX0DER~A2Q3Y263D00KWC~A2EUQ1WTGCTBG2' -- , FulfillmentChannels='AFN~MFN' -- , PaymentMethods='COD~CVS~Other' -- , AmazonOrderIds='1111111,222222,333333' ) --CONNECTION( -- ServiceUrl='https://sellingpartnerapi-na.amazon.com' --)
You can also access data quickly from the tables dropdown by selecting <Select table>.AWHEREclause,LIMITkeyword will be performed on the client side, meaning that thewhole result set will be retrieved from the Amazon Selling Partner (SP-API) API first, and only then the filtering will be applied to the data. If possible, it is recommended to use parameters in Query Builder to filter the data on the server side (in Amazon Selling Partner (SP-API) servers). -
Click OK to finish creating the data source.
-
Once done, go to the Network Settings tab and Add a firewall rule for inbound traffic:
- This will initially allow all inbound traffic.
- Click Edit IP filters to restrict access to specific IP addresses or ranges.
-
Crucial Step: After creating or modifying the data source, you must:
- Click the Save button to persist your changes.
- Hit Yes when prompted to restart the Data Gateway service.
This ensures all changes are properly applied:
Skipping this step may cause the new settings to fail, preventing you from connecting to the data source.
Read data in SSRS from ZappySys Data Gateway
-
Open Visual Studio and create a new SSRS project.
-
Then add a new Shared Data Source (you can create a non-shared data source inside report too):
-
Continue with creating the Shared Data Source. Select Microsoft SQL Server as Type and hit Build button to proceed further:
-
Once a window opens, configure it similarly. Configure "AmazonSellingPartnerSpApiDSN" as database name. Finally, hit Test Connection and OK:
AmazonSellingPartnerSpApiDSN
-
Another window opens, and it should look similarly to this one below which ends the creation of a Data Source:
DataSource=localhost,5000;Initial Catalog=AmazonSellingPartnerSpApiDSN
-
Now it's time to create a Dataset. If you don't have a report created, in one of the wizard's steps it will look like this:
SELECT * FROM Orders --WHERE AmazonOrderId='902-1845936-5435065' WITH( CreatedAfter='1900-01-01T00:00:00' -- , CreatedBefore='1900-01-01T00:00:00' -- , LastUpdatedAfter='1900-01-01T00:00:00' -- , LastUpdatedBefore='1900-01-01T00:00:00' -- , OrderStatuses='Pending~Unshipped~PartiallyShipped~PendingAvailability~Shipped~Canceled~Unfulfillable' -- , MarketplaceIds='ATVPDKIKX0DER~A2Q3Y263D00KWC~A2EUQ1WTGCTBG2' -- , FulfillmentChannels='AFN~MFN' -- , PaymentMethods='COD~CVS~Other' -- , AmazonOrderIds='1111111,222222,333333' ) --CONNECTION( -- ServiceUrl='https://sellingpartnerapi-na.amazon.com' --)
-
Finally, once you complete the report, similar results will show up:
Passing Parameters to SSRS Report / Filter data
If you want to parameterize your report, then refer to this article
Supported Amazon Selling Partner (SP-API) Connector actions
Got a specific use case in mind? We've mapped out exactly how to perform a variety of essential Amazon Selling Partner (SP-API) operations directly in SSRS, so you don't have to figure out the setup from scratch. Check out the step-by-step guides below:
- Download Report File to Local Disk
- Get FBA Inventory Summaries (Fulfilled By Amazon)
- Get Market Place Participations
- Get Order (Single)
- Get Order Items (For Single Order)
- Get Orders
- Get Orders Items (For All Orders **Slow**)
- Get Report Data - Comma Separated File (CSV)
- Get Report Data - JSON File
- Get Report Data - Tab Separated File (TSV)
- Get Report Data - XML File
- Get Report Filters
- Get Report Options
- Get Report Types
- Get Vendor PurchaseOrder Items
- Get Vendor PurchaseOrders
- Search Catalog Items
- Make Generic REST API Request
- Make Generic REST API Request (Bulk Write)
Conclusion
In this article we showed you how to connect to Amazon Selling Partner (SP-API) in SSRS and integrate data without writing complex code — all of this was powered by Amazon Selling Partner (SP-API) ODBC Driver.
Download ODBC PowerPack now or ping us via chat if you have any questions or are looking for a specific feature (you can also reach out to us by submitting a ticket):