Skip to content

tzConnectBerlin/tezpay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tez proof-of-payment system

The purpose of this project is to deliver reliable, robust payment receipts on the Tezos infrastructure, while minimizing chain usage and maximizing privacy.

Payment receipt contents

The receipt needs to be easily human readable, for purposes of signing. The general text format is as follows:

Payment slip for {amount} mutez to {destination address} with message '{message}' and on-chain locator {opg_hash}[.{op_index}.{internal_index}]

The message field differs between requested payments, where it is a server-side payment id, and peer to peer transfers, where it can be an arbitrary message. The current iteration focuses on using server-side ids.

Architecture

Serverside

Components

  • Transfer indexer: indexing the receiving address
  • Cleanup worker: /NOT DONE/
    • Refunds unclaimed transfers (minus fee) via Peppermint
    • Cleans up timed out payment processes
  • Payment processor class:
    • Records payment processes (from store / backend)
    • Records payment receipts (from user / frontend)
    • Provides confirmation of payment
  • Peppermint
    • Originates transfers

Clientside

Components

  • Client
    • Taquito
  • Server
    • Payments DB
    • Payments data access layer
    • Que-pasa
  • Blockchain
    • Paypoint contract

Behavior

SERVER - [saves payment record to DB] and sends data to client CLIENT - [assembles transfer object] and sends transfer SERVER - [queries Que-pasa for payment fulfillment]

About

Payment processor system for tez payments

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published