Páginas filhas
  • API Order Mesa - Payment

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

CONTEÚDO

...

02. ENDPOINT
Âncora
endpoint
endpoint


MétodoURLAmbiente
POSThttps://api-barramento.meuelevestage.com/order/paymentHomologação
POSThttps://api-barramento.meueleve.com.br/order/paymentProdução


...

03. EXEMPLO DE UTILIZAÇÃO

013. Corpo 1 - Envio da requisição solicitação de envio do processamento de um pagamento:

Na primeira requisição, o pagamento é enviado ao sistema e colocado na fila de processamento. Esse é o ponto inicial onde o sistema apenas confirma o recebimento da solicitação e inicia os preparativos para validar e processar o pagamento. A resposta indicará que o pagamento foi registrado e está aguardando processamento.

Âncora
pgto
pgto

Bloco de código
titleCorpo da requisição no JSON
linenumberstrue
{
    "integrationHubServiceId": "efdd6093-5539-4ac4-ad84-7423a8078dde",
    "orderKeyType": "TABLE",
    "orderKey": "2",
    "paymentObject": {
        "printOrderAtPos": true,
        "generateInvoice": true,
        "printInvoiceAtPos": true,
        "sendInvoiceEmail": false,
        "summaryExtract": false,
        "customerDocument": null,
        "documentInReceipt": false,
        "numberPersons": 1,
        "removeServiceFee": false,
        "methods": [
            {
                "value": 67.10,
                "currency": "BRL",
                "type": "OFFLINE",
                "method": "CREDIT",
                "methodInfo": "VISA"
            }
        
        ],
        "orderAmount": 61.0,
        "discounts": 0.00,
        "fees": 6.10,
        "total": 67.10
    }
}
Nota
titleNota: HTTP Status Code = 202 Accepted

O seu pedido foi aceite, mas ainda não foi processado, aguarde alguns instantes e contacte o mesmo endereço para obter o resultado do pagamento da encomenda solicitada.


...


023. Retorno 2 - Reenvio da requisição para verificação do processamento do pagamento:pagamento

Na segunda requisição, o pagamento já entrou na fase de processamento ativo. O sistema estará validando os dados da transação e realizando a autorização junto às instituições financeiras. O status retornado confirmará que o pagamento está sendo processado, mas ainda não foi concluído.

Âncora
pgto_processamento
pgto_processamento

...

Nota
titleNota: HTTP Status Code = 208 Already Reported

Sua solicitação foi aceita mas ainda não processada, aguarde alguns instantes e procure o status.

...


...


3.3 - Reenvio final da requisição com o retorno do processamento e emissão da NFC-e

Ao reenviar a requisição, o pagamento terá sido processado com sucesso. O sistema retornará a NFC-e (Nota Fiscal de Consumidor Eletrônica) como comprovante fiscal, confirmando que a transação foi finalizada e concluída com êxito.

Âncora
pgto_retorno
pgto_retorno

...

JSON de Pagamento de Pedido

Este JSON é utilizado para enviar informações de pagamento relacionadas a um pedido por meio de um serviço de integração. Ele inclui informações sobre a chave de identificação da integração, tipo e chave do pedido, além de um objeto de pagamento detalhado.

