GithubHelp home page GithubHelp logo

leofah / stustapay Goto Github PK

View Code? Open in Web Editor NEW

This project forked from stustapay/stustapay

0.0 0.0 0.0 1.17 MB

Electronic Payment System for Festivals using NFC Wristbands

License: GNU Affero General Public License v3.0

Shell 0.05% JavaScript 0.02% Python 38.15% Emacs Lisp 0.01% Kotlin 27.08% TypeScript 29.46% CSS 0.01% TeX 0.53% Nix 0.31% Makefile 0.04% HTML 0.06% PLpgSQL 4.14% Dockerfile 0.14%

stustapay's Introduction

StuStaPay

Electronic Payment System for Festivals, developed for StuStaCulum

Use NFC wristbands to quickly pay at events!

StuStaPay logo

Idea

  • Free software digital payment system for festivals
  • Every user has a NFC chip (in their wristband)
  • Users can top up their credit via Cash, card or online payment services
  • They can buy products at points of sales, where their credits are deduced
  • Designed to comply with German fiscal laws (digital signatures with TSE)

Documentation

Components

Core

All transactions go through the core.

Database

The database ensures transaction-safe handling of the payment processing logic. It's the source of truth for account funds, order processing and offered products.

Core Server

Python tool which handles PoS requests over websocket.

TSE signatures

All transactions need to be signed by a federally approved security module (as defined by Kassensicherungsverordnung - KassenSichV)

App

  • Operated at points of sale
  • Is connected via websocket to StuStaPay core
  • Registers customer's orders
  • Can scan and validate NFC tags

Webapps

Each one run on separate Python webserver, which talks to the core database.

Administration site

Configuration of products, cash desks, accounts, ...

User Self Service Portal

  • Top up account with online payment
  • Get payment reciepes
  • Pay back money after the event

Tech stack

Core

  • Python
  • PostgreSQL DB
  • asyncpg
  • FastAPI
  • uvicorn

TSE integration

  • TSE hardware module

Ordering Terminal

  • Android telephone with NFC reader
  • Kotlin
  • jetpack compose

Webapps for Management and User Self-Service

  • react
  • nodejs

License

Released under the GNU Affero General Public License version 3 or later, see authors and license for details.

stustapay's People

Contributors

thejj avatar mikonse avatar leofah avatar technoelf avatar mckirk avatar mhcp6 avatar alessandrow avatar mic-e avatar

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.