Roteiro de Venda

Introdução

Nesta seção apresentamos o roteiro de vendas para os produtos de Recarga de Celular, para obter as informações dos produtos utilizados na venda realize a operação Consultar Produtos disponível no anexo de Consultas.

Utilize essa operação para obter os valores disponíveis para vendas de acordo o DDD (localidade). Válido apenas para produtos com negócio RECARGA TELEFONE.

OBS: Todos os valores retornados por essa consulta estarão disponíveis somente em ambiente de produção para o ambiente sandbox, por favor consulte [tabela de valores](ref:Tabela de valores para o ambiente sandbox)

Informação importante

Esta operação faz uma busca por valores disponíveis no gateway de recargas das operadoras, unindo-os com os valores disponíbilizados pela Tendência para o PDV que realizará a venda. O objetivo é mitigar a situação onde um determinado valor está disponível para um DDD e indisponível para outro. Por ser uma operação que depende de um serviço externo (sujeito as Intempéries de rede externa), a resposta da requisição pode levar até 5 minutos. Portanto, a recomendação é que seja consumido apenas 1x ao dia no ínicio da manhã (visto que as operadoras costumam modificar seus valores apenas de madrugada) e que o timeout para esta requisição seja configurado para até 5 minutos.

Como utilizar a operação

Primeiramente é necessário consumir a operação Consultar Produtos para retornar a listagem dos produtos disponíveis para venda. Deve-se utilizar somente produto cujo negócio é RECARGA TELEFONE.

...
"nome": "TIM",
"fornecedor": {
  "nome": "TIM"
},
"negocio": {
  "nome": "RECARGA TELEFONE",
  "tipoNegocio": 11
}
...
"nome": "CLARO",
"fornecedor": {
  "nome": "CLARO"
},
"negocio": {
  "nome": "RECARGA TELEFONE",
  "tipoNegocio": 11
}
...

Após o retorno da requisição, utilizar o(s) valor(es) do campo "nome" da chave "fornecedor" como parâmetro de entrada para o campo "concessionarias". Pode-se consultar uma ou mais concessionarias ao mesmo tempo, por exemplo:

"concessionarias":["TIM","CLARO"]
ou
"concessionarias":["CLARO"]
ou
"concessionarias":["CLARO","TIM","OI"]

Exemplo de RESQUEST:

POST /venda/telecom/valores-ddd HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvc2FuZGJveC5ncnVwb2NhcmQuY29tLmJyIiwic3ViIjoiNzk3OGI0MzItYzdhYS01MzJhLTgyMjAtMDIxNzlkZWUyZmMwIiwiaWF0IjoxNjUzMDY0NTY0LCJleHAiOjE2NTMyMzczNjQsIm5hbWUiOiJhZG1pbiJ9.Sl6ztTqG4CvHs-QnL6ldIlB31N1bE6-Tautv7BMwn7I
Host: sandbox.grupocard.com.br
Content-Length: 80

{"concessionarias":["VIVO"],"codigo":"81AA1C20B1688E4C7424C4E000334DD4"}
{
   "concessionarias":[
      "VIVO"
   ],
   "codigo":"81AA1C20B1688E4C7424C4E000334DD4"
}

Exemplo de RESPONSE:

{
   "multiValorado":[
      {
         "codigoArea":11,
         "valor":5000,
         "concessionaria":"Vivo",
         "codigoFilial":"00501000000",
         "nomeFilial":"Vivo SP",
         "fornecedor":"VIVO"
      },
      {
         "codigoArea":11,
         "valor":10000,
         "concessionaria":"Vivo",
         "codigoFilial":"00501000000",
         "nomeFilial":"Vivo SP",
         "fornecedor":"VIVO"
      },
      {
         "codigoArea":12,
         "valor":5000,
         "concessionaria":"Vivo",
         "codigoFilial":"00501000000",
         "nomeFilial":"Vivo SP",
         "fornecedor":"VIVO"
      },
      {
         "codigoArea":12,
         "valor":10000,
         "concessionaria":"Vivo",
         "codigoFilial":"00501000000",
         "nomeFilial":"Vivo SP",
         "fornecedor":"VIVO"
      }
   ]
}

Tabela de valores para o ambiente sandbox

Segue abaixo uma tabela com os valores possíveis para serem utilizados nos testes dos produtos telecom no ambiente de homologação, sendo organizada da seguinte maneira: produto, DDD e valor.

OBS: Esta tabela não representa todos os valores de recarga disponíveis para os produtos, no ambiente de sandbox foi realizada uma limitação apenas com caráter de testes.

