Versão alargada e atualizada deste tema: Universal Commerce Protocol: como os agentes de IA estão a mudar as compras online.
Em outubro de 2026, a Google concretizou uma das mais relevantes transformações no comércio digital desde o início da navegação móvel: o lançamento oficial do Universal Cart na Pesquisa Google e no Gemini no mercado norte-americano. Esta novidade não representa um mero ajuste estético na apresentação de anúncios ou cartões de produto. Trata-se de uma reformulação radical na forma como os consumidores descobrem e compram artigos na internet.
Em vez de transferir o utilizador para lojas externas onde teria de navegar em carrinhos individuais e preencher formulários repetitivos, o Google Universal Cart permite reunir produtos de diversos retalhistas independentes num único cesto e concluir a compra diretamente na Pesquisa ou no assistente Gemini. A infraestrutura técnica que viabiliza esta transição é o Universal Commerce Protocol (UCP): uma especificação aberta que estabelece padrões de comunicação de dados, verificação de inventário e liquidação de encomendas entre agentes de inteligência artificial e plataformas de comércio eletrónico.
Para responsáveis técnicos e gestores de lojas baseadas em WooCommerce, este avanço cria uma necessidade premente. Lojas cujo catálogo se encontra unicamente codificado para consumo visual humano ficarão invisíveis perante os novos agentes de compras autónomos. Pelo contrário, as empresas que estruturarem camadas de dados tipadas e determinísticas conquistarão acesso direto a um fluxo contínuo de transações nativas. Este artigo apresenta a arquitetura do UCP e demonstra, passo a passo, como adaptar o WooCommerce a esta realidade.
Do clique à transação de máquina: o declínio do modelo de navegação tradicional
Durante mais de duas décadas, o comércio eletrónico dependente de motores de busca operou sob o mesmo princípio:
- O consumidor escrevia uma pesquisa (por exemplo, sapatilhas de trail running impermeáveis homem tamanho 43).
- O motor de busca apresentava resultados orgânicos e anúncios patrocinados do Google Shopping.
- O utilizador clicava numa ligação e era reencaminhado para o website da loja.
- Na página de destino, o cliente escolhia o tamanho, aceitava avisos de cookies, colocava o artigo no carrinho e completava o checkout manualmente.
Com a consolidação de assistentes multimodais e agentes com capacidade de operação autónoma em browsers, as expectativas dos utilizadores alteraram-se profundamente. O consumidor não pretende inspecionar dezenas de websites, criar contas temporárias ou introduzir repetidamente dados de faturação. O pedido ao assistente é direto: Encontra sapatilhas pretas de trail com membrana Gore-Tex no tamanho 43 entregues até sexta-feira abaixo de 150 euros, e procede à compra.
Para cumprir esta instrução de forma autónoma, o agente de IA necessita de:
- Pesquisa estruturada em catálogos com filtragem rigorosa por parâmetros técnicos.
- Verificação instantânea da disponibilidade em armazém e do valor total final com portes.
- Uma interface transacional determinística que permita concretizar a encomenda sem intervenção visual.
É exatamente este o papel do Universal Commerce Protocol. Em vez de encarar uma loja online como um conjunto de documentos HTML para raspar (scraping), o UCP trata a loja como uma base de dados fiável com procedimentos transacionais bem definidos.
Arquitetura do Universal Commerce Protocol
O Universal Commerce Protocol está estruturado em três níveis essenciais:
1. Nível semântico de descoberta e capacidades
Permite à loja declarar publicamente a sua identidade, regras de negócio e métodos transacionais. A loja serve um ficheiro de manifesto a partir da raiz: /.well-known/ucp.json
Este ficheiro esclarece os agentes de IA sobre as operações suportadas (pedidos de informação, propostas B2B, checkout nativo via carteira digital ou checkout embutido em iframe), as moedas aceites e a localização dos endpoints de API.
2. Nível de conhecimento de catálogo estruturado
O UCP baseia-se no Schema.org em formato JSON-LD, mas exige um grau de detalhe substancialmente superior ao da otimização para motores de busca habitual:
ItemAvailability: Estados de inventário rigorosos que distinguem stock disponível para envio imediato, encomendas sob reserva e artigos descontinuados.PriceSpecification: Decomposição clara de preços líquidos e brutos, taxas de IVA aplicáveis, moedas e tabelas de preços por volume.hasMerchantReturnPolicy: Condições de devolução legíveis por máquina, incluindo períodos legais, custos de transporte associados e morada de receção.DeliveryTimeSpecification: Janelas temporais de trânsito e manuseamento calculadas a partir da localização do comprador.
3. Protocolo transacional com gestão de estado
Distintamente dos feeds estáticos em formato XML, o UCP implementa um protocolo bidirecional para a fase de encomenda:
- Criação de Sessão de Cesto: O agente transmite identificadores de produto (SKU), variantes e morada de entrega.
- Reserva Temporária de Inventário (Hold Lock): O sistema da loja bloqueia a unidade em armazém por um período definido (por exemplo, 15 minutos) associado a uma chave de idempotência exclusiva.
- Cálculo de Impostos e Logística: A loja devolve o montante final garantido para autorização pelo utilizador.
- Liquidação da Transação: O pagamento é autorizado de forma nativa (com tokenização de carteira digital) ou num modal seguro com certificação iframe.
Comparação: Google Merchant Center vs Universal Commerce Protocol
Existe frequentemente a dúvida sobre se a alimentação tradicional para o Google Merchant Center não seria suficiente. Tratam-se, contudo, de soluções com propósitos distintos:
| Parâmetro | Google Merchant Center (GMC) | Universal Commerce Protocol (UCP) |
|---|---|---|
| Objetivo Central | Apresentação de anúncios e indexação de produtos | Execução autónoma de transações por agentes |
| Atualização de Dados | Assíncrona (habitualmente um feed diário) | Consultas diretas à API em tempo real |
| Local de Compra | No website externo do comerciante | Na interface da Pesquisa Google / Gemini (Universal Cart) |
| Garantia de Stock | Latente (risco de vender artigos esgotados) | Reserva imediata garantida (Hold Lock) |
| Papel do Agente | Recomenda apenas hiperligações externas | Pode escolher variantes e autorizar a encomenda |
| Atribuição | Parâmetros de URL (UTM e GCLID) | Tokens de transação do agente e cabeçalhos de referrer |
O feed do Merchant Center funciona como um índice prévio. No entanto, quando um cliente autoriza a compra no Gemini, a infraestrutura da Google consulta diretamente os endpoints UCP da loja para certificar que o preço e as unidades em armazém se mantêm corretos naquele preciso segundo.
Implementação prática no WooCommerce
O WooCommerce, graças à sua arquitetura modular e à REST API nativa (/wp-json/wc/v3/), oferece uma base adequada, exigindo ajustes em termos de tempo de resposta e exposição de esquemas.
1. Publicação do manifesto /.well-known/UCP.json
O ficheiro de manifesto deve ser alojado no diretório raiz do domínio:
{
"version": "1.0",
"name": "Loja WooCommerce Exemplo",
"domain": "lojaexemplo.pt",
"capabilities": {
"supportsCart": true,
"supportsInstantHold": true,
"supportsQuote": true,
"checkoutModes": ["native", "iframe"]
},
"endpoints": {
"catalog": "https://lojaexemplo.pt/wp-json/wc/v3/products",
"availability": "https://lojaexemplo.pt/wp-json/ucp/v1/availability",
"cart": "https://lojaexemplo.pt/wp-json/ucp/v1/cart",
"returnPolicy": "https://lojaexemplo.pt/pt-pt/devolucoes/"
},
"supportedCurrencies": ["EUR"],
"contactEmail": "[email protected]"
}2. Enriquecimento de dados Schema.org em PHP
Para que os assistentes de compras determinem corretamente os prazos de entrega e encargos de devolução, esses dados devem ser injetados no JSON-LD do WooCommerce:
add_filter('woocommerce_structured_data_product_offer', function($offer, $product) {
if (!$product instanceof WC_Product) {
return $offer;
}
$offer['priceSpecification'] = [
'@type' => 'PriceSpecification',
'price' => wc_format_decimal($product->get_price(), 2),
'priceCurrency' => get_woocommerce_currency(),
'valueAddedTaxIncluded' => wc_prices_include_tax() ? 'true' : 'false'
];
$offer['hasMerchantReturnPolicy'] = [
'@type' => 'MerchantReturnPolicy',
'applicableCountry' => 'PT',
'returnPolicyCategory' => 'https://schema.org/MerchantReturnFiniteReturnWindow',
'merchantReturnDays' => 30,
'returnMethod' => 'https://schema.org/ReturnByMail',
'returnFees' => 'https://schema.org/FreeReturn'
];
$offer['shippingDetails'] = [
'@type' => 'OfferShippingDetails',
'shippingRate' => [
'@type' => 'MonetaryAmount',
'value' => '3.95',
'currency' => get_woocommerce_currency()
],
'shippingDestination' => [
'@type' => 'DefinedRegion',
'addressCountry' => 'PT'
],
'deliveryTime' => [
'@type' => 'ShippingDeliveryTime',
'handlingTime' => [
'@type' => 'QuantitativeValue',
'minValue' => 0,
'maxValue' => 1,
'unitCode' => 'DAY'
],
'transitTime' => [
'@type' => 'QuantitativeValue',
'minValue' => 1,
'maxValue' => 2,
'unitCode' => 'DAY'
]
]
];
return $offer;
}, 10, 2);3. Endpoints ligeiros para verificação e bloqueio de stock
As rotas normais de compra do WooCommerce carregam ficheiros de tema e regras complexas de sessão. As chamadas dos agentes de IA devem ser respondidas em menos de 150 milissegundos.
A abordagem adequada consiste em criar um controlador REST dedicado e otimizado:
add_action('rest_api_init', function () {
register_rest_route('ucp/v1', '/availability', [
'methods' => 'POST',
'callback' => 'handle_ucp_fast_availability',
'permission_callback' => '__return_true',
]);
});
function handle_ucp_fast_availability(WP_REST_Request $request) {
$sku = sanitize_text_field($request->get_param('sku'));
$quantity = max(1, intval($request->get_param('quantity')));
$product_id = wc_get_product_id_by_sku($sku);
if (!$product_id) {
return new WP_Error('not_found', 'Produto inexistente', ['status' => 404]);
}
$product = wc_get_product($product_id);
$in_stock = $product->is_in_stock();
$stock_qty = $product->get_stock_quantity();
$is_available = $in_stock && ($stock_qty === null || $stock_qty >= $quantity);
return rest_ensure_response([
'sku' => $sku,
'available' => $is_available,
'stockQuantity' => $stock_qty,
'price' => wc_format_decimal($product->get_price(), 2),
'currency' => get_woocommerce_currency(),
'holdDurationSeconds' => 900 // Garantia de reserva por 15 minutos
]);
}4. Idempotência para prevenção de encomendas duplicadas
Quando um agente autónomo se depara com uma ligeira oscilação de rede, a sua rotina interna repete a chamada automaticamente. Sem proteção, a loja correria o risco de faturar ou reservar o mesmo artigo duas vezes.
A solução consiste em exigir um cabeçalho X-Idempotency-Key com um código UUIDv4. A resposta é guardada em memória rápida (como Redis). Caso surja uma chamada com a mesma chave dentro de um intervalo de 24 horas, o sistema devolve o resultado em cache sem reprocessar a transação.
O desafio dos parâmetros UTM e a análise de tráfego de IA
Estudos recentes sobre o comportamento de ferramentas como o ChatGPT, o SearchGPT e o Perplexity revelaram que estas plataformas eliminam sistematicamente parâmetros de monitorização como UTMs das hiperligações de saída. Esta filtragem visa salvaguardar a privacidade e simplificar os endereços partilhados.
Para os comerciantes, este fenómeno acarreta problemas graves:
- As visitas resultantes de recomendações de IA são erradamente registadas como tráfego direto (Direct) nas plataformas analíticas convencionais.
- Torna-se inviável demonstrar a rentabilidade (ROI) dos investimentos em otimização para motores generativos (GEO).
Solução: deteção através de document.referrer
Com a supressão dos parâmetros de URL, a informação do cabeçalho Referer disponibilizada no browser passa a ser a única fonte fidedigna.
O sistema de métricas da loja deve avaliar document.referrer no início da sessão:
- Origens como
chatgpt.com,chat.openai.comou a aplicação móvel da OpenAI são mapeadas para a fonteai:chatgpte meioai-referral. - Acessos a partir de
perplexity.ai,claude.aiougemini.google.comrecebem o tratamento correspondente. - Estes dados são preservados na atribuição de primeiro toque, assegurando que futuras navegações internas até ao momento do checkout não substituem a origem inicial da venda.
Relação entre UCP, Anthropic MCP e WordPress
No diálogo em torno do ecossistema WordPress e da inteligência artificial, surge com frequência a distinção entre UCP e MCP (Model Context Protocol):
- Model Context Protocol (MCP): Especificação aberta criada pela Anthropic no final de 2024. Permite a modelos de linguagem aceder a ferramentas, tabelas e processos de cálculo. Trata-se da interface de execução funcional do assistente.
- Universal Commerce Protocol (UCP): Padrão operacional vocacionado para o comércio. Regula a lógica de carrinhos de compras, garantia de preços, prazos de entrega e autorizações bancárias.
Em plataformas robustas, ambos operam em conjunto: o servidor MCP permite ao agente compreender as especificações dos produtos, enquanto o UCP conduz a validação transacional e o checkout. A visão da Automattic de posicionar o WordPress como o sistema operativo da web agêntica reforça as vantagens do código aberto, garantindo aos proprietários soberania absoluta sobre os seus dados comerciais.
Conclusão e plano de ação
A ativação do Google Universal Cart confirma que as compras mediadas por IA deixaram o campo experimental e integram agora a realidade do comércio eletrónico.
Passos recomendados para proprietários de lojas WooCommerce:
- Auditar os dados Schema.org: Assegurar que preços, termos de devolução e prazos logísticos estão declarados segundo o Schema.org.
- Implementar o manifesto UCP: Configurar o ficheiro
/.well-known/ucp.jsonna raiz da infraestrutura. - Otimizar as rotas REST: Desacoplar os endpoints de confirmação de stock da carga do tema visual, garantindo tempos de execução inferiores a 150ms.
- Atualizar a medição analítica: Configurar o rastreio com base em referrers para identificar visitas de assistentes de IA desprovidas de parâmetros UTM.
Caso pretenda apoio na arquitetura ou implementação técnica da sua loja, consulte as nossas soluções de Universal Commerce Protocol e integração de IA em WordPress. Entre em contacto através do nosso formulário de contacto para avaliarmos o seu projeto.




