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.

PRODUTO

DDD's Possíveis

VALOR

CLARO

51, 53, 54, 55, 61, 62, 63, 64, 65, 66, 67, 68, 71, 73, 74, 75, 77, 79

1300

CLARO

22, 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, 99

1500

CLARO

11, 12, 13, 14, 15, 16, 17, 18, 19, 51, 53, 54, 55

3000

CLARO FIXO

11, 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, 99

1500, 9000

VIVO

51, 53, 54, 55, 61, 71, 73, 74, 75, 77

1300

VIVO

68, 51, 53, 54, 55

2000

VIVO FIXO

11, 12, 13, 14, 15, 16, 17, 18, 19

1500

TIM

11, 21, 22

2000, 3000

TIM

11

5000

TIM FIXO PRE

11, 12, 13

1000

TIM FIXO PRE

21, 22, 24, 27, 28

2000

TIM FIXO PRE

11, 12, 13, 21, 22, 24, 27, 28

3000

OI

51, 53, 54, 55, 68

2000, 3000

OI

41, 42, 43, 44, 45, 46, 71, 73, 74, 75, 77

4000

NEXTEL 4G

51, 53, 54 e 55

1000, 2000, 25000

ALGAR CELULAR

16, 17, 34, 37, 64

1500

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"
  }
}