Este hook é ativado após o pedido ter sido conferido. Seu propósito é enviar de forma automática informações de um pedido pra que este seja faturado

Uma vez que os dados foram enviados para o sistema que fatura o pedido, esperamos que o retorno seja um código único que deve ser utilizado para resgatar o pedido e então, faturá-lo.

Método

POST

Headers

Qualquer header com valor fixo pode ser configurado

Corpo

CampoTipoDescrição
orderNumberstringIdentificador do pedido.
deliveryDatestringData de entrega do pedido.
orderCreatedOnstringData de venda do pedido.
consumerDocumentstringDocumento do comprador.
consumerNamestringNome do consumidor
consumerEmailstringE-mail do consumidor
shippingPostalCodestringCep do consumidor
shippingAddressLinestringEndereço de entrega
shippingNumberstringNúmero do endereço de entrega
shippingNeighborhoodstringBairro do endereço de entrega
shippingComplementstringComplemento do endereço de entrega
shippingCitystringCidade do endereço de entrega
shippingStatestringEstado do endereço de entrega
shippingPhonestringTelefone do consumidor
storeTrackingCodestringIdentificador da loja
storeFederalIdstringCNPJ da loja
extrasobjectInformações customizadas do pedido
itemsobject (see below)Lista de itens do pedido.
paymentsobject (see below)Lista de pagamentos do pedido.
shippingCompaniesobject (see below)Lista de transportadoras do pedido
packagesobject (see below)Lista de pacotes do pedido

Items

CampoTipoDescrição
idintIdentificador do item
skustringIdentificador único do produto
quantitydecimalQuantidade conferida
unitValuedecimalValor por unidade do item
grossValuedecimalValor total do item no pedido
netValuedecimalValor total liquido do item
discountdecimalValor total de desconto do item
weightdecimalPeso real em gramas do item caso seja um item pesável
scannedCodestringCódigo lido no processo de conferência
extrasobjectInformações customizadas do item

ShippingCompanies

CampoTipoDescrição
orderItemIdintIdentificador do item
uniqueIdstringIdentificador único
namestringNome da transportadora
externalCodestringCódigo único do da transportadora para o parceiro
employerNumberstringCNPJ da transportadora
federalIdstringCNPJ utilizado no contrato (Correios)
contractNumberstringNúmero do contrato (Correios)
servicdeIdentifierstringCódigo do serviço (Correios)
postalCardNumberstringCódigo do cartão postal (Correios)
extrasobjectDetalhes retornados pelo gateway de pagamento

Packages

CampoTipoDescrição
idintIdentificador númerico do pacote
codestringIdentificador único do pacote
countintQuantidade de itens no pacote
packageItemsobject (see below)Itens do pacote

PackageItems

CampoTipoDescrição
orderItemIdintIdentificador númerico do item
packageIdintIdentificador númerico do pacote
quantitydecimalQuantidade total ou parcial do item

Payments

CampoTipoDescrição
paymentIdstringInformações referente ao pagamento
installmentCountintQuantidade de parcelas do método de pagamento
valuedecimalValor total deste pagamento
transactionIdstringIdentificador da transação tid
extrasobjectDetalhes retornados pelo gateway de pagamento

Exemplo de corpo enviado para api de faturamento de pedido.

{
   "customerKey":"1d7SlUJeA6LmywvBx7poLZ1hDMd",
   "orderNumber":"00000000001",
   "deliveryDate":"2021-06-10T19:14:00.773Z",
   "orderCreatedOn":"2021-06-07T19:13:48.847Z",
   "consumerDocument":"01234567890",
   "consumerName":"John Due",
   "consumerEmail":"[email protected]",
   "shippingPostalCode":"00000-000",
   "shippingAddressLine":"Av Angélica",
   "shippingNumber":"2529",
   "shippingNeighborhood":"Bela Vista",
   "shippingComplement":"",
   "shippingCity":"São Paulo",
   "shippingState":"SP",
   "shippingLat":-23.5293064117432,
   "shippingLon":-46.4828834533691,
   "shippingPhone":"+5511999999999",
   "totalFreight":1.25,
   "extras":{
      "sequence":"00000000",
      "warehouseId":"0"
   },
   "items":[
      {
         "sku":"1566",
         "ean":"1567",
         "key":"1566",
         "quantity":4,
         "unitValue":3.19,
         "freightValue":1.25,
         "grossValue":12.76,
         "netValue":12.76,
         "weight": 100
      }
   ],
   "payments":[
      {
         "paymentId":"201",
         "installmentCount":1,
         "value":14.01,
         "transactionId":"9EE98153BDC543489255656EBED8A708",
         "extras": {
            "returnCode": "00",
            "message": "Transacao autorizada",
            "authId": "000000",
            "nsu": "000000"
         }
      }
   ],
   "value":14.01
}

Exemplo de corpo esperado como retorno para api de faturado de pedido.

{
  "pdvId": "12345676543"
}

Consultar faturamento

Este hook é responsável por consultar informações referentes ao faturamento de um pedido. Como o processo de faturamento é assíncrono, nosso sistema envia requests GET para uma api do cliente para buscar as informações do cupom fiscal.
Os parâmetros abaixo são enviados via querystring para essa api que retorna os dados do faturamento.
Para indicar que o faturamento não está disponível a api deve retornar um http status de erro preferencialmente 404 NotFound (https://httpstatuses.com/404) ou retornar sucesso, mas com os dados em branco, essas estratégias são suficientes pra que nosso sistema continue tentando buscar os dados do faturamento.

FieldTypeDescription
orderNumberstringNúmero do pedido
storestringCódigo da loja
warehousestringCódigo do depósito
pointSaleIdstringNúmero do pedido no pdv (pdvId retornado na geração do pré-pedido)

Este é o corpo esperado como retorno para esta requisição

{
  "key": "35183497238194038675340857432108579342103487",
  "number": "123441",
  "serialNumber": "001",
  "fiscalCode": "6130",
  "totalValue": 120.00,
  "totalProductsValue": 110.00,
  "issuedAt": "2020-01-01T00:00:00Z",
  "authorizationProtocol": "12365478998778945623123123132",
  "issueMethod": "Normal" //Contingency
}