Campos:

  • integrationHubServiceId (string, obrigatório)

    • Descrição: Chave de identificação da integração. Este campo é essencial para identificar de forma única a integração em questão.
    • Exemplo: "string"
  • orderKeyType (string, obrigatório)

    • Descrição: Tipo de chave do pedido. Define como o pedido é identificado e pode assumir os valores "TABLE", "CARD" ou "ORDER_ID".
    • Valores possíveis: "TABLE", "CARD", "ORDER_ID"
    • Exemplo: "TABLE"
  • orderKey (string, obrigatório)

    • Descrição: Chave específica do pedido. Este campo deve conter o identificador do pedido de acordo com o tipo especificado em orderKeyType.
    • Exemplo: "string"
  • paymentObject (object, obrigatório)

    Descrição:
    Bloco de código
    titleJSON da resposta do processamento
    linenumberstrue
    {
    	"integrationHubServiceId": "4bac08db-2c6e-4663-a285-d7acfdce579c",
    	"success": true,
    	"orderKeyType": "TABLE",
    	"orderKey": "50",
    	"paymentObject": {
    		"printOrderAtPos": true,
    		"generateInvoice": true,
    		"printInvoiceAtPos": true,
    		"sendInvoiceEmail": false,
    		"summaryExtract": false,
    		"customerDocument": null,
    		"documentInReceipt": false,
    		"numberPersons": 1,
    		"removeServiceFee": false,
    		"methods": [
    			{
    				"value": 67.1,
    				"currency": "BRL",
    				"type": "ONLINE",
    				"method": "CREDIT",
    				"methodInfo": "VISA"
    			}
    		],
    		"orderAmount": 61,
    		"discounts": 0,
    		"fees": 6.1,
    		"total": 67.1
    	},
    	"invoiceDetails": {
    		"orderXML": "
    <?xml version=\"1.0\" encoding=\"UTF-8\"?>
    <nfeProc versao=\"4.00\"
    	xmlns=\"http://www.portalfiscal.inf.br/nfe\" >
    	<NFe>
    		<infNFe versao=\"4.00\" Id=\"NFe35240882373077000171650010004112441194594623\">
    			<ide>
    				<cUF>35</cUF>
    				<cNF>19459462</cNF>
    				<natOp>VENDA</natOp>
    				<mod>65</mod>
    				<serie>1</serie>
    				<nNF>411244</nNF>
    				<dhEmi>2024-08-16T15:17:35-03:00</dhEmi>
    				<tpNF>1</tpNF>
    				<idDest>1</idDest>
    				<cMunFG>3539806</cMunFG>
    				<tpImp>4</tpImp>
    				<tpEmis>1</tpEmis>
    				<cDV>3</cDV>
    				<tpAmb>2</tpAmb>
    				<finNFe>1</finNFe>
    				<indFinal>1</indFinal>
    				<indPres>1</indPres>
    				<procEmi>0</procEmi>
    				<verProc>03.2408.</verProc>
    			</ide>
    			<emit>
    				<CNPJ>82373077000171</CNPJ>
    				<xNome>ALBINO LTDA</xNome>
    				<xFant>BOTECO DO ALBINO</xFant>
    				<enderEmit>
    					<xLgr>AMELIA LATURRE</xLgr>
    					<nro>100</nro>
    					<xBairro>CENTRO</xBairro>
    					<cMun>3539806</cMun>
    					<xMun>POA</xMun>
    					<UF>SP</UF>
    					<CEP>13211815</CEP>
    					<cPais>1058</cPais>
    					<xPais>BRASIL</xPais>
    					<fone>4145838800</fone>
    				</enderEmit>
    				<IE>128571670117</IE>
    				<IM>65656565</IM>
    				<CRT>3</CRT>
    			</emit>
    			<det nItem=\"1\">
    				<prod>
    					<cProd>058</cProd>
    					<cEAN>SEM GTIN</cEAN>
    					<xProd>NOTA FISCAL EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL</xProd>
    					<NCM>22021000</NCM>
    					<cBenef>PR810000</cBenef>
    					<CFOP>5101</CFOP>
    					<uCom>UN</uCom>
    					<qCom>1.0000</qCom>
    					<vUnCom>61.0000</vUnCom>
    					<vProd>61.00</vProd>
    					<cEANTrib>SEM GTIN</cEANTrib>
    					<uTrib>UN</uTrib>
    					<qTrib>1.0000</qTrib>
    					<vUnTrib>61.0000</vUnTrib>
    					<indTot>1</indTot>
    				</prod>
    				<imposto>
    					<vTotTrib>19.45</vTotTrib>
    					<ICMS>
    						<ICMS20>
    							<orig>0</orig>
    							<CST>20</CST>
    							<modBC>3</modBC>
    							<pRedBC>12.0000</pRedBC>
    							<vBC>53.68</vBC>
    							<pICMS>18.0000</pICMS>
    							<vICMS>9.66</vICMS>
    						</ICMS20>
    					</ICMS>
    					<PIS>
    						<PISNT>
    							<CST>07</CST>
    						</PISNT>
    					</PIS>
    					<COFINS>
    						<COFINSNT>
    							<CST>07</CST>
    						</COFINSNT>
    					</COFINS>
    				</imposto>
    			</det>
    			<det nItem=\"2\">
    				<prod>
    					<cProd>999</cProd>
    					<cEAN>SEM GTIN</cEAN>
    					<xProd>TAXA SERVICO</xProd>
    					<NCM>22021000</NCM>
    					<CFOP>5102</CFOP>
    					<uCom>UN</uCom>
    					<qCom>6.1000</qCom>
    					<vUnCom>1.0000</vUnCom>
    					<vProd>6.10</vProd>
    					<cEANTrib>SEM GTIN</cEANTrib>
    					<uTrib>UN</uTrib>
    					<qTrib>6.1000</qTrib>
    					<vUnTrib>1.0000</vUnTrib>
    					<indTot>1</indTot>
    				</prod>
    				<imposto>
    					<vTotTrib>1.95</vTotTrib>
    					<ICMS>
    						<ICMS00>
    							<orig>0</orig>
    							<CST>00</CST>
    							<modBC>3</modBC>
    							<vBC>6.10</vBC>
    							<pICMS>3.0000</pICMS>
    							<vICMS>0.18</vICMS>
    						</ICMS00>
    					</ICMS>
    					<PIS>
    						<PISNT>
    							<CST>07</CST>
    						</PISNT>
    					</PIS>
    					<COFINS>
    						<COFINSNT>
    							<CST>07</CST>
    						</COFINSNT>
    					</COFINS>
    				</imposto>
    			</det>
    			<total>
    				<ICMSTot>
    					<vBC>59.78</vBC>
    					<vICMS>9.84</vICMS>
    					<vICMSDeson>0.00</vICMSDeson>
    					<vFCP>0.00</vFCP>
    					<vBCST>0.00</vBCST>
    					<vST>0.00</vST>
    					<vFCPST>0.00</vFCPST>
    					<vFCPSTRet>0.00</vFCPSTRet>
    					<vProd>67.10</vProd>
    					<vFrete>0.00</vFrete>
    					<vSeg>0.00</vSeg>
    					<vDesc>0.00</vDesc>
    					<vII>0.00</vII>
    					<vIPI>0.00</vIPI>
    					<vIPIDevol>0.00</vIPIDevol>
    					<vPIS>0.00</vPIS>
    					<vCOFINS>0.00</vCOFINS>
    					<vOutro>0.00</vOutro>
    					<vNF>67.10</vNF>
    					<vTotTrib>21.40</vTotTrib>
    				</ICMSTot>
    			</total>
    			<transp>
    				<modFrete>9</modFrete>
    			</transp>
    			<pag>
    				<detPag>
    					<indPag>0</indPag>
    					<tPag>03</tPag>
    					<vPag>67.10</vPag>
    					<card>
    						<tpIntegra>2</tpIntegra>
    					</card>
    				</detPag>
    				<vTroco>0.00</vTroco>
    			</pag>
    			<infAdic>
    				<infCpl>Mesa: 50 Pedido:48 TOTVS CHEF  Aplicativo: TOTVS Chef 03.2408. Serie: 96736041 Valor aproximado dos tributos deste cupom: Federal: R$ 9.32 Estadual: R$ 12.08 Municipal: R$ 0.00 Fonte IBPT/empresometro.com.br SP B047CD</infCpl>
    				<obsCont xCampo=\"Series\">
    					<xTexto>MDAxMDAwNDExMjQ0MDAxMDAwNDExMjQ0</xTexto>
    				</obsCont>
    			</infAdic>
    			<infRespTec>
    				<CNPJ>82373077000171</CNPJ>
    				<xContato>Renato Alves</xContato>
    				<email>[email protected]</email>
    				<fone>1120997271</fone>
    			</infRespTec>
    		</infNFe>
    		<infNFeSupl>
    			<qrCode>
    				<![CDATA[https://www.homologacao.nfce.fazenda.sp.gov.br/qrcode?p=35240882373077000171650010004112441194594623|2|2|3|8D40911388AD28F90084AE3719A34693E143BFC3]]>
    			</qrCode>
    			<urlChave>https://www.homologacao.nfce.fazenda.sp.gov.br/consulta</urlChave>
    		</infNFeSupl>
    		<Signature
    			xmlns=\"http://www.w3.org/2000/09/xmldsig#\">
    			<SignedInfo>
    				<CanonicalizationMethod Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"/>
    				<SignatureMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"/>
    				<Reference URI=\"#NFe35240882373077000171650010004112441194594623\">
    					<Transforms>
    						<Transform Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"/>
    						<Transform Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"/>
    					</Transforms>
    					<DigestMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#sha1\"/>
    					<DigestValue>MXavema7a33mkklhtGM9J06sZG0=</DigestValue>
    				</Reference>
    			</SignedInfo>
    			<SignatureValue>E231EM9ovdpJzgrXNoM0cNxnmrJ11uvRJqlWHtIEZPqYFoCE89vQ/H9ZI2+XjBsaqFzjBzM/Q0MaeACVb8/6pboktVvUc51dFlsc43ZE29btX7USJveK17XOUvZB/vQ3ig7nEnPbiQUI/fJHwUaTyhZx4IUNyOKBp9mHoMIyKcrsMkVcsOBRvz1TW3w5deoLVpcYk3hiqeNzax00wGZqhJqE0kGEyayCmN6By5WkzBvOuJd388R6ZX28a2ABekUVOwv7XlkVon7QhqXm47umON7sR5ksvQ2Op+OKxL8NlzKeTjb4AG6SwRitAJ6XHCMuN9pl3ZTOTmGHdF8e7jB77Q==</SignatureValue>
    			<KeyInfo>
    				<X509Data>
    					<X509Certificate>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</X509Certificate>
    				</X509Data>
    			</KeyInfo>
    		</Signature>
    	</NFe>
    	<protNFe versao=\"4.00\">
    		<infProt>
    			<tpAmb>2</tpAmb>
    			<verAplic>SP_NFCE_PL_009_V400</verAplic>
    			<chNFe>35240882373077000171650010004112441194594623</chNFe>
    			<dhRecbto>2024-08-16T15:17:38-03:00</dhRecbto>
    			<nProt>135240002154737</nProt>
    			<digVal>MXavema7a33mkklhtGM9J06sZG0=</digVal>
    			<cStat>100</cStat>
    			<xMotivo>Autorizado o uso da NF-e</xMotivo>
    		</infProt>
    	</protNFe>
    </nfeProc>",
    		"invoiceKey": "35240882373077000171650010004112441194594623",
    		"qrCode": "https://www.homologacao.nfce.fazenda.sp.gov.br/qrcode?p=35240882373077000171650010004112441194594623|2|2|3|8D40911388AD28F90084AE3719A34693E143BFC3"
    	},
    	"error": null
    }
    Informações
    titleNota:



    Dicionário da Request

    Este endpoint processa pagamentos e emite a NFC-e, gerenciando o envio e acompanhamento do status de pagamento até sua conclusão e emissão da nota fiscal.


    • Estrutura Payment:

    Campo

    Valor

    Descrição

    integrationHubServiceId *stringIdentificador único da integração
    orderKeyType *enum Tipo de chave do pedido (veja na tabela orderKeyType)
    orderKey *arrayChave do pedido correspondente 

    paymentObject *

    arrayObjeto que contém todas as informações necessárias para o processamento do pagamento do pedido

    ...

    Campos do paymentObject:

    printOrderAtPos (boolean, obrigatório)

    orderAmount *

    numberValor final do pedido (total + taxas - descontos)

    discounts 

    numberValor total de descontos aplicados ao pedido

    fees *

    numberValor total das taxas aplicadas ao pedido

    total *

    numberValor total do pedido (soma dos itens).


    • Estrutura Payment (dentro de paymentObject):

    ...

    CampoValorDescrição
    printOrderAtPos * boolean

    ...

    Controla se o pedido deve ser impresso no ponto de venda (POS).

    ...

    • true: O pedido será impresso no POS.
    • false: O pedido não será impresso no POS.

    ...

    generateInvoice (boolean, obrigatório)

    generateInvoice *boolean

    printInvoiceAtPos (boolean, obrigatório)

    ...

    Controla se a fatura deve ser gerada no POS

    ...

    • true: A fatura será gerada no POS.
    • false: A fatura não será gerada no POS (a integração gerará a fatura).

    ...

    printInvoiceAtPos  *boolean

    ...

    sendInvoiceEmail (boolean, obrigatório)

    • Descrição: Controla se a fatura será enviada por e-mail.
    • Valores:
      • true: A fatura será enviada por e-mail.
      • false: A fatura não será enviada por e-mail.
    • Exemplo: true

    summaryExtract (boolean, obrigatório)

    ...

    Controla se a fatura deve ser impressa no POS

    ...

    • true: A fatura será impressa no POS.
    • false: A fatura não será impressa no POS.

    ...

    sendInvoiceEmail *booleanControla se a fatura será enviada por e-mail
    summaryExtract *boolean

    Indica se um resumo deve ser incluído na resposta da solicitação

    ...

    customerDocument (string)

    • Descrição: Documento do cliente. Necessário quando documentInReceipt é true.
    • Exemplo: "string"

    documentInReceipt (boolean, obrigatório)

    ...

    ...

    • true: O resumo será incluído.
    • false: O resumo não será incluído.

    ...

    customerDocument stringDocumento do cliente. Necessário quando documentInReceipt é true
    documentInReceipt  *boolean

    Indica se o documento do cliente deve aparecer na fatura

    ...

    numberPersons (number)

    ...

    ...

    • true: O documento do cliente aparecerá na fatura.
    • false: O documento do cliente não aparecerá na fatura.

    ...

    numberPersons number
    Indica o número de pessoas associado ao pedido no momento do fechamento

    ...

    ...

    removeServiceFee (boolean, obrigatório)

    ...

    removeServiceFee *boolean
    Indica se a taxa de serviço deve ser removida do total da conta

    ...

    • true: A taxa de serviço será removida.
    • false: A taxa de serviço não será removida.

    ...

    methods *arrayLista

    methods (array de objetos, obrigatório)

    ...

    de métodos de pagamento utilizados para o pedido

    ...

    Campos do methods:

    ...

    value (number, obrigatório)

    • Descrição: Valor do pagamento para o método específico. Aceita até 4 casas decimais.
    • Exemplo: 0.00


    • Estrutura Payment - paymentObject  (dentro de methods):

    currency (string, obrigatório)

    ...

    CampoValorDescrição
    currency *string
    Código da moeda no formato ISO 4217

    ...

    type (string, obrigatório)

    ...

    type *enum
    Tipo de método de pagamento. Pode ser "OFFLINE" ou "ONLINE".

    ...

    method *enumMétodo de pagamento utilizado. (veja a tabela method)
    brand enum

    Marca do cartão selecionado no campo method (veja a tabela brand)

    methodInfostringInformações adicionais sobre o método de pagamento
    changeFor numberIndica o valor total que será pago em dinheiro pelo cliente e que deve ser considerado para o cálculo do troco. Obrigatório apenas quando method for "CASH"



    Tabela de auxiliares e enumerações

    • Estrutura Enumeração orderKeyType
      Âncora
      table_orderKeyType
      table_orderKeyType

    Enum

    Valor

    Descrição

    TABLETABLEIdentifica o pedido pelo número da mesa
    CARDCARDIdentifica o pedido pelo número do cartão
    ORDER_IDORDER_IDIdentifica o pedido por um ID exclusivo


    • Estrutura Payment - methods (dentro de type):

    Enum

    Valor

    Descrição

    OFFLINEOFFLINEPagamento será realizado OFFILINE
    ONLINE ONLINE Pagamento será realizado ONLINE


    • Estrutura Payment - methods (dentro de type):

    Enum

    Valor

    Descrição

    CREDITCREDITForma de pagmendo crédito
    DEBITDEBITForma de pagmendo débito
    MEAL_VOUCHERMEAL_VOUCHERForma de pagmendo vale refeição
    FOOD_VOUCHERFOOD_VOUCHERForma de pagmendo vale
    DIGITAL_WALLETDIGITAL_WALLETForma de pagmendo alimentação
    PIXPIXForma de pagmendo PIX
    CASHCASHForma de pagmendo dinheiro
    CREDIT_DEBITCREDIT_DEBITForma de pagmendo crédito em débito
    COUPONCOUPONForma de pagmendo cupom
    REDEEMREDEEMForma de pagmendo resgater
    PREPAID_REDEEMPREPAID_REDEEMForma de pagmendo resgater pré-pago
    OTHEROTHERForma de pagmendo outro


    ...

    04. ERROS
    Âncora
    erros
    erros

    ...

    method (string, obrigatório)

    • Descrição: Método de pagamento utilizado. Pode ser um dos seguintes valores: "CREDIT", "DEBIT", "MEAL_VOUCHER", "FOOD_VOUCHER", "DIGITAL_WALLET", "PIX", "CASH", "CREDIT_DEBIT", "COUPON", "REDEEM", "PREPAID_REDEEM", "OTHER".
    • Valores possíveis: "CREDIT", "DEBIT", "MEAL_VOUCHER", "FOOD_VOUCHER", "DIGITAL_WALLET", "PIX", "CASH", "CREDIT_DEBIT", "COUPON", "REDEEM", "PREPAID_REDEEM", "OTHER"
    • Exemplo: "CREDIT"

    ...

    brand (string)

    • Descrição: Marca do cartão selecionado no campo method. Deve ser preenchido somente se method for "CREDIT", "DEBIT", "CREDIT_DEBIT", "MEAL_VOUCHER" ou "FOOD_VOUCHER".
    • Valores possíveis: "VISA", "MASTERCARD", "DINERS", "AMEX", "HIPERCARD", "ELO", "AURA", "DISCOVER", "VR_BENEFICIOS", "SODEXO", "TICKET", "GOOD_CARD", "BANESCARD", "SOROCARD", "POLICARD", "VALECARD", "AGICARD", "JCB", "CREDSYSTEM", "CABAL", "GREEN_CARD", "VEROCHEQUE", "AVISTA", "OTHER"
    • Exemplo: "VISA"

    ...

    methodInfo (string)

    • Descrição: Informações adicionais sobre o método de pagamento. Pode ser usado para indicar o nome da carteira digital ou número de autorização.
    • Exemplo: "string"

    ...

    changeFor (number)

    • Descrição: Indica o valor total que será pago em dinheiro pelo cliente e que deve ser considerado para o cálculo do troco. Obrigatório apenas quando method for "CASH".
    • Exemplo: 0.00

    ...

    orderAmount (number, obrigatório)

    • Descrição: Valor final do pedido (total + taxas - descontos).
    • Exemplo: 0.00

    ...

    discounts (number)

    • Descrição: Valor total de descontos aplicados ao pedido.
    • Exemplo: 0.00

    ...

    fees (number, obrigatório)

    • Descrição: Valor total das taxas aplicadas ao pedido.
    • Exemplo: 0.00

    ...

    total (number, obrigatório)

    • Descrição: Valor total do pedido (soma dos itens).
    • Exemplo: 0.00
    Informações
    titleInformação:

    integrationHubServiceId: é um código da integração da loja com o Integration Hub

    orderKey: é o código do pedido

    ...

    A seguir, alguns dos erros comuns que podem ser apresentados ao lidar com requisições HTTP e suas respectivas respostas:

    ...

    O código de status HTTP 400, conhecido como "Bad Request" (Requisição Inválida), indica que o servidor não pôde processar a requisição do cliente devido a uma sintaxe inválida, estrutura malformada ou dados inválidos presentes na requisição:


    4.1 - Formato inválido do JSON esperado:

    A requisição foi enviada com um JSON malformado ou inválido, o que impede o sistema de interpretá-la corretamente. Isso ocorre quando a estrutura JSON contém erros de sintaxe, como chaves ou colchetes incorretos01. Formando inválido do JSON esperado.

    Bloco de código
    titleJSON Inválido
    linenumberstrue
    {
        "integrationHubServiceId": "02990348-9d85-416d-a573-6dc83eee52e7",
        "orderKeyType": "TABLE",
        "orderKey": 2,
        "paymentObject": {
            "printOrderAtPos": true,
            "generateInvoice": true,
            "printInvoiceAtPos": true,
            "sendInvoiceEmail": false,
            "summaryExtract": false,
            "customerDocument": null,
            "documentInReceipt": false,
            "numberPersons": 1,
            "removeServiceFee": false,
            "methods": [
                {
                    "value": 67.10,
                    "currency": "BRL",
                    "type": "OFFLINE",
                    "method": "CREDIT",
                    "methodInfo": "VISA"
                }
            
            ],
            "orderAmount": 61.0,
            "discounts": 0.00,
            "fees": 6.10,
            "total": 67.10
        }
    }
    Bloco de código
    titleJSON Resposta
    linenumberstrue
    {
    	"errors": [
    		{
    			"key": "orderKey",
    			"message": "body.orderKey must be a string"
    		}
    	]
    }


    ...


    024. JSON enviando 2 - JSON enviado com a ausência de um ou mais campos obrigatórios:

    Se a requisição estiver faltando um ou mais campos obrigatórios, o servidor responderá com um erro 400. Cada campo requerido deve estar presente para que a operação seja processada corretamente.

    Bloco de código
    titleJSON Inválido
    linenumberstrue
    {
        "integrationHubServiceId": "02990348-9d85-416d-a573-6dc83eee52e7",
        "orderKey": 2,
        "paymentObject": {
            "printOrderAtPos": true,
            "generateInvoice": true,
            "printInvoiceAtPos": true,
            "sendInvoiceEmail": false,
            "summaryExtract": false,
            "customerDocument": null,
            "documentInReceipt": false,
            "numberPersons": 1,
            "removeServiceFee": false,
            "methods": [
                {
                    "value": 67.10,
                    "currency": "BRL",
                    "type": "OFFLINE",
                    "method": "CREDIT",
                    "methodInfo": "VISA"
                }
            
            ],
            "orderAmount": 61.0,
            "discounts": 0.00,
            "fees": 6.10,
            "total": 67.10
        }
    }
    Bloco de código
    titleJSON Resposta
    linenumberstrue
    {
    	"errors": [
    		{
    			"key": "orderKeyType",
    			"message": "body.orderKeyType is required"
    		}
    	]
    }]
    }


    ...


    4.3 -  GUID incorreto:

    O GUID (Identificador Globalmente Único) enviado na requisição está incorreto ou malformado, o que pode resultar em um erro. Um GUID é uma sequência específica que deve seguir o padrão correto.03. GUID incorreto 

    Bloco de código
    titleJSON com o GUID inválido
    linenumberstrue
    {
        "integrationHubServiceId": "02990348-9d85-416d-a573-6dc83eee52eA",
        "orderKey": 2,
        "paymentObject": {
            "printOrderAtPos": true,
            "generateInvoice": true,
            "printInvoiceAtPos": true,
            "sendInvoiceEmail": false,
            "summaryExtract": false,
            "customerDocument": null,
            "documentInReceipt": false,
            "numberPersons": 1,
            "removeServiceFee": false,
            "methods": [
                {
                    "value": 67.10,
                    "currency": "BRL",
                    "type": "OFFLINE",
                    "method": "CREDIT",
                    "methodInfo": "VISA"
                }
            
            ],
            "orderAmount": 61.0,
            "discounts": 0.00,
            "fees": 6.10,
            "total": 67.10
        }
    }
    Bloco de código
    titleJSON Inválido GUID incorreto
    linenumberstrue
    {
    	"errors": [
    		{
    			"key": "integrationHubServiceId",
    			"message": "body.integrationHubServiceId must be a valid GUID"
    		}
    	]
    }


    ...


    4.4 - Requisição enviada sem informar o orderKey corretamente:

    Caso a requisição seja enviada sem o campo orderKey ou com o valor incorreto, o sistema não conseguirá identificar o pedido, resultando em um erro 400. O orderKey deve estar corretamente preenchido e de acordo com o orderKeyType informado.04. Enviando uma requisição sem informar o código da orderKey corretamente

    Bloco de código
    titleJSON com sem informar o código da orderKey
    linenumberstrue
    {
        "integrationHubServiceId": "02990348-9d85-416d-a573-6dc83eee52e7",
        "orderKey": 2,
        "paymentObject": {
            "printOrderAtPos": true,
            "generateInvoice": true,
            "printInvoiceAtPos": true,
            "sendInvoiceEmail": false,
            "summaryExtract": false,
            "customerDocument": null,
            "documentInReceipt": false,
            "numberPersons": 1,
            "removeServiceFee": false,
            "methods": [],
            "orderAmount": 61.0,
            "discounts": 0.00,
            "fees": 6.10,
            "total": 67.10
        }
    }

    ...

    Nota
    titleNota: HTTP Status Code = 429 - Too Many Requests

    Alguma regra para atender ao seu pedido não foi cumprida; analise o corpo da resposta para descobrir as razões.

    ...




    Templatedocumentos