Sobre o projeto

A epsc-store é uma loja que estou desenvolvendo para explorar o fluxo de uma compra: escolher produtos, montar um carrinho, finalizar o pedido e acompanhar o pagamento.

O foco principal do projeto é o backend, que está sendo desenvolvido para integrar diferentes plataformas de pagamento. A ideia é configurar a preferência por plataforma para cada método, considerando fatores como taxas e disponibilidade.

Em um exemplo hipotético, duas plataformas oferecem Pix, boleto e cartão de crédito, com taxas diferentes:

MétodoPlataforma XPlataforma YPreferência
Pix e boleto5%3%Y, com X como alternativa
Cartão de crédito3%5,5%X, com Y como alternativa

Essa configuração permite escolher a plataforma mais adequada para cada método. O uso de uma alternativa em caso de falha precisa considerar se a primeira plataforma chegou a criar a cobrança, evitando cobranças duplicadas.

O checkout atualmente oferece Pix e boleto. O pagamento com cartão de crédito ainda será adicionado.

O que já funciona

  • Catálogo de produtos carregado pela API.
  • Carrinho com quantidades, remoção de itens, cálculo do total e persistência no navegador.
  • Checkout com escolha entre Pix e boleto.
  • Página do pedido com os itens comprados e as instruções de pagamento.
  • QR Code e código copia e cola para Pix, além do código de barras e link do boleto.
  • Consulta automática do status enquanto o pedido aguarda pagamento.

Decisões atuais e próximos passos

Atualmente, o frontend consulta periodicamente o status do pagamento por polling. A ideia é substituir essa consulta por SSE (Server-Sent Events), permitindo que o backend envie as atualizações ao navegador.

Os próximos passos incluem adicionar o pagamento com cartão de crédito e evoluir a configuração de preferências e alternativas entre as plataformas de pagamento.