Skip to main content

Supported data types

Indeliveries

Incoming products

Inventory

Stock levels

Orders

Customer transactions

Product Attributes

Product metadata & descriptions

Prerequisites

Before setting up the BigQuery integration, ensure you have:
  • A Google Cloud project with BigQuery enabled
  • Tables or views in BigQuery containing your data, with columns matching our schema
  • A Google Cloud service account with BigQuery Data Viewer and BigQuery Job User roles granted on the relevant dataset(s)

Good to know

If you operate multiple storefronts, include EXTERNAL_STOREFRONT_ID in your data for per-row storefront assignment.

Merchant mappings

BigQuery column names are case-sensitive. Ensure your column names exactly match the names specified in the Data schema section below (all upper-case, e.g. ORDER_ID, PRODUCT_ID).
Use standard BigQuery SQL types when creating your tables. The recommended mappings are:
Dema typeBigQuery type
StringSTRING
IntegerINT64
DecimalFLOAT64 or NUMERIC
BooleanBOOL
DateDATE
TimestampTIMESTAMP
ArrayREPEATED mode on the field’s type

Step-by-step integration guide

1

Create a service account

In the Google Cloud Console, create a dedicated service account for the Dema integration:
  1. Go to IAM & Admin → Service Accounts and click Create service account.
  2. Give it a descriptive name (e.g. dema-bigquery-reader).
  3. Grant the following roles on the project or at the dataset level:
    • BigQuery Data Viewer — allows reading table data.
    • BigQuery Job User — allows running query jobs.
  4. Click Done to save the service account.
2

Generate a service account key

  1. Open the service account you just created and navigate to the Keys tab.
  2. Click Add Key → Create new key and choose JSON.
  3. Download the generated .json key file — you will share this with your Customer Success Manager.
Keep the key file secure. Anyone with access to it can read your BigQuery data.
3

Share credentials

Provide the following information to your Customer Success Manager:
Send the key file and connection details via secure password sharing.
Example
{
  "type": "service_account",
  "project_id": "your-gcp-project-id",
  "private_key_id": "abc123...",
  "private_key": "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----\n",
  "client_email": "dema-bigquery-reader@your-gcp-project-id.iam.gserviceaccount.com",
  "client_id": "123456789",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "dataset": "your_dataset",
  "table": "your_table"
}
4

Specifying data tables and schema

Ensure each BigQuery table or view aligns with our schema. Columns must be named exactly as specified below. This is crucial for accurate data integration.
5

Finalizing integration

After sharing credentials and verifying the data mapping, our team will finalise the integration, enabling data flow from BigQuery into our platform.
Multiple values Some fields allow multiple values. These fields should be stored as a REPEATED (array) column, e.g. ["value1", "value2", "value3"].

Data schema

Indeliveries

Track incoming product deliveries to your warehouses.
Required:Optional:

Inventory

Stock levels across your warehouses. Product attributes (name, brand, category, etc.) are sent separately via Product Attributes. See COGS priority for how cost values are resolved.

Fields


Orders

Customer transaction data including order details and line items. See COGS priority for how cost values are resolved.
Required:Optional:
Required:Optional:
Include these fields to record returns directly in your orders table.

Product Attributes

Product metadata including names, categories, and descriptive attributes for your catalog.

Required fields


Troubleshooting and support

For common issues and solutions, contact our support team directly for assistance.

Additional resources