U-PAI: A Universal Payment Application Interface A paper from Second USENIX Workshop on Electronic Commerce, USENIX, Oakland, CA
March 21, 2000presented by steve2 Outline Introduction API Definitions Sample Ecash Proxy Conclusions
March 21, 2000presented by steve3 Introduction Many payment mechanisms nowadays e.g. First Virtual, CyberCash, Ecash, SET,… The most significant difference is the order of steps required to execute a payment
March 21, 2000presented by steve4 Introduction (2) Diversity of payment mechanisms stymied the progress of electronic commerce customers must maintain accounts with several different payment mechanisms no standard way for payment mechanisms to interact with application software
March 21, 2000presented by steve5 U-PAI U-PAI, a universal payment application interface Goal: define a common set of functions that act as a layer of abstraction between application software and payment mechanisms
March 21, 2000presented by steve6 U-PAI abstracts payment mechanism internals
March 21, 2000presented by steve7 API Definitions CORBA specification in ISL of Xerox PARCs ILU Three main objects: AccountHandle PCR (Payment Control Record) Monitor
March 21, 2000presented by steve8 AccountHandle This instance is a representation of a real- world account The user wishes to start making electronic payments with the account Query balance and credit limits on the account
March 21, 2000presented by steve9 Analogy to clarify the notion of accounts and AccountHandle
March 21, 2000presented by steve10 AccountHandle (2) Internal fields: Balance CreditLimit AccountType TransferAccountTypesFrom TransferAccountTypesTo ……
March 21, 2000presented by steve11 AccountHandle (3) Methods: OpenAccount(PropertySet acctinfo): Any CreateAccount(PropertySet acctinfo): Any CloseAccount() DeleteAccount()
March 21, 2000presented by steve12 PCR (Payment Control Record) This instance is a representation of a single payment transaction the locus of control for all activities regarding that payment
March 21, 2000presented by steve13 PCR (2) Internal fields: RefID, ContextID Amount DestAccountHandle, SourceAccountHandle Status MonitorList ……
March 21, 2000presented by steve14 PCR (3) Methods: StartTransfer() TryToAbortTransfer() UpdateStatus(StatusEntry stat)
March 21, 2000presented by steve15 Monitor To supplement the status tracking feature of a PCR Internal field: status Method: Notify(PCR p, StatusEntry s)
March 21, 2000presented by steve16 Location of system components in the system
March 21, 2000presented by steve17 Sample First Virtual Proxy The first service which allowed consumers to transfer real money across the network Users credit card information is obtained in a secure, out-of-band channel “Try before you buy” philosophy
March 21, 2000presented by steve18 First Virtual = communication FV Account ID FV Invoice Yes/No FV Invoice Yes/No FV Merchant Account Application First Virtual
March 21, 2000presented by steve19 = communication = method invocation (d) Notify (c) Update Status (a) StartTransfer (b) StartTransfer FV Merchant Account Handle Payment Control Record Merchant Monitor Customer Monitor Application FV Customer Account Handle First Virtual
March 21, 2000presented by steve20 Sample Ecash Proxy An electronic “coin”-based payment mechanism Provides anonymity for the purchaser U-PAI interacts with ecash at the level of the user operations
March 21, 2000presented by steve21 Ecash E-cash/UNIX Pay Command Coins transferred by e-cash Payment Complete? Accept deposit? (E-cash protocol) Yes Coins transferred by e-cash Merchant Application Customer Application Merchant E-cash Client Bank E-cash Server Customer E-cash Client
March 21, 2000presented by steve22 (c) Update Status (d) Notify (a) StartTransfer (b) StartTransfer Request and send Host/Port Info Merchant E-cash Client Merchant E-cash AccountHandle Payment Control Record Merchant Monitor Customer Monitor Application Customer E-cash AccountHandle Customer E-cash Client Bank E-cash Server
March 21, 2000presented by steve23 Conclusions U-PAI allows a variety of payment mechanisms to be accessed by the same interface U-PAI only covers the basic functionality of accounts and payments
March 21, 2000presented by steve24
March 21, 2000presented by steve25
March 21, 2000presented by steve26
The End