PRODUTODDD's PossíveisVALOR
CLARO51, 53, 54, 55, 61, 62, 63, 64, 65, 66, 67, 68, 71, 73, 74, 75, 77, 791300
CLARO22, 21, 24, 27, 28, 31, 32, 33, 34, 35, 37, 38, 51, 53, 54, 55, 69, 81, 82, 83, 84, 85, 86, 87, 88, 89, 91, 92, 93, 94, 95, 96, 97, 98, 991500
CLARO11, 12, 13, 14, 15, 16, 17, 18, 19, 51, 53, 54, 553000
CLARO FIXO11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 24, 27, 28, 31, 32, 33, 34, 35, 37, 38, 71, 73, 74, 75, 77, 79, 81, 82, 83, 84, 85, 86, 87, 88, 89, 91, 92, 93, 94, 95, 96, 97, 98, 991500, 9000
VIVO51, 53, 54, 55, 61, 71, 73, 74, 75, 771300
VIVO68, 51, 53, 54, 552000
VIVO FIXO11, 12, 13, 14, 15, 16, 17, 18, 191500
TIM11, 21, 222000, 3000
TIM115000
TIM FIXO PRE11, 12, 131000
TIM FIXO PRE21, 22, 24, 27, 282000
TIM FIXO PRE11, 12, 13, 21, 22, 24, 27, 283000
OI51, 53, 54, 55, 682000, 3000
OI41, 42, 43, 44, 45, 46, 71, 73, 74, 75, 774000
NEXTEL 4G51, 53, 54 e 551000, 2000, 25000
ALGAR CELULAR16, 17, 34, 37, 641500

Fluxo de sucesso

1 - Consumir a operação Solicitar Venda:

Utilize essa operação para solicitar a venda de qualquer produto disponível no estabelecimento. Este serviço faz apenas a SOLICITAÇÃO da venda, portanto, se na resposta desta operação o campo status for igual a AUTORIZADA, na sequência a confirmação da transação deve ser enviada através da operação a seguir: Confirmar Venda

Obs. 1: Se ao invocar essa operação o cliente não obter uma resposta, é ALTAMENTE RECOMENDADO que seja realizado o desfazimento da solicitação.

Obs. 2: A representação dos centavos no campo "valor" não deve ter separação por virgula. Ex: R$10,99 = 1099

Obs.3: O campo "idExterno" é o identificador da requisição, sendo assim, deve ser enviado com um valor DIFERENTE a cada requisição.

Exemplo de REQUEST:

POST /venda/telecom/solicitar HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvc2FuZGJveC5ncnVwb2NhcmQuY29tLmJyIiwic3ViIjoiNmQwZjQyYzQtMWNjOS01ODNmLWE3N2QtZDI0ZmI0NGFjYTdhIiwiaWF0IjoxNjU2MzQxNTM2LCJleHAiOjE2NTY1MTQzMzYsIm5hbWUiOiJBZG1pbmlzdHJhdG9yIn0.-dnblIvspnmVnS-IQGjZkU3gZcKOr_vX4z1dG_a92hA
Host: sandbox.grupocard.com.br
Content-Length: 224

{"estabelecimento":"81AA1C20B1688E4C7424C4E000334DD4","idExterno":"1000","produto":"CLARO","fornecedor":"CLARO","tipoProduto":"ONLINE_PIN","telefone":"67999999999","dataHoraCliente":"2022-06-27T13:09:40.244Z","valor":"1300"}
{
   "estabelecimento":"81AA1C20B1688E4C7424C4E000334DD4",
   "idExterno":"1000",
   "produto":"CLARO",
   "fornecedor":"CLARO",
   "tipoProduto":"ONLINE_PIN",
   "telefone":"67999999999",
   "dataHoraCliente":"2022-06-27T13:09:40.244Z",
   "valor":"1300"
}

Exemplo de RESPONSE:

{
  "venda": {
    "estabelecimento": {
      "cnpjCpf": "75.862.116/0001-39",
      "nome": "Homologação Plataforma WS recarga Multiproduto - NÃO MEXER"
    },
    "produto": {
      "fornecedor": {
        "nome": "CLARO"
      }
    },
    "transacao": {
      "valor": 1300,
      "status": "AUTORIZADA",
      "instrucao": "{\"recargaTelefone\":{\"nsuFornecedor\":\"211111578\",\"mensagens\":\"Recarga feita com sucesso.\",\"mensagem_validade\":\"validos por 130 dias\"}}",
      "idTransacao": "35356039500622",
      "dataHora": "2022-06-27T09:10:09.000-04:00"
    },
    "idExterno": "1000"
  }
}

2 - Consumir a operação Confirmar Venda

Utilize essa operação para efetivar/confirmar uma transação de venda solicitada anteriormente pela operação Solicitar Venda.

Obs. 1: A transação uma vez sendo Confirmada, seu status não poderá mais ser alterado, e mesmo que a operação seja invocada para tal ação, não surtirá efeito!

Exemplo de REQUEST:

POST /venda/telecom/confirmar HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvc2FuZGJveC5ncnVwb2NhcmQuY29tLmJyIiwic3ViIjoiNmQwZjQyYzQtMWNjOS01ODNmLWE3N2QtZDI0ZmI0NGFjYTdhIiwiaWF0IjoxNjU2MzQxNTM2LCJleHAiOjE2NTY1MTQzMzYsIm5hbWUiOiJBZG1pbmlzdHJhdG9yIn0.-dnblIvspnmVnS-IQGjZkU3gZcKOr_vX4z1dG_a92hA
Host: sandbox.grupocard.com.br
Content-Length: 148

