Acesso Comercial / Docs / Storefront / API
Ctrl K
MUTATION

addNewCheckoutOrder

Finaliza o checkout e cria um novo pedido a partir do carrinho atual. Processa pagamento e retorna dados do pedido.

Input

AddNewCheckoutOrderMutationInput!

CampoTipoDescrição
hostnameString!Hostname da loja.
paymentMethodString!Método de pagamento: pix, credit_card, boleto.
installmentsIntNúmero de parcelas (para cartão de crédito).
cardTokenStringToken do cartão (para pagamento com cartão).

Retorno

CampoTipoDescrição
orderOrderPedido criado com dados de pagamento.
Fluxo completo: Antes do checkout, complete: storeShoppingCartInfocalculateShippingupdateShippingType → checkout.

Mutation

GraphQL
mutation Checkout($input: AddNewCheckoutOrderMutationInput!) {
  addNewCheckoutOrder(input: $input) {
    order {
      id
      status
      totalPrice
      paymentMethod
      pixQrCode
      pixCopyPaste
      boletoUrl
    }
  }
}

Variables (PIX)

JSON
{
  "input": {
    "hostname": "minha-loja",
    "paymentMethod": "pix"
  }
}

Resposta (PIX)

JSON
{
  "data": {
    "addNewCheckoutOrder": {
      "order": {
        "id": "T3JkZXI6YWJjMTIz",
        "status": "pending",
        "totalPrice": 10490,
        "paymentMethod": "pix",
        "pixQrCode": "data:image/png;base64,...",
        "pixCopyPaste": "00020126...",
        "boletoUrl": null
      }
    }
  }
}

Fetch

JavaScript
const response = await fetch('/graphql', {
  method: 'POST',
  credentials: 'include',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    query: `mutation($input: AddNewCheckoutOrderInput!) {
      addNewCheckoutOrder(input: $input) {
        order { id status totalPrice }
      }
    }`,
    variables: {
      input: {
        hostname: "minha-loja",
        paymentMethod: "pix"
      }
    }
  })
});

cURL

Bash
curl -X POST https://minha-loja.com/graphql \
  -H "Content-Type: application/json" \
  -b "authJwtClient=YOUR_SESSION_COOKIE" \
  -d '{"query":"mutation { addNewCheckoutOrder(input: { hostname: \"minha-loja\", paymentMethod: \"pix\" }) { order { id status totalPrice } } }"}'