Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

Informações Gerais

 

Especificação

Produto

RM

MóduloGestão Financeira

Portal Educacional e Processo Seletivo

Segmento Executor

Educacional

Projeto

R_EDU_CTB005

IRM

PCREQ-8624

Requisito

PCREQ-8625

Subtarefa

PDR_EDU_CTB003-594

Release de Entrega Planejada

12.1.1012

Réplica

 

País

( x ) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Outros

CheckoutCielo_Manual_do_desenvolvedor_v1_3.pdf

Checkout Cielo - Manual Do Desenvolvedor V1.6 - API POST.pdf

Objetivo

Implementar o novo modelo de integração de pagamento com cartão CHECKOUT CIELO, descrevendo as funcionalidades, os métodos a serem utilizados, listando informações a serem enviadas e recebidasno portal Educacional e Processo Seletivo.

 

Definição da Regra de Negócio

O CHECKOUT CIELO é uma solução de checkout projetada para aumentar a conversão, simplificar o processo de compra, reduzir fraudes e custos operacionais. 

1 - Parametrização (Etapa 02.02.02.03 - Cartão de Crédito/Débito)

1.1 - Configurações Gerais Cartão de Crédito/DébitoDébito 

  • Configurações Gerais 1/2: 
    Como a solução BuyPage da Cielo não foi descontinuada, será criado um parâmetro "Modelo E-commerce" para informar qual a modelo de integração com a Cielo será utilizada, com as seguintes opções:
0
  • 1 - BuyPage e
1 - Checkout (Id. 1104 da FPARAM usando o campo INTEIRO)

Será criado um parâmetro para informar a URL de Post (Id. 1105 da FPARAM usando o campo TEXTO). Este parâmetro será visível para ambos os modelos.

Os parâmetros Código de afiliação do Lojista, URL Ambiente Teste, URL Ambiente Produção e Ambiente Ativo ficará habilitado somente para o modelo BuyPage. E o parâmetro Chave de acesso do Lojista será habilitado para ambos os modelos. 
  • 2 - Checkout 
  • Configurações Gerais 2/2:
    Se a opção BuyPage marcada serão exibidos os campos "Codigo de Afiliação do Lojista", "Ambiente Ativo", "Chave Acesso do Lojista", "URL Ambiente Teste" e "URL Ambiente Produção".
    Se a opção Checkout marcada serão exibidos os campos: "MerchantId" que é o identificador do cliente junto a Cielo, e "URL de Post" onde será enviado um post para Cielo utilizando a API Rest, para iniciar a transação do pagamento com cartão de crédito/débito.

1.2 - Configurações Cartão de Crédito/Débito

  • Bandeira
Visa

Os parâmetros Ativar Bandeira Visa e Ativar Função Débito serão descontinuados, ou seja, para o modelo BuyPage na página onde o usuário seleciona a bandeira e função crédito ou débito sempre será apresentada. 

O parâmetro Numero máximo de Parcelas será habilitado somente no modelo BuyPage.

1.3 - Configurações Cartão Bandeira MasterCard

O parâmetro Ativar Bandeira Master será descontinuado, ou seja, para o modelo BuyPage na página onde o usuário seleciona a bandeira e função crédito ou débito sempre será apresentada. 

O parâmetro Numero máximo de Parcelas será habilitado somente no modelo BuyPage.

1.4 - Configurações Cartão Outras Bandeiras

Será criada essa nova etapa para configuração da Conta Caixa e Meio de Pagamento quando utilizado outras bandeiras para pagamento com cartão. 

  • 1/3:
    Configurações de crédito/débito para a bandeira Visa, com campos de Conta Caixa e Meio de Pagamento. Se opção BuyPage marcada será exibido o campo "Ativar Bandeira Visa", "Numero de Parcelas" e "Ativar Função Débito".
  • Bandeira 2/3:
    Configurações de crédito/débito para a bandeira Master, com campos de Conta Caixa e Meio de Pagamento. Se opção BuyPage marcada será exibido o campo "Ativar Bandeira Master" "Número de Parcelas" e somente a opção crédito.
  • Bandeira 3/3:
    Configurações de crédito para outras bandeiras, com campos de Conta Caixa e Meio de Pagamento. Somente visível se opção Checkout marcada.

