...
| PARÂMETRO | TIPO | OBRIGATÓRIO | DESCRIÇÃO |
| Execution | string | true | Tipo da execução: cetContinue, cetInterrupt, cetFailed |
| Version | string | true | Versão da API |
| CommandType | string | true | Tipo do comando: cctMessage, cctGetOption, cctGetValue |
| Title | string | false | Título da caixa de diálogo |
| Subtitle | string | false | Subtítulo da caixa de diálogo |
| DataType | string | true | Tipo de dado informado cvtString cvtNumber cvtDate cvtTime cvtQRCode cvtPersonalDocument cvtPhoneNumber cvtPassword |
| Size | integer | true | Tamanho do documento para tipos “String” e “Number”, demais tipos recebem o valor “0” |
| DocumentType | String List | true | Tipo do documento cdtIDInternal cdtCPF cdtCNPJ cdtIDForeign |
Com o PDV na operação “Início da venda”, a requisição da API trará o “Operation” com valor “cotStartSale”.
Observação importante:
No paramêtro DataType para uso de solicitação de senha pela API utilizando cvtPassword, a integração utiliza a criptografada em ENCODE64 em campos de senha, então para validar a senha do lado do parceiro o mesmo precisa estar apto a validar o valor encriptografado que irá receber.
Criamos também um parâmetro novo quando precisar solicitar a senha no PINPAD.
Veja abaixo :
Com o PDV na operação “Início da venda”, a requisição da API trará o “Operation” com valor “cotStartSale”.
A API PDV requisitará para o integrador(parceiro) qual ação deverá ser executada, informando o ciclo da operação que ele está “Operation”, a identificação única da operação/documento “ID”, se a ação será executada antes ou após o evento “Event” e qual a versão da API “Version”.
{
"Event": "cetBefore",
"Execution": "cetContinue",
"ID": "001212000628814",
"Operation": "cotStartSale",
"ParkingTicket": null,
"Pay": null,
"Response": "",
"Sale": {
"Discount": 0.00,
"DiscountCodes": [],
"Header": {
"AccountingDate": ""AccountingDate": "2020-12-28T00:00:00",
"DateTimeIssue": "2020-12-28T17:01:04",
"IdDocument": 628814,
"IdDocumentIdStore": 6288141,
"IdTerminal": 212,
"IdStoreIdUser": 12,
"Identification": [],
"IdTerminalStatus": 212,"sttValid"
},
"ID": "001212000628814",
"Increase": 0.00,
"IdUserItems": 2[],
"Messages": {
"Customer": [],
"IdentificationUser": [],
},
"PartitionDiscount": [],
"PartitionIncrease": [],
"StatusPaymentChange": "sttValid"null,
},
"Payments": [],
"IDSolidaryChange": "001212000628814"null,
"Increase"Total": 0.00,
"Items"VouchersPrint": [],
"Messages},
"Version": {
"Customer": [],
"User": []
}1
}O integrador (parceiro) responderá para API PDV executar o comando de Obter valor (neste exemplo) “commandType: cctGetValue”, informando o título e subtítulo para a caixa de diálogo, o tipo do documento e tamanho do dado que será capturado, neste caso um CPF.
{
"version": 1,
"sale": {
"increase": 0,
"discount": 0,
"total": 0,
"header": null,
"payments": [],
"paymentChange": null,
"solidaryChange": null,
"PartitionDiscountitems": [],
"PartitionIncrease"discountCodes": [],
"messages": {
"PaymentChangecustomer": null,[
"Payments": [],
{
"SolidaryChangetext": null,"Ganhou 1000 pontos nessa compra\r\n"
"Total": 0.00,
}
],
"VouchersPrintuser": []
},{
"Version": 1
}
O integrador (parceiro) responderá para API PDV executar o comando de Obter valor (neste exemplo) “commandType: cctGetValue”, informando o título e subtítulo para a caixa de diálogo, o tipo do documento e tamanho do dado que será capturado, neste caso um CPF.
{
"version": 1,
"sale": {
"text": "Ganhou 100 pontos nessa compra\r\n"
}
]
},
"vouchersPrint": [
{
"increasetext": 0,
" CUPOM DESCONTO 1\r\n\r\n Cupom de 5% de desconto "discount": 0,
para \r\npróxima\r\ncompra, aplicado para todos os \r\nprodutos.\r\n\r\n[ImpBarra]1234567890\r\n[ImpFimBarra]\r\n"
"total": 0},
"header": null,
{
"paymentstext": [],
" CUPOM DESCONTO 2\r\n\r\n Cupom de 10% de desconto "paymentChange": null,
"solidaryChange": null,para \r\npróxima\r\ncompra, aplicado para todos os \r\nprodutos.\r\n\r\n[ImpBarra]1234567890\r\n[ImpFimBarra]\r\n"
}
],
"itemspartitionIncrease": [],
"discountCodes"partitionDiscount": [],
"messages": {
"price": 0,
"customerpartnerCode": [ {0,
"promotionCode": 696,
"discountAmount": 0
}
]
},
"textpay": "Ganhou 1000 pontos nessa compra\r\n"null,
"return": {
"code": 0
},
"execution": "cetContinue",
"interpret": {
"commandType": "cctGetValue",
"messageCommand": null,
"options": null,
}"value": {
"title": "Cliente fidelidade",
"subtitle": "Informe o CPF",
"dataType": "cvtPersonalDocument",
"size": ]0,
"documentTypes": [
"user": [ {cdtCPF",
"cdtCNPJ"
]
}
},
"text": "Ganhou 100 pontos nessa compra\r\n"
}
vouchersPrint": []
}
A API PDV requisitará para o integrador (parceiro) uma nova ação à ser tomada informando qual foi a resposta obtida pela aplicação de PDV, (neste exemplo), foi informado o número do CPF no “Response” o valor “12345678909”.
{
"Event": "cetBefore",
"Execution": "cetContinue",
"ID": "001212000628814",
"Operation": "cotStartSale",
"ParkingTicket": null,
"Pay": null,
"Response": "12345678909",
"Sale": {
"Discount": 0.0,
"DiscountCodes": [],
"Header": {
"AccountingDate": "2020-12-28T00:00:00",
"DateTimeIssue": "2020-12-28T17:01:04",
"IdDocument": 628814,
]"IdStore": 1,
"IdTerminal": 212,
"IdUser": 2,
}"Identification": [],
"Status": "vouchersPrintsttValid":
[ {
},
"ID": "001212000628814",
"Increase": 0.0,
"Items": [],
"Messages": {
"textCustomer": "[],
CUPOM DESCONTO 1\r\n\r\n Cupom de 5% de desconto para \r\npróxima\r\ncompra, aplicado para todos os \r\nprodutos.\r\n\r\n[ImpBarra]1234567890\r\n[ImpFimBarra]\r\n" "User": []
},
"PartitionDiscount": [],
"PartitionIncrease": [],
"PaymentChange": null,
"Payments": [],
"SolidaryChange": null,
"Total": 0.0,
"VouchersPrint": []
},
"Version": 1
}
Com o PDV na operação “Subtotal da venda”, a requisição da API trará o “Operation” com valor “cotSubtotalSale”.
A API PDV requisitará para o integrador(parceiro) qual ação deverá ser executada, informando o ciclo da operação que ele está “Operation”, a identificação única da operação/documento “ID”, se a ação será executada antes ou após o evento “Event”, qual a versão da API “Version”.
Informará também os dados da venda “Sale” e dos itens “Items”.
{
"Event": "cetAfter",
"Execution": "cetContinue",
"ID": "001212000628814",
"Operation": "cotSubtotalSale",
"ParkingTicket": null,
"Pay": null,
"Response": "",
"Sale": {
"Discount": 0.0,
"DiscountCodes": [],
"Header": { {
"text": " CUPOM DESCONTO 2\r\n\r\n Cupom de 10% de desconto para \r\npróxima\r\ncompra, aplicado para todos os \r\nprodutos.\r\n\r\n[ImpBarra]1234567890\r\n[ImpFimBarra]\r\n"
}
"AccountingDate": "2020-12-28T00:00:00",
"DateTimeIssue": "2020-12-28T17:01:04",
] "IdDocument": 628814,
"partitionIncreaseIdStore": []1,
"IdTerminal": 212,
"partitionDiscount": [ {
"IdUser": 2,
"Identification": [
{
"priceDocument": 0"12345678909",
"DocumentType": "cdtCPF",
"partnerCode"PartnerCode": 0,20
}
],
"Status": "sttValid"
},
"promotionCodeID": 696"001212000628814",
"Increase": 0.0,
"Items": [
{
"BarCode": "255",
"discountAmountCaptionPacking": 0"KG",
"Description": "SALADA MISTA kg",
"DiscountPrice": 0.0,
"IncreasePrice": 0.0,
}
"InternalCode": "255",
"ItemNumber": 1,
"PackingQuantity": 1.0,
"PartitionDiscount": [],
},
"payPartitionIncrease": null[],
"return "Quantity": {
2.0,
"codeSellerCode": 0,
},
"executionStatus": "cetContinuesttValid",
"interpret": {
"TotalPrice": 19.8,
"commandTypeUnitPrice": "cctGetValue",9.9
}
],
"messageCommandMessages": null,{
"Customer": [],
"optionsUser": null,[]
},
"PartitionDiscount": [],
"valuePartitionIncrease": {[],
"PaymentChange": null,
"Payments": [],
"SolidaryChange": null,
"Total": 19.8,
"titleVouchersPrint": "Cliente fidelidade",
"subtitle": "Informe o CPF",
"dataType": "cvtPersonalDocument",
"size": 0,
"documentTypes": [
"cdtCPF",
"cdtCNPJ"
]
}
},
"vouchersPrint": []
}
A API PDV requisitará para o integrador (parceiro) uma nova ação à ser tomada informando qual foi a resposta obtida pela aplicação de PDV, (neste exemplo), foi informado o número do CPF no “Response” o valor “12345678909”.
[]
},
"Version": 1
}
Com o PDV na operação “Finalização da venda”, a notificação da API trará o “Operation” com valor “cotEndSale”, informará também as informações da venda e dos itens.
A API PDV requisitará para o integrador(parceiro) qual ação deverá ser executada, informando o ciclo da operação que ele está “Operation”, a identificação única da operação/documento “ID”, se a ação será executada antes ou após o evento “Event”, qual a versão da API “Version”.
Informará também os dados da venda “Sale”, itens “Items” e dos pagamentos “Payments”.
{
"Event": "cetBefore",
"Execution": "cetContinue",
"ID": "001212000628816",
"Operation": "cotEndSale",
"ParkingTicket": null,
"Pay": null,
"Response": "",
"Sale": {
"Discount": 0.00,
"DiscountCodes{
"Event": "cetBefore",
"Execution": "cetContinue",
"ID": "001212000628814",
"Operation": "cotStartSale",
"ParkingTicket": null,
"Pay": null,
"Response": "12345678909",
"Sale": {
"Discount": 0.0,
"DiscountCodes": [],
"Header": {
"AccountingDate": "2020-12-28T00:00:00",
"DateTimeIssue": "2020-12-28T17:01:04",
"IdDocument": 628814,
"IdStore": 1,
"IdTerminal": 212,
"IdUser": 2,
"Identification": [],
"Status": "sttValid"
},
"ID": "001212000628814",
"Increase": 0.0,
"Items": [],
"Messages": {
"Customer": [],
"Header": {
"AccountingDate": "2020-12-28T00:00:00",
"UserDateTimeIssue": []
"2020-12-28T17:37:10",
"IdDocument": }628816,
"PartitionDiscountIdStore": []1,
"PartitionIncreaseIdTerminal": []212,
"PaymentChangeIdUser": null2,
"PaymentsIdentification": [],
"SolidaryChange": null,
{
"TotalDocument": 0.0"04620339610",
"VouchersPrintDocumentType": []
"cdtCPF",
},
"VersionPartnerCode": 1
}
Com o PDV na operação “Subtotal da venda”, a requisição da API trará o “Operation” com valor “cotSubtotalSale”.
A API PDV requisitará para o integrador(parceiro) qual ação deverá ser executada, informando o ciclo da operação que ele está “Operation”, a identificação única da operação/documento “ID”, se a ação será executada antes ou após o evento “Event”, qual a versão da API “Version”.
Informará também os dados da venda “Sale” e dos itens “Items”.
{ "Event": "cetBefore", "Execution": "cetContinue", "ID": "001600000590853", "Operation": "cotSubtotalSale", "Sale": { "Header": { 20
}
],
"Status": "sttValid"
},
"ID": "001212000628816",
"Increase": 0.00,
"Items": [
{
"BarCode": "255",
"CaptionPacking": "KG",
"Description": "SALADA MISTA kg",
"AccountingDateDiscountPrice": "2020-01-22T00:00:00", 1.98,
"DateTimeIssueIncreasePrice": "2020-01-22T14:15:36" 0.00,
}, "IDInternalCode": "001600000590853255",
"ItemsItemNumber": [ 1,
{ "PackingQuantity": 1,
"CaptionPackingPartitionDiscount": "UN", [
{
"Description": "COCA COLA", "InternalCodeDiscountAmount": "3988", 1.00,
"ItemNumberPartnerCode": 1, 20,
"PackingQuantityPrice": 19.000, 90,
"QuantityPromotionCode": 5.000 85
} ] } }
Com o PDV na operação “Finalização da venda”, a notificação da API trará o “Operation” com valor “cotEndSale”, informará também as informações da venda e dos itens.
A API PDV requisitará para o integrador(parceiro) qual ação deverá ser executada, informando o ciclo da operação que ele está “Operation”, a identificação única da operação/documento “ID”, se a ação será executada antes ou após o evento “Event”, qual a versão da API “Version”.
Informará também os dados da venda “Sale”, itens “Items” e dos pagamentos “Payments”.
{ "Event""cetBefore", "Execution""cetContinue", "ID""001600000590853", "Operation""cotEndSale", "Sale"{ "Header"{ },
{
"DiscountAmount": 1.00,
"PartnerCode": 20,
"Price": 9.90,
"PromotionCode": 50
}
],
"PartitionIncrease": [],
"Quantity": 2.00,
"AccountingDate""2020-01-22T00 00 00", SellerCode": 0,
"DateTimeIssue""2020-01-22T14 15 36"Status"IdDocument: "sttValid"154625,
"IdStoreTotalPrice": 1.78,
"IdTerminal"1, UnitPrice": 9.90
}
"IdUser"2, ],
"Identifcation"[ Messages": {
"Customer": [],
{ "User": []
"Document""12345678909", },
"PartitionDiscount": [],
"PartnerCode""10", PartitionIncrease": [],
"PaymentChange": null,
"DocumentType""cdtCPF" Payments": [
} {
], "AuthorizationCode": "",
}, "ID""001600000590853", Discount": 0.00,
"Items"[ "ExpirationDateCard": "",
{ "CaptionPackingFirstDigitCard": "UN",
"DescriptionFlagCard": "COCA COLA",
"InternalCodeIdWallet": "3988",
"ItemNumber"1, Increase": 0.00,
"PackingQuantity"1.000, InstallmentAmount": 0,
"Quantity"5.000"Status""sttValid", ItemNumber": 1,
"LastDigitCard": "TotalPrice"9.89,
"UnitPrice"1.00 NetworkCard": "",
} ], "PaymentChange"{ "OwnerCard": "",
"PaymentType""cptMoney", PartitionDiscount": [],
"Total"0.00 PartitionIncrease": [],
}, "Payments"[ PaymentNumber": 1,
{ "PaymentType": "cptMoney",
"ItemNumberTotal": 1.78,
"authorizationCodeTransactionCanceledCode": "FD455FKL34SS1100AXV",
"TransactionCode": "PaymentNumber"1,
"PaymentTypeTypeWallet": "cptMoney",
"Total"9.89 }
],
} ], "SolidaryChange": null,
"Total"0.000 : 1.78,
"VouchersPrint": []
},
"Version": 1
}