Giter VIP home page Giter VIP logo

paynow's People

Watchers

 avatar

paynow's Issues

Acesso de Administrador

Usuários de e-mail com domínio “@paynow.com.br” devem ser reconhecidos automaticamente
como usuários com perfil administrativo. Os demais usuários devem ser considerados clientes
e, com isto, devem possuir sempre um perfil da sua empresa configurado.

Administração de Clientes

Um usuário administrador da PayNow autenticado na plataforma deve ser capaz de visualizar e
alterar dados de clientes (as empresas), inclusive solicitar a renovação do token. Todas
alterações de dados devem ser registradas na plataforma criando um histórico de modificações
para fins de auditoria.

Solicitação de cobrança API(Cobrança)

Dados

  • token
  • valor com desconto
  • valor original
  • meio de pagamento
  • token do produto
  • token da empresa
  • token do comprador
  • data referente ou atual
  • data de vencimento

funções:
-n-1 token comprador
-n-1 token produto
-n-1 token empresa

API para emissão de cobrança

A plataforma de pagamento pode receber uma solicitação para emitir uma nova cobrança
avulsa via API. Essa solicitação deve incluir o token da empresa, o token do produto envolvido
na transação, o meio de pagamento escolhido e os dados do cliente final para emissão da
cobrança. Cada transação deve conter somente 1 token de produto, ou seja, a plataforma não
suporta contratações de múltiplos produtos simultaneamente.
De acordo com o meio de pagamento escolhido para emissão da cobrança devem ser
recebidos parâmetros adicionais conforme a tabela abaixo:

Meio de Pagamento:
Cartão de Crédito: Número do cartão, nome impresso no cartão,código de verificação

Boleto: Endereço completo para envio do boleto

PIX: Nada
Os parâmetros adicionais, caso existam, são sempre obrigatórios.

Durante a emissão da cobrança, deve ser aplicado o desconto de acordo com o meio de
pagamento escolhido, caso tenha sido configurado no cadastro do produto. A cobrança deve
registrar o valor original do pedido e o valor com desconto. Cada cobrança emitida deve possuir
um token de identificação alfanumérico único de 20 caracteres e o status inicial da cobrança é
pendente.

alterar vendedor(histórico)

Dados:
-data da alteração
-responsável pela alteração
-motivo da alteração
-o que foi alterado:

  1. dado antigo
  2. dado atual

função:

  • gerar novo vendedor e manter antigo no bd
  • n-1 adm
  • n-1 vendedor

Produto

Dados:

  • nome
  • valor
  • token
  • desconto
  • modo de pagamento(pagamento)

função:

  • n-1 empresa
  • n-1 pagamento

Boleto Bancário

Dados:

  • Código do banco
  • número da agencia
  • número da conta bancaria

Função:

  • 1-n tipo de modelo

Emissão de Recibos

Toda cobrança deve emitir um recibo quando seu status for alterado para “aprovada”. O recibo
deve ser acessível mesmo por usuários externos não autenticados no sistema. O recibo deve
conter a data de vencimento da cobrança, a data efetiva do pagamento e um código de
autorização enviado pela empresa/banco responsável pela confirmação de pagamento.

Gestão de Meios de Pagamento (Cliente)

Um usuário de uma empresa na plataforma deve configurar os meios de pagamento que
deseja disponibilizar para os seus clientes. Exemplo: uma empresa de e-commerce de sapatos
pode criar sua conta na plataforma e habilitar somente pagamentos via cartão de crédito,
enquanto nossa empresa de cursos de programação pode habilitar pagamentos via PIX e
boleto bancário, excluindo a opção de cartão de crédito.
Para cada meio de pagamento escolhido, a empresa deve ter dados de configuração próprios
conforme a tabela abaixo:
Observação: os códigos de bancos devem ser os mesmos indicados pela FEBRABAN.

https://portal.febraban.org.br/pagina/3164/12/pt-br/associados

PIX Chave PIX de 20 caracteres
alfanuméricos e o código do
banco