2 - Envio do Post para Cielo2 - Integração para Vendas de Produtos ou Serviços

Será utilizada a integração com Carrinho de Compras O Endpoint (URL) para onde as requisições com os dados do carrinho serão enviadas, utilizando o método HTTP POST utilizando API Rest para envio do post. A URL de Post que deverá ser utilizada é https://cieloecommerce.cielo.com.br/api/public/v1/orders.

A requisição consiste dos dados Para a integração serão utilizados os parâmetros abaixo:

REQUISIÇÃO

CABEÇALHO HTTP

Header Http

CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
MerchantIdGuidSim36Identificador único da loja.Formato:00000000-0000-0000-0000-000000000000
Content-typeAlfanuméricoSimn/aTipo do conteúdo da mensagem a ser enviada. Utilizar:“application/json”
OBJETO RAIZ DA REQUISIÇÃO

Body

CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
OrderNumberAlfanuméricoOpcional0..64Número do pedido da loja.
SoftDescriptorAlfanuméricoOpcional0..13Texto para ser exibido na fatura do portador, após o nome do estabelecimento comercial.
CartCart Simn/aInformações sobre o carrinho de compras.
ShippingShippingSimn/aInformações sobre a entrega do pedido.“
PaymentPaymentConditionaln/aInformações sobre o pagamento do pedido.
CustomerCustomerCondicionaln/aInformações sobre dados pessoais do comprador.
OptionsOptionsConditionaln/aInformações sobre opções configuráveis do pedido.
Cart
Parâmetro de requisição com informações sobre o carrinho de compras
.
 
Items 
CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
DiscountDiscountOpcionaln/aInformações do desconto sobre o carrinho de compras.
ItemsItem[]Simn/aLista de itens items do carrinho de compras (deve conter no mínimo 1 item).

Discount

Parâmetro de requisição com informações sobre descontos.

Independentemente do tipo do desconto, ele deverá ser calculado antes da soma do valor do frete.
CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
TypeAlfanuméricoCondicionaln/aTipo do desconto a ser aplicado: "Amount”, “Percent”. Obrigatório caso Valuefor maior ou igual a zero.
ValueNuméricoCondicional0..18Valor do desconto a ser aplicado(pode ser valor absoluto ou percentual). Obrigatório caso Typefor “Amount” ou “Percent”.

Caso o tipo de desconto escolhido seja o Amount, deverá ser inserido o valor em centavos. Ex.: 100 = 1,00.

Caso o tipo de desconto escolhido seja o Percentual, deverá ser inserido o valor em número inteiro. Ex.: 10 = 10%.

Item

Parâmetro de requisição com informações sobre o item do carrinho de compras. 

Cart.Items.[].NameAlfanumerico
CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
NameAlfanuméricoSim1...128Nome do item no carrinho.
DescriptionAlfanuméricoOpcional0.256Descrição do item no carrinho.
Cart.Items.[].UnitPriceNumericoUnitPriceNuméricoSim1...18Preço unitário do item no carrinho (em centavos.* Ex: R$ 1,00 = 100)*.
Cart.items.[].QuantityNuméricoSim1..9Quantidade do item no carrinho.
Cart.Items.[].TypeAlfanuméricoSimn/aTipo do item no carrinho.
SkuAlfanuméricoOpcional0..32Sku do item no carrinho.
WeightNuméricoCondicional0..9Peso em gramas do item no carrinho.

Tipos de item

TIPODESCRIÇÃO
AssetMaterial Físico
DigitalProdutos Digitais
ServiceServiços
PaymentOutros

Shipping

Parâmetro de requisição com informações sobre endereço e serviço de entrega dos produtos.

