Chord Commerce Data Platform

E-commerce Data Ingestion

15min

Chord can ingest data from different e-commerce systems for analysis. Two methods are available:

  1. Chord Ingest (preferred): a Chord-built system that will pull data from a customer's e-commerce system.
  2. Chord API (optional): customers can use Chord's REST API to push data from their source system. Speak to an Chord for more details.

Chord Ingest

Chord Ingest is Chord's solution for customer not using Shopify (e.g. Magento, BigCommerce, SalesForce Commerce Cloud). To get started, simply input the URL for your system and a valid API key into your Chord instance.

Document image


That's it!

Sample Data Mapping

Since different e-commerce platforms use different names for equivalent records, the table below shows how source records are mapped to Chord's data model.

Below is an example of a data mapping from Magento, a common e-commerce system, and Chord:

Product

Chord

Magento

Name

name

Slug

Combination of the name and id.

SKU

sku

External ID

id

Product Type

type_id

Variant

Chord

Magento

SKU

sku

Price

price

External ID

id

Order

Chord

Magento

Line items

order.items[]

Discount

order.items[].discount_*

Tax

order.items[].tax_*

Customer

order.customer_*

Billing address

order.billing_address

Shipping address

order.shipping_address

Number

increment_id

State

Depends on ...

Payment state

Depends on total_due:

  • If total_due > 0: balance_due
  • If total_due < 0: credit_owed
  • If total_due == 0: paid
  • Otherwise: void

Shipment state

Depends on status:

  • pending: pending
  • processing: ready
  • complete: shipped

Email

email

Currency

base_currency_code

Item total

subtotal

Total

grand_total

Adjustment total

grand_total - subtotal

Shipment total

shipping_incl_tax

Promo total

discount_amount

Payment total

total_paid

Item count

total_item_count

Channel

chord

Included tax total

base_subtotal_incl_tax

External ID

id

Line Item

Chord

Magento

Quantity

qty_ordered

Additional tax total

tax_amount

Price

price

External ID

item_id

SKU

sku

Adjustment total

additional_tax_total + promo_total

Slug

name

Promo total

discount_amount

Line Item Discount

Chord

Magento

Adjustable ID

line_item.id

Amount

discount_amount

Order ID

line_item.order.id

External ID

"line_item.id-discount"

Line Item Tax

Chord

Magento

External ID

"line_item.id-tax"

Adjustable ID

line_item.id

Amount

tax_amount

Order ID

line_item.order.id

Payment

Chord

Magento

Amount

amount_paid

State

If amount_paid == amount_ordered, then paid; pending otherwise

Number

"entity_id-method"

Shipment

Chord

Magento

Inventory units

shipment.items[]

External ID

entity_id

Number

entity_id

State

order.shipment_state

Cost

order.shipment_total

Shipped At

created_at

Inventory Unit

Chord

Magento

External ID

"order_item_id-index"; where index is a counter of the number of inventory units listed under the shipment.

SKU

sku

Variant ID

Query the Chord database for the variant by sku and use the id

User

Chord

Magento

Name

"customer_firstname customer_lastname"

Email

customer_email

Address

Chord

Magento

City

city

External ID

entity_id

Firstname

firstname

Lastname

lastname

Address 1

street.first

Address 2

street.second

Zipcode

postcode

Phone

telephone

State

Query the Chord database for the region_code and return the state ID

Country

Query the Chord database where iso: country_id and return the country ID



How It Works

When a product is synced, all associated variants are also synced.

When an order is synced, all associated records are also synced:

  • Line items
    • Discount
    • Tax
  • Shipments
    • Inventory units
  • Customer
  • Billing address
  • Shipping address
  • Payments

Chord replicates data 1-1 from the source system, performing the minimum transformations necessary for successful replication.

Chord syncs data daily from a customer's e-commerce system:

  1. Product sync: sync all products and variants in the customer's catalogue.
  2. Order sync: sync completed orders and associated records updated in the previous 24 hours.