version: 2

models:
  - name: tmp_shopify_fansifter__order_dbt
    columns:
      - name: id
        tests:
          - not_null
      - name: note
      - name: email
      - name: taxes_included
      - name: currency
      - name: subtotal_price
      - name: subtotal_price_set
      - name: total_tax
      - name: total_tax_set
      - name: total_price
      - name: total_price_set
      - name: created_at
      - name: updated_at
      - name: name
      - name: shipping_address_name
      - name: shipping_address_first_name
      - name: shipping_address_last_name
      - name: shipping_address_company
      - name: shipping_address_phone
      - name: shipping_address_address_1
      - name: shipping_address_address_2
      - name: shipping_address_city
      - name: shipping_address_country
      - name: shipping_address_country_code
      - name: shipping_address_province
      - name: shipping_address_province_code
      - name: shipping_address_zip
      - name: shipping_address_latitude
      - name: shipping_address_longitude
      - name: billing_address_name
      - name: billing_address_first_name
      - name: billing_address_last_name
      - name: billing_address_company
      - name: billing_address_phone
      - name: billing_address_address_1
      - name: billing_address_address_2
      - name: billing_address_city
      - name: billing_address_country
      - name: billing_address_country_code
      - name: billing_address_province
      - name: billing_address_province_code
      - name: billing_address_zip
      - name: billing_address_latitude
      - name: billing_address_longitude
      - name: customer_id
      - name: location_id
      - name: user_id
      - name: app_id
      - name: number
      - name: order_number
      - name: financial_status
      - name: fulfillment_status
      - name: processed_at
      - name: referring_site
      - name: cancel_reason
      - name: cancelled_at
      - name: closed_at
      - name: total_discounts
      - name: total_tip_received
      - name: current_total_price
      - name: current_total_discounts
      - name: current_subtotal_price
      - name: current_total_tax
      - name: current_total_discounts_set
      - name: current_total_duties_set
      - name: current_total_price_set
      - name: current_subtotal_price_set
      - name: current_total_tax_set
      - name: total_discounts_set
      - name: total_shipping_price_set
      - name: total_line_items_price
      - name: total_line_items_price_set
      - name: original_total_duties_set
      - name: total_weight
      - name: source_name
      - name: browser_ip
      - name: buyer_accepts_marketing
      - name: confirmed
      - name: token
      - name: cart_token
      - name: checkout_token
      - name: checkout_id
      - name: customer_locale
      - name: device_id
      - name: landing_site_ref
      - name: presentment_currency
      - name: reference
      - name: source_identifier
      - name: source_url
      - name: order_status_url
      - name: test
      - name: payment_gateway_names
      - name: note_attributes
      - name: client_details_user_agent
      - name: landing_site_base_url
      - name: _fivetran_deleted
      - name: _fivetran_synced
        tests:
          - not_null

  - name: tmp_shopify_fansifter__order_url_tag_dbt
    columns:
      - name: order_id
        tests:
          - not_null
      - name: key
      - name: value
      - name: _fivetran_synced
        tests:
          - not_null

  - name: tmp_shopify_fansifter__shop_dbt
    columns:
      - name: id
        tests:
          - not_null
      - name: name
      - name: email
      - name: domain
      - name: province
      - name: country
      - name: address_1
      - name: address_2
      - name: zip
      - name: city
      - name: phone
      - name: primary_locale
      - name: country_code
      - name: country_name
      - name: currency
      - name: customer_email
      - name: timezone
      - name: iana_timezone
      - name: shop_owner
      - name: money_format
      - name: money_with_currency_format
      - name: weight_unit
      - name: province_code
      - name: plan_name
      - name: plan_display_name
      - name: myshopify_domain
      - name: money_in_emails_format
      - name: money_with_currency_in_emails_format
      - name: cookie_consent_level
      - name: visitor_tracking_consent_preference
      - name: source
      - name: google_apps_domain
      - name: enabled_presentment_currencies
      - name: primary_location_id
      - name: latitude
      - name: longitude
      - name: created_at
      - name: updated_at
      - name: taxes_included
      - name: county_taxes
      - name: tax_shipping
      - name: has_discounts
      - name: has_gift_cards
      - name: eligible_for_payments
      - name: requires_extra_payments_agreement
      - name: password_enabled
      - name: has_storefront
      - name: eligible_for_card_reader_giveaway
      - name: force_ssl
      - name: checkout_api_supported
      - name: multi_location_enabled
      - name: setup_required
      - name: pre_launch_enabled
      - name: google_apps_login_enabled
      - name: auto_configure_tax_inclusivity
      - name: _fivetran_deleted
      - name: _fivetran_synced
        tests:
          - not_null

  - name: tmp_shopify_fansifter__product_dbt
    columns:
      - name: id
        tests:
          - not_null
      - name: category_id
      - name: category_name
      - name: category_level
      - name: category_ancestor_ids
      - name: category_children_ids
      - name: category_full_name
      - name: category_is_archived
      - name: category_is_leaf
      - name: category_is_root
      - name: category_parent_id
      - name: featured_media_id
      - name: compare_at_price_range_max_variant_compare_at_price_amount
      - name: compare_at_price_range_max_variant_compare_at_price_currency_code
      - name: compare_at_price_range_min_variant_compare_at_price_amount
      - name: compare_at_price_range_min_variant_compare_at_price_currency_code
      - name: created_at
      - name: description
      - name: description_html
      - name: gift_card_template_suffix
      - name: handle
      - name: has_only_default_variant
      - name: has_out_of_stock_variants
      - name: has_variants_that_requires_components
      - name: is_gift_card
      - name: legacy_resource_id
      - name: metafield
      - name: online_store_preview_url
      - name: max_variant_price_amount
      - name: max_variant_price_currency_code
      - name: min_variant_price_amount
      - name: min_variant_price_currency_code
      - name: product_type
      - name: published_at
      - name: requires_selling_plan
      - name: seo_description
      - name: seo_title
      - name: status
      - name: template_suffix
      - name: title
      - name: total_inventory
      - name: tracks_inventory
      - name: updated_at
      - name: vendor
      - name: body_html
      - name: published_scope
      - name: _fivetran_deleted
      - name: _fivetran_synced
        tests:
          - not_null

  - name: tmp_shopify_fansifter__order_line_dbt
    columns:
      - name: order_id
        tests:
          - not_null
      - name: id
        tests:
          - not_null
      - name: product_id
      - name: variant_id
      - name: name
      - name: title
      - name: vendor
      - name: price
      - name: price_set
      - name: quantity
      - name: grams
      - name: sku
      - name: fulfillable_quantity
      - name: gift_card
      - name: fulfillment_service
      - name: requires_shipping
      - name: taxable
      - name: variant_title
      - name: properties
      - name: index
      - name: total_discount
      - name: total_discount_set
      - name: pre_tax_price
      - name: product_exists
      - name: fulfillment_status
      - name: pre_tax_price_set
      - name: variant_inventory_management
      - name: tax_code
      - name: origin_location_id
      - name: origin_location_name
      - name: origin_location_address_1
      - name: origin_location_address_2
      - name: origin_location_city
      - name: origin_location_zip
      - name: origin_location_country_code
      - name: origin_location_province_code
      - name: destination_location_id
      - name: destination_location_name
      - name: destination_location_address_1
      - name: destination_location_address_2
      - name: destination_location_city
      - name: destination_location_zip
      - name: destination_location_country_code
      - name: destination_location_province_code
      - name: _fivetran_synced

  - name: tmp_shopify_fansifter__collection_product_dbt
    columns:
      - name: collection_id
        tests:
          - not_null
      - name: product_id
        tests:
          - not_null
      - name: _fivetran_synced

  - name: tmp_shopify_fansifter__customer_dbt
    columns:
      - name: id
        tests:
          - not_null
      - name: first_name
      - name: accepts_marketing
      - name: created_at
      - name: can_delete
      - name: email
      - name: accepts_marketing_updated_at
      - name: default_email_address_source_location_id
      - name: default_email_address
      - name: last_name
      - name: orders_count
      - name: default_phone_number_source_location_id
      - name: default_phone_number_marketing_collected_from
      - name: multipass_identifier
      - name: note
      - name: lifetime_duration
      - name: default_phone_number_marketing_opt_in_level
      - name: phone
      - name: default_phone_number_marketing_state
      - name: default_phone_number_marketing_updated_at
      - name: state
      - name: marketing_opt_in_level
      - name: tax_exempt
      - name: default_phone_number
      - name: total_spent
      - name: updated_at
      - name: verified_email
      - name: email_marketing_consent_state
      - name: email_marketing_consent_opt_in_level
      - name: email_marketing_consent_consent_updated_at
      - name: currency
      - name: metafield
      - name: sms_marketing_consent_updated_at
      - name: sms_marketing_consent_state
      - name: sms_marketing_consent_opt_in_level
      - name: sms_marketing_consent_collected_from
      - name: _fivetran_deleted
      - name: _fivetran_synced

  - name: tmp_shopify_fansifter__product_variant_dbt
    columns:
      - name: product_id
        tests:
          - not_null
      - name: id
        tests:
          - not_null
      - name: inventory_item_id
      - name: available_for_sale
      - name: image_id
      - name: barcode
      - name: title
      - name: compare_at_price
      - name: price
      - name: sku
      - name: created_at
      - name: position
      - name: display_name
      - name: inventory_policy
      - name: inventory_quantity
      - name: fulfillment_service
      - name: legacy_resource_id
      - name: metafield
      - name: inventory_management
      - name: updated_at
      - name: taxable
      - name: requires_components
      - name: sellable_online_quantity
      - name: grams
      - name: tax_code
      - name: weight
      - name: weight_unit
      - name: option_1
      - name: option_2
      - name: option_3
      - name: presentment_prices
      - name: old_inventory_quantity
      - name: inventory_quantity_adjustment
      - name: requires_shipping
      - name: _fivetran_synced

  - name: tmp_shopify_fansifter__order_line_refund_dbt
    columns:
      - name: id
        tests:
          - not_null
      - name: location_id
      - name: refund_id
        tests:
          - not_null
      - name: restock_type
      - name: quantity
      - name: subtotal
      - name: subtotal_set
      - name: total_tax
      - name: total_tax_set
      - name: order_line_id
        tests:
          - not_null
      - name: _fivetran_synced

  - name: tmp_shopify_fansifter__refund_dbt
    columns:
      - name: id
        tests:
          - not_null
      - name: created_at
      - name: processed_at
      - name: note
      - name: restock
      - name: user_id
      - name: order_id
        tests:
          - not_null
      - name: total_duties_set
      - name: _fivetran_synced