Tipo do frete: “Correios”, “FixedAmount”, “Free”, “WithoutShippingPickUp”, .SourceZipCodeNumérico o endereço de entrega do comprador.
"Service"
Shipping Simn/aInformações sobre a entrega do pedido
Shipping.
CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
TypeAlfanuméricoSimn/a“WithoutShipping”
Customer Condicional 8CEP de origem do carrinho de compras.
TargetZipCodeNuméricoOpcional8CEP do endereço de entrega do comprador.
AddressAddressOpcionaln/aInformações sobre
ServicesService[]Condicionaln/aLista de serviços de frete.

Address

Parâmetro de requisição com informações sobre o endereço do comprador. 

CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
StreetAlfanuméricoSim1..256Rua, avenida, travessa, etc, do endereço de entrega do comprador.
NumberAlfanuméricoSim1..8Número do endereço de entrega do comprador.
ComplementAlfanuméricoOpcional0..256Complemento do endereço de entrega do comprador.
DistrictAlfanuméricoSim1..64Bairro do endereço de entrega do comprador.
CityAlfanuméricoSim1..64Cidade do endereço de entrega do comprador.
StateAlfanuméricoSim2Estado (UF) do endereço de entrega do comprador.

Service

Parâmetro de requisição com informações sobre o serviço de frete que será utilizado.

CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
NameAlfanuméricoSim1..128Nome do serviço de frete.
PriceNuméricoSim1..18Preço do serviço de frete (em centavos. Ex: R$ 1,00 = 100).
DeadlineNuméricoCondicional0..9Prazo de entrega (em dias).

Payment

Parâmetro com informações sobre o desconto para pagamento via boleto ou débito online.

CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
BoletoDiscountNuméricoCondicional0..3Desconto, em porcentagem, para pagamentos a serem realizados com boleto.
DebitDiscountNuméricoCondicional0..3Desconto, em porcentagem, para pagamentos a serem realizados com débito online.
RecurrentPaymentRecurrentPaymentCondicional Objeto necessário para pagamentos recorrentes

Customer

Parâmetro de requisição com informações sobre o comprador. 

.
dados pessoais do comprador
Customer.
CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
IdentityNuméricoCondicional0..14CPF ou CNPJ do comprador.
Customer.FullNameAlfanuméricoCondicional0..288Nome completo do comprador.
Customer.EmailAlfanuméricoCondicional0..64Email do comprador.
Customer.Phone.NuméricoCondicional0..11Telefone do comprador
Options

Parâmetro para configurar o sistema de anti-fraude para a transação.

 Condicional n/aInformações sobre opções configuráveis do pedido.
Options.
CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
AntifraudEnabledBooleanConditionaln/aHabilitar ou não a análise de fraude para o pedido.


RESPOSTA

EM CASO DE SUCESSO

Em caso de sucesso

CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
SettingsSettingsSimn/aInformações da resposta sobre a criação do pedido.

Settings

Parâmetro de resposta, recebido em caso de sucesso.

Alfanumérico
CheckoutUrlAlfanuméricoSim1..128URL de checkout do pedido. Formato: https://cieloecommerce.cielo.com.br/transacional/order/index?id={id}
ProfileAlfanuméricoSim1..16Perfil do lojista: fixo “CheckoutCielo”.
VersionAlfanuméricSim1Versão do serviço de criação de pedido (versão: 1).
EM CASO DE ERRO

Em caso de erro

CAMPOTIPOOBRIGATÓRIOTAMANHODESCRIÇÃO
MessageStringSim1..254Mensagem descritiva do erro

 

3 - Página de Extrato Financeiro - Portal Educacional e Processo Seletivo

Quando o cliente estiver usando o modelo Checkout da Cielo e no Totvs Gestão Educacional a opção "Pagamento dos boletos pode ser efetuado com cartão de crédito" estive marcado, na tela 'Confirmar Dados Cadastrais', quando o usuário clicar na imagem do cartão no botão 'Avançar' o mesmo será redirecionado para a pagina de pagamento segura da Cielo.

4 - Retorno, Notificação e Mudança de status

4.1 - Será criada uma página de Retorno retorno na qual o usuário será redirecionado assim que pagamento for concluído no ambiente seguro da Cielo. Caso o cliente não configure a página de retorno no BackOffice da Cielo o usuário será redirecionado para uma página própria da Cielo.

