U-PAI: A Universal Payment Application Interface

23
U-PAI: A Universal Payment Application Interface A paper from Second USENIX Workshop on Electronic Commerce, USENIX, Oakland, CA

description

U-PAI: A Universal Payment Application Interface. A paper from Second USENIX Workshop on Electronic Commerce, USENIX, Oakland, CA. Outline. Introduction API Definitions Sample Ecash Proxy Conclusions. Introduction. Many payment mechanisms nowadays - PowerPoint PPT Presentation

Transcript of U-PAI: A Universal Payment Application Interface

Page 1: U-PAI: A Universal Payment Application Interface

U-PAI: A Universal Payment Application Interface

A paper from Second USENIX Workshop on Electronic Commerce,

USENIX, Oakland, CA

Page 2: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 2

Outline

Introduction API Definitions Sample Ecash Proxy Conclusions

Page 3: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 3

Introduction

Many payment mechanisms nowadayse.g. First Virtual, CyberCash, Ecash, SET,…

The most significant difference is the order of steps required to execute a payment

Page 4: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 4

Introduction (2)

Diversity of payment mechanisms stymied the progress of electronic commercecustomers must maintain accounts with

several different payment mechanismsno standard way for payment mechanisms to

interact with application software

Page 5: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 5

U-PAI

U-PAI, a universal payment application interfaceGoal: define a common set of functions that

act as a layer of abstraction between application software and payment mechanisms

Page 6: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 6

U-PAI abstracts payment mechanism internals

Page 7: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 7

API Definitions

CORBA specification in ISL of Xerox PARCs ILU

Three main objects:AccountHandlePCR (Payment Control Record)Monitor

Page 8: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 8

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

Page 9: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 9

Analogy to clarify the notion of accounts and AccountHandle

Page 10: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 10

AccountHandle (2)

Internal fields:BalanceCreditLimitAccountTypeTransferAccountTypesFromTransferAccountTypesTo…

Page 11: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 11

AccountHandle (3)

Methods:OpenAccount(PropertySet acctinfo): AnyCreateAccount(PropertySet acctinfo): AnyCloseAccount()DeleteAccount()

Page 12: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 12

PCR (Payment Control Record)

This instance is a representation of a single payment transaction

the locus of control for all activities regarding that payment

Page 13: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 13

PCR (2)

Internal fields:RefID, ContextIDAmountDestAccountHandle, SourceAccountHandleStatusMonitorList…

Page 14: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 14

PCR (3)

Methods:StartTransfer()TryToAbortTransfer()UpdateStatus(StatusEntry stat)

Page 15: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 15

Monitor

To supplement the status tracking feature of a PCR

Internal field: status Method: Notify(PCR p, StatusEntry s)

Page 16: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 20

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

Page 17: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 21

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 ClientBank

E-cash Server

Customer E-cash Client

Page 18: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 22

(c) Update Status(c) Update Status

(d) Notify(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

Page 19: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 23

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

Page 20: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 24

Page 21: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 25

Page 22: U-PAI: A Universal Payment Application Interface

March 21, 2000 presented by steve 26

Page 23: U-PAI: A Universal Payment Application Interface

The EndThe End