Cartão de Crédito Código alfanumérico de até
20 caracteres referente à
conta da empresa junto à
operadora de cartão

Boleto bancário Código do banco, número da
agência e da conta bancária

Então, caso a CodePlay deseje receber pagamentos via cartão de crédito PISA, ao ativar este
meio de pagamento deverá informar o código de 20 caracteres. Para habilitar outro tipo de
cartão, por exemplo o MESTRECARD, deverá informar outro código de 20 caracteres. Estes
códigos representam identificadores únicos dos contratos da CodePlay com as operadoras
PISA e MESTRECARD, estes contratos não estão dentro do escopo deste projeto.

Vendedor

Dados:

  • nome
  • email
  • senha
  • cpf

Funções:

  • 1-n cliente
  • n-1 empresa
  • CRUD produto
  • Habilitar/desabilitar forma de pagamento
  • CRUD forma de pagamento
  • CRUD comprador

Acesso de Clientes

Um usuário pode criar sua conta como cliente usando um e-mail de sua empresa. Contas de
e-mails públicos como Gmail, Hotmail e Yahoo não podem ser utilizadas nesta plataforma. No
nosso contexto, um funcionário da CodePlay deve criar sua conta usando um e-mail com
dominínio “@codeplay.com.br”.
Ao criar sua conta, o cliente deve configurar os dados de sua empresa informando: CNPJ,
razão social, endereço de faturamento e e-mail para faturamento. Um cliente não deve
conseguir prosseguir com o acesso à plataforma enquanto não concluir o cadastro de todos os
dados de sua empresa.
Após a conclusão do cadastro da empresa, outras pessoas da mesma empresa podem criar
contas com o mesmo domínio de e-mail e ter acesso aos dados da empresa. O primeiro
usuário, no entanto, deve ser identificado como administrador da empresa dentro da
plataforma, com permissão para bloquear o acesso de outras pessoas da empresa.

Visitante trafega pela pagina

testes:
ver:

  • home
  • acessar perfil adm
  • acessar empresa
  • acessar vendedor
  • acessar pagamento
  • acessar histórico (alterar vendedor)
  • acessar solicitação de suspensão
  • acessar histórico de token da empresa
  • acessar produto
  • acessar token de um comprador
  • acessar cobrança
  • acessar opções de pagamento(fluxo)

PIX

Dados:

  • chave pix
  • código do banco(febran)

função :

  • 1-n tipo de modelo

Empresa

Dados:

  • CNPJ*
  • razão social*
  • Endereço de faturamento*
  • email de faturamento*
  • email de dominio
  • token

funções:

  • 1-n produtos
  • 1-n vendedores
  • 1-1 vendedor(adm)
  • 1-n cobrança

Cadastro de Meios de Pagamento

Um usuário administrador autenticado pode gerenciar os meios de pagamento disponíveis na
plataforma. Os meios de pagamento devem ser do tipo boleto bancário, PIX ou cartão de
crédito. Cada meio de pagamento deve ter um nome, um ícone, uma taxa por cobrança em % e uma taxa máxima em reais. Exemplos de meio de pagamentos: boleto bancário do banco
laranja, com taxa de 5%; PIX do banco roxinho com taxa de 4,5%; cartão de crédito PISA com
taxa de 6%.
Um meio de pagamento pode ser desativado por um administrador. Meios de pagamento
desativados não devem ser disponibilizados para novas compras realizadas por qualquer
cliente da plataforma.

Cadastro de Produtos (Cliente)

Um usuário de uma empresa pode cadastrar produtos informando seus valores para venda. Os
produtos devem possuir um nome, seu valor e possíveis descontos de acordo com o meio de
pagamento escolhido. Em caso de mudança nos valores, deve ser armazenado um histórico
com os preços anteriores para efeito de auditoria. Cada produto terá um token gerado

automaticamente após o cadastro. Este token deve ser utilizado para efetivar contratações
através da API.

API para consulta de cobranças