4.2 - Será criada uma página, sem autenticação, que deve ser preparadas para receber os dados do POST de Notificação e Mudança de Status enviados pela Cielo no momento que a transação é finalizada ou ter seu status alterado. A página deverá exibir um código informando que recebeu a notificação e a processou com sucesso. Código:<status>OK</status>

Parâmetros do Post de Notificação

PARÂMETRO

DESCRIÇÃO

TIPO DO CAMPO

TAM MÍN

TAM MÁX

checkout_cielo_order_number

Identificador único gerado pelo CHECKOUT CIELO

Alfanumérico

1

32

amount

Preço unitário do produto, em centavos (ex: R$ 1,00 = 100)

Numérico

1

10

order_number

Número do pedido enviado pela loja

Alfanumérico

1

32

created_date

Data da criação do pedido (dd/MM/yyyy HH:mm:ss)

Alfanumérico

1

20

customer_name

Nome do consumidor. Se enviado, esse valor já vem preenchido na tela do CHECKOUT CIELO

Alfanumérico

1

289

customer_identity

Identificação do consumidor (CPF ou CNPJ) Se enviado, esse valor já vem preenchido na tela do CHECKOUT CIELO

Alfanumérico

1

14

customer_email

E-mail do consumidor. Se enviado, esse valor já vem preenchido na tela do CHECKOUT CIELO

Alfanumérico

1

64

customer_phone

Telefone do consumidor. Se enviado, esse valor já vem preenchido na tela do CHECKOUT CIELO

Numérico

1

11

discount_amount

Valor do desconto fornecido (enviado somente se houver desconto)

Numérico

1

10

shipping_type

Modalidade de frete

Numérico

1

1

shipping_name

Nome do frete

Alfanumérico

1

128

shipping_price

Valor do serviço de frete, em centavos (ex: R$ 10,00 = 1000)

Numérico

1

10

shipping_address_zipcode

CEP do endereço de entrega

Numérico

1

8

shipping_address_district

Bairro do endereço de entrega

Texto

1

64

shipping_address_city

Cidade do endereço de entrega

Alfanumérico

1

64

shipping_address_state

Estado de endereço de entrega

Alfanumérico

1

64

shipping_address_line1

Endereço de entrega

Alfanumérico

1

256

shipping_address_line2

Complemento do endereço de entrega

Alfanumérico

1

256

shipping_address_number

Número do endereço de entrega

Numérico

1

8

payment_method_type

Cód. do tipo de meio de pagamento

Numérico

1

1

payment_method_brand

Bandeira (somente para transações com meio de pagamento cartão de crédito)

Numérico

1

1

payment_method_bank

Banco emissor (Para transações de Boleto e Débito Automático)

Numérico

1

1

payment_maskedcredicard

Cartão Mascarado (Somente para transações com meio de pagamento cartão de crédito)

Alfanumérico

1

20

payment_installments

Número de parcelas

Numérico

1

1

payment_antifrauderesult

Status das transações de cartão de Crédito no Antifraude

Numérico

1

1

payment_boletonumber

Numero do boleto gerado

String

  

payment_boletoexpirationdate

Data de vencimento para transações realizadas com boleto bancário

Numérico

1

10

payment_status

Status da transação

Numérico

1

1

tid

TID Cielo gerado no momento da autorização da transação

Alfanumérico

1

32

 

4.3 - Será criada uma página que deve ser preparada para receber os dados do POST de Mudança de Status enviados pela Cielo quando um pedido tiver seu status alterado. Este post contém apenas os dados de identificação do pedido. A página deverá exibir um código informando que recebeu a mudança de status e a processou com sucesso. Código:<status>OK</status>

Parâmetros do Post de Mudança de Staus

PARÂMETRO

DESCRIÇÃO

TIPO DO CAMPO

TAM MÍN

TAM MÁX

checkout_cielo_order_number

Identificador único gerado pelo CHECKOUT CIELO.

Alfanumérico

1

32

amount

Preço unitário do produto, em centavos (ex: R$ 1,00 = 100)

Numérico

1

10

order_number

Número do pedido enviado pela loja

Alfanumérico

