DEFAULT e PIZZA. Para contemplar itens que representam combos, um novo tipo de item estará disponível chamadoCOMBO_V2.Pontos de atenção: Para criar um combo usando o novo type, será obrigatório:Grupo de Complemento Principal no combo,Tipo de Grupo de Complemento para todos os Grupos de ComplementosassociationType será acionado a entidade que vincula um Product a um OptionGroup. Os únicos valores possíveis para este campo serão MAIN ou null.OFFER_UNIT - Indica que o grupo de complementos contém uma oferta secundária/cross sell de um outro item já disponível no cardápio.CUTLERY - Indica que o grupo de complementos contém opções de escolha de talheres, guardanapos entre outros descartáveis.SPECIFICATION - Indica que o grupo de complementos contém opções que alteram o modo de preparo de um produto, como por exemplo: Qual o ponto da carne?, Maçaricado?INGREDIENTS - Indica que o grupo de complementos contém opções que alteram os ingredientes de um produto, como por exemplo: Deseja adicionar algum ingrediente?, Deseja adicionar algum molho?SPECIFICATION e INGREDIENTSserão exibidos no 3º nível no app!Combo hamburger e refrigerante (item)
├── Escolha seu hamburger (Grupo de Complemento)
│ ├── Hamburger de salada (Complemento)
│ ├── Hamburger de bacon (Complemento)
│ └── Cheeseburger (Complemento)
└── Escolha o seu refrigerante (Grupo de Complemento)
├── Refrigerante de laranja (Complemento)
└── Refrigerante de uva (Complemento)Combo hamburger e refrigerante (item)
├── Escolha seu hamburger (Grupo de Complemento)
│ ├── Hamburger de salada (Complemento)
│ │ ├── Deseja retirar um ingrediente? (Grupo de complemento)
│ │ │ ├── Tomate (Complemento)
│ │ │ └── Queijo (Complemento)
│ │ └── Deseja algum adicional (Grupo de complemento)
│ │ ├── Mais queijo (Complemento)
│ │ └── Bife extra (Complemento)
│ ├── Hamburger de bacon (Complemento)
│ │ ├── Deseja retirar um ingrediente? (Grupo de complemento)
│ │ │ ├── Tomate (Complemento)
│ │ │ ├── Queijo (Complemento)
│ │ │ └── Bacon (Complemento)
│ │ └── Deseja algum adicional (Grupo de complemento)
│ │ ├── Mais queijo (Complemento)
│ │ ├── Mais bacon (Complemento)
│ │ └── Bife extra (Complemento)
│ └── Cheeseburger (Complemento)
│ ├── Deseja retirar um ingrediente? (Grupo de complemento)
│ │ └── Queijo (Complemento)
│ └── Deseja algum adicional (Grupo de complemento)
│ ├── Mais queijo (Complemento)
│ ├── Bacon (Complemento)
│ └── Bife extra (Complemento)
└── Escolha o seu refrigerante (Grupo de Complemento)
├── Refrigerante de laranja (Complemento)
└── Refrigerante de uva (Complemento)PUT /merchants/{merchantId}/items são:type na entidade Item: COMBO_V2{
...
"item": {
...
"type": "COMBO_V2"
...
}
...
}type para a entidade OptionGroup:{
...
"optionGroups": [
{
...
"type": "OFFER_UNIT"
...
}
]
...
}associationType para a entidade OptionGroupRelation:{
...
"products": [
{
...
"optionGroups": [
{
...
"associationType": "MAIN"
...
}
]
...
}
]
...
}COMBO_V2 este vínculo irá começar a ser considerado até o 3º nível!Item com a seguinte estrutura:Combo hamburger e refrigerante (item)
├── Escolha seu hamburger (Grupo de Complemento)
│ ├── Hamburger de salada (Complemento)
│ │ ├── Deseja retirar um ingrediente? (Grupo de complemento)
│ │ │ ├── Tomate (Complemento)
│ │ │ └── Queijo (Complemento)
│ │ ├── Deseja algum adicional? (Grupo de complemento)
│ │ │ ├── Mais queijo (Complemento)
│ │ │ ├── Bife extra (Complemento)
│ │ │ └── Bacon extra (Complemento)
│ │ └── Qual o ponto da carne? (Grupo de complemento)
│ │ ├── Mal passada (Complemento)
│ │ ├── Ao ponto (Complemento)
│ ├── Hamburger de bacon (Complemento)
│ └── Cheeseburger (Complemento)
└── Escolha o seu refrigerante (Grupo de Complemento)
├── Refrigerante de laranja (Complemento)
└── Refrigerante de uva (Complemento)PUT /merchants/{merchantId}/items:{
"item": {
"id": "{{itemId}}",
"categoryId": "{{categoryId}}",
"productId": "{{itemProductId}}",
"type": "COMBO_V2",
"status": "AVAILABLE",
"price": {
"value": 30.00
}
},
"products": [
{
"id": "{{itemProductId}}",
"name": "Combo hamburger e refrigerante",
"optionGroups": [
{
"id": "{{burgerTypeOptionGroupId}}",
"min": 1,
"max": 1,
"index": 0,
"associationType": "MAIN"
},
{
"id": "{{sodaTypeOptionGroupId}}",
"min": 1,
"max": 1,
"index": 1
}
]
},
{
"id": "{{saladBurgerProductId}}",
"name": "Hamburger de salada",
"optionGroups": [
{
"id": "{{meatSpecificationOptionGroupId}}",
"min": 1,
"max": 1,
"index": 0
},
{
"id": "{{removeIngredientOptionGroupId}}",
"min": 0,
"max": 2,
"index": 1
},
{
"id": "{{extraIngredientOptionGroupId}}",
"min": 0,
"max": 2,
"index": 2
}
]
},
{
"id": "{{baconBurgerProductId}}",
"name": "Hamburger de bacon"
},
{
"id": "{{cheeseBurgerProductId}}",
"name": "Cheeseburger"
},
{
"id": "{{removeTomatoProductId}}",
"name": "Retirar tomate"
},
{
"id": "{{removeCheeseProductId}}",
"name": "Retirar queijo"
},
{
"id": "{{extraCheeseProductId}}",
"name": "Queijo extra"
},
{
"id": "{{extraBaconProductId}}",
"name": "Bacon extra"
},
{
"id": "{{extraMeatProductId}}",
"name": "Bife extra"
},
{
"id": "{{grapeSodaProductId}}",
"name": "Refrigerante de Uva"
},
{
"id": "{{orangeSodaProductId}}",
"name": "Refrigerante de Laranja"
},
{
"id": "{{wellDoneMeatProductId}}",
"name": "Ao ponto"
},
{
"id": "{{rareMeatProductId}}",
"name": "Mal passada"
}
],
"optionGroups": [
{
"id": "{{burgerTypeOptionGroupId}}",
"name": "Escolha seu Hamburger",
"status": "AVAILABLE",
"optionIds": [
"{{saladBurgerOptionId}}",
"{{baconBurgerOptionId}}",
"{{cheeseBurgerOptionId}}"
],
"optionGroupType": "OFFER_UNIT"
},
{
"id": "{{sodaTypeOptionGroupId}}",
"name": "Escolha o seu refrigerante",
"status": "AVAILABLE",
"optionIds": [
"{{orangeSodaOptionId}}",
"{{grapeSodaOptionId}}"
],
"optionGroupType": "OFFER_UNIT"
},
{
"id": "{{removeIngredientOptionGroupId}}",
"name": "Deseja retirar um ingrediente?",
"status": "AVAILABLE",
"optionIds": [
"{{removeTomatoOptionId}}",
"{{removeCheeseOptionId}}"
],
"optionGroupType": "INGREDIENTS"
},
{
"id": "{{extraIngredientOptionGroupId}}",
"name": "Deseja algum adicional?",
"status": "AVAILABLE",
"optionIds": [
"{{extraCheeseOptionId}}",
"{{extraBaconOptionId}}",
"{{extraMeatOptionId}}"
],
"optionGroupType": "INGREDIENTS"
},
{
"id": "{{meatSpecificationOptionGroupId}}",
"name": "Qual o ponto da carne?",
"status": "AVAILABLE",
"optionIds": [
"{{rareMeatOptionId}}",
"{{wellDoneMeatOptionId}}"
],
"optionGroupType": "SPECIFICATION"
}
],
"options": [
{
"id": "{{saladBurgerOptionId}}",
"productId": "{{saladBurgerProductId}}",
"status": "AVAILABLE",
"index": 0,
"price": {
"value": 5
}
},
{
"id": "{{baconBurgerOptionId}}",
"productId": "{{baconBurgerProductId}}",
"status": "AVAILABLE",
"index": 0,
"price": {
"value": 8
}
},
{
"id": "{{cheeseBurgerOptionId}}",
"productId": "{{cheeseBurgerProductId}}",
"status": "AVAILABLE",
"index": 0,
"price": {
"value": 3
}
},
{
"id": "{{removeTomatoOptionId}}",
"productId": "{{removeTomatoProductId}}",
"status": "AVAILABLE",
"index": 0
},
{
"id": "{{removeCheeseOptionId}}",
"productId": "{{removeCheeseProductId}}",
"status": "AVAILABLE",
"index": 1
},
{
"id": "{{extraCheeseOptionId}}",
"productId": "{{extraCheeseProductId}}",
"status": "AVAILABLE",
"index": 0
},
{
"id": "{{extraBaconOptionId}}",
"productId": "{{extraBaconProductId}}",
"status": "AVAILABLE",
"index": 1
},
{
"id": "{{extraMeatOptionId}}",
"productId": "{{extraMeatProductId}}",
"status": "AVAILABLE",
"index": 2
},
{
"id": "{{grapeSodaOptionId}}",
"productId": "{{grapeSodaProductId}}",
"status": "AVAILABLE",
"index": 1
},
{
"id": "{{orangeSodaOptionId}}",
"productId": "{{orangeSodaProductId}}",
"status": "AVAILABLE",
"index": 2
},
{
"id": "{{wellDoneMeatOptionId}}",
"productId": "{{wellDoneMeatProductId}}",
"status": "AVAILABLE",
"index": 1
},
{
"id": "{{rareMeatOptionId}}",
"productId": "{{rareMeatProductId}}",
"status": "AVAILABLE",
"index": 2
}
]
}OptionGroup com o Product que está sendo usado dentro de uma Option.optionGroupType dos OptionGroup utilizados no 3º nível da oferta são todos SPECIFICATION.30/05/2025, respeitando o prazo mínimo de 60 dias para mudanças opcionais com impacto.
O fluxo completo poderá ser testado pela integradora com o MERCHANT TESTE.Nesta data a feature será liberada para todos os merchants integrados também via Portal do Parceiro. Assegure-se de que seu sistema está preparado para reconhecer e processar o novo fluxo dentro do prazo. Caso a integração não seja ajustada, teremos inconsistência na gestão do catálogo e na visualização dos pedidos pela operação, gerando possíveis reclamações e cancelamentos.COMBO_V2Grupo de Complemento Principal no combo,Tipo de Grupo de Complemento para todos os Grupos de ComplementosPUT /merchants/{merchantId}/items ao enviar a lista de products você enviará também os que estão contidos no 3º nível e poderá listar o código PDV como é feito hoje.Quais das alterações são obrigatórias e quais não são? Quais os impactos caso não sejam implantadas?São alterações incrementais, os combos criados como itens regulares continuam operando normalmente. As integradoras terão até MAI/2025 para se adaptarem ao combo 3º nível - nesta data a feature será liberada no Portal do Parceiro para todos os merchants integrados.
Caso a integração não esteja ajustada, teremos inconsistência na gestão do catálogo e na visualização dos pedidos pela operação, gerando possíveis reclamações e cancelamentos.Os pontos já estão disponíveis em ambiente de testes?
Não teremos ambiente de teste, visto que são alterações incrementais. A feature será liberada no merchant teste para que possam validar o fluxo completo em produção.Quais os prazos para cada mudança?
A adaptação das integradoras ocorrerá até MAI/2025. A partir daí a feature será liberada no Portal do Parceiro para todos os merchants integrados.Será alterada a forma de cadastrar um produto que é combo?
A forma usada hoje, com um item default, se mantém e os combos já criados continuam operando normalmente. Utilizar o novo tipo de item combo, no entanto, oferece aos parceiros a possibilidade de aumentar a conversão, ticket médio e visibilidade dos itens no app.