O sistema de pagamento deve possuir uma API para consulta de cobranças permitindo filtrar
por data de vencimento e por forma de pagamento. A API deve permitir também a atualização
de status de uma determinada cobrança. Esta API será utilizada pelo sistema de execução de
cobranças e todas as requisições devem ser autorizadas por um token único de autenticação.

API de Criação de Token de Cliente Final (Cliente do cliente)

A plataforma de pagamento deve armazenar os dados dos clientes finais de seus clientes.
Exemplo: Eu, João, ao criar minha conta na plataforma de cursos online devo ter um token
único criado pela plataforma de meios de pagamentos PayNow. Este token será utilizado para
referenciar todas as cobranças emitidas para este cliente.

O token do cliente final deve ser vinculado ao nome completo e CPF de cada cliente e seu
formato é alfanumérico com 20 caracteres e único. Caso a mesma pessoa crie contas em
diversos clientes da PayNow, seu token deve ser sempre o mesmo, mas deve ser registrado
que este token foi vinculado com uma nova empresa para efeito de auditoria.

A criação deste token deve ser feita através de uma API e o token da empresa cliente deve ser
utilizado para identificar a qual empresa pertencem os dados do cliente final.

Compradores(cliente)

Dados:

  • token
  • nome do vendedor
  • cpf do vendedor
  • empresa cadastrada

funções:

  • n-1 vendedor(nome e cpf)
  • n-1 empresa

Cliente consulta cobranças

As empresas cadastradas na plataforma de pagamentos podem acessar suas contas e verificar
o status das cobranças relacionadas à sua empresa. A tela ‘inicial’ desta funcionalidade deve
trazer as cobranças referentes aos últimos 30 dias e devem existir opções para visualizar os
últimos 90 dias e o histórico completo.

Fluxo de pagamento

Dados:

  • tipo de pagamento
  • vendedor responsável
  • token empresa

função:

  • 1-n tipo de modelo
  • n-1 pagamento

Cartão de crédito

Dados:

  • Código alfanumérico
  • operadora do cartão

função:

  • 1-n tipo de modelo

tipo de modelo

dados:

  • pagamento
  • empresa
  • fluxo de pagamento

função:

  • n-1 fluxo de pagamento
  • n-1 pagamento
  • 1-n tabela(função id)

ADM paynow (adpay)

Dados:

  • nome
  • e-mail
  • senha

Funções:

  • desativar pagamento
  • cadastrar formas de pagamento
  • visualizar vendedor
  • alterar vendedor
  • solicitar renovação do token da empresa
  • solicitar suspensão de cliente
  • confirmar solicitação de suspensão de cliente de outro adm
  • visualizar histórico de solicitações.
  • visualizar histórico de alterações.
  • confirmar pagamento manual

Confirmação Manual de Pagamentos

Na plataforma de pagamentos, um usuário administrador pode consultar todas cobranças com
status pendente e modificar este status para “aprovada” ou “rejeitada”. No caso de aprovada
deve ser informada a data efetiva do pagamento. No caso de rejeitada, devem ser informados:
a data da tentativa do pagamento, o código de retorno informado pela operadora/banco (tabela
disponível ao final do documento).

Uma cobrança rejeitada deve seguir no status “pendente”, para que novas tentativas de
cobrança sejam realizadas, mas mesmo assim devem ser armazenadas as informações da
tentativa de cobrança e todas estas tentativas devem ser visíveis ao consultar uma cobrança
no sistema.

Pagamento

Dados:

  • nome
  • tipo
  • icone
  • taxa de cobrança(%)
  • taxa maxima em reais
  • habilitado?

Token de Integração

Ao cadastrar uma empresa, os usuários desta empresa terão acesso a um token único
alfanumérico de 20 caracteres que será utilizado para integração com a API de pagamentos.
Este token deve ser disponibilizado no perfil da empresa, mas não deve ser passível de edição.
O administrador da empresa pode solicitar um novo token que deve ser gerado
automaticamente.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.