Integration Specifications
This article will help you learn about how Daasity replicates data from Newstore, limitations to the data we can extract and where the data is stored in the Newstore schema
Integration Overview
Newstore is an omnichannel platform that provides retail businesses with mobile POS and integrated cloud-based order management systems.
This document provides context on what kind of data is being gathered through this extractor, which endpoints that data is coming from, and how the extracted tables relate to each other.
Integration Availability
This integration is available for:
Enterprise
API Endpoints
The Daasity Newstore extractor is built based on this Newstore API documentation. The following endpoint is used by Daasity to replicate data from Newstore:
Entity Relationship Diagram (ERD)
Click here to view the ERD for the Daasity Newstore integration illustrating the different tables and keys to join across tables.
Newstore Schema
The Daasity Newstore extractor creates these tables using the endpoints and replication methods listed. The data is mapped from source API endpoint to the table based on the mapping logic outlined in each table.
Customers
Endpoint: Customer Profile Updates
Update Method: UPSERT
Table Name: [
newstore.customers
]
tenant
tenant
name
name
published_at
published_at
payload::id
id
payload::email
payload::first_name
first_name
payload::last_name
last_name
payload::phone
phone
payload::source::location_id
location_id
payload::source::associate_id
associate_id
payload::source::associate_name
associate_name
payload::source::associate_email
associate_email
payload::created_at
created_at
payload::updated_at
updated_at
payload::revision
revision
environment
environment
account_id
_account_id
MD5(payload::id + payload::created_at + payload::updated_at + payload::revision)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Customer Address Table
Endpoint: Customer Profile Updates
Update Method: UPSERT
Table Name: [
newstore.customer_address_table
]
tenant
tenant
name
name
published_at
published_at
payload::id
id
payload::customer_id
customer_id
payload::type
type
payload::salutation
salutation
payload::title
title
payload::first_name
first_name
payload::last_name
last_name
payload::suffix
suffix
payload::company
company
payload::address_line_1
address_line_1
payload::address_line_2
address_line_2
payload::address_line1
address_line1
payload::address_line2
address_line2
payload::zip_code
zip_code
payload::city
city
payload::state
state
payload::country
country
payload::phone
phone
payload::created_at
created_at
payload::updated_at
updated_at
payload::customer_revision
revision
environment
environment
account_id
_account_id
MD5(environment + payload::id + payload::customer_id + payload::created_at + payload::updated_at + payload::customer_revision)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Customer Extended Attributes
Endpoint: Customer Profile Updates
Update Method: UPSERT
Table Name: [
newstore.customer_extended_attributes
]
customer::id
customer_id
customer::extended_attributes::name
extended_attribute
customer::extended_attributes::value
value
customer::revision
revision
environment
environment
account_id
_account_id
MD5(environment + customer::id + customer::extended_attributes:name + customer::extended_attributes::value + customer::revision)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Order Events
Endpoint: Order
Update Method: UPSERT
Table Name: [
newstore.order_events
]
payload::id
order_id
payload::external_id
external_id
payload::customer_email
customer_email
payload::customer_id
customer_id
status::name
status
published_at
published_at
payload::created_at
order_date
payload::subtotal
subtotal
payload::price_method
price_method
payload::discount_total
discount_total
payload::shipping_total
shipping_total
payload::shipping_tax
shipping_tax
payload::tax_total
tax_total
payload::grand_total
grand_total
payload::currency
currency
shipping::first_name
shipping_first_name
shipping::last_name
shipping_last_name
shipping::address_line1
shipping_address1
shipping::address_line2
shipping_address2
shipping::city
shipping_city
shipping::state
shipping_state
shipping::country
shipping_country
shipping::zip_code
shipping_zipcode
shipping::phone
shipping_phone
billing::first_name
billing_first_name
billing::last_name
billing_last_name
billing::address1
billing_address1
billing::address2
billing_address2
billing::city
billing_city
billing::state
billing_state
billing::country
billing_country
billing::zip_code
billing_zipcode
billing::phone
billing_phone
payload::channel_type
channel_type
payload::channel_id
channel_id
payload::associate_id
associate_id
payload::associate_email
associate_email
payload::is_exchange
is_exchange
payload::is_historical
is_historical
payload::is_tax_exempt
is_tax_exempt
name
event_name
cancellation_reason
cancellation_reason
payload::created_at || payload::published_at
created_at
environment
environment
source_id
source_id
MD5(environment + payload::id + source_id + payload::published_at + payload::name)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Order Extended Attributes
Endpoint: Order
Update Method: UPSERT
Table Name: [
newstore.order_extended_attributes
]
order::extended_attributes::id
order_id
order::extended_attributes::name
name
order::extended_attributes::value
value
environment
environment
MD5(environment + order::extended_attributes::id + order::extended_attributes::name)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Order Item Events
Endpoint: Order
Update Method: UPSERT
Table Name: [
newstore.order_item_events
]
payload::id
order_id
item::id
order_item_id
item::product_id
product_id
item::item_type
item_type
item::list_price
list_price
item::item_discounts
item_discounts
item::order_discounts
order_discounts
item::pricebook_id
pricebook_id
item::pricebook_price
pricebook_price
item::shipping_service_level
shipping_service_level
item::tax
tax
item::tax_class
tax_class
item::quantity
quantity
item::fulfillment_location_id
fulfillment_location_id
item::status
status
item::cancelled_reason
cancelled_reason
environment
environment
source_id
__source_id
MD5(environment + source_id + payload::id + item::id + payload::published_at + item::status)
__sync_key
published_at
__synced_at
Order Item Extended Attributes
Endpoint: Order
Update Method: UPSERT
Table Name: [
newstore.order_item_extended_attributes
]
item::extended_attributes::order_id
order_id
item::id
order_item_id
item::extended_attributes::name
name
item::extended_attributes::value
value
environment
environment
MD5(environment + item::extended_attributes::order_id + item::id + item::extended_attributes::name)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Order Item External Identifiers
Endpoint: Order
Update Method: UPSERT
Table Name: [
newstore.order_item_external_identifiers
]
content::payload + content::id
order_id
item::external_identifiers::id
order_item_id
'k'
name
'v'
value
environment
environment
MD5(environmnet + content::payload + content::id + item::external_identifiers::id + 'k')
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Returns
Endpoint: Item Return
Update Method: UPSERT
Table Name: [
newstore.returns
]
tenant
tenant
name
name
published_at
published_at
payload::id
id
payload::order_id
order_id
payload::returned_at
returned_at
payload::total_refund_amount
total_refund_amount
payload::total_refund_amount_adjusted
total_refund_amount_adjusted
payload::total_refund_excl_tax
total_refund_excl_tax
payload::return_fee
return_fee
payload::currency
currency
payload::returnlocation_id
return_location_id
payload::customer_id
customer_id
payload::customer_email
customer_email
payload::associate_id
associate_id
payload::associate_email
associate_email
environment
environment
account_id
_account_id
MD5(environment + payload::id +payload::order_id + payload::returned_at + payload::total_refund_amount + payload::total_refund_amount_adjusted + payload::total_refund_excl_tax + payload::total_refund_tax)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Return Items
Endpoint: Item Return
Update Method: UPSERT
Table Name: [
newstore.return_items
]
payload::id
return_id
item::id
id
item::product_id
product_id
item::item_type
item_type
item::item_condition
item_condition
item::condition_code
condition_code
item::return_Reason
return_Reason
item::return_code
return_code
item::refund_excl_tax
refund_excl_tax
item::refund_tax
refund_tax
item::refund_amount
refund_amount
item::refund_amount_adjusted
refund_amount_adjusted
item::quantity
quantity
environment
environment
account_id
_account_id
MD5(environment + payload::id + item::id + item::product_id)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Inventory Count
Endpoint: Inventory Manager
Update Method: UPSERT
Table Name: [
newstore.inventory_count
]
tenant
tenant
name
name
published_at
published_at
payload::id
id
payload::count_type
count_type
payload::fulfillment_location_id
fulfillment_location_id
payload::associate_id
associate_id
payload::stock_location_name
stock_location_name
payload::due_date
due_date
payload::started_at
started_at
payload::completed_at
completed_at
payload::chunk_number
chunk_number
payload::total_chunks
total_chunks
environment
environment
account_id
_account_id
MD5(published_at + payload::id + payload::count_type + payload::fulfillment_location_id + payload::associate_id + payload::stock_location_name + payload::due_date + payload::started_at + payload::complete_at + payload::chunk_number)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Inventory Count Items
Endpoint: Stock Locations
Update Method: UPSERT
Table Name: [
newstore.inventory_count_items
]
inventory_id
inventory_id
item::product_id
product_id
item::stock_on_hand
stock_on_hand
item::count
count
environment
environment
account_id
_account_id
MD5(environment + item::product_id + item::stock_on_hand + item::count)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Inventory Count Item External Identifiers
Endpoint: Stock Locations
Update Method: UPSERT
Table Name: [
newstore.inventory_count_items_external_identifiers
]
inventory_id
inventory_id
item::product_id
product_id
'k'
external_identifier
'v'
value
environment
environment
account_id
_account_id
MD5(environment + inventory_id + item::product_id + k + v)
__sync_key
Daasity: timestamp when loaded into DB
__synced_at
Last updated