1

32

payment_status

Status da transação

Numérico

1

1

 

Tabela 1 - Meio de Pagamento

Valor
Descrição
1Cartão de Crédito
2

Boleto Bancário

3Débito Online
4Cartão de Débito

Tabela 2 - Bandeira

Valor
Descrição
1Visa
2Mastercard
3AmericanExpress
4Diners
5Elo
6Aura
7JCB

 

Tabela 3 - Banco Emissor

Valor
Descrição
1Banco do Brasil
2Bradesco

 

Tabela 4 - Status AntiFraude

Valor
Descrição
1Baixo Risco
2Alto Risco
3Não Finalizado
4Risco Moderado

 

Tabela 5 - Status da transaçãoO parâmetro payment_status poderá vir com um dos seguintes valores:

VALORDESCRIÇÃO
1Pendente (Para todos os meios de pagamento)
2Pago (Para todos os meios de pagamento)
3Negado (Somente para Cartão Crédito)
4Expirado (Cartão de Credito e Boleto)
5Cancelado (Para cartões de crédito)
6Não Finalizado (Todos os meios de pagamento)
7Autorizado (somente para Cartão de Crédito)
8ChargeBack (Somente Cartão de Credito)

5 - Cancelamento 

Diferente do modelo BuyPage, no modelo de Checkout o cancelamento do pagamento com cartão deve ser feito no Backoffice Checkout da Cielo e no Totvs Gestão Financeira manualmente.

 

Processos:

Após receber o post notificação e enviar o status "ok" o sistema deve armazenar na tabela de Integração do cartão (FINTEGRACAOCARTAO), com os seguintes valores:

  • IDENTIFICADORORIGEM: "Coligada" + '|' + "Identificador do Boleto"
  • IDPROCESSO: tid
  • IDCHECKOUT: checkout_cielo_order_numbe
  • BANDEIRA: payment_method_brand
  • DATAHORA: created_date
  • IDSTATUS: payment_status
  • CODAFILIACAO: merchantid
  • MEIOPAGTO: payment_method_type
  • NUMPARCELAS; payment_installments
  • CODCOLIGADA: código da coligada
  • IDBOLETO: identificador do boleto
  • IDMODELO: preencher com 2 (Checkout Cielo)

Os pagamentos com cartão de crédito com status Autorizado serão automaticamente marcados como Baixa Pendente no RM e serão baixado somente quando o pagamento for capturado.

Ao mudar o status de pagamento com status "Pago" para "Cancelado" ou "ChargeBack" no BackOffice da Cielo, será automaticamente cancelado a baixa do boleto referente ao pagamento no RM.

Ao mudar o status de pagamento com status "Autorizado" para "Cancelado" no BackOffice da Cielo, será automaticamente liberado a Baixa Pendente do lançamento referente ao pagamento no RM.

Toda mudança de status do pagamento na Cielo será também alterado o status na tabela Integração do cartão (FINTEGRACAOCARTAO) do RM.

5 6 - Backoffice Checkout Cielo

O cliente deve configurar as 3 URLs (a URL de Retorno, Notificação e Mudança de Status ), as bandeiras de cartão ativas, o numero máximo de parcelas e o ambiente de testes em seu Backoffice Checkout Cielo, na aba Configurações:

Image Removed

 

no BackOffice. A URL de Retorno é opcional.

URL de Retorno: .../Corpore.Net/Source/Fin-Financeiro/RM.Fin.Lan/FinLanCartaoRetornoCheckout.aspx

URL de Notificação : .../Corpore.Net/Source/Fin-Financeiro/RM.Fin.Lan/CheckoutCielo/FinLanCartaoNotificacao.aspx

URL de Mudança de Status: .../Corpore.Net/Source/Fin-Financeiro/RM.Fin.Lan/CheckoutCielo/FinLanCartaoMudancaStatus.aspx

Image Added

Fluxo do Processo

Image Added

Dicionário de Dados

 

Arquivo ou Código do Script: FS.2016.03_01; FS.2016.03_02; FS.2016.06_02

 

Fluxo do Processo

Image Removed

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.