Histórico da Página
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, no portal Educacional e Processo Seletivo.
Definição da Regra de Negócio
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
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: 1 - BuyPage e 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 em Configuraçoes Gerais 2/2 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.
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.
1.2 - Configurações Cartão de Crédito/Débito
- Bandeira
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 HTTPHeader Http
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
---|---|---|---|---|
MerchantId | Guid | Sim | 36 | Identificador único da loja.Formato:00000000-0000-0000-0000-000000000000 |
Content-type | Alfanumérico | Sim | n/a | Tipo do conteúdo da mensagem a ser enviada. Utilizar:“application/json” |
Body
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
---|---|---|---|---|
OrderNumber | Alfanumérico | Opcional | 0..64 | Número do pedido da loja. |
SoftDescriptor | Alfanumérico | Opcional | 0..13 | Texto para ser exibido na fatura do portador, após o nome do estabelecimento comercial. |
CartCart | Sim | n/a | Informações sobre o carrinho de compras. | |
Shipping | Shipping | Sim | n/a | Informações sobre a entrega do pedido.“ |
Payment | Payment | Conditional | n/a | Informações sobre o pagamento do pedido. |
Customer | Customer | Condicional | n/a | Informações sobre dados pessoais do comprador. |
Options | Options | Conditional | n/a | Informações sobre opções configuráveis do pedido. |
Cart |
. |
Items | ||||
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
---|---|---|---|---|
Discount | Discount | Opcional | n/a | Informações do desconto sobre o carrinho de compras. |
Items | Item[] | Sim | n/a | Lista 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.CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
---|---|---|---|---|
Type | Alfanumérico | Condicional | n/a | Tipo do desconto a ser aplicado: "Amount”, “Percent”. Obrigatório caso Value for maior ou igual a zero. |
Value | Numérico | Condicional | 0..18 | Valor do desconto a ser aplicado(pode ser valor absoluto ou percentual). Obrigatório caso Type for “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.[].Name | Alfanumerico | Sim | 1. | |||
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO | ||
---|---|---|---|---|---|---|
Name | Alfanumérico | Sim | 1..128 | Nome do item no carrinho. | ||
Description | Alfanumérico | Opcional | 0.256 | Descrição do item no carrinho. | ||
Cart.Items.[].UnitPrice | Numerico | UnitPrice | Numérico | Sim | 1...18 | Preço unitário do item no carrinho (em centavos.* Ex: R$ 1,00 = 100)*. |
Cart.items.[].Quantity | Numérico | Sim | 1..9 | Quantidade do item no carrinho. | ||
Cart.Items.[].Type | Alfanumérico | Sim | n/a | Tipo do item no carrinho. | ||
Sku | Alfanumérico | Opcional | 0..32 | Sku do item no carrinho. | ||
Weight | Numérico | Condicional | 0..9 | Peso em gramas do item no carrinho. |
Tipos de item
TIPO | DESCRIÇÃO |
---|---|
Asset | Material Físico |
Digital | Produtos Digitais |
Service | Serviços |
Payment | Outros |
Shipping
Parâmetro de requisição com informações sobre endereço e serviço de entrega dos produtos.
"Service" | |||||
Shipping | Sim | n/a | Informações sobre a entrega do pedido | ||
Shipping. | |||||
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO | |
---|---|---|---|---|---|
Type | Alfanumérico | Sim | n/a | Tipo do frete: “Correios”, “FixedAmount”, “Free”, “WithoutShippingPickUp”,“WithoutShipping” | .|
Customer | NuméricoCondicional | 8 | CEP de origem do carrinho de compras. | ||
TargetZipCode | Numérico | Opcional | 8 | CEP do endereço de entrega do comprador. | |
Address | Address | Opcional | n/a | Informações sobre | o endereço de entrega do comprador.|
Services | Service[] | Condicional | n/a | Lista de serviços de frete. |
Address
Parâmetro de requisição com informações sobre o endereço do comprador.
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
---|---|---|---|---|
Street | Alfanumérico | Sim | 1..256 | Rua, avenida, travessa, etc, do endereço de entrega do comprador. |
Number | Alfanumérico | Sim | 1..8 | Número do endereço de entrega do comprador. |
Complement | Alfanumérico | Opcional | 0..256 | Complemento do endereço de entrega do comprador. |
District | Alfanumérico | Sim | 1..64 | Bairro do endereço de entrega do comprador. |
City | Alfanumérico | Sim | 1..64 | Cidade do endereço de entrega do comprador. |
State | Alfanumérico | Sim | 2 | Estado (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.
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
---|---|---|---|---|
Name | Alfanumérico | Sim | 1..128 | Nome do serviço de frete. |
Price | Numérico | Sim | 1..18 | Preço do serviço de frete (em centavos. Ex: R$ 1,00 = 100). |
Deadline | Numérico | Condicional | 0..9 | Prazo de entrega (em dias). |
Payment
Parâmetro com informações sobre o desconto para pagamento via boleto ou débito online.
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
---|---|---|---|---|
BoletoDiscount | Numérico | Condicional | 0..3 | Desconto, em porcentagem, para pagamentos a serem realizados com boleto. |
DebitDiscount | Numérico | Condicional | 0..3 | Desconto, em porcentagem, para pagamentos a serem realizados com débito online. |
RecurrentPayment | RecurrentPayment | Condicional | Objeto necessário para pagamentos recorrentes |
Customer
Parâmetro de requisição com informações sobre o comprador.
dados pessoais do comprador | |||||
Customer. | |||||
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO | |
---|---|---|---|---|---|
Identity | Numérico | Condicional | 0..14 | CPF ou CNPJ do comprador. | |
Customer.FullName | Alfanumérico | Condicional | 0..288 | Nome completo do comprador. | |
Customer.Email | Alfanumérico | Condicional | 0..64 | Email do comprador. | |
Customer.Phone. | Numérico | Condicional | 0..11 | Telefone do comprador | .|
Options |
Parâmetro para configurar o sistema de anti-fraude para a transação.
Condicional | n/a | Informações sobre opções configuráveis do pedido. | ||
Options. | ||||
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
---|---|---|---|---|
AntifraudEnabled | Boolean | Conditional | n/a | Habilitar ou não a análise de fraude para o pedido. |
RESPOSTA
Em caso de sucesso
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
---|---|---|---|---|
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
Settings | Settings | Sim | n/a | Informações da resposta sobre a criação do pedido. |
Settings
Parâmetro de resposta, recebido em caso de sucesso.
CheckoutUrl | Alfanumérico | Sim | 1..128 | URL de checkout do pedido. Formato: https://cieloecommerce.cielo.com.br/transacional/order/index?id={id} |
Profile | Alfanumérico | Sim | 1..16 | Perfil do lojista: fixo “CheckoutCielo”. |
Version | AlfanuméricoAlfanuméric | Sim | 1 | Versão do serviço de criação de pedido (versão: 1). |
Em caso de erro
CAMPO | TIPO | OBRIGATÓRIO | TAMANHO | DESCRIÇÃO |
---|---|---|---|---|
Message | String | Sim | 1..254 | Mensagem 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 |
---|---|
1 | Cartão de Crédito |
2 | Boleto Bancário |
3 | Débito Online |
4 | Cartão de Débito |
Tabela 2 - Bandeira
Valor | Descrição |
---|---|
1 | Visa |
2 | Mastercard |
3 | AmericanExpress |
4 | Diners |
5 | Elo |
6 | Aura |
7 | JCB |
Tabela 3 - Banco Emissor
Valor | Descrição |
---|---|
1 | Banco do Brasil |
2 | Bradesco |
Tabela 4 - Status AntiFraude
Valor | Descrição |
---|---|
1 | Baixo Risco |
2 | Alto Risco |
3 | Não Finalizado |
4 | Risco Moderado |
Tabela 5 - Status da transaçãoO parâmetro payment_status
poderá vir com um dos seguintes valores:
VALOR | DESCRIÇÃO |
---|---|
1 | Pendente (Para todos os meios de pagamento) |
2 | Pago (Para todos os meios de pagamento) |
3 | Negado (Somente para Cartão Crédito) |
4 | Expirado (Cartão de Credito e Boleto) |
5 | Cancelado (Para cartões de crédito) |
6 | Não Finalizado (Todos os meios de pagamento) |
7 | Autorizado (somente para Cartão de Crédito) |
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.
8 | ChargeBack (Somente Cartão de Credito) |
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:
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
Fluxo do Processo
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
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|