Panoply uses Shopify’s REST Admin API to ingest data into your Panoply data warehouse. This article explains the details of that integration. For complete information regarding the Shopify REST API, see Shopify’s REST Admin API reference documentation.
Because some Shopify data is nested, such as the billing address details for an order (see the Order properties for details), you should be aware of what Panoply does with nested data. By default, Panoply transforms nested data into a set of many-to-many or one-to-many relationship tables. This is the classic solution for nested structures in relational databases, where the nested model is transformed into several flat tables that can be joined together. In the case of the
billing_address data for an order, if you use the default destination, then Panoply would create a table called
shopify_orders_billing_address to store the billing address information associated with the orders stored on the
Customer: The Customer Endpoint contains information about a store’s customers, including their addresses and whether they have an active customer account with the store.
CustomerSavedSearch: A customer saved search is a search query that represents a group of customers defined by the shop owner.
Discount Code: Merchants can distribute discount codes to their customers using a variety of means, such as an email or URL, and customers can apply these codes at checkout.
Discount Price Rule: Using the PriceRule resource, you can create discounts that specify a discount as a percentage, a fixed amount, or free shipping. You use entitlements and prerequisites to dynamically build these discounts.
Events: Events are generated by some Shopify resources when certain actions are completed, such as the creation of an article, the fulfillment of an order, or the addition of a product.
Inventory Item: List or update the inventory of a variant’s inventory item.Each variant can have one inventory item, and each inventory item can have many locations.Each location can have many inventory items for many variants.
InventoryLevel: Get or update the inventory level of an inventory item at a location. Each inventory level is associated to a single inventory item and location.
Location: Retrieve the locations that a merchant has set up from their Shopify admin. Each location refers to the address of a business’ headquarters, retail stores, and pop-up stores. The store’s locations are used to track sales and to configure the tax rates applied at checkout.
Retrieves all orders, along with any associated refunds, transactions, and checkouts. Each order is a record of a complete purchase that includes details of the customer, their cart, and any transactions.
Abandoned Checkouts: Retrieves a list of incomplete checkouts. Each Checkout object includes a URL to the online checkout, where the customer can complete their purchase.
DraftOrder: Allow merchants to manually create orders on behalf of customers. The order is saved as a draft in the Shopify admin until it’s marked as completed.
Order: Create and update a store’s orders. Each order is a record of a complete purchase that includes details of the customer, their cart, and any transactions.
Order Risk: Display a fraud analysis and recommendations on the details page of an order.
Refund: Create and retrieve refunds for an order. Each refund is a record of money being returned to the customer. Use the calculate endpoint to make sure that any refund that you create is accurate.
Transaction: Create and retrieve transactions for an order. Transactions are created for every order that results in an exchange of money.
Collect: The Collect resource is used to connect a product to a custom collection. Each collect associates one product with one custom collection.
Collection: A collection is a grouping of products that merchants can create to make their stores easier to browse.
CustomCollection: A custom collection is one where products are included manually, as opposed to being included automatically because they meet selection conditions.
Product: The individual items and services for sale in the store.
Shipping and Fulfillment
CarrierService: Retrieves a list of carriers
Fulfillment: View an order’s or fulfillment order’s fulfillments. A fulfillment order represents a group of one or more items in an order that are to be fulfilled from the same location. A fulfillment represents work that is completed as part of a fulfillment order and can include one or more items.
FulfillmentEvent: Represents tracking events that belong to a fulfillment of one or more items in an order. Fulfillment events are displayed on the order status page to update customers on the status of their shipment.
FulfillmentOrder: Represents either an item or a group of items in an order that are to be fulfilled from the same location. There can be more than one fulfillment order for an order at a given location.
FulfillmentService: Retrieves a list of third party warehouses that prepare and ship orders on behalf of the store owner.
Dispute: Get information regarding Shopify Payments disputes.
Payouts: Get information regarding Shopify Payments payouts.
Transactions: Get information regarding Shopify Payments balance transactions.
Country: The country and provincial tax rates that are applied to applicable items at checkout.
Currency: Retrieves a list of enabled currencies and the time when their conversion rate was last updated.
ShippingZone: Retrieves the shipping zones that a merchant has set up from their Shopify admin. Each Shipping Zone object includes the countries and provinces added to the shipping zone, as well as the tax rates and shipping rates that are set up.
Shop: Access a store’s general settings and information as configured by the merchant in their Shopify admin.