Trinio Checkout SDK
Documentação para integração do Trinio Checkout SDK em lojas VTEX.
Sumário
Como carregar o SDK
Para utilizar o TrinioCheckout no navegador, adicione os seguintes scripts na página da sua loja VTEX:
Script Tags
Adicione as tags no <head> ou no final do <body> da sua página HTML:
Carregamento dinâmico (Alternativo)
Caso prefira carregar os scripts dinamicamente via JavaScript, utilize o exemplo abaixo com callback de onReady:
Como inicializar o checkout
A função createCheckout cria a instância do Trinio Checkout, permitindo utilizá-lo em qualquer página da sua loja VTEX. Esta instância deve ser criada e inicializada somente uma única vez na página.
Dica
Verifique a tabela de propriedades de inicialização para preencher as propriedades corretamente.
Exemplo básico
Tipos de retorno
A função startApp() retorna um objeto com a seguinte estrutura:
open: Abre o checkout Trinio para oorderFormIdfornecido.getCachedOrderForm: Retorna o orderForm VTEX em cache no momento da chamada. Retornaundefinedcaso o orderForm ainda não esteja disponível.
Propriedades de inicialização
A função createCheckout recebe dois parâmetros:
merchantId(string) - ID do merchant fornecido pela Trinioprops(objeto) - Objeto com as propriedades de configuração
Propriedades
trinioVisitorId
Identificador opaco de visitante usado para manter a mesma variante de A/B testing entre o /v1/orders-api/vtex/cart/simulation/ (simulação do carrinho) e o /v1/orders-api/router/ (decisão de roteamento no checkout). Sem ele, o usuário pode cair em variantes diferentes nos dois endpoints e ver opções de frete inconsistentes entre o carrinho e o pedido final.
Como obter o valor: o backend retorna esse valor no header x-trinio-visitor-id da response do /v1/orders-api/vtex/cart/simulation/. Consulte a seção Visitor ID e consistência A/B da Simulation API.
Opcional: quando não fornecido, o plugin mantém a consistência da variante internamente. Ainda assim, recomendamos fornecer sempre que possível, especialmente em integrações server-side que chamam ambos os endpoints. Não use identificadores pessoais (customer ID, e-mail, CPF, etc.).
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
string | Não | undefined |
vtexAccountName
Onde encontrar
Copiar o valor do checkout nativo da VTEX acessando: window.vtex.accountName
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
string | Sim | — |
vtexEndpointAPI
Onde encontrar
Copiar o valor do checkout nativo da VTEX acessando: window.vtex.endpointAPI
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
string | Sim | — |
vtexPublicEndpoint
Onde encontrar
Copiar o valor do checkout nativo da VTEX acessando: window.vtex.renderRuntime.publicEndpoint
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
string | Sim | — |
vtexWorkspace
Onde encontrar
Copiar o valor do checkout nativo da VTEX acessando: window.vtex.renderRuntime.workspace
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
string | Sim | — |
onErrorFallback
Callback disparada quando ocorre algum erro no checkout durante a jornada do shopper. Ex: redirecionar o shopper para o checkout nativo da VTEX.
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
(error: unknown) => Promise<void> | void | Sim | — |
vtexLeanShipping
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
string | Não | undefined |
vtexCallcenter
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
Record<any, any> | Não | undefined |
getVtexDeviceFingerprint
Callback disparada para obter o device fingerprint durante o pagamento.
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
() => Promise<string | number | undefined> | Não | undefined |
vtexShowInstallmentsPreviewValue
Exibe o preview do valor das parcelas no checkout.
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
boolean | Não | undefined |
trackBeginCheckout
Callback disparada ao abrir o checkout. Ex: integrar com o Google Analytics. Caso a callback não seja implementada, nenhum evento será disparado.
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
(args: { orderForm: VTEXCart | undefined }) => Promise<void> | Não | undefined |
trackAddShippingInfo
Callback disparada ao selecionar um método de entrega. Ex: integrar com o Google Analytics. Caso a callback não seja implementada, nenhum evento será disparado.
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
(args: { orderForm: VTEXCart | undefined }) => Promise<void> | Não | undefined |
trackAddPaymentInfo
Callback disparada ao submeter o formulário de pagamento. Ex: integrar com o Google Analytics. Caso a callback não seja implementada, nenhum evento será disparado.
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
(args: { orderForm: VTEXCart | undefined }) => Promise<void> | Não | undefined |
getSellerCode
Callback disparada para obter o código do vendedor no checkout. Utilize para implementar sua própria lógica.
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
(vtexCart: VTEXCart) => string | Promise<string> | Não | undefined |
hasMultiplesCoupons
Habilita o suporte a múltiplos cupons de desconto.
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
boolean | Não | false |
defaultCashbackProvider
Provedor de cashback padrão utilizado no checkout.
Onde encontrar
Copiar o valor do checkout nativo da VTEX acessando: window.TRINIO_PLUGIN_CONFIG.options.defaultCashbackProvider
| Tipo | Obrigatório | Valor Padrão |
|---|---|---|
string | Não | undefined |