Endereço na criação do pedido
22/10/2026
Novidade · POST /v1/orders
No delivery, basta enviar o endereço. A API calcula a latitude e a longitude a partir dele.
customer.address.latitude e customer.address.longitude são opcionais. Sem os dois, a API localiza o ponto com o endereço informado (street, number, city, state e, quando houver, postalCode, neighborhood e complement) e grava as coordenadas no pedido. Se o cliente já enviar latitude e longitude, esses valores são mantidos.
A resposta 201 continua só com { "orderId" }. As coordenadas voltas em GET /v1/orders/:id, em delivery.address.latitude e delivery.address.longitude, e no endereço do cliente em GET /v1/customers/:id.
Se a localização não resolver, o pedido é criado do mesmo jeito. As coordenadas ficam ausentes.
Pedido com delivery.deliveryType DELIVERY exige customer.address. TAKEOUT e DINE_IN recusam endereço.
Em customer.address:
- obrigatórios:
street,number,city,state neighborhoodoupostalCode: um dos dois basta; os dois juntos também- opcionais:
complement,latitude,longitude postalCodeaceita01310-100ou01310100e é gravado só com dígitos
A API procura um endereço já cadastrado daquele cliente por CEP (só dígitos), logradouro e número. Se achar, atualiza. Se não achar, cria. Cliente e endereço entram na mesma transação do pedido: se o pedido falhar, nada disso fica gravado.
Quem já criava delivery sem endereço passa a receber 422 'customer.address' is required when 'deliveryType' is DELIVERY.
Quem envia endereço em retirada recebe 422 'customer.address' is not allowed when 'deliveryType' is TAKEOUT. Em consumo local, a mesma mensagem, com DINE_IN no lugar de TAKEOUT.
Sem bairro e sem CEP: 400 'customer.address.neighborhood' or 'customer.address.postalCode' is required.
"customer": {
"customerName": "Maria Oliveira",
"phone": { "number": "11988887777", "extension": "+55" },
"address": {
"street": "Av. Paulista",
"number": "1000",
"neighborhood": "Bela Vista",
"city": "São Paulo",
"state": "SP",
"postalCode": "01310-100"
}
}
Esse body não traz latitude nem longitude. A API calcula as duas.

