Passar para o conteúdo principal

dim_orders

Pedidos

Escrito por Caroline Silva

Pedidos

A tabela dim_orders armazena os pedidos do e-commerce da loja, tanto os feitos direto no site quanto os fechados pelo checkout da OmniChat, e mostra se cada pedido teve atendimento ou campanha da OmniChat antes da compra. Cada linha é um pedido (ou um pacote, quando o e-commerce divide o pedido), identificado por retailer_id e order_id. Com dados atualizados em H-1 (de hora em hora).


​Exemplo

Um mesmo cliente faz três compras no mês. Cada uma vira uma linha, e a coluna sales_classification diz qual foi o papel da OmniChat:


• ped123: fechado por um vendedor no checkout da OmniChat. sales_classification = 'DIRECT SALE', com sales_person_id preenchido.


• ped456: feito no site depois de uma conversa com a loja. sales_classification = 'INFLUENCED', is_omni_influenced = true, e csr_id traz o código desse atendimento.


• ped789: feito no site muito depois da última conversa. sales_classification = 'OUT OF INFLUENCED WINDOW': o atendimento aparece em csr_id, mas ficou fora da janela de influência.


• Uma compra sem nenhuma conversa com a loja aparece como 'NOT INFLUENCED', com csr_id vazio.


Para campanhas, use sales_mkt_classification ('CAMPAIGN INFLUENCED', 'OUT OF CAMPAIGN INFLUENCED WINDOW' ou 'NOT CAMPAIGN INFLUENCED') e omni_campaign_id, que liga o pedido à tabela dim_campaign. Para ligar ao atendimento, use csr_id. sales_person_id só vem preenchido nas vendas diretas (DIRECT SALE).


Quando o e-commerce divide um pedido em pacotes, cada pacote é uma linha com o próprio order_id (por exemplo, ped123-01 e ped123-02) e o próprio value_total. Nesta tabela, você pode somar value_total direto. O mesmo order_id pode existir em lojas diferentes: para contar pedidos, use retailer_id e order_id juntos. order_date é a data de criação do pedido, e a coluna event_id vem sempre vazia.


Atenção: Os registros desta tabela utilizam o fuso horário UTC, ou seja, para que as datas sejam referentes ao fuso horário brasileiro, é preciso inserir nas queries o fuso horário brasileiro.
​

SET TIME ZONE '-03:00';


SELECT DATE(tb.order_date) AS data_pedido

,CAST(SUM(tb.value_total) AS DECIMAL(10,2)) as valor_pedido

FROM dim_orders AS tb

WHERE tb.order_date >= '2025-04-01'

GROUP BY ALL

;

Dicionário de dados

Variável

Tipo

Descrição

Obs

csr_id

string

Código identificador do atendimento

Chave estrangeira para a tabela dim_customer_support_request

event_id

string

Código identificador do evento disparado

is_omni_campaign_influenced

boolean

Indica se houve atendimento originado de campanha dentro da janela de influência da loja antes da compra

is_omni_influenced

boolean

Indica se houve conversa no chat dentro da janela de influência da loja antes da criação do pedido

omni_campaign_id

string

Código identificador da campanha

Coluna estrangeira para a dim_campaign

order_date

timestamp

Data de pagamento do pedido

order_id

string

Código identificador do pedido na plataforma do Ecommerce

Chave primária

phone_number

string

Número de telefone do cliente que gerou o pedido

retailer_id

string

Código identificador da loja. Em contas com mais de uma loja, separa os registros de cada uma

Chave estrangeira para a tabela dim_retailer

sales_classification

string

Classificação do pedido: DIRECT SALE, INFLUENCED, OUT OF INFLUENCED WINDOW ou NOT INFLUENCED (nessa ordem de prioridade)

sales_mkt_classification

string

Classificação do pedido quanto a campanha de marketing: CAMPAIGN INFLUENCED, OUT OF CAMPAIGN INFLUENCED WINDOW ou NOT CAMPAIGN INFLUENCED

sales_person_id

string

Código identificador do usuário atuou no pedido

Chave estrangeira para a tabela dim_user

status

string

Status do pedido

PACKAGED
DELIVERED
PAID
PARTIALLY_SHIPPED
PURCHASED
null
SHIPPED

team_id

string

Código identificador do time responsável pelo pedido

Chave estrangeira para a tabela dim_team

value_total

double

Valor total do pedido


​

Respondeu à sua pergunta?