{"estabelecimento":"81AA1C20B1688E4C7424C4E000334DD4","idTransacao":"35356039500622","produto":"CLARO","dataHoraCliente":"2022-06-27T13:09:40.244Z"}
{
   "estabelecimento":"81AA1C20B1688E4C7424C4E000334DD4",
   "idTransacao":"35356039500622",
   "produto":"CLARO",
   "dataHoraCliente":"2022-06-27T13:09:40.244Z"
}

Exemplo de RESPONSE:

{
  "transacao": {
    "status": "EFETIVADA",
    "idTransacao": "35356039500622"
  }
}

Fluxo de cancelamento

1 - Consumir a operação Solicitar Venda:

Utilize essa operação para solicitar a venda de qualquer produto disponível no estabelecimento. Este serviço faz apenas a SOLICITAÇÃO da venda, portanto, se na resposta desta operação o campo status for igual a AUTORIZADA, na sequência a confirmação da transação deve ser enviada através da operação a seguir: Confirmar Venda

Obs. 1: Se ao invocar essa operação o cliente não obter uma resposta, é ALTAMENTE RECOMENDADO que seja realizado o desfazimento da solicitação.

Obs. 2: A representação dos centavos no campo "valor" não deve ter separação por virgula. Ex: R$10,99 = 1099

Obs.3: O campo "idExterno" é o identificador da requisição, sendo assim, deve ser enviado com um valor DIFERENTE a cada requisição.

Exemplo de REQUEST:

POST /venda/telecom/solicitar HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvc2FuZGJveC5ncnVwb2NhcmQuY29tLmJyIiwic3ViIjoiNmQwZjQyYzQtMWNjOS01ODNmLWE3N2QtZDI0ZmI0NGFjYTdhIiwiaWF0IjoxNjU2MzQxNTM2LCJleHAiOjE2NTY1MTQzMzYsIm5hbWUiOiJBZG1pbmlzdHJhdG9yIn0.-dnblIvspnmVnS-IQGjZkU3gZcKOr_vX4z1dG_a92hA
Host: sandbox.grupocard.com.br
Content-Length: 224

{"estabelecimento":"81AA1C20B1688E4C7424C4E000334DD4","idExterno":"1001","produto":"CLARO","fornecedor":"CLARO","tipoProduto":"ONLINE_PIN","telefone":"67999999999","dataHoraCliente":"2022-06-27T13:09:40.244Z","valor":"1300"}
{
   "estabelecimento":"81AA1C20B1688E4C7424C4E000334DD4",
   "idExterno":"1001",
   "produto":"CLARO",
   "fornecedor":"CLARO",
   "tipoProduto":"ONLINE_PIN",
   "telefone":"67999999999",
   "dataHoraCliente":"2022-06-27T13:09:40.244Z",
   "valor":"1300"
}

Exemplo de RESPONSE:

{
  "venda": {
    "estabelecimento": {
      "cnpjCpf": "75.862.116/0001-39",
      "nome": "Homologação Plataforma WS recarga Multiproduto - NÃO MEXER"
    },
    "produto": {
      "fornecedor": {
        "nome": "CLARO"
      }
    },
    "transacao": {
      "valor": 1300,
      "status": "AUTORIZADA",
      "instrucao": "{\"recargaTelefone\":{\"nsuFornecedor\":\"211111578\",\"mensagens\":\"Recarga feita com sucesso.\",\"mensagem_validade\":\"validos por 130 dias\"}}",
      "idTransacao": "35356039530622",
      "dataHora": "2022-06-27T09:17:06.000-04:00"
    },
    "idExterno": "1001"
  }
}

2 - Consumir a operação Cancelar Venda

Utilize essa operação para cancelar uma transação de venda solicitada anteriormente pela operação Solicitar Venda.

Obs. 1: A transação uma vez sendo Cancelada, seu status não poderá mais ser alterado, e mesmo que a operação seja invocada para tal ação, não surtirá efeito!

Exemplo de REQUEST:

POST /venda/telecom/cancelar HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvc2FuZGJveC5ncnVwb2NhcmQuY29tLmJyIiwic3ViIjoiNmQwZjQyYzQtMWNjOS01ODNmLWE3N2QtZDI0ZmI0NGFjYTdhIiwiaWF0IjoxNjU2MzQxNTM2LCJleHAiOjE2NTY1MTQzMzYsIm5hbWUiOiJBZG1pbmlzdHJhdG9yIn0.-dnblIvspnmVnS-IQGjZkU3gZcKOr_vX4z1dG_a92hA
Host: sandbox.grupocard.com.br
Content-Length: 118

{"idExterno":"1001","estabelecimento":"81AA1C20B1688E4C7424C4E000334DD4","dataHoraCliente":"2022-06-27T13:09:40.244Z"}
{
   "idExterno":"1001",
   "estabelecimento":"81AA1C20B1688E4C7424C4E000334DD4",
   "dataHoraCliente":"2022-06-27T13:09:40.244Z"
}

Exemplo de RESPONSE:

{
  "transacao": {
    "status": "CANCELADA"
  }
}