Repository: ethyca/fidesops (language: python)

Issue:
Shopify
[Spec issue](https://github.com/ethyca/fidesops/issues/1030)
[Spec Doc](https://ethyca.atlassian.net/wiki/spaces/EN/pages/2432630785/Shopify+Connector+Specification)

[Access issue](https://github.com/ethyca/fidesops/issues/1106)

Only needs erasure




Discussion / hints:

Fix patch:
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 58029d338..8347c2b25 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -40,7 +40,7 @@ The types of changes are:
 * Foundations for a new "manual_webhook" connector type [#1267](https://github.com/ethyca/fidesops/pull/1267)
 * Data seeding for Datadog access tests [#1269](https://github.com/ethyca/fidesops/pull/1269)
 * Added support for one-to-many relationships for param_values in SaaS configs [#1253](https://github.com/ethyca/fidesops/pull/1253)
-
+* Added erasure endpoints for Shopify connector [#1289](https://github.com/ethyca/fidesops/pull/1289)
 ### Docs
 
 * Fix analytics opt out environment variable name [#1170](https://github.com/ethyca/fidesops/pull/1170)
diff --git a/data/saas/config/shopify_config.yml b/data/saas/config/shopify_config.yml
index a34214a2c..6ae32b0f0 100644
--- a/data/saas/config/shopify_config.yml
+++ b/data/saas/config/shopify_config.yml
@@ -1,177 +1,254 @@
 saas_config:
-    fides_key: <instance_fides_key>
-    name: Shopify SaaS Config
-    type: shopify
-    description: A sample schema representing the Shopify connector for Fidesops
-    version: 0.0.1
+  fides_key: <instance_fides_key>
+  name: Shopify SaaS Config
+  type: shopify
+  description: A sample schema representing the Shopify connector for Fidesops
+  version: 0.0.1
 
-    connector_params:
-      - name: domain
-      - name: access_token
+  connector_params:
+    - name: domain
+    - name: access_token
 
-    client_config:
-      protocol: https
-      host: <domain>
+  client_config:
+    protocol: https
+    host: <domain>
 
-    test_request:
-      method: GET
-      path: /admin/api/2022-07/customers.json
-      headers:
-        - name: X-Shopify-Access-Token
-          value: <access_token>
-      query_params:
-        - name: email
-          value: test+connector@test.com
+  test_request:
+    method: GET
+    path: /admin/api/2022-07/customers.json
+    headers:
+      - name: X-Shopify-Access-Token
+        value: <access_token>
+    query_params:
+      - name: email
+        value: test+connector@test.com
 
-    endpoints:
-      - name: customers
-        requests:
-          read:
-            method: GET
-            path: /admin/api/2022-07/customers.json
-            headers:
-              - name: X-Shopify-Access-Token
-                value: <access_token>
-            query_params:
-              - name: email
-                value: <email>
-            param_values:
-              - name: email
-                identity: email
-              - name: access_token
-                connector_param: access_token
-            data_path: customers
-            pagination:
-              strategy: link
+  endpoints:
+    - name: customers
+      requests:
+        read:
+          method: GET
+          path: /admin/api/2022-07/customers.json
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          query_params:
+            - name: email
+              value: <email>
+          param_values:
+            - name: email
+              identity: email
+            - name: access_token
+              connector_param: access_token
+          data_path: customers
+          pagination:
+            strategy: link
+            configuration:
+              source: headers
+              rel: next
+        update:
+          method: PUT
+          path: /admin/api/2022-07/customers/<customer_id>.json
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          body: |
+            {
+              "customer": { <masked_object_fields> }
+            }
+          param_values:
+            - name: customer_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: customers.id
+                  direction: from
+            - name: access_token
+              connector_param: access_token
+    - name: customer_orders
+      requests:
+        read:
+          method: GET
+          path: /admin/api/2022-07/customers/<customer_id>/orders.json
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          query_params:
+            - name: status
+              value: any
+          param_values:
+            - name: customer_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: customers.id
+                  direction: from
+            - name: access_token
+              connector_param: access_token
+          pagination:
+            strategy: link
+            configuration:
+              source: headers
+              rel: next
+          data_path: orders
+        update:
+          method: PUT
+          path: /admin/api/2022-07/orders/<order_id>.json
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          body: |
+            {
+              "order" : { <masked_object_fields> }
+            }
+          param_values:
+            - name: order_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: customer_orders.id
+                  direction: from
+            - name: access_token
+              connector_param: access_token
+    - name: customer_addresses
+      requests:
+        read:
+          method: GET
+          path: /admin/api/2022-07/customers/<customer_id>/addresses.json
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          param_values:
+            - name: customer_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: customers.id
+                  direction: from
+            - name: access_token
+              connector_param: access_token
+          pagination:
+            strategy: link
+            configuration:
+              source: headers
+              rel: next
+          data_path: addresses
+        update:
+          method: PUT
+          path: /admin/api/2022-07/customers/<customer_id>/addresses/<address_id>.json
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          body: |
+            {
+              "customer_address": { <masked_object_fields> }
+            }
+          param_values:
+            - name: customer_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: customer_addresses.customer_id
+                  direction: from
+            - name: address_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: customer_addresses.id
+                  direction: from
+            - name: access_token
+              connector_param: access_token
+    - name: customer_order_transactions
+      requests:
+        read:
+          method: GET
+          path: /admin/api/2022-07/orders/<order_id>/transactions.json
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          param_values:
+            - name: order_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: customer_orders.id
+                  direction: from
+            - name: access_token
+              connector_param: access_token
+          data_path: transactions
+    - name: blogs
+      requests:
+        read:
+          method: GET
+          path: /admin/api/2022-07/blogs.json
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          param_values:
+            - name: email
+              identity: email
+            - name: access_token
+              connector_param: access_token
+          data_path: blogs
+    - name: blog_articles
+      requests:
+        read:
+          method: GET
+          path: /admin/api/2022-07/blogs/<blog_id>/articles.json
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          param_values:
+            - name: blog_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: blogs.id
+                  direction: from
+            - name: access_token
+              connector_param: access_token
+          data_path: articles
+    - name: blog_article_comments
+      requests:
+        read:
+          method: GET
+          path: /admin/api/2022-07/comments.json
+          grouped_inputs: [blog_id, article_id]
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          query_params:
+            - name: blog_id
+              value: <blog_id>
+            - name: article_id
+              value: <article_id>
+          param_values:
+            - name: blog_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: blog_articles.blog_id
+                  direction: from
+            - name: article_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: blog_articles.id
+                  direction: from
+            - name: access_token
+              connector_param: access_token
+          data_path: comments
+          postprocessors:
+            - strategy: filter
               configuration:
-                source: headers
-                rel: next
-      - name: customer_orders
-        requests:
-          read:
-            method: GET
-            path: /admin/api/2022-07/customers/<customer_id>/orders.json
-            headers:
-              - name: X-Shopify-Access-Token
-                value: <access_token>
-            query_params:
-              - name: status
-                value: any
-            param_values:
-              - name: customer_id
-                references:
-                  - dataset: <instance_fides_key>
-                    field: customers.id
-                    direction: from
-              - name: access_token
-                connector_param: access_token
-            pagination:
-              strategy: link
-              configuration:
-                source: headers
-                rel: next
-            data_path: orders
-      - name: customer_addresses
-        requests:
-          read:
-            method: GET
-            path: /admin/api/2022-07/customers/<customer_id>/addresses.json
-            headers:
-              - name: X-Shopify-Access-Token
-                value: <access_token>
-            param_values:
-              - name: customer_id
-                references:
-                  - dataset: <instance_fides_key>
-                    field: customers.id
-                    direction: from
-              - name: access_token
-                connector_param: access_token
-            pagination:
-              strategy: link
-              configuration:
-                source: headers
-                rel: next
-            data_path: addresses
-      - name: customer_order_transactions
-        requests:
-          read:
-            method: GET
-            path:  /admin/api/2022-07/orders/<order_id>/transactions.json
-            headers:
-              - name: X-Shopify-Access-Token
-                value: <access_token>
-            param_values:
-              - name: order_id
-                references:
-                  - dataset: <instance_fides_key>
-                    field: customer_orders.id
-                    direction: from
-              - name: access_token
-                connector_param: access_token
-            data_path: transactions
-      - name: blogs
-        requests:
-          read:
-            method: GET
-            path: /admin/api/2022-07/blogs.json
-            headers:
-              - name: X-Shopify-Access-Token
-                value: <access_token>
-            param_values:
-              - name: email
-                identity: email
-              - name: access_token
-                connector_param: access_token
-            data_path: blogs
-      - name: blog_articles
-        requests:
-          read:
-            method: GET
-            path: /admin/api/2022-07/blogs/<blog_id>/articles.json
-            headers:
-              - name: X-Shopify-Access-Token
-                value: <access_token>
-            param_values:
-              - name: blog_id
-                references:
-                  - dataset: <instance_fides_key>
-                    field: blogs.id
-                    direction: from
-              - name: access_token
-                connector_param: access_token
-            data_path: articles
-      - name: blog_article_comments
-        requests:
-          read:
-            method: GET
-            path: /admin/api/2022-07/comments.json
-            grouped_inputs: [blog_id, article_id]
-            headers:
-              - name: X-Shopify-Access-Token
-                value: <access_token>
-            query_params:
-              - name: blog_id
-                value: <blog_id>
-              - name: article_id
-                value: <article_id>
-            param_values:
-              - name: blog_id
-                references:
-                  - dataset: <instance_fides_key>
-                    field: blog_articles.blog_id
-                    direction: from
-              - name: article_id
-                references:
-                  - dataset: <instance_fides_key>
-                    field: blog_articles.id
-                    direction: from
-              - name: access_token
-                connector_param: access_token
-            data_path: comments
-            postprocessors:
-              - strategy: filter
-                configuration:
-                  field: email
-                  value:
-                    identity: email
\ No newline at end of file
+                field: email
+                value:
+                  identity: email
+        update:
+          method: PUT
+          path: /admin/api/2022-07/comments/<comment_id>.json
+          headers:
+            - name: X-Shopify-Access-Token
+              value: <access_token>
+          body: |
+            {
+              "comment": { <masked_object_fields> }
+            }
+          param_values:
+            - name: comment_id
+              references:
+                - dataset: <instance_fides_key>
+                  field: blog_article_comments.id
+                  direction: from
+            - name: access_token
+              connector_param: access_token
diff --git a/data/saas/dataset/shopify_dataset.yml b/data/saas/dataset/shopify_dataset.yml
index 84469da0b..3ea625a99 100644
--- a/data/saas/dataset/shopify_dataset.yml
+++ b/data/saas/dataset/shopify_dataset.yml
@@ -1,979 +1,1324 @@
 dataset:
-- fides_key: <instance_fides_key>
-  name: Shopify Dataset
-  description: A sample dataset representing the Shopify connector for Fidesops
-  collections:
-  - name: customers
-    fields:
-    - name: id
-      data_categories: [user.unique_id]
-      fidesops_meta:
-        data_type: integer
-    - name: email
-      data_categories: [user.contact.email]
-      fidesops_meta:
-        data_type: string
-    - name: accepts_marketing
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: boolean
-    - name: created_at
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: updated_at
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: first_name
-      data_categories: [user.name]
-      fidesops_meta:
-        data_type: string
-    - name: last_name
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: orders_count
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: integer
-    - name: state
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: total_spent
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: last_order_id
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: integer
-    - name: note
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: verified_email
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: boolean
-    - name: multipass_identifier
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: tax_exempt
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: boolean
-    - name: tags
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: last_order_name
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: currency
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: phone
-      data_categories: [user.contact.phone_number]
-      fidesops_meta:
-        data_type: string
-    - name: addresses
-      fidesops_meta:
-        data_type: object[]
-      fields:
-      - name: id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: customer_id
-        data_categories: [user.unique_id]
-        fidesops_meta:
-          data_type: integer
-      - name: first_name
-        data_categories: [user.name]
-        fidesops_meta:
-          data_type: string
-      - name: last_name
-        data_categories: [user.name]
-        fidesops_meta:
-          data_type: string
-      - name: company
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: address1
-        data_categories: [user.contact.address.street]
-        fidesops_meta:
-          data_type: string
-      - name: address2
-        data_categories: [user.contact.address.street]
-        fidesops_meta:
-          data_type: string
-      - name: city
-        data_categories: [user.contact.address.city]
-        fidesops_meta:
-          data_type: string
-      - name: province
-        data_categories: [user.contact.address.state]
-        fidesops_meta:
-          data_type: string
-      - name: country
-        data_categories: [user.contact.address.country]
-        fidesops_meta:
-          data_type: string
-      - name: zip
-        data_categories: [user.contact.address.postal_code]
-        fidesops_meta:
-          data_type: string
-      - name: phone
-        data_categories: [user.contact.phone_number]
-        fidesops_meta:
-          data_type: string
-      - name: name
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: province_code
-        data_categories: [user.contact.address.state]
-        fidesops_meta:
-          data_type: string
-      - name: country_code
-        data_categories: [user.contact.address.country]
-        fidesops_meta:
-          data_type: string
-      - name: country_name
-        data_categories: [user.contact.address.country]
-        fidesops_meta:
-          data_type: string
-      - name: default
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: boolean
-    - name: accepts_marketing_updated_at
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: marketing_opt_in_level
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: tax_exemptions
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: email_marketing_consent
-      fidesops_meta:
-        data_type: object
-      fields:
-      - name: state
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: opt_in_level
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: consent_updated_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-    - name: sms_marketing_consent
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: admin_graphql_api_id
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: default_address
-      fidesops_meta:
-        data_type: object
-      fields:
-      - name: id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: customer_id
-        data_categories: [user.unique_id]
-        fidesops_meta:
-          data_type: integer
-      - name: first_name
-        data_categories: [user.name]
-        fidesops_meta:
-          data_type: string
-      - name: last_name
-        data_categories: [user.name]
-        fidesops_meta:
-          data_type: string
-      - name: company
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: address1
-        data_categories: [user.contact.address.street]
-        fidesops_meta:
-          data_type: string
-      - name: address2
-        data_categories: [user.contact.address.street]
-        fidesops_meta:
-          data_type: string
-      - name: city
-        data_categories: [user.contact.address.city]
-        fidesops_meta:
-          data_type: string
-      - name: province
-        data_categories: [user.contact.address.state]
-        fidesops_meta:
-          data_type: string
-      - name: country
-        data_categories: [user.contact.address.country]
-        fidesops_meta:
-          data_type: string
-      - name: zip
-        data_categories: [user.contact.address.postal_code]
-        fidesops_meta:
-          data_type: string
-      - name: phone
-        data_categories: [user.contact.phone_number]
-        fidesops_meta:
-          data_type: string
-      - name: name
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: province_code
-        data_categories: [user.contact.address.state]
-        fidesops_meta:
-          data_type: string
-      - name: country_code
-        data_categories: [user.contact.address.country]
-        fidesops_meta:
-          data_type: string
-      - name: country_name
-        data_categories: [user.contact.address.country]
-        fidesops_meta:
-          data_type: string
-      - name: default
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: boolean
-  - name: customer_orders
-    fields:
-    - name: orders
-      fidesops_meta:
-        data_type: object[]
-      fields:
-      - name: id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: admin_graphql_api_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: app_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: browser_ip
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: buyer_accepts_marketing
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: boolean
-      - name: cancel_reason
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: cancelled_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: cart_token
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: checkout_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: checkout_token
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: closed_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: confirmed
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: boolean
-      - name: contact_email
-        data_categories: [user.contact.email]
-        fidesops_meta:
-          data_type: string
-      - name: created_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: currency
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: current_subtotal_price
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: current_subtotal_price_set
-        fidesops_meta:
-          data_type: object
+  - fides_key: <instance_fides_key>
+    name: Shopify Dataset
+    description: A sample dataset representing the Shopify connector for Fidesops
+    collections:
+      - name: customers
         fields:
-        - name: shop_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: id
+            data_categories: [user.unique_id]
+            fidesops_meta:
+              primary_key: True
+              data_type: integer
+          - name: email
+            data_categories: [user.contact.email]
+            fidesops_meta:
+              data_type: string
+          - name: accepts_marketing
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: boolean
+          - name: created_at
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: updated_at
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-        - name: presentment_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: first_name
+            data_categories: [user.name]
+            fidesops_meta:
+              data_type: string
+          - name: last_name
+            data_categories: [user.name]
+            fidesops_meta:
+              data_type: string
+          - name: orders_count
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: integer
+          - name: state
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: total_spent
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-      - name: current_total_discounts
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: current_total_discounts_set
-        fidesops_meta:
-          data_type: object
-        fields:
-        - name: shop_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: last_order_id
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: integer
+          - name: note
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: verified_email
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: boolean
+          - name: multipass_identifier
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-        - name: presentment_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: tax_exempt
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: boolean
+          - name: tags
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: last_order_name
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-      - name: current_total_duties_set
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: current_total_price
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: current_total_price_set
-        fidesops_meta:
-          data_type: object
-        fields:
-        - name: shop_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: currency
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: phone
+            data_categories: [user.contact.phone_number]
+            fidesops_meta:
+              data_type: string
+          - name: accepts_marketing_updated_at
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-        - name: presentment_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: marketing_opt_in_level
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: tax_exemptions
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-      - name: current_total_tax
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: current_total_tax_set
-        fidesops_meta:
-          data_type: object
-        fields:
-        - name: shop_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
-            data_categories: [system.operations]
-            fidesops_meta:
-              data_type: string
-          - name: currency_code
-            data_categories: [system.operations]
-            fidesops_meta:
-              data_type: string
-        - name: presentment_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
-            data_categories: [system.operations]
-            fidesops_meta:
-              data_type: string
-          - name: currency_code
-            data_categories: [system.operations]
-            fidesops_meta:
-              data_type: string
-      - name: customer_locale
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: device_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: discount_codes
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: email
-        data_categories: [user.contact.email]
-        fidesops_meta:
-          data_type: string
-      - name: estimated_taxes
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: boolean
-      - name: financial_status
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: fulfillment_status
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: gateway
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: landing_site
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: landing_site_ref
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: location_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: name
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: note
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: note_attributes
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: number
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: order_number
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: order_status_url
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: original_total_duties_set
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: payment_gateway_names
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: phone
-        data_categories: [user.contact.phone_number]
-        fidesops_meta:
-          data_type: string
-      - name: presentment_currency
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: processed_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: processing_method
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: reference
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: referring_site
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: source_identifier
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: source_name
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: source_url
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: subtotal_price
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: subtotal_price_set
-        fidesops_meta:
-          data_type: object
+          - name: email_marketing_consent
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: state
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: opt_in_level
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: consent_updated_at
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+          - name: sms_marketing_consent
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: admin_graphql_api_id
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: default_address
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: integer
+              - name: customer_id
+                data_categories: [user.unique_id]
+                fidesops_meta:
+                  data_type: integer
+              - name: first_name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: last_name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: company
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: address1
+                data_categories: [user.contact.address.street]
+                fidesops_meta:
+                  data_type: string
+              - name: address2
+                data_categories: [user.contact.address.street]
+                fidesops_meta:
+                  data_type: string
+              - name: city
+                data_categories: [user.contact.address.city]
+                fidesops_meta:
+                  data_type: string
+              - name: province
+                data_categories: [user.contact.address.state]
+                fidesops_meta:
+                  data_type: string
+              - name: country
+                data_categories: [user.contact.address.country]
+                fidesops_meta:
+                  data_type: string
+              - name: zip
+                data_categories: [user.contact.address.postal_code]
+                fidesops_meta:
+                  data_type: string
+              - name: phone
+                data_categories: [user.contact.phone_number]
+                fidesops_meta:
+                  data_type: string
+              - name: name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: province_code
+                data_categories: [user.contact.address.state]
+                fidesops_meta:
+                  data_type: string
+              - name: country_code
+                data_categories: [user.contact.address.country]
+                fidesops_meta:
+                  data_type: string
+              - name: country_name
+                data_categories: [user.contact.address.country]
+                fidesops_meta:
+                  data_type: string
+              - name: default
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: boolean
+      - name: customer_orders
         fields:
-        - name: shop_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: id
+            data_categories: [system.operations]
+            fidesops_meta:
+              primary_key: True
+              data_type: integer
+          - name: admin_graphql_api_id
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: app_id
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: integer
+          - name: browser_ip
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-        - name: presentment_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: buyer_accepts_marketing
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: boolean
+          - name: cancel_reason
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: cancelled_at
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-      - name: tags
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: tax_lines
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: taxes_included
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: boolean
-      - name: test
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: boolean
-      - name: token
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: total_discounts
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: total_discounts_set
-        fidesops_meta:
-          data_type: object
-        fields:
-        - name: shop_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: cart_token
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: checkout_id
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-        - name: presentment_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: checkout_token
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: closed_at
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-      - name: total_line_items_price
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: total_line_items_price_set
-        fidesops_meta:
-          data_type: object
-        fields:
-        - name: shop_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: confirmed
             data_categories: [system.operations]
+            fidesops_meta:
+              data_type: boolean
+          - name: contact_email
+            data_categories: [user.contact.email]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: created_at
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-        - name: presentment_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: currency
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: current_subtotal_price
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-      - name: total_outstanding
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: total_price
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: total_price_set
-        fidesops_meta:
-          data_type: object
-        fields:
-        - name: shop_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: current_subtotal_price_set
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: shop_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: presentment_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+          - name: current_total_discounts
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: current_total_discounts_set
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: shop_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: presentment_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+          - name: current_total_duties_set
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: current_total_price
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-        - name: presentment_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: current_total_price_set
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: shop_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: presentment_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+          - name: current_total_tax
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: current_total_tax_set
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: shop_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: presentment_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+          - name: customer_locale
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-      - name: total_price_usd
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: total_shipping_price_set
-        fidesops_meta:
-          data_type: object
-        fields:
-        - name: shop_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: device_id
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: discount_codes
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-        - name: presentment_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: email
+            data_categories: [user.contact.email]
+            fidesops_meta:
+              data_type: string
+          - name: estimated_taxes
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: boolean
+          - name: financial_status
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: fulfillment_status
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-      - name: total_tax
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: total_tax_set
-        fidesops_meta:
-          data_type: object
-        fields:
-        - name: shop_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: gateway
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: landing_site
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-        - name: presentment_money
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: amount
+          - name: landing_site_ref
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: currency_code
+          - name: location_id
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-      - name: total_tip_received
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: total_weight
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: updated_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: user_id
-        data_categories: [user.unique_id]
-        fidesops_meta:
-          data_type: string
-      - name: billing_address
-        fidesops_meta:
-          data_type: object
-        fields:
-        - name: first_name
-          data_categories: [user.name]
-          fidesops_meta:
-            data_type: string
-        - name: address1
-          data_categories: [user.contact.address.street]
-          fidesops_meta:
-            data_type: string
-        - name: phone
-          data_categories: [user.contact.phone_number]
-          fidesops_meta:
-            data_type: string
-        - name: city
-          data_categories: [user.contact.address.city]
-          fidesops_meta:
-            data_type: string
-        - name: zip
-          data_categories: [user.contact.address.postal_code]
-          fidesops_meta:
-            data_type: string
-        - name: province
-          data_categories: [user.contact.address.state]
-          fidesops_meta:
-            data_type: string
-        - name: country
-          data_categories: [user.contact.address.country]
-          fidesops_meta:
-            data_type: string
-        - name: last_name
-          data_categories: [user.name]
-          fidesops_meta:
-            data_type: string
-        - name: address2
-          data_categories: [user.contact.address]
-          fidesops_meta:
-            data_type: string
-        - name: company
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: latitude
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: float
-        - name: longitude
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: float
-        - name: name
-          data_categories: [user.name]
-          fidesops_meta:
-            data_type: string
-        - name: country_code
-          data_categories: [user.contact.address.country]
-          fidesops_meta:
-            data_type: string
-        - name: province_code
-          data_categories: [user.contact.address.state]
-          fidesops_meta:
-            data_type: string
-      - name: customer
-        fidesops_meta:
-          data_type: object
-        fields:
-        - name: id
-          data_categories: [user.unique_id]
-          fidesops_meta:
-            data_type: integer
-        - name: email
-          data_categories: [user.contact.email]
-          fidesops_meta:
-            data_type: string
-        - name: accepts_marketing
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: boolean
-        - name: created_at
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: updated_at
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: first_name
-          data_categories: [user.name]
-          fidesops_meta:
-            data_type: string
-        - name: last_name
-          data_categories: [user.name]
-          fidesops_meta:
-            data_type: string
-        - name: state
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: note
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: verified_email
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: boolean
-        - name: multipass_identifier
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: tax_exempt
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: boolean
-        - name: tags
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: currency
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: phone
-          data_categories: [user.contact.phone_number]
-          fidesops_meta:
-            data_type: string
-        - name: accepts_marketing_updated_at
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: marketing_opt_in_level
-          data_categories: [system.operations]
-          fidesops_meta:
-          data_type: string
-        - name: tax_exemptions
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: email_marketing_consent
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: state
+          - name: name
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: note
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: note_attributes
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: number
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: integer
+          - name: order_number
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: integer
+          - name: order_status_url
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: original_total_duties_set
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: payment_gateway_names
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: phone
+            data_categories: [user.contact.phone_number]
+            fidesops_meta:
+              data_type: string
+          - name: presentment_currency
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: processed_at
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: processing_method
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: reference
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: referring_site
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: source_identifier
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: source_name
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: source_url
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: subtotal_price
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: subtotal_price_set
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: shop_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: presentment_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+          - name: tags
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: tax_lines
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: taxes_included
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: boolean
+          - name: test
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: boolean
+          - name: token
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: total_discounts
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: total_discounts_set
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: shop_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: presentment_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+          - name: total_line_items_price
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: total_line_items_price_set
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: shop_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: presentment_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+          - name: total_outstanding
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: total_price
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: total_price_set
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: shop_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: presentment_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+          - name: total_price_usd
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: opt_in_level
+          - name: total_shipping_price_set
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: shop_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: presentment_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+          - name: total_tax
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: total_tax_set
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: shop_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: presentment_money
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: amount
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: currency_code
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+          - name: total_tip_received
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: total_weight
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: integer
+          - name: updated_at
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: user_id
+            data_categories: [user.unique_id]
+            fidesops_meta:
+              data_type: string
+          - name: billing_address
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: first_name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: address1
+                data_categories: [user.contact.address.street]
+                fidesops_meta:
+                  data_type: string
+              - name: phone
+                data_categories: [user.contact.phone_number]
+                fidesops_meta:
+                  data_type: string
+              - name: city
+                data_categories: [user.contact.address.city]
+                fidesops_meta:
+                  data_type: string
+              - name: zip
+                data_categories: [user.contact.address.postal_code]
+                fidesops_meta:
+                  data_type: string
+              - name: province
+                data_categories: [user.contact.address.state]
+                fidesops_meta:
+                  data_type: string
+              - name: country
+                data_categories: [user.contact.address.country]
+                fidesops_meta:
+                  data_type: string
+              - name: last_name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: address2
+                data_categories: [user.contact.address]
+                fidesops_meta:
+                  data_type: string
+              - name: company
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: latitude
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: float
+              - name: longitude
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: float
+              - name: name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: country_code
+                data_categories: [user.contact.address.country]
+                fidesops_meta:
+                  data_type: string
+              - name: province_code
+                data_categories: [user.contact.address.state]
+                fidesops_meta:
+                  data_type: string
+          - name: customer
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: id
+                data_categories: [user.unique_id]
+                fidesops_meta:
+                  data_type: integer
+              - name: email
+                data_categories: [user.contact.email]
+                fidesops_meta:
+                  data_type: string
+              - name: accepts_marketing
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: boolean
+              - name: created_at
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: updated_at
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: first_name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: last_name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: state
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: note
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: verified_email
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: boolean
+              - name: multipass_identifier
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: tax_exempt
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: boolean
+              - name: tags
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: currency
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: phone
+                data_categories: [user.contact.phone_number]
+                fidesops_meta:
+                  data_type: string
+              - name: accepts_marketing_updated_at
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: marketing_opt_in_level
+                data_categories: [system.operations]
+                fidesops_meta:
+                data_type: string
+              - name: tax_exemptions
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: email_marketing_consent
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: state
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: opt_in_level
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: consent_updated_at
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+              - name: sms_marketing_consent
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: admin_graphql_api_id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: default_address
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: id
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: integer
+                  - name: customer_id
+                    data_categories: [user.unique_id]
+                    fidesops_meta:
+                      data_type: integer
+                  - name: first_name
+                    data_categories: [user.name]
+                    fidesops_meta:
+                      data_type: string
+                  - name: last_name
+                    data_categories: [user.name]
+                    fidesops_meta:
+                      data_type: string
+                  - name: company
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: string
+                  - name: address1
+                    data_categories: [user.contact.address.street]
+                    fidesops_meta:
+                      data_type: string
+                  - name: address2
+                    data_categories: [user.contact.address.street]
+                    fidesops_meta:
+                      data_type: string
+                  - name: city
+                    data_categories: [user.contact.address.city]
+                    fidesops_meta:
+                      data_type: string
+                  - name: province
+                    data_categories: [user.contact.address.state]
+                    fidesops_meta:
+                      data_type: string
+                  - name: country
+                    data_categories: [user.contact.address.country]
+                    fidesops_meta:
+                      data_type: string
+                  - name: zip
+                    data_categories: [user.contact.address.postal_code]
+                    fidesops_meta:
+                      data_type: string
+                  - name: phone
+                    data_categories: [user.contact.phone_number]
+                    fidesops_meta:
+                      data_type: string
+                  - name: name
+                    data_categories: [user.name]
+                    fidesops_meta:
+                      data_type: string
+                  - name: province_code
+                    data_categories: [user.contact.address.state]
+                    fidesops_meta:
+                      data_type: string
+                  - name: country_code
+                    data_categories: [user.contact.address.country]
+                    fidesops_meta:
+                      data_type: string
+                  - name: country_name
+                    data_categories: [user.contact.address.country]
+                    fidesops_meta:
+                      data_type: string
+                  - name: default
+                    data_categories: [system.operations]
+                    fidesops_meta:
+                      data_type: boolean
+          - name: discount_applications
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: fulfillments
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-          - name: consent_updated_at
+          - name: line_items
+            fidesops_meta:
+              data_type: object[]
+            fields:
+              - name: id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: integer
+              - name: admin_graphql_api_id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: fulfillable_quantity
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: integer
+              - name: fulfillment_service
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: fulfillment_status
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: gift_card
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: boolean
+              - name: grams
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: integer
+              - name: name
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: price
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: price_set
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: shop_money
+                    fidesops_meta:
+                      data_type: object
+                    fields:
+                      - name: amount
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                      - name: currency_code
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                  - name: presentment_money
+                    fidesops_meta:
+                      data_type: object
+                    fields:
+                      - name: amount
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                      - name: currency_code
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+              - name: product_exists
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: boolean
+              - name: product_id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: integer
+              - name: properties
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: quantity
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: integer
+              - name: requires_shipping
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: boolean
+              - name: sku
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: taxable
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: boolean
+              - name: title
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: total_discount
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: total_discount_set
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: shop_money
+                    fidesops_meta:
+                      data_type: object
+                    fields:
+                      - name: amount
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                      - name: currency_code
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                  - name: presentment_money
+                    fidesops_meta:
+                      data_type: object
+                    fields:
+                      - name: amount
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                      - name: currency_code
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+              - name: variant_id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: integer
+              - name: variant_inventory_management
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: variant_title
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: vendor
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: tax_lines
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: duties
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: discount_allocations
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+          - name: payment_terms
             data_categories: [system.operations]
             fidesops_meta:
               data_type: string
-        - name: sms_marketing_consent
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: admin_graphql_api_id
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: default_address
-          fidesops_meta:
-            data_type: object
-          fields:
+          - name: refunds
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: shipping_address
+            fidesops_meta:
+              data_type: object
+            fields:
+              - name: first_name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: address1
+                data_categories: [user.contact.address.street]
+                fidesops_meta:
+                  data_type: string
+              - name: phone
+                data_categories: [user.contact.phone_number]
+                fidesops_meta:
+                  data_type: string
+              - name: city
+                data_categories: [user.contact.address.city]
+                fidesops_meta:
+                  data_type: string
+              - name: zip
+                data_categories: [user.contact.address.postal_code]
+                fidesops_meta:
+                  data_type: string
+              - name: province
+                data_categories: [user.contact.address.state]
+                fidesops_meta:
+                  data_type: string
+              - name: country
+                data_categories: [user.contact.address.country]
+                fidesops_meta:
+                  data_type: string
+              - name: last_name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: address2
+                data_categories: [user.contact.address.street]
+                fidesops_meta:
+                  data_type: string
+              - name: company
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: latitude
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: float
+              - name: longitude
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: float
+              - name: name
+                data_categories: [user.name]
+                fidesops_meta:
+                  data_type: string
+              - name: country_code
+                data_categories: [user.contact.address.country]
+                fidesops_meta:
+                  data_type: string
+              - name: province_code
+                data_categories: [user.contact.address.state]
+                fidesops_meta:
+                  data_type: string
+          - name: shipping_lines
+            fidesops_meta:
+              data_type: object[]
+            fields:
+              - name: id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: integer
+              - name: carrier_identifier
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: code
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: delivery_category
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: discounted_price
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: discounted_price_set
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: shop_money
+                    fidesops_meta:
+                      data_type: object
+                    fields:
+                      - name: amount
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                      - name: currency_code
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                  - name: presentment_money
+                    fidesops_meta:
+                      data_type: object
+                    fields:
+                      - name: amount
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                      - name: currency_code
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+              - name: phone
+                data_categories: [user.contact.phone_number]
+                fidesops_meta:
+                  data_type: string
+              - name: price
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: price_set
+                fidesops_meta:
+                  data_type: object
+                fields:
+                  - name: shop_money
+                    fidesops_meta:
+                      data_type: object
+                    fields:
+                      - name: amount
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                      - name: currency_code
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                  - name: presentment_money
+                    fidesops_meta:
+                      data_type: object
+                    fields:
+                      - name: amount
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+                      - name: currency_code
+                        data_categories: [system.operations]
+                        fidesops_meta:
+                          data_type: string
+              - name: requested_fulfillment_service_id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: source
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: title
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: tax_lines
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: discount_allocations
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+      - name: customer_addresses
+        fields:
           - name: id
             data_categories: [system.operations]
             fidesops_meta:
+              primary_key: True
               data_type: integer
           - name: customer_id
             data_categories: [user.unique_id]
@@ -1020,7 +1365,7 @@ dataset:
             fidesops_meta:
               data_type: string
           - name: name
-            data_categories: [system.operations]
+            data_categories: [user.name]
             fidesops_meta:
               data_type: string
           - name: province_code
@@ -1039,673 +1384,248 @@ dataset:
             data_categories: [system.operations]
             fidesops_meta:
               data_type: boolean
-      - name: discount_applications
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: fulfillments
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: line_items
-        fidesops_meta:
-          data_type: object[]
+      - name: customer_order_transactions
         fields:
-        - name: id
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: integer
-        - name: admin_graphql_api_id
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: fulfillable_quantity
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: integer
-        - name: fulfillment_service
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: fulfillment_status
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: gift_card
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: boolean
-        - name: grams
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: integer
-        - name: name
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: price
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: price_set
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: shop_money
+          - name: transactions
             fidesops_meta:
-              data_type: object
+              data_type: object[]
             fields:
-            - name: amount
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-            - name: currency_code
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-          - name: presentment_money
+              - name: id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: integer
+              - name: order_id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: integer
+              - name: kind
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: gateway
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: status
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: message
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: created_at
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: test
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: boolean
+              - name: authorization
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: location_id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: user_id
+                data_categories: [user.unique_id]
+                fidesops_meta:
+                  data_type: string
+              - name: parent_id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: processed_at
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: device_id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: error_code
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: source_name
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: receipt
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: amount
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: currency
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+              - name: admin_graphql_api_id
+                data_categories: [system.operations]
+                fidesops_meta:
+                  data_type: string
+      - name: blogs
+        fields:
+          - name: id
+            data_categories: [system.operations]
             fidesops_meta:
-              data_type: object
-            fields:
-            - name: amount
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-            - name: currency_code
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-        - name: product_exists
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: boolean
-        - name: product_id
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: integer
-        - name: properties
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: quantity
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: integer
-        - name: requires_shipping
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: boolean
-        - name: sku
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: taxable
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: boolean
-        - name: title
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: total_discount
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: total_discount_set
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: shop_money
+              data_type: integer
+          - name: handle
+            data_categories: [system.operations]
             fidesops_meta:
-              data_type: object
-            fields:
-            - name: amount
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-            - name: currency_code
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-          - name: presentment_money
+              data_type: string
+          - name: title
+            data_categories: [system.operations]
             fidesops_meta:
-              data_type: object
-            fields:
-            - name: amount
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-            - name: currency_code
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-        - name: variant_id
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: integer
-        - name: variant_inventory_management
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: variant_title
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: vendor
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: tax_lines
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: duties
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: discount_allocations
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-      - name: payment_terms
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: refunds
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: shipping_address
-        fidesops_meta:
-          data_type: object
+              data_type: string
+          - name: updated_at
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: commentable
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: feedburner
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: feedburner_location
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: created_at
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: template_suffix
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: tags
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: admin_graphql_api_id
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+      - name: blog_articles
         fields:
-        - name: first_name
-          data_categories: [user.name]
-          fidesops_meta:
-            data_type: string
-        - name: address1
-          data_categories: [user.contact.address.street]
-          fidesops_meta:
-            data_type: string
-        - name: phone
-          data_categories: [user.contact.phone_number]
-          fidesops_meta:
-            data_type: string
-        - name: city
-          data_categories: [user.contact.address.city]
-          fidesops_meta:
-            data_type: string
-        - name: zip
-          data_categories: [user.contact.address.postal_code]
-          fidesops_meta:
-            data_type: string
-        - name: province
-          data_categories: [user.contact.address.state]
-          fidesops_meta:
-            data_type: string
-        - name: country
-          data_categories: [user.contact.address.country]
-          fidesops_meta:
-            data_type: string
-        - name: last_name
-          data_categories: [user.name]
-          fidesops_meta:
-            data_type: string
-        - name: address2
-          data_categories: [user.contact.address.street]
-          fidesops_meta:
-            data_type: string
-        - name: company
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: latitude
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: float
-        - name: longitude
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: float
-        - name: name
-          data_categories: [user.name]
-          fidesops_meta:
-            data_type: string
-        - name: country_code
-          data_categories: [user.contact.address.country]
-          fidesops_meta:
-            data_type: string
-        - name: province_code
-          data_categories: [user.contact.address.state]
-          fidesops_meta:
-            data_type: string
-      - name: shipping_lines
-        fidesops_meta:
-          data_type: object[]
+          - name: id
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: integer
+          - name: title
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: created_at
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: body_html
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: blog_id
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: integer
+          - name: author
+            data_categories: [user.name]
+            fidesops_meta:
+              data_type: string
+          - name: user_id
+            data_categories: [user.unique_id]
+            fidesops_meta:
+              data_type: integer
+          - name: published_at
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: updated_at
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: summary_html
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: template_suffix
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: handle
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: tags
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: admin_graphql_api_id
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+      - name: blog_article_comments
         fields:
-        - name: id
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: integer
-        - name: carrier_identifier
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: code
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: delivery_category
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: discounted_price
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: discounted_price_set
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: shop_money
+          - name: id
+            data_categories: [system.operations]
             fidesops_meta:
-              data_type: object
-            fields:
-            - name: amount
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-            - name: currency_code
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-          - name: presentment_money
+              primary_key: True
+              data_type: integer
+          - name: body
+            data_categories: [system.operations]
             fidesops_meta:
-              data_type: object
-            fields:
-            - name: amount
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-            - name: currency_code
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-        - name: phone
-          data_categories: [user.contact.phone_number]
-          fidesops_meta:
-            data_type: string
-        - name: price
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: price_set
-          fidesops_meta:
-            data_type: object
-          fields:
-          - name: shop_money
+              data_type: string
+          - name: body_html
+            data_categories: [system.operations]
             fidesops_meta:
-              data_type: object
-            fields:
-            - name: amount
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-            - name: currency_code
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-          - name: presentment_money
+              data_type: string
+          - name: author
+            data_categories: [user.name]
             fidesops_meta:
-              data_type: object
-            fields:
-            - name: amount
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-            - name: currency_code
-              data_categories: [system.operations]
-              fidesops_meta:
-                data_type: string
-        - name: requested_fulfillment_service_id
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: source
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: title
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: tax_lines
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-        - name: discount_allocations
-          data_categories: [system.operations]
-          fidesops_meta:
-            data_type: string
-  - name: customer_addresses
-    fields:
-    - name: addresses
-      fidesops_meta:
-        data_type: object[]
-      fields:
-      - name: id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: customer_id
-        data_categories: [user.unique_id]
-        fidesops_meta:
-          data_type: integer
-      - name: first_name
-        data_categories: [user.name]
-        fidesops_meta:
-          data_type: string
-      - name: last_name
-        data_categories: [user.name]
-        fidesops_meta:
-          data_type: string
-      - name: company
-        data_categories: [system.operations]
-        fidesops_meta:
-            data_type: string
-      - name: address1
-        data_categories: [user.contact.address.street]
-        fidesops_meta:
-          data_type: string
-      - name: address2
-        data_categories: [user.contact.address.street]
-        fidesops_meta:
-            data_type: string
-      - name: city
-        data_categories: [user.contact.address.city]
-        fidesops_meta:
-          data_type: string
-      - name: province
-        data_categories: [user.contact.address.state]
-        fidesops_meta:
-          data_type: string
-      - name: country
-        data_categories: [user.contact.address.country]
-        fidesops_meta:
-          data_type: string
-      - name: zip
-        data_categories: [user.contact.address.postal_code]
-        fidesops_meta:
-          data_type: string
-      - name: phone
-        data_categories: [user.contact.phone_number]
-        fidesops_meta:
-          data_type: string
-      - name: name
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: province_code
-        data_categories: [user.contact.address.state]
-        fidesops_meta:
-          data_type: string
-      - name: country_code
-        data_categories: [user.contact.address.country]
-        fidesops_meta:
-          data_type: string
-      - name: country_name
-        data_categories: [user.contact.address.country]
-        fidesops_meta:
-          data_type: string
-      - name: default
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: boolean
-  - name: customer_order_transactions
-    fields:
-    - name: transactions
-      fidesops_meta:
-        data_type: object[]
-      fields:
-      - name: id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: order_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: kind
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: gateway
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: status
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: message
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: created_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: test
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: boolean
-      - name: authorization
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: location_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: user_id
-        data_categories: [user.unique_id]
-        fidesops_meta:
-          data_type: string
-      - name: parent_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: processed_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: device_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: error_code
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: source_name
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: receipt
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: amount
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: currency
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: admin_graphql_api_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-  - name: blogs
-    fields:
-    - name: id
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: integer
-    - name: handle
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: title
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: updated_at
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: commentable
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: feedburner
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: feedburner_location
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: created_at
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: template_suffix
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: tags
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: admin_graphql_api_id
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-  - name: blog_articles
-    fields:
-    - name: id
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: integer
-    - name: title
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: created_at
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: body_html
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: blog_id
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: integer
-    - name: author
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: user_id
-      data_categories: [user.unique_id]
-      fidesops_meta:
-        data_type: integer
-    - name: published_at
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: updated_at
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: summary_html
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: template_suffix
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: handle
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: tags
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-    - name: admin_graphql_api_id
-      data_categories: [system.operations]
-      fidesops_meta:
-        data_type: string
-  - name: blog_article_comments
-    fields:
-    - name: comments
-      fidesops_meta:
-        data_type: object[]
-      fields:
-      - name: id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: body
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: body_html
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: author
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: email
-        data_categories: [user.contact.email]
-        fidesops_meta:
-          data_type: string
-      - name: status
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: article_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: blog_id
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: integer
-      - name: created_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: updated_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: ip
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: user_agent
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
-      - name: published_at
-        data_categories: [system.operations]
-        fidesops_meta:
-          data_type: string
+              data_type: string
+          - name: email
+            data_categories: [user.contact.email]
+            fidesops_meta:
+              data_type: string
+          - name: status
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: article_id
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: integer
+          - name: blog_id
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: integer
+          - name: created_at
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: updated_at
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: ip
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: user_agent
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string
+          - name: published_at
+            data_categories: [system.operations]
+            fidesops_meta:
+              data_type: string


Test patch:
diff --git a/tests/ops/fixtures/saas/shopify_fixtures.py b/tests/ops/fixtures/saas/shopify_fixtures.py
index ba715cf0c..8ccc6cadb 100644
--- a/tests/ops/fixtures/saas/shopify_fixtures.py
+++ b/tests/ops/fixtures/saas/shopify_fixtures.py
@@ -2,9 +2,12 @@
 
 import pydash
 import pytest
+import requests
+from faker import Faker
 from fideslib.cryptography import cryptographic_util
 from fideslib.db import session
 from sqlalchemy.orm import Session
+from starlette.status import HTTP_204_NO_CONTENT
 
 from fidesops.ops.models.connectionconfig import (
     AccessLevel,
@@ -16,6 +19,7 @@
     load_config_with_replacement,
     load_dataset_with_replacement,
 )
+from tests.ops.test_helpers.saas_test_utils import poll_for_existence
 from tests.ops.test_helpers.vault_client import get_secrets
 
 secrets = get_secrets("shopify")
@@ -100,3 +104,150 @@ def shopify_dataset_config(
     )
     yield dataset
     dataset.delete(db=db)
+
+
+@pytest.fixture(scope="function")
+def shopify_erasure_data(
+    shopify_connection_config, shopify_erasure_identity_email, shopify_secrets
+) -> Generator:
+    """
+    Creates a dynamic test data record for erasure tests.
+    Yields customer, order, blog, article and comment as this may be useful to have in test scenarios
+    """
+    base_url = f"https://{shopify_secrets['domain']}"
+    faker = Faker()
+    firstName = faker.first_name()
+    lastName = faker.last_name()
+    body = {
+        "customer": {
+            "first_name": firstName,
+            "last_name": lastName,
+            "email": shopify_erasure_identity_email,
+            "verified_email": True,
+            "addresses": [
+                {
+                    "address1": "123 Test",
+                    "city": "Toronto",
+                    "province": "ON",
+                    "zip": "66777",
+                    "last_name": lastName,
+                    "first_name": firstName,
+                    "country": "Canada",
+                }
+            ],
+        }
+    }
+    headers = {"X-Shopify-Access-Token": f"{shopify_secrets['access_token']}"}
+    customers_response = requests.post(
+        url=f"{base_url}/admin/api/2022-07/customers.json", json=body, headers=headers
+    )
+    customer = customers_response.json()
+    assert customers_response.ok
+    error_message = f"customer with email {shopify_erasure_identity_email} could not be added to Shopify"
+    poll_for_existence(
+        customer_exists,
+        (shopify_erasure_identity_email, shopify_secrets),
+        error_message=error_message,
+    )
+
+    # Create Order
+    body = {
+        "order": {
+            "email": shopify_erasure_identity_email,
+            "fulfillment_status": "fulfilled",
+            "send_receipt": True,
+            "financial_status": "paid",
+            "send_fulfillment_receipt": True,
+            "line_items": [
+                {
+                    "product_id": 6923717967965,
+                    "name": "Short leeve t-shirt",
+                    "title": "Short sleeve t-shirt",
+                    "price": 10,
+                    "quantity": 1,
+                }
+            ],
+        }
+    }
+    orders_response = requests.post(
+        url=f"{base_url}/admin/api/2022-07/orders.json", json=body, headers=headers
+    )
+
+    assert orders_response.ok
+    order = orders_response.json()
+    order_id = order["order"]["id"]
+
+    # Get Blog
+    blogs_response = requests.get(
+        url=f"{base_url}/admin/api/2022-07/blogs.json", headers=headers
+    )
+    assert blogs_response.ok
+    blog = blogs_response.json()["blogs"][1]
+
+    blog_id = blog["id"]
+    # Create Article
+    body = {
+        "article": {
+            "title": "Test Article",
+            "author": firstName,
+        }
+    }
+    articles_response = requests.post(
+        url=f"{base_url}/admin/api/2022-07/blogs/{blog_id}/articles.json",
+        json=body,
+        headers=headers,
+    )
+    assert articles_response.ok
+    article = articles_response.json()
+    article_id = article["article"]["id"]
+
+    # Create Comment
+    body = {
+        "comment": {
+            "body": "I like comments\nAnd I like posting them *RESTfully*.",
+            "author": firstName,
+            "email": shopify_erasure_identity_email,
+            "ip": faker.ipv4_private(),
+            "blog_id": blog_id,
+            "article_id": article_id,
+        }
+    }
+    comments_response = requests.post(
+        url=f"{base_url}/admin/api/2022-07/comments.json", json=body, headers=headers
+    )
+    assert comments_response.ok
+    comment = comments_response.json()
+
+    yield customer, order, blog, article, comment
+
+    # Deleting order and article after verifying update request
+    order_delete_response = requests.delete(
+        url=f"{base_url}/admin/api/2022-07/orders/{order_id}.json",
+        headers=headers,
+    )
+    assert order_delete_response.ok
+    article_delete_response = requests.delete(
+        url=f"{base_url}/admin/api/2022-07/articles/{article_id}.json",
+        headers=headers,
+    )
+    assert article_delete_response.ok
+
+
+def customer_exists(shopify_erasure_identity_email: str, shopify_secrets):
+    """
+    Confirm whether customer exists by calling customer search by email api and comparing resulting firstname str.
+    Returns customer ID if it exists, returns None if it does not.
+    """
+    base_url = f"https://{shopify_secrets['domain']}"
+    headers = {"X-Shopify-Access-Token": f"{shopify_secrets['access_token']}"}
+
+    customer_response = requests.get(
+        url=f"{base_url}/admin/api/2022-07/customers.json?email={shopify_erasure_identity_email}",
+        headers=headers,
+    )
+
+    # we expect 404 if customer doesn't exist
+    if 404 == customer_response.status_code:
+        return None
+
+    return customer_response.json()
diff --git a/tests/ops/integration_tests/saas/test_shopify_task.py b/tests/ops/integration_tests/saas/test_shopify_task.py
index 70a99034a..66c4d228a 100644
--- a/tests/ops/integration_tests/saas/test_shopify_task.py
+++ b/tests/ops/integration_tests/saas/test_shopify_task.py
@@ -1,12 +1,15 @@
 import random
 
 import pytest
+import requests
 
+from fidesops.ops.core.config import config
 from fidesops.ops.graph.graph import DatasetGraph
 from fidesops.ops.models.privacy_request import PrivacyRequest
 from fidesops.ops.schemas.redis_cache import PrivacyRequestIdentity
 from fidesops.ops.service.connectors import get_connector
 from fidesops.ops.task import graph_task
+from fidesops.ops.task.graph_task import get_cached_data_for_erasures
 from tests.ops.graph.graph_test_util import assert_rows_match
 
 
@@ -260,3 +263,294 @@ async def test_shopify_access_request_task(
 
     for comment in v[f"{dataset_name}:blog_article_comments"]:
         assert comment["email"] == shopify_identity_email
+
+
+@pytest.mark.integration_saas
+@pytest.mark.integration_shopify
+@pytest.mark.asyncio
+async def test_shopify_erasure_request_task(
+    db,
+    policy,
+    erasure_policy_string_rewrite,
+    shopify_connection_config,
+    shopify_dataset_config,
+    shopify_erasure_identity_email,
+    shopify_erasure_data,
+) -> None:
+    """Full erasure request based on the Shopify SaaS config"""
+
+    privacy_request = PrivacyRequest(
+        id=f"test_shopify_erasure_request_task_{random.randint(0, 1000)}"
+    )
+    identity = PrivacyRequestIdentity(**{"email": shopify_erasure_identity_email})
+    privacy_request.cache_identity(identity)
+
+    dataset_name = shopify_connection_config.get_saas_config().fides_key
+    merged_graph = shopify_dataset_config.get_graph()
+    graph = DatasetGraph(merged_graph)
+
+    v = await graph_task.run_access_request(
+        privacy_request,
+        policy,
+        graph,
+        [shopify_connection_config],
+        {"email": shopify_erasure_identity_email},
+        db,
+    )
+
+    assert_rows_match(
+        v[f"{dataset_name}:customers"],
+        min_size=1,
+        keys=[
+            "id",
+            "email",
+            "accepts_marketing",
+            "created_at",
+            "updated_at",
+            "first_name",
+            "last_name",
+            "orders_count",
+            "state",
+            "total_spent",
+            "last_order_id",
+            "note",
+            "verified_email",
+            "multipass_identifier",
+            "tax_exempt",
+            "tags",
+            "last_order_name",
+            "currency",
+            "phone",
+            "accepts_marketing_updated_at",
+            "marketing_opt_in_level",
+            "tax_exemptions",
+            "admin_graphql_api_id",
+        ],
+    )
+
+    assert_rows_match(
+        v[f"{dataset_name}:customer_orders"],
+        min_size=1,
+        keys=[
+            "id",
+            "admin_graphql_api_id",
+            "app_id",
+            "browser_ip",
+            "buyer_accepts_marketing",
+            "cancel_reason",
+            "cancelled_at",
+            "cart_token",
+            "checkout_id",
+            "checkout_token",
+            "closed_at",
+            "confirmed",
+            "contact_email",
+            "created_at",
+            "currency",
+            "current_subtotal_price",
+            "current_total_discounts",
+            "current_total_price",
+            "current_total_tax",
+            "customer_locale",
+            "device_id",
+            "discount_codes",
+            "email",
+            "estimated_taxes",
+            "financial_status",
+            "fulfillment_status",
+            "gateway",
+            "landing_site",
+            "landing_site_ref",
+            "location_id",
+            "name",
+            "note",
+            "note_attributes",
+            "number",
+            "order_number",
+            "order_status_url",
+            "payment_gateway_names",
+            "phone",
+            "presentment_currency",
+            "processed_at",
+            "processing_method",
+            "reference",
+            "referring_site",
+            "source_identifier",
+            "source_name",
+            "source_url",
+            "subtotal_price",
+            "tags",
+            "tax_lines",
+            "taxes_included",
+            "test",
+            "token",
+            "total_discounts",
+            "total_line_items_price",
+            "total_outstanding",
+            "total_price",
+            "total_price_usd",
+            "total_tax",
+            "total_tip_received",
+            "total_weight",
+            "updated_at",
+            "user_id",
+            "customer",
+            "discount_applications",
+            "payment_terms",
+        ],
+    )
+
+    assert_rows_match(
+        v[f"{dataset_name}:customer_addresses"],
+        min_size=1,
+        keys=[
+            "id",
+            "customer_id",
+            "first_name",
+            "last_name",
+            "company",
+            "address1",
+            "address2",
+            "city",
+            "province",
+            "country",
+            "zip",
+            "phone",
+            "name",
+            "province_code",
+            "country_code",
+            "country_name",
+            "default",
+        ],
+    )
+
+    assert_rows_match(
+        v[f"{dataset_name}:blogs"],
+        min_size=1,
+        keys=[
+            "id",
+            "handle",
+            "title",
+            "updated_at",
+            "commentable",
+            "feedburner",
+            "feedburner_location",
+            "created_at",
+            "template_suffix",
+            "tags",
+            "admin_graphql_api_id",
+        ],
+    )
+
+    assert_rows_match(
+        v[f"{dataset_name}:blog_articles"],
+        min_size=1,
+        keys=[
+            "id",
+            "title",
+            "created_at",
+            "body_html",
+            "blog_id",
+            "author",
+            "user_id",
+            "published_at",
+            "updated_at",
+            "summary_html",
+            "template_suffix",
+            "handle",
+            "tags",
+            "admin_graphql_api_id",
+        ],
+    )
+
+    assert_rows_match(
+        v[f"{dataset_name}:blog_article_comments"],
+        min_size=1,
+        keys=[
+            "id",
+            "body",
+            "body_html",
+            "author",
+            "email",
+            "status",
+            "article_id",
+            "blog_id",
+            "created_at",
+            "updated_at",
+            "ip",
+            "user_agent",
+            "published_at",
+        ],
+    )
+
+    temp_masking = config.execution.masking_strict
+    config.execution.masking_strict = True
+
+    x = await graph_task.run_erasure(
+        privacy_request,
+        erasure_policy_string_rewrite,
+        graph,
+        [shopify_connection_config],
+        {"email": shopify_erasure_identity_email},
+        get_cached_data_for_erasures(privacy_request.id),
+        db,
+    )
+
+    assert x == {
+        f"{dataset_name}:customers": 1,
+        f"{dataset_name}:blogs": 0,
+        f"{dataset_name}:customer_orders": 1,
+        f"{dataset_name}:customer_addresses": 1,
+        f"{dataset_name}:blog_articles": 0,
+        f"{dataset_name}:blog_article_comments": 1,
+        f"{dataset_name}:customer_order_transactions": 0,
+    }
+
+    # Verifying data is actually updated
+    shopify_secrets = shopify_connection_config.secrets
+    base_url = f"https://{shopify_secrets['domain']}"
+    headers = {"X-Shopify-Access-Token": f"{shopify_secrets['access_token']}"}
+    customer_response = requests.get(
+        url=f"{base_url}/admin/api/2022-07/customers.json?email={shopify_erasure_identity_email}",
+        headers=headers,
+    )
+    customer = customer_response.json()["customers"][0]
+    customer_id = customer["id"]
+    assert customer["first_name"] == "MASKED"
+    assert customer["last_name"] == "MASKED"
+    assert customer["default_address"]["first_name"] == "MASKED"
+    assert customer["default_address"]["last_name"] == "MASKED"
+    assert customer["default_address"]["name"] == "MASKED MASKED"
+
+    customer_order_response = requests.get(
+        url=f"{base_url}/admin/api/2022-07/customers/{customer_id}/orders.json?status=any",
+        headers=headers,
+    )
+
+    order = customer_order_response.json()["orders"][0]
+    assert order["customer"]["first_name"] == "MASKED"
+    assert order["customer"]["last_name"] == "MASKED"
+    assert order["customer"]["default_address"]["first_name"] == "MASKED"
+    assert order["customer"]["default_address"]["last_name"] == "MASKED"
+    assert order["customer"]["default_address"]["name"] == "MASKED MASKED"
+
+    customer_address_response = requests.get(
+        url=f"{base_url}/admin/api/2022-07/customers/{customer_id}/addresses.json",
+        headers=headers,
+    )
+
+    address = customer_address_response.json()["addresses"][0]
+    assert address["first_name"] == "MASKED"
+    assert address["last_name"] == "MASKED"
+    assert address["name"] == "MASKED MASKED"
+
+    # Please note that Shopify doesn't allow comments filtering by email so we are getting comment_id by dataset instead and verifying that it is masked
+    comment_id = v[f"{dataset_name}:blog_article_comments"][0]["id"]
+    blog_article_comment_response = requests.get(
+        url=f"{base_url}/admin/api/2022-07/comments/{comment_id}.json",
+        headers=headers,
+    )
+    comment = blog_article_comment_response.json()["comment"]
+    assert comment["author"] == "MASKED"
+
+    config.execution.masking_strict = temp_masking