DE202013007090U1 - Server based payment system - Google Patents

Server based payment system Download PDF

Info

Publication number
DE202013007090U1
DE202013007090U1 DE202013007090U DE202013007090U DE202013007090U1 DE 202013007090 U1 DE202013007090 U1 DE 202013007090U1 DE 202013007090 U DE202013007090 U DE 202013007090U DE 202013007090 U DE202013007090 U DE 202013007090U DE 202013007090 U1 DE202013007090 U1 DE 202013007090U1
Authority
DE
Germany
Prior art keywords
server
user
contact list
payment system
transaction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE202013007090U
Other languages
German (de)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CASHCLOUD AG
Original Assignee
CASHCLOUD AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CASHCLOUD AG filed Critical CASHCLOUD AG
Priority to DE202013007090U priority Critical patent/DE202013007090U1/en
Publication of DE202013007090U1 publication Critical patent/DE202013007090U1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/384Payment protocols; Details thereof using social networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Computing Systems (AREA)
  • Finance (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Tourism & Hospitality (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

Serverbasiertes Bezahlsystem (10), umfassend mindestens einen Hostcomputer (11), eine ausführbare Serveranwendung zum Verwalten einer Vielzahl von Bezahldienst-Benutzerkonten, und einen Datenspeicher (12) zum Speichern von Benutzerkontendaten in der Form von Datensätzen; wobei die Serveranwendung dazu programmiert ist, wenn sie auf mindestens einem Hostcomputer (11) läuft, die folgenden Aktionen durchzuführen: – nach Empfang eines Zugangstokens, der Informationen über eine Identität und Privilegien enthält, die mit einem Social-Network-Benutzerkonto verknüpft sind, das bei einer webbasierten Kommunikationsplattform (20, 20') besteht, Abrufen einer Kontaktliste, die bei der webbasierten Kommunikationsplattform (20, 20') für das Social-Network-Benutzerkonto gespeichert ist, unter der Verwendung des Zugangstokens; – Verarbeiten der Kontaktliste zum Bestimmen, ob für Einträge der Kontaktliste bei dem serverbasierten Bezahlsystem (10) entsprechende Bezahlsystemdienst-Benutzerkonten bestehen; – Übertragen einer verarbeiteten Kontaktliste, die für Einträge, für die ein entsprechendes Bezahldienst-Benutzerkonto besteht, Informationen über dieses enthält, von dem serverbasierten Bezahlsystem (10) an ein Benutzerendgerät (18, 19); – nach Empfang eines Zahlungsauftrags, der bei dem Benutzerendgerät (18, 19) durch Auswahl eines Eintrags aus der verarbeiteten Kontaktliste und Angabe eines zu bezahlenden Betrags generiert wurde, Erzeugen einer Transaktion und Speichern der Transaktion in dem Datenspeicher, wobei die Transaktion den zu bezahlenden Betrag, einen Auftraggeber der Transaktion und einen Zahlungsempfänger der Transaktion, wie sie von dem Zahlungsauftrag angegeben sind, in der Form eines Datensatzes enthält.A server-based payment system (10) comprising at least one host computer (11), an executable server application for managing a plurality of payment service user accounts, and a data store (12) for storing user account data in the form of records; wherein the server application is programmed to, when running on at least one host computer (11), perform the following actions: upon receipt of an access token containing information about an identity and privileges associated with a social network user account in a web-based communication platform (20, 20 '), retrieving a contact list stored at the web-based communication platform (20, 20') for the social network user account using the access token; Processing the contact list to determine whether there are corresponding payment system service user accounts for entries of the contact list at the server-based payment system (10); - transmitting a processed contact list containing information about entries for which there is a corresponding payment service user account, from the server-based payment system (10) to a user terminal (18, 19); After receiving a payment order generated at the user terminal (18, 19) by selecting an entry from the processed contact list and indicating an amount to be paid, generating a transaction and storing the transaction in the data store, the transaction being the amount to be paid , a principal of the transaction and a payee of the transaction as specified by the payment order, in the form of a record.

Description

Gebiet der ErfindungField of the invention

Die vorliegende Erfindung bezieht sich auf das Gebiet von Netzwerk-Dienstanwendungen und insbesondere auf ein serverbasiertes Bezahlsystem und ein programmierbares Benutzerendgerät, das dazu programmiert ist, mit einem serverbasierten Bezahlsystem zu kommunizieren.The present invention relates to the field of network service applications, and more particularly to a server-based payment system and programmable user terminal programmed to communicate with a server-based payment system.

Hintergrund der ErfindungBackground of the invention

Zusätzlich zu klassischen Bargeldtransaktionen bekommen virtuelle Transaktionen elektronischen Geldes im Zusammenhang mit modernen Telekommunikationsnetzwerken, insbesondere dem Internet, eine immer größere Bedeutung. Es gibt Online-Bezahlsysteme, bei denen registrierte Benutzer bargeldlose Zahlungen austauschen können, d. h. elektronische Geldzahlungen von anderen registrierten Benutzern empfangen oder an diese übertragen können. Zur Durchführung einer elektronischen Zahlung muss ein Benutzer einen Empfänger der Zahlung und einen zu übertragenden Geldbetrag angeben. Der Empfänger kann typischerweise über seine E-Mail-Adresse angegeben werden. Der Betrag wird dann entweder von einem Vorauszahlungskonto des Benutzers, das von dem Bezahldienstanbieter verwaltet wird, abgebucht oder von einem Bankkonto des Benutzers abgebucht, mit dem er sich bei dem Online-Bezahlsystem registriert hat. Zum Durchführen solcher Zahlungen muss der Benutzer jedoch wissen, ob der angegebene Empfänger ebenfalls ein registrierter Benutzer desselben Online-Bezahlsystems ist und deshalb ein Benutzerkonto bei diesem hat.In addition to traditional cash transactions, virtual transactions of electronic money associated with modern telecommunications networks, particularly the Internet, are becoming increasingly important. There are online payment systems where registered users can exchange cashless payments; d. H. receive or transfer electronic cash payments from other registered users. To make an electronic payment, a user must specify a recipient of the payment and a monetary amount to be transferred. The recipient can typically be specified via his e-mail address. The amount is then either debited from a prepayment account of the user managed by the payment service provider, or debited from a bank account of the user with which he registered with the online payment system. However, to make such payments, the user must know if the specified recipient is also a registered user of the same online payment system and therefore has a user account with them.

Zusammenfassung der ErfindungSummary of the invention

Es ist eine Aufgabe einer vorliegenden Erfindung, ein serverbasiertes Bezahlsystem anzugeben, das leichter zu benutzen ist und insbesondere für die elektronische Geldübertragung unter Freunden oder für andere Geldzahlungen gut geeignet ist.It is an object of the present invention to provide a server based payment system which is easier to use and particularly well suited for electronic money transfer among friends or for other cash payments.

Diese und andere Aufgaben, die unten erscheinen, werden durch ein serverbasiertes Bezahlsystem und entsprechendes Benutzerendgerät zum Kommunizieren mit dem serverbasierten Bezahlsystem gelöst, bei denen ein Benutzer elektronisches Geld (das oft als E-Geld bezeichnet wird) an Empfänger übertragen kann, die aus Kontaktlisten ausgewählt sind, die er bei einer oder mehreren webbasierten Kommunikationsplattformen hat, welche oft auch als Soziale Netzwerke bezeichnet werden.These and other tasks appearing below are solved by a server-based payment system and corresponding user terminal for communicating with the server-based payment system, where a user can transfer electronic money (often referred to as e-money) to recipients selected from contact lists he has with one or more web-based communication platforms, often referred to as social networks.

Gemäß einer Ausführungsform ist ein serverbasiertes Bezahlsystem vorgesehen, das mindestens einen Hostcomputer, eine ausführbare Serveranwendung zum Verwalten einer Vielzahl von Bezahldienst-Benutzerkonten sowie einen Datenspeicher zum Speichern von Benutzerkontendaten in der Form von Datensätzen enthält. Die Serveranwendung ist dazu programmiert, wenn sie auf dem mindestens einen Hostcomputer läuft, die folgenden Aktionen durchzuführen: Nach Empfang eines Zugangstokens, der Informationen über eine Identität und Privilegien enthält, welche mit einem Social-Network-Benutzerkontoverknüpft sind, das bei einer webbasierten Kommunikationsplattform besteht, verwendet der Hostcomputer den Zugangstoken zum Abrufen einer bei der webbasierten Kommunikationsplattform für das Social-Network-Benutzerkonto gespeicherten Kontaktliste. Der Hostcomputer verarbeitet ferner die Kontaktliste um festzustellen, ob bei dem serverbasierten Bezahlsystem für Einträge der Kontaktliste entsprechende Bezahldienst-Benutzerkonten bestehen. Dann überträgt der Hostcomputer an ein Benutzerendgerät eine verarbeitete Kontaktliste, die Informationen enthält, die diejenigen Einträge angibt, für die ein entsprechendes Bezahldienst-Benutzerkonto besteht. Nach Empfang eines Zahlungsauftrags, der beim Benutzerendgerät generiert wurde, indem aus der verarbeiteten Kontaktliste ein Eintrag ausgewählt wurde und ein zu übertragender Geldbetrag angegeben wurde, erzeugt der Hostcomputer eine Transaktion und speichert die Transaktion im Datenspeicher. Die Transaktion enthält in der Form eines Datensatzes den zu zahlenden Betrag sowie den Auftraggeber und den Zahlungsempfänger, die von dem Zahlungsauftrag angegeben sind.According to one embodiment, there is provided a server-based payment system including at least one host computer, an executable server application for managing a plurality of payment service user accounts, and a data store for storing user account data in the form of records. The server application is programmed, when running on the at least one host computer, to perform the following actions: upon receipt of an access token containing identity information and privileges associated with a social network user account associated with a web-based communication platform , the host computer uses the access token to retrieve a contact list stored in the web-based communication network for the social network user account. The host computer also processes the contact list to determine whether the payment card user accounts exist for the contact list list server-based payment system. Then, the host computer transmits to a user terminal a processed contact list containing information indicating the entries for which a corresponding payment service user account exists. Upon receipt of a payment order generated at the user terminal by selecting an entry from the processed contact list and indicating an amount of money to be transferred, the host computer generates a transaction and stores the transaction in the data store. The transaction contains in the form of a record the amount to be paid as well as the payer and the payee specified by the payment order.

Vorzugsweise leitet zum Erzeugen des Zugangstokens das serverbasierte Bezahlsystem eine bestehende Verbindung von dem Benutzerendgerät auf einen Autorisierungslink der webbasierten Kommunikationsplattform um, werden Zugangsdaten vom Benutzerendgerät zum Autorisationslink übertragen und erzeugt die webbasierte Kommunikationsplattform den Zugangstoken.Preferably, to generate the access token, the server-based payment system redirects an existing connection from the user terminal to an authorization link of the web-based communication platform, access data is transmitted from the user terminal to the authorization link, and the web-based communication platform generates the access token.

Zusätzlich zur Verwendung einer Kontaktliste von einer webbasierten Kommunikationsplattform kann auch eine lokale Kontaktliste, d. h. eine aus dem lokalen Adressbuch genommene Liste, von dem Benutzerendgerät an das serverbasierte Bezahlsystem übertragen werden, wo die Listen zusammengeführt werden, und kann eine verarbeitete Kontaktliste zum Benutzerendgerät zurückgegeben werden, wobei diese Liste zusammengeführte Einträge aus der abgerufenen Kontaktliste und aus der lokalen Kontaktliste enthält.In addition to using a contact list from a web-based communication platform, a local contact list, ie a list taken from the local address book, may also be transmitted from the user terminal to the server-based payment system where the lists are merged, and a processed contact list may be returned to the user terminal, which list includes merged entries from the retrieved contact list and from the local contact list.

Gemäß einer weiteren Variante kann das serverbasierte Bezahlsystem Kontaktlisten von zwei oder mehr unterschiedlichen webbasierten Kommunikationsplattformen unter Verwendung verschiedener Zugangstokens, die bei den entsprechenden Kommunikationsplattformen generiert wurden, abrufen, die zwei oder mehr Kontaktlisten zusammenführen und eine verarbeitete Kontaktliste, die zusammengeführte Einträge von den zwei oder mehr abgerufenen Kontaktlisten enthält, an das Benutzerendgerät zurückgeben.According to another variant, the server-based payment system may retrieve contact lists of two or more different web-based communication platforms using different access tokens generated at the respective communication platforms that merge two or more contact lists and one processed contact list containing merged entries from the two or more retrieved to the user terminal.

In dem Fall, dass bisher für den Zahlungsempfänger kein Bezahldienst-Benutzerkonto besteht, erzeugt das serverbasierte Bezahlsystem einen temporären Benutzerkontoeintrag, weist dem Eintrag einen schwebenden Registrationsstatus zu und überträgt eine Einladungsnachricht an den Zahlungsempfänger unter der Verwendung der in dem Zahlungsauftrag enthaltenen Kontaktinformationen. Die Einladungsnachricht enthält eine eindeutige Registrierungskennung und einen Link auf eine Registrierungsseite. Nach der Registrierung des Zahlungsempfängers bei dem Registrierungslink validiert das serverbasierte Bezahlsystem den Benutzereintrag durch Erzeugen eines neuen Bezahldienst-Benutzerkontos für den Zahlungsempfänger und weist dem neu erzeugten Konto die Transaktion zu.In the event that no payment service user account exists for the payee, the server-based payment system generates a temporary user account entry, assigns the entry a pending registration status, and transmits an invitation message to the payee using the contact information contained in the payment order. The invitation message contains a unique registration identifier and a link to a registration page. After registering the payee with the registration link, the server-based payment system validates the user entry by creating a new payment service user account for the payee and assigns the transaction to the newly created account.

Wenn ein Bezahldienst-Benutzerkonto des Zahlungsempfängers besteht, weist das serverbasierte Bezahlsystem der Transaktion einen schwebenden Annahmestatus zu und überträgt eine Mitteilungsnachricht an den Zahlungsempfänger. Die Mitteilungsnachricht enthält Informationen über die schwebende Transaktion.If a payment service user account of the payee exists, the server-based payment system assigns the pending acceptance status to the transaction and transmits a notification message to the payee. The message message contains information about the pending transaction.

Nachdem sich der Zahlungsempfänger mit dem serverbasierten Bezahlsystem in Verbindung setzt, um die schwebende Transaktion anzunehmen, wird die Transaktion ausgeführt, werden Kontostände des Kontos des Auftraggebers und des Kontos des Zahlungsempfängers entsprechend geändert und wird der Transaktion ein angenommener Status zugewiesen.After the payee contacts the server-based payment system to accept the pending transaction, the transaction is executed, account balances of the payee's and payee's account are changed accordingly, and the transaction is given an assumed status.

In einer weiteren Ausführungsform ist ein programmierbares Benutzerendgerät vorgesehen, das ein Anwendungsprogramm zum Kommunizieren mit einem serverbasierten Bezahlsystem enthält. Das Anwendungsprogramm ist dazu programmiert, wenn es von dem programmierbaren Benutzerendgerät ausgeführt wird, die folgenden Aktionen auszuführen: Das programmierbare Benutzerendgerät leitet die Generierung eines Zugangstokens ein, der Informationen über eine Identität und Privilegien enthält, welche mit einem Social-Network-Benutzerkonto verknüpft sind, das bei einer webbasierten Kommunikationsplattform besteht, durch Übertragen von Zugangsdaten, die von einem Benutzer in eine dem Benutzer durch das Endgerät angezeigte Eingabemaske eingegeben wurden. Das Benutzerendgerät empfängt von dem serverbasierten Bezahlsystem eine verarbeitete Kontaktliste, die Einträge enthält, die einer Kontaktliste entnommen sind, die zu dem Social-Network-Benutzerkonto bei der webbasierten Kommunikationsplattform gehören, sowie auch Informationen enthält, die angeben, ob entsprechende Bezahldienstbenutzerkonten bei dem serverbasierten Bezahlsystem bestehen. Das Benutzerendgerät zeigt dem Benutzer ein Menü zur Auswahl eines Zahlungsempfängers aus der verarbeiteten Kontaktliste und zum Eingeben eines an den Zahlungsempfänger zu übertragenden Betrags an. Das Benutzerendgerät überträgt ferner einen Zahlungsauftrag an das serverbasierte Bezahlsystem, der Informationen enthält, die einen aus der verarbeiteten Kontaktliste ausgewählten Eintrag sowie den zu übertragenden Betrag angeben.In another embodiment, a programmable user terminal is provided that includes an application program for communicating with a server-based payment system. The application program is programmed, when executed by the programmable user terminal, to perform the following actions: the programmable user terminal initiates the generation of an access token containing information about an identity and privileges associated with a social network user account, which is a web-based communication platform, by transmitting access data entered by a user into an input mask displayed to the user by the terminal. The user terminal receives from the server-based payment system a processed contact list containing entries taken from a contact list associated with the social network user account at the web-based communication platform as well as information indicating corresponding payment service user accounts in the server-based payment system consist. The user terminal displays to the user a menu for selecting a payee from the processed contact list and entering an amount to be transferred to the payee. The user terminal also transmits a payment order to the server-based payment system containing information indicating an entry selected from the processed contact list and the amount to be transferred.

In noch einer weiteren Ausführungsform ist ein programmierbares Benutzerendgerät vorgesehen, das ein Anwendungsprogramm zum Kommunizieren mit einem serverbasierten Bezahlsystem enthält. Das Anwendungsprogramm ist dazu programmiert, wenn es von dem programmierbaren Benutzerendgerät ausgeführt wird, die folgenden Aktionen auszuführen: Das Endgerät führt ein Login bei einer webbasierten Kommunikationsplattform aus, indem es Zugangsdaten überträgt, die von einem Benutzer in eine dem Benutzer durch das Endgerät angezeigte Eingabemaske eingegeben wurden. Das Endgerät ruft dann von der webbasierten Kommunikationsplattform eine Kontaktliste ab, die zu einem Social-Network-Benutzerkonto gehört, wobei dieses Konto vorzugsweise demselben Benutzer gehört, der das Endgerät benutzt. Dann wird dem Benutzer ein Menü zur Auswahl eines Zahlungsempfängers aus der Kontaktliste angezeigt. Darüber hinaus überträgt das Endgerät einen Zahlungsauftrag an das serverbasierte Bezahlsystem, der Informationen, die einen aus der Kontaktliste ausgewählten Eintrag angeben, Informationen, die die webbasierte Kommunikationsplattform angeben, und einen zu zahlenden Betrag enthält.In yet another embodiment, a programmable user terminal is provided that includes an application program for communicating with a server-based payment system. The application program is programmed, when executed by the programmable user terminal, to perform the following actions: The terminal logs in to a web-based communication platform by transmitting credentials entered by a user into an input mask displayed to the user by the terminal were. The terminal then retrieves from the web-based communication platform a contact list associated with a social network user account, which account preferably belongs to the same user using the terminal. Then the user is presented with a menu for selecting a payee from the contact list. In addition, the terminal transmits a payment order to the server-based payment system, which contains information indicating an entry selected from the contact list, information indicating the web-based communication platform, and an amount to be paid.

Indem es dem Benutzer ermöglicht wird, auf Kontaktlisten von seinem Social-Network-Konten zuzugreifen, stellt die vorliegende Erfindung eine sehr bequeme Art und Weise bereit, in der der Benutzer einen Empfänger für eine E-Geld-Übertragung auswählen kann. Auf der anderen Seite erfährt ein Benutzer durch Vorverarbeiten der Kontaktlisten auf dem Server des Bezahlsystems und durch entsprechendes Markieren von Einträgen für Benutzer, die schon ein Bezahldienst-Benutzerkonto beim Bezahlsystem haben, an welchen seiner Kontakte er elektronische Zahlungen leicht und sicher übertragen kann. Die vorliegende Erfindung ist daher für Bezahlungen zwischen Freunden auf sozialen Netzwerken ideal geeignet.By allowing the user to access contact lists from his social network accounts, the present invention provides a very convenient manner in which the user can select a recipient for e-money transfer. On the other side, a user experiences through Pre-processing the contact lists on the server of the payment system and by marking appropriate entries for users who already have a payment service user account at the payment system, to which of his contacts he can easily and securely transfer electronic payments. The present invention is therefore ideally suited for payments between friends on social networks.

Kurze Beschreibung der ZeichnungenBrief description of the drawings

Ausführungsformen der vorliegenden Erfindung werden nun anhand der beiliegenden Zeichnungen beschrieben. Es zeigt:Embodiments of the present invention will now be described with reference to the accompanying drawings. It shows:

1 eine Kommunikation zwischen Benutzerendgeräten, einem serverbasierten Bezahlsystem und Servern von sozialen Netzwerken; 1 communication between user terminals, a server-based payment system, and social network servers;

2 ein Flussdiagramm für die Erzeugung eines Zugangstokens; 2 a flow chart for the generation of an access token;

3 einen Nachrichtenfluss zwischen einem Benutzerendgerät, einem Server des Bezahlsystems und einem Server der Kommunikationsplattform zum Erhalten eines Zugangstokens; 3 a message flow between a user terminal, a server of the payment system and a server of the communication platform for obtaining an access token;

4a, b ein Flussdiagramm für die Erzeugung einer Transaktion bei einem Bezahlsystem; 4a , b is a flow chart for the generation of a transaction at a payment system;

5a, b ein Flussdiagramm für die Verarbeitung einer Transaktion bei dem Bezahlsystem; 5a , b is a flow chart for processing a transaction at the payment system;

6 die Menüstruktur einer auf dem Smartphone eines Benutzers installierten App; 6 the menu structure of an app installed on a user's smartphone;

7 einen Nachrichtenfluss für ein Login von einem Benutzerendgerät auf Facebook über ein Webportal des Bezahlsystems; und 7 a message flow for a login from a user terminal on Facebook via a web portal of the payment system; and

8 einen Nachrichtenfluss für einen direkten Login der auf einem Benutzerendgerät installierten Anwendung bei Facebook. 8th a message flow for a direct login of the application installed on a user terminal to Facebook.

Detaillierte Beschreibung bevorzugter AusführungsformenDetailed description of preferred embodiments

Die unten beschriebenen Ausführungsformen beziehen sich auf einen Online-Dienst, der über ein Kommunikationsnetzwerk, wie zum Beispiel das Internet, bereitgestellt wird. Zum Zugreifen auf diesen Online-Dienst muss ein dediziertes Anwendungsprogramm, normalerweise als App bezeichnet, auf einem Benutzerendgerät, wie zum Beispiel auf einem Smartphone, einem Tablet-PC oder dergleichen, installiert werden, das mit den Servern des Dienstanbieters kommuniziert. Alternativ dazu kann der Dienst auch als ein Webportal implementiert werden, auf das von einem Benutzerendgerät mittels eines herkömmlichen Webbrowsers zugegriffen werden kann.The embodiments described below relate to an on-line service provided over a communication network, such as the Internet. To access this online service, a dedicated application program, usually called an app, must be installed on a user terminal, such as a smartphone, a tablet PC, or the like, that communicates with the service provider's servers. Alternatively, the service may also be implemented as a web portal that can be accessed by a user terminal using a conventional web browser.

Das System des Dienstanbieters enthält eine Serverplattform, auf der eine Serveranwendung installiert ist und läuft, die benutzerbezogene Datensätze, die in dem Datenspeicher gespeichert sind, verwaltet. Die Serverplattform enthält mindestens einen, vorzugsweise jedoch mehrere miteinander verbundene Servercomputer, die auch als Server-Hosts bezeichnet werden, die den herkömmlichen Aufbau haben, der dem Fachmann auf diesem Gebiet wohlbekannt ist. Insbesondere kann die Serverplattform eine Server-Farm oder ein Server-Cluster sein, d. h. eine Ansammlung von Computerservern gleichen Aufbaus, die zum Verteilen einer Rechenleistung und zum Bereitstellen einer Redundanz miteinander verbunden sind, um ein verbundenes virtuelles System zu bilden.The service provider's system includes a server platform on which a server application is installed and running that manages user-related records stored in the data store. The server platform includes at least one, but preferably a plurality of interconnected server computers, also referred to as server hosts, having the conventional design well known to those skilled in the art. In particular, the server platform may be a server farm or a server cluster, i. H. a collection of computer servers of similar construction, interconnected to distribute computational power and provide redundancy to form a connected virtual system.

Der Datenspeicher kann mit der Serverplattform verbunden sein oder in einen oder mehrere der Serverhosts integriert sein. Der Datenspeicher kann auch als ein verteiltes Speichersystem implementiert sein und kann auch als eine Datenbank strukturiert sein.The data store may be connected to the server platform or integrated into one or more of the server hosts. The data store may also be implemented as a distributed storage system and may also be structured as a database.

Der Dienst als solches ist ein elektronischer Bezahldienst, der die Verwaltung von Benutzerkonten für elektronisches Geld, die Verwaltung von Benutzereinlagen sowie auch das Übertragen und das Empfangen elektronischer Zahlungen unter registrierten Benutzern des Bezahldiensts beinhaltet.The service as such is an electronic payment service that includes the management of user accounts for electronic money, the management of user deposits as well as the transmission and reception of electronic payments among registered users of the payment service.

Benutzerkonten werden auf der Grundlage von Einlagenkonten geführt, was bedeutet, dass der Benutzer sein Benutzerkonto mit Geld von einer Kreditkarte oder einem normalen Bankkonto auffüllen kann und dann dieses Geld für elektronische Zahlungstransaktionen verwenden kann. Transaktionen können jedoch nur maximal bis zum verfügbaren Kontostand durchgeführt werden. Es kann auch ein zusätzliches Limit für Transaktionen definiert werden, das unter dem verfügbaren Kontostand liegt, um das Risiko einer betrügerischen Nutzung einzuschränken.User accounts are maintained on the basis of deposit accounts, which means that the user can fill up his user account with money from a credit card or regular bank account and then use that money for electronic payment transactions. However, transactions can only maximum up to the available balance. There may also be an additional limit on transactions below the available balance in order to limit the risk of fraudulent use.

Darüber hinaus kann der Benutzer auch sein Guthaben von dem Benutzerkonto wieder abziehen und es auf sein normales Bankkonto oder sein Kreditkartenkonto zurücküberweisen. Zur Durchführung einer elektronischen Geldübertragung braucht ein Benutzer lediglich einen registrierten Benutzer, an den das Geld zu überweisen ist, der hiernach als der Zahlungsempfänger bezeichnet wird, sowie einen zu übertragenden Betrag anzugeben. Der entsprechende Betrag wird dann dem Benutzerkonto des initiierenden Benutzers belastet, der hiernach als der Auftraggeber bezeichnet wird, und dem Benutzerkonto des Zahlungsempfängers gutgeschrieben.In addition, the user may also withdraw his balance from the user account and return it to his normal bank account or credit card account. To perform an electronic money transfer, a user only needs a registered user to whom the money to be transferred, hereinafter referred to as the payee, and an amount to be transferred, are required. The corresponding amount is then debited to the user account of the initiating user, hereafter referred to as the principal, and credited to the user account of the payee.

Für jede Transaktion wird auf dem Datenspeicher ein Datensatz gespeichert und den entsprechenden Benutzerkonten von Auftraggeber bzw. Zahlungsempfänger zugewiesen. Der Begriff Datensatz, wie er hiernach verwendet wird, soll sich auf einen Satz Datenfelder beziehen, die hinsichtlich des Inhalts miteinander in Beziehung stehen. Zum Beispiel kann ein Datensatz ein Ausführungsdatum, einen zu übertragenden Betrag, einen Zahlungsempfänger (oder Empfänger) der Zahlung sowie einen Auftraggeber enthalten. Zusätzlich kann der Datensatz den vorhergehenden und den aktuellen Kontostand der Benutzerkonten enthalten, auf die er sich bezieht. Datensätze werden vorzugsweise in der Form einer Datenbank, insbesondere einer relationalen Datenbank, gespeichert.For each transaction, a record is stored on the data store and assigned to the respective user accounts of the principal or payee. The term record, as used hereinafter, is intended to refer to a set of data fields related to each other in content. For example, a record may include an execution date, an amount to be transferred, a payee (or recipient) of the payment, and a payer. In addition, the record may include the previous and current account balance of the user accounts to which it refers. Data records are preferably stored in the form of a database, in particular a relational database.

1 zeigt die Kommunikation zwischen Benutzerendgeräten 18, 19 und einem serverbasierten Bezahlsystem 10. Das Bezahlsystem 10 enthält eine Serverplattform 11 des oben genannten Typs und einen Datenspeicher 12, der mit der Serverplattform 11 verbunden ist. Die Serverplattform 11 ist über eine Datenschnittstelle mit einem Zugangsknoten 15 eines Telekommunikationsnetzwerks 14 verbunden. Das Telekommunikationsnetzwerk 14 hat weitere Zugangspunkte 16, 17, die für mobile Benutzerendgeräte 18, 19, wie zum Beispiel Smartphones oder Tablet-PCs, einen drahtlosen Zugang gewährt. Die Luftschnittstelle zwischen Benutzerendgeräten 18, 19 und Zugangspunkten 16, 17 kann eine beliebige mobile Funkschnittstelle sein, so zum Beispiel, ohne aber hierauf beschränkt zu sein, HSDPA (Highspeed Downlink Package Access), d. h. die Datenschnittstelle des mobilen Funkstandards UMTS (Universal Mobile Telecommunications System), die Luftschnittstelle des mobilen Funkstandards LTE (Long Term Evolution) oder die GPRS-Schnittstelle (General Package Radio Service) des mobilen Funkstandards GSM, sowie auch ein drahtloser Internetzugang, der auch als WLAN bezeichnet wird. 1 shows the communication between user terminals 18 . 19 and a server-based payment system 10 , The payment system 10 contains a server platform 11 of the above type and a data memory 12 that with the server platform 11 connected is. The server platform 11 is via a data interface with an access node 15 a telecommunications network 14 connected. The telecommunications network 14 has further access points 16 . 17 for mobile user terminals 18 . 19 , such as smartphones or tablet PCs, provides wireless access. The air interface between user terminals 18 . 19 and access points 16 . 17 may be any mobile radio interface, such as, but not limited to, HSDPA (High Speed Downlink Package Access), ie the UMTS (Universal Mobile Telecommunications System) mobile radio standard interface, the air interface of the LTE (Long Term Evolution ) or the GPRS interface (General Package Radio Service) of the mobile radio standard GSM, as well as a wireless Internet access, which is also referred to as WLAN.

Das Telekommunikationsnetz 15 ist nicht notwendigerweise ein durchgehend homogenes Netzwerk, sondern kann auch eine Vielzahl miteinander verbundener Unternetze oder verschiedene Netzwerkschichten oder -protokolle enthalten, die potentiell von unterschiedlichen Netzwerkbetreibern betrieben werden. Telekommunikationsnetze dieser Art sind dem Fachmann auf diesem Gebiet allgemein bekannt und brauchen daher nicht im größeren Detail beschrieben zu werden. Im Zusammenhang der vorliegenden Erfindung soll lediglich vorausgesetzt werden, dass eine Datenverbindung zwischen einem Benutzerendgerät 18, 19 und der Serverplattform 11 über das Telekommunikationsnetz 14 hergestellt werden kann. Vorzugsweise ist die Datenverbindung eine paketvermittelte Verbindung, die mittels eines Paketprotokolls, wie zum Beispiel des Internetprotokolls (IP) hergestellt werden kann.The telecommunications network 15 is not necessarily a consistently homogeneous network, but may also include a plurality of interconnected subnets or different network layers or protocols potentially operated by different network operators. Telecommunication networks of this type are well known to those skilled in the art and therefore need not be described in greater detail. In the context of the present invention, it should be assumed only that a data connection between a user terminal 18 . 19 and the server platform 11 over the telecommunications network 14 can be produced. Preferably, the data connection is a packet-switched connection that can be established using a packet protocol, such as the Internet Protocol (IP).

Damit ein Benutzerendgerät, wie zum Beispiel ein Benutzerendgerät 18, Zugang zum Bezahlsystem 10 bekommt, stellt es über das Kommunikationsnetz 15 eine Datenverbindung zur Serverplattform 11 her. Aus Sicherheitsgründen wird die Datenverbindung vorzugsweise unter der Verwendung eines Verschlüsselungsprotokolls, wie zum Beispiel TSL (Transport Layer Security), der Vorgängerversion SSL (Secure Sockets Layer) oder des IPsec-Protokolls (Internet Protocol Security) hergestellt.To a user terminal, such as a user terminal 18 , Access to the payment system 10 gets it over the communication network 15 a data connection to the server platform 11 ago. For security reasons, the data connection is preferably established using an encryption protocol, such as TSL (Transport Layer Security), the previous version SSL (Secure Sockets Layer) or the IPsec protocol (Internet Protocol Security).

Über das Telekommunikationsnetz 14 kann auch auf andere Internetdienste zugegriffen werden, so zum Beispiel auf webbasierte Kommunikationsplattformen, die allgemein als soziale Netzwerke bezeichnet werden, hierauf jedoch nicht eingeschränkt. Solche Kommunikationsplattformen können soziale Netzwerke wie zum Beispiel Facebook, Twitter, Google+ oder tumblr, um nur einige zu nennen, beinhalten. Solche soziale Netzwerke werden von Netzwerkservern gehostet. Um dies nur auf beispielhafte Weise anzugeben, sind in 1 zwei Serverplattformen 20, 20' über einen Zugangs- bzw. Gateway-Knoten 13 mit einem Telekommunikationsnetz 14 verbunden. Die Serverplattformen 20, 20' sollen für die Zwecke der unten angegebenen Beschreibung zwei verschiedene soziale Netzwerke der oben beschriebenen Art, z. B. Facebook und Twitter als soziale Netzwerke, bereitstellen (hosten).About the telecommunications network 14 Other Internet services, such as, but not limited to, web-based communication platforms, commonly referred to as social networks, may also be accessed. Such communication platforms may include social networks such as Facebook, Twitter, Google+ or tumblr, just to name a few. Such social networks are hosted by network servers. To indicate this only by way of example, are in 1 two server platforms 20 . 20 ' via an access or gateway node 13 with a telecommunications network 14 connected. The server platforms 20 . 20 ' For the purposes of the description given below, two different social networks of the type described above, e.g. B. Facebook and Twitter as social networks, host.

Zum Verwenden oder Zugreifen auf Internetdienste, wie zum Beispiel soziale Netzwerke, oder das Bezahlsystem von 1, muss ein Benutzer typischerweise sich zuerst bei einem Server des entsprechenden Dienstanbieters authentifizieren, indem er zuvor zugewiesene Zugangsdaten, wie zum Beispiel einen Benutzernamen und ein Passwort, eingibt. Manchmal sind solche Zugangsdaten schon auf dem Benutzerendgerät gespeichert und werden automatisch an den Dienstanbieter übertragen, so das der Benutzer nicht jedes Mal, wenn er den Dienst nutzt, manuell seine Zugangsdaten erneut eingeben muss. To use or access Internet services, such as social networks, or the payment system of 1 Typically, a user typically must first authenticate to a server of the corresponding service provider by entering previously assigned access data, such as a username and password. Sometimes such credentials are already stored on the user terminal and are automatically transmitted to the service provider, so that the user does not have to manually reenter his credentials each time he uses the service.

Wie auf diesem Gebiet wohlbekannt ist, sind bei sozialen Netzwerkdiensten Kontaktlisten sogenannter „Freunde” oder „Followers” gespeichert, mit denen ein Benutzer auf der Kommunikationsplattform des entsprechenden sozial Netzwerks in Verbindung getreten ist. Gemäß einem Aspekt der vorliegenden Erfindung macht das Bezahlsystem 10 derartige Kontaktlisten einem Benutzer für die Auswahl des Empfängers einer elektronischen Geldübertragung verfügbar. Wie unten ersichtlich werden wird, kommuniziert das Bezahlsystem 10 mit einem dedizierten Anwendungsprogramm, das auf einem Benutzerendgerät 18, 19 installiert ist. Derartige Anwendungsprogramme für mobile Benutzerendgeräte werden üblicherweise als „Apps” bezeichnet.As is well known in the art, social network services stores contact lists of so-called "friends" or "followers" with whom a user has communicated on the communication platform of the corresponding social network. In accordance with one aspect of the present invention, the payment system makes 10 Such contact lists are available to a user for the selection of the recipient of an electronic money transfer. As will be seen below, the payment system communicates 10 with a dedicated application program running on a user terminal 18 . 19 is installed. Such mobile user terminal application programs are commonly referred to as "apps."

Für die Zwecke der nun folgenden Beschreibung wird der Bezahldienst als „Cashcloud”, das Bezahlsystem 10 als Cashcloud-Backend oder kurz als Backend und die auf dem Benutzerendgerät 18, 19 installierte Anwendung als Cashcloud-App oder Cashcloud-Frontend bezeichnet. Darüber hinaus wird in der folgenden Beschreibung als Beispiel in nicht einschränkender Weise Bezug auf die Social-Network-Dienste Facebook und Twitter genommen. Es versteht sich jedoch, dass die vorliegende Erfindung nicht auf bestimmte Social-Network-Dienste eingeschränkt ist, sondern auf eine beliebige Art von Kommunikationsplattformen angewendet werden kann, die APIs (Application Programmers Interfaces) für den externen Zugriff bereitstellen.For the purposes of the following description, the payment service will be called "Cashcloud", the payment system 10 as a cashcloud backend or briefly as a backend and on the user terminal 18 . 19 installed application called Cashcloud App or Cashcloud Frontend. Moreover, in the following description, by way of example, not by way of limitation, reference will be made to the social networking services Facebook and Twitter. It should be understood, however, that the present invention is not limited to particular social network services, but may be applied to any type of communication platforms that provide Application Programming Interfaces (APIs) for external access.

Die Integration von Freundeslisten aus sozialen Netzwerken wie Facebook und Twitter ermöglichen es dem Cashcloud-Benutzer, an jeden Freund Geld zu senden, ohne dass er dazu seine Bankverbindung, wie zum Beispiel die Kontonummer, die Bankleitzahl oder IBAN und BIC-Nummern, zu wissen braucht. Grundsätzlich wählt der Cashcloud-Benutzer einen Empfänger lediglich durch seinen oder ihren Freundesnamen aus, der in den gewählten sozialen Netzwerken aufgeführt ist. Nach Empfang dieser Transaktionsinformationen kann der Empfänger innerhalb seiner Cashcloud Mobile-Appauf seinem Smartphone oder durch die Verwendung des Internetbrowsers, der mit der Website von Cashcloud verbunden ist, die Transaktion bestätigen oder ablehnen. Daraufhin wird der Geldbetrag von dem Cashcloud-Benutzer-„Auftraggeber” zum Cashcloud-Benutzer-„Empfänger” verschoben.Integrating friend lists from social networks such as Facebook and Twitter allows the Cashcloud user to send money to any friend without having to know their bank details, such as account number, bank sort code or IBAN and BIC numbers , Basically, the Cashcloud user selects a recipient only by his or her friend's name, which is listed on the selected social networks. Upon receipt of this transaction information, the recipient may confirm or reject the transaction within their Cashcloud Mobile App on their smartphone or through the use of the internet browser associated with the Cashcloud website. The amount of money is then moved from the cashcloud user "principal" to the cashcloud user "recipient."

Wie unten auch noch in größerem Detail hervorgehen wird, macht das Cashcloud-Backend 10 Kontaktlisten von sozialen Netzwerken Facebook und Twitter für die auf den Benutzerendgeräten 18, 19 installierte Cashcloud-App verfügbar. Das Cashcloud-Backend muss daher auf die Server 20, 20' von Facebook und Twitter im Namen des Nutzers und mit dessen Privilegien zugreifen. Dies wird über Facebook- und Twitter-APIs unter der Verwendung sogenannter Zugangstokens erreicht.As will be seen in more detail below, this is the cash cloud backend 10 Contact lists of social networks Facebook and Twitter for those on the user terminals 18 . 19 installed Cashcloud app available. The cashcloud backend must therefore be on the server 20 . 20 ' access from Facebook and Twitter on behalf of the user and with their privileges. This is achieved via Facebook and Twitter APIs using so-called access tokens.

Ein Zugangstoken ist ein geschütztes Objekt, das Informationen über eine Identität und Privilegien enthält, die einem Benutzerkonto zugeordnet sind. Zugangstokens können vorübergehend für einen bestimmten Zeitraum gültig sein, nach dessen Ablauf der Token ungültig wird, oder können dauerhaft gültig sein. 2 zeigt einen Workflow der Schritte und Kommunikation zwischen Cashcloud-App, Cashcloud-Backend und einem Social-Network-Server zum Erzeugen eines Zugangstokens, der von dem Cashcloud-Backend zum Abrufen von Kontaktlisten von dem entsprechenden Social-Network-Server verwendet werden kann.An access token is a protected object that contains information about an identity and privileges associated with a user account. Access tokens may be temporarily valid for a specified period of time after which the token becomes invalid, or may be permanently valid. 2 Figure 4 illustrates a workflow of steps and communication between Cashcloud App, Cashcloud Backend and a Social Network Server for generating an access token that can be used by the Cashcloud backend to retrieve contact lists from the corresponding Social Network Server.

In 2 beziehen sich die auf der linken Seite dargestellten Aktionen auf Aktionen, die bei der Cashcloud-App stattfinden, die in der Mitte von 2 gezeigten Aktionen auf Aktionen des Cashcloud-Backends und die auf der rechten Seite von 2 gezeigten Aktionen auf eine Interaktion mit einem Social-Network-Server.In 2 The actions shown on the left-hand side refer to actions that take place on the Cashcloud app in the middle of 2 shown actions on actions of the cash cloud backend and on the right side of 2 actions shown to interact with a social network server.

In einem ersten Schritt 21 aktiviert ein Benutzer in der auf seinem mobilen Benutzerendgerät installierten Cashcloud-App eine Login-Funktion um ein Login in einem sozialen Netzwerk zu aktivieren. Die Cashcloud-App sendet eine entsprechende Anforderung an den Cashcloud-Server, worauf der Cashcloud-Server in Schritt 22 von dem Social-Network-Server einen temporären Anforderungstoken anfordert. Der temporäre Anforderungstoken wird von dem Social-Network-Server nur ausgegeben, um die Generierung einer Autorisierungs-Anforderungs-Seite für den Benutzer zu ermöglichen und die entsprechende Rücknachricht, die von dem Benutzer zurückgesendet wird, der anfänglichen Anforderung durch den Cashcloud-Server zuzuordnen, um den externen Dienst zu bezeichnen und zu korrelieren, dem der Benutzer erlaubt hat, in seinem (oder ihrem) Namen zu agieren. Der Anforderungstoken läuft aus, sobald die Benutzerantwort beim Social-Network-Server eingeht.In a first step 21 In the Cashcloud app installed on their mobile user terminal, a user activates a login function to activate a login in a social network. The Cashcloud app sends an appropriate request to the Cashcloud server, whereupon the Cashcloud server in step 22 requests a temporary request token from the social network server. The temporary request token is issued by the social network server only to enable the generation of an authorization request page for the user and to associate the corresponding return message returned by the user with the initial request by the cash cloud server. to identify and correlate the external service that the user has allowed to act in his (or her) name. The request token expires when the user response arrives at the social network server.

In Schritt 24 empfängt der Cashcloud-Server den temporären Anforderungstoken und einen Autorisierungslink von dem Social-Network-Server und verwendet diese zum Aufbau eines Autorisierungsframes und zum Senden dessen an das Benutzerendgerät. Beim Benutzerendgerät wird dem Benutzer ein Login-Bildschirm gezeigt, in welchem der Benutzer seine Zugangsdaten eingibt und die Privilegien bestätigt, die dem Cashcloud-Server innerhalb eines Frames gewährt werden, der in der Cashcloud-App eingebettet ist. Eine in dem eingebetteten Frame implementierte Login-Funktion erzeugt aus den Zugangsdaten und dem temporären Anforderungstoken eine Anforderung für einen Zugangstoken und sendet die Anforderung an den Cashcloud-Server. In Schritt 26 leitet der Cashcloud-Server die Benutzeranforderung nach einem Zugangstoken an den Social-Network-Server um. In Schritt 27 verifiziert der Social-Network-Server die Zugangsdaten und den temporären Zugangstoken und antwortet mit dem Senden eines Zugangstokens an den Cashcloud-Server. Der Cashcloud-Server sichert in Schritt 28 den Zugangstoken in einer Datenbank 28' und leitet den Zugangstoken auf die auf dem Benutzerendgerät laufende Facebook-App weiter. In Schritt 29 zeigt die Facebook-App beim Benutzerendgerät eine Nachricht an, die dem Benutzer mitteilt, dass das Login bei dem sozialen Netzwerk erfolgreich war. In step 24 The cash cloud server receives the temporary request token and an authorization link from the social network server and uses this to build an authorization frame and send it to the user terminal. At the user terminal, the user is presented with a login screen in which the user enters his credentials and acknowledges the privileges granted to the cash cloud server within a frame embedded in the cash cloud app. A login function implemented in the embedded frame generates a request for an access token from the access data and the temporary request token and sends the request to the cashcloud server. In step 26 The cashcloud server redirects the user request for an access token to the social network server. In step 27 the social network server verifies the credentials and the temporary access token and responds by sending an access token to the cashcloud server. The cashcloud server secures in step 28 the access token in a database 28 ' and forwards the access token to the Facebook app running on the user terminal. In step 29 the Facebook app displays a message to the user terminal informing the user that the login to the social network has been successful.

Der Zugangstoken wird von dem Social-Network-Server ausgegeben und stellt die Autorisierung dar, die von dem Benutzer an dem Cashcloud-Server gegeben wurde, um spezifische Daten von einem Social-Network-Konto einzuholen und in seinem Namen zu agieren. Durch Umleiten des Benutzers an den Server des sozialen Netzwerks für das Login wird erreicht, dass die Authentifizierung allein unter der Verantwortung des Social-Network-Severs geschieht, während der Cashcloud-Server die Zugangsdaten nicht zu kennen braucht und auch keine Möglichkeit hat, auf diese zuzugreifen, was in Hinblick auf Sicherheit, Wahrung der Datenprivatsphäre und Vertrauenswürdigkeit dienlich ist.The access token is issued by the social network server and represents the authorization given by the user at the cash cloud server to obtain specific data from and act on behalf of a social network account. By redirecting the user to the server of the social network for the login it is achieved that the authentication is done solely under the responsibility of the social network server, while the cash cloud server does not need to know the access data and also has no way of accessing it access what is useful in terms of security, data privacy and trustworthiness.

3 zeigt als ein Beispiel den Login-Vorgang beim sozialen Netzwerk Twitter. Dieser Login-Vorgang wird dazu verwendet, dem Cashcloud-Server eine Autorisierung zum Einholen von Daten im Namen eines Benutzers von dem Twitter-Netzwerk zu gewähren. Die Kommunikation zwischen dem Cashcloud-Server und dem Twitter-Server wird unter der Verwendung von einem von Twitter bereitgestellten API über das Protokoll HTTPS (Hypertext Transfer Protokol Secure) durchgeführt. Die Authentifizierung nutzt das OAuth-Protokoll, bei dem es sich um einen offenen Standard für die Autorisierung handelt, d. h. ein Verfahren, über das Clients im Namen des Besitzers einer Ressource auf Serverressourcen zugreifen können. Anforderungs- und Antwortparameter sind in 3 veranschaulicht. 3 shows as an example the login process at the social network Twitter. This login process is used to grant the Cashcloud server an authorization to retrieve data on behalf of a user from the Twitter network. Communication between the Cashcloud server and the Twitter server is performed using an API provided by Twitter via the HTTPS (Hypertext Transfer Protocol Secure) protocol. Authentication uses the OAuth protocol, which is an open standard for authorization, that is, a mechanism by which clients can access server resources on behalf of the owner of a resource. Request and response parameters are in 3 illustrated.

Wenn ein Benutzer sich in Schritt 31 von der auf seinem mobilen Endgerät laufenden Cashcloud-App anmelden möchte und zum Beispiel auf eine Schaltfläche „bei Twitter anmelden” tippt, sendet das mobile Endgerät eine Anforderungsnachricht GET/<1st social network URL> an den Cashcloud-Server, um die Twitter-Login-Seite aufzurufen und für den Benutzer anzuzeigen. Im Prozess 32 muss der Cashcloud-Server von dem Twitter-Server einen temporären Anforderungstoken anfordern, um den Link für die Twitter-Login-Seite aufzubauen, zu der der Benutzer dann geleitet wird, um den durch das Cashcloud-System vorgenommenen Zugriff und Aktionen in seinem Namen zu authentifizieren und zu autorisieren. Der Cashcloud-Server liefert in der Anforderung eine Rückruf-URL, bei der er in einem späteren Schritt die Verifizierung aufrufen kann. Der Twitter-Server antwortet in Schritt 33 mit einem Anforderungstoken, Token-Geheimnis und einer Bestätigung. Das Cashcloud-Backend baut dann in Schritt 34 einen Link zur Autorisierungs-Seite auf und leitet den Benutzer auf diesen Link.When a user is in step 31 from the Cashcloud app running on their mobile device and, for example, taps a "sign in to Twitter" button, the mobile device sends a GET / <1 st social network URL> request message to the Cashcloud server to send the Twitter Login page and display for the user. In process 32 The cashcloud server must request a temporary request token from the Twitter server to build the link for the Twitter login page, to which the user is then routed to access the actions and actions taken by the cashcloud system on its behalf authenticate and authorize. The cash cloud server provides a callback URL in the request, where it can call verification in a later step. The Twitter server answers in step 33 with a request token, token secret and an acknowledgment. The cash cloud backend then builds in step 34 a link to the authorization page and directs the user to this link.

In Schritt 35 muss der Benutzer auf der Autorisierungs-Seite die vom Twitter-Server gerendert wurde, seine Zugangsdaten vorlegen, wenn er noch nicht bei Twitter eingeloggt ist, oder lediglich die Aktionen der Anwendung autorisieren, wenn er schon eingeloggt ist. Der Twitter-Server leitet den Benutzer in Schritt 36 zur Rückruf-URL um und überreicht auch einen Verifier (oauth_verifier). Der Verifier hat eine ähnliche Funktion wie eine PIN: Wenn er korrekt zusammen mit dem Anforderungstoken zurückgeschickt wird, erlaubt er der Anwendung, den Anforderungstoken gegen ein Paar aus einem gültigen Zugriffstoken und einem Token-Geheimnis einzutauschen. Wenn der Benutzer dann in Schritt 37 die Rückruf-URL („GET/<2nd social network URL>”) besucht, werden der empfangene Anforderungstoken („oauth_token”) und der Verifier in die GET-Anforderung mit eingefügt.In step 35 If the user has not yet logged in to Twitter, he must provide his access data on the authorization page rendered by the Twitter server, or merely authorize the actions of the application if he is already logged in. The Twitter server directs the user in step 36 to the callback URL and handed over a verifier (oauth_verifier). The verifier has a similar function to a PIN: if returned correctly along with the request token, it allows the application to swap the request token for a pair of a valid access token and a token secret. If the user then in step 37 When the callback URL ("GET / <2 nd social network URL>") is visited, the received request token ("oauth_token") and the verifier are also included in the GET request.

Der Cashcloud-Server analysiert in Schritt 38 die empfangene Antwort, um den Verifier herauszufiltern und sendet in Schritt 39 eine Antwort mit dem Verifier und dem Anforderungstoken an den Twitter-Server, wobei er darum bittet, ein Paar aus einem Zugriffstoken und einem Token-Geheimnis zu erhalten, das dazu verwendet werden kann, im Namen des Benutzers zu agieren.The Cashcloud server parses in step 38 the received response to filter out the verifier and send in step 39 a response with the verifier and the request token to the Twitter server, requesting to obtain a pair of an access token and a token secret that can be used to act on behalf of the user.

Der Twitter-Server prüft in Schritt 40, ob der Anforderungstoken von dem richtigen Verifier begleitet wird, und wenn dies der Fall ist, liefert er ein Paar aus einem gültigen Zugriffstoken und einem Token-Geheimnis zurück an den Cashcloud-Server. Die Antwort des Twitter-Servers enthält auch eine User_ID, d. h. die interne ID des Benutzers bei Twitter und einen Screen_Name, der für den Namen des Benutzers bei Twitter steht. Antwortwerte werden in der Datenbank des Backends zur späteren Verwendung gespeichert, und der Benutzer wird bei Schritt 41 auf eine Twitter-Seite geleitet, auf der er in Schritt 42 eine Benutzerschnittstelle (UI) sieht, die ihn über den erfolgreichen Login-Versuch informiert. The Twitter server checks in step 40 whether the request token is accompanied by the correct verifier, and if so, returns a pair of valid access token and token secret back to the cashcloud server. The response of the Twitter server also includes a User_ID, ie the user's internal ID on Twitter and a Screen_Name that represents the user's name on Twitter. Response values are stored in the database of the backend for later use, and the user is taken to step 41 headed to a Twitter page on which he stepped in 42 sees a user interface (UI) that informs him about the successful login attempt.

Dieser oder ein ähnlicher Prozess kann für ein beliebiges soziales Netzwerk verwendet werden, das bei der Cashcloud-Mobile-Anwendung freigeschaltet und mit dieser verbunden ist. Der über den oben beschriebenen Vorgang erzeugte Zugangstoken kann nun von dem Cashcloud-Server dazu verwendet werden, im Namen des Benutzers eine Kontaktliste von dem Benutzerkonto beim entsprechenden sozialen Netzwerk abzurufen. Ein von dem Twitter-Server generierter Zugangstoken ist zum Beispiel ein dauerhafter Token, der nicht abläuft, während ein von dem Facebook-Server generierter Token ein temporärer Token ist, der nach einer Stunde abläuft. Nachdem der Token abgelaufen ist, muss erneut ein Facebook-Login durchgeführt werden, woraufhin der Token erneuert wird.This or a similar process can be used for any social network that is enabled and connected to the Cashcloud Mobile application. The access token generated through the process described above can now be used by the cash cloud server to retrieve a contact list from the user account on the appropriate social network on behalf of the user. For example, an access token generated by the Twitter server is a persistent token that does not expire while a token generated by the Facebook server is a temporary token that expires after one hour. After the token has expired, a Facebook login must be performed again, after which the token is renewed.

Nachdem der Cashcloud-Server von einem sozialen Netzwerk eine Kontaktliste eingesammelt hat, analysiert er die Kontaktliste und identifiziert Kontakte, die schon bei dem Cashcloud-Service registrierte Benutzer sind. Um den Benutzer darüber zu informieren, welchem seiner Kontakte er über den Cashcloud-Dienst Geld senden kann, markiert der Cashcloud-Server Kontakte, die schon bei Cashcloud registriert sind, in der Liste entsprechend.After the Cashcloud server has collected a contact list from a social network, it analyzes the contact list and identifies contacts who are already registered users with the Cashcloud service. To inform the user which of their contacts can send money through the Cashcloud service, the Cashcloud server marks contacts that are already registered with Cashcloud in the list accordingly.

Die Cashcloud-Anwendung erlaubt es einem Benutzer, einen Empfänger für einen elektronischen Geldtransfer entweder aus dem lokalen Adressbuch oder aus Kontaktlisten derjeniger sozialer Netzwerke auszuwählen, die vom Benutzer freigeschaltet wurden. Um das lokale Adressbuch mit den Kontaktlisten aus beliebigen sozialen Netzwerken zusammenzuführen, ruft die Cashcloud-Anwendung die lokale Kontaktliste aus dem lokalen Adressbuch ab, das auf dem Benutzerendgerät gespeichert ist, und sendet die lokale Kontaktliste an den Cashcloud-Server. Zum Beispiel kann die lokale Kontaktliste im Nutzdatenbereich einer HTML-POST-Anforderung an das Backend gesendet werden. Der Cashcloud-Server ruft im Namen des Benutzers Kontaktlisten von einem beliebigen freigeschalteten sozialen Netzwerk unter der Verwendung der entsprechenden Zugangstokens ab, um sich bei dem entsprechenden Social-Network-Server zu authentifizieren.The Cashcloud application allows a user to select an electronic money transfer recipient either from the local address book or from contact lists of those social networks that have been unlocked by the user. To merge the local address book with the contact lists from any social networks, the cashcloud application retrieves the local contact list from the local address book stored on the user terminal and sends the local contact list to the cashcloud server. For example, the local contact list in the payload area of an HTML POST request may be sent to the backend. The Cashcloud server, on behalf of the user, retrieves contact lists from any unlocked social network using the appropriate access tokens to authenticate to the corresponding social network server.

Der Cashcloud-Server führt dann die Kontaktlisten zusammen und sortiert sie und überprüft bei jedem der Kontakte, ob es ihn schon in der Cashcloud-Datenbank gibt. Kontakte, die registrierte Cashcloud-Benutzer sind, werden entsprechend markiert. Der Cashcloud-Server gibt dann die verarbeitete Kontaktliste zurück. Aus Gründen der Wahrung der Privatsphäre werden die Kontaktlisten nicht beim Cashcloud-Backend gespeichert, sondern lediglich vom Backend verarbeitet und dann an das Benutzerendgerät zurückgesendet, wo die verarbeitete Liste dann gespeichert wird.The Cashcloud server then merges and sorts the contact lists and checks for each of the contacts to see if they already exist in the Cashcloud database. Contacts who are registered Cashcloud users are marked accordingly. The Cashcloud server then returns the processed contact list. For privacy reasons, the contact lists are not stored at the cash cloud backend, but only processed by the backend and then sent back to the user terminal where the processed list is then stored.

Ein Beispiel für den Nachrichtenaustausch zwischen der Anwendung auf dem Benutzerendgerät und dem Cashcloud-Server ist unten gezeigt:

Figure 00160001
An example of the message exchange between the application on the user terminal and the cash cloud server is shown below:
Figure 00160001

Die Cashcloud-Anwendung sendet im Nutzdatenbereich einer HTML-POST-Anforderung die Liste von Kontakten aus dem lokalen Adressbuch an den Cashcloud-Server. Die Liste enthält für jeden Eintrag einen Parameter „source” und einen Parameter „value”. Der Parameter „source” bestimmt den Ursprung des Kontakts, der in diesem Beispiel für das lokale E-Mail-Adressbuch des Benutzers „E-Mail” ist. Der entsprechende Parameter „value” gibt die entsprechende E-Mail-Adresse an. Mehrfache E-Mail-Adressen sind für denselben Kontakt möglich. Optional können Vor- und Nachnamenparameter für jeden Eintrag zusätzlich zu den Parametern „source” und „value” angegeben werden. Darüber hinaus enthält die Anforderungsnachricht für die sozialen Netzwerke, die von dem Benutzer freigeschaltet wurden, entsprechende Zugangstokens, welche dem Cashcloud-Server eine Autorisierung erteilen, im Namen des Benutzers Kontaktlisten von den entsprechenden Social-Network-Servern abzurufen.The Cashcloud application sends the list of contacts from the local address book to the Cashcloud server in the payload area of an HTML POST request. The list contains a parameter "source" and a parameter "value" for each entry. The source parameter determines the origin of the contact, which in this example is the user's local e-mail address book Email. The corresponding parameter "value" indicates the corresponding e-mail address. Multiple e-mail addresses are possible for the same contact. Optionally, first and last parameter can be specified for each entry in addition to the source and value parameters. In addition, the request message for the social networks that have been unlocked by the user includes corresponding access tokens that authorize the cash cloud server to retrieve contact lists on behalf of the user from the corresponding social network servers.

Es versteht sich hierbei, dass die Angabe von Zugangstokens in der Anforderungsnachricht optional ist, da es, wie oben erläutert, sein kann, dass der Cashcloud-Server entsprechende Zugangstokens schon gespeichert hat. Es können jedoch in einer alternativen Implementierung, wie weiter unten zu sehen sein wird, Zugangstokens auch von dem Benutzerendgerät angefordert und von dem Social-Network-Server generiert werden, ohne dass dabei der Cashcloud-Server beteiligt ist. Auf diese Weise wird durch explizite Einbindung von Zugangstokens in die Anforderungsnachricht sichergestellt, dass der Cashcloud-Server immer einen gültigen und keinen abgelaufenen Zugangstoken zum Abrufen einer Kontaktliste von dem entsprechenden sozialen Netzwerk hat.It should be understood that the specification of access tokens in the request message is optional since, as explained above, it may be that the cash cloud server has already stored corresponding access tokens. However, in an alternative implementation, as will be seen below, access tokens may also be requested by the user terminal and generated by the social network server without the cash cloud server being involved. In this way, by explicitly including access tokens in the request message, it is ensured that the cash cloud server always has a valid and no expired access token for retrieving a contact list from the corresponding social network.

Der Cashcloud-Server überprüft für jeden der Kontakte, ob er schon in der Cashcloud-Datenbank besteht. Für alle sozialen Netzwerke, für die der Benutzer Zugriff auf seine Daten erlaubt hat, aktualisiert der Cashcloud-Server die Kontaktliste und sortiert die Kontaktliste alphabetisch nach Nachnamen. Die verarbeitete Kontaktliste wird dann an die auf dem Benutzerendgerät laufende Cashcloud-Anwendung zurückgesendet. Ein Beispiel für solch eine Antwortnachricht ist unten angegeben:

Figure 00170001
The Cashcloud server checks for each of the contacts whether it already exists in the Cashcloud database. For all social networks for which the user has access to their data, the Cashcloud server updates the contact list and sorts the contact list alphabetically by last name. The processed contact list is then sent back to the Cashcloud application running on the user terminal. An example of such a response message is given below:
Figure 00170001

Davon abgesehen, dass die zurückgeschickte Liste eine aus den lokalen Kontakten und aus den Social-Network-Kontakten zusammengeführte Liste ist, gibt der Parameter „newUser” an, ob der entsprechende Kontakt schon ein registrierter Cashcloud-Benutzer (d. h. falsch) ist oder ob er für den Cashcloud-Dienst ein neuer Benutzer wäre (d. h. wahr). Wenn darüber hinaus für einen bestimmten Eintrag eine Facebook- oder Twitter-ID bekannt ist, dann wird diese Information ebenfalls eingebunden, um es der Cashcloud-App zu ermöglichen, eine Verbindung zwischen einem beliebigen Cashcloud-Benutzerkonto und entsprechenden Facebook- oder Twitter-Konten vorzubereiten. Wenn eine solche Verbindung besteht, visualisiert dies die Cashcloud-App dem Benutzer, indem neben dem Kontakteintrag in einem Auswahlmenü ein entsprechendes Symbol angezeigt wird.Apart from the fact that the returned list is a list made up of the local contacts and the social network contacts, the parameter "newUser" indicates whether the corresponding contact is already a registered cashcloud user (ie wrong) or whether he is for the Cashcloud service a new user would be (ie true). In addition, if a Facebook or Twitter ID is known for a particular entry, then that information is also included to enable the Cashcloud app to prepare a connection between any Cashcloud user account and corresponding Facebook or Twitter accounts , If such a connection exists, this visualizes the Cashcloud app to the user by displaying a corresponding icon next to the contact entry in a selection menu.

Diese verarbeitete Kontaktliste wird nun von der Cashcloud-Anwendung verwendet, um ein Auswahlmenü zu generieren, aus dem der Benutzer einen Empfänger für einen elektronischen Geldtransfer auswählen kann. Einträge in diesem Auswahlmenü sind für Kontakte, die schon Cashcloud-Benutzer sind, grafisch markiert, so dass der Benutzer erkennt, an welchen seiner Freunde er direkt Geld übertragen kann.This processed contact list is now used by the Cashcloud application to generate a drop-down menu from which the user can select a recipient for an electronic money transfer. Entries in this drop-down menu are graphically marked for contacts who are already Cashcloud users, so that the user knows to which of his friends he can transfer money directly.

Außerdem ist es dem Benutzer möglich, als einen Empfänger einen Kontakt auszuwählen, der noch nicht als Cashcloud-Benutzer registriert ist. In diesem Fall informiert jedoch dann das Cashcloud-Backend den Empfänger über das Social-Network-Kommunikationssystem im Namen des Benutzers oder über eine direkte E-Mail über die geplante Transaktion. Diese Nachricht lädt den Empfänger dazu ein, sich bei Cashcloud zu registrieren, um die Zahlung entgegennehmen zu können. Die an einen solchen noch nicht registrierten Empfänger gesendete Nachricht enthält dann eine Kennung und eine URL (Uniform Resource Locator), die ihn zu einer Registrierungs-Seite führt, die die Kennung in den URL-Parametern enthält. Wenn der Empfänger dieser Einladung auf den Link klickt, wird er automatisch zu einer Registrierungs-Anwendungsseite geführt, wo er dann ein entsprechendes Registrierungsformular ausfüllen kann, um sich bei Cashcloud zu registrieren.In addition, the user is allowed to select as a recipient a contact that is not yet registered as a Cashcloud user. In this case, however, the cash cloud backend then informs the recipient of the proposed transaction via the social network communication system on behalf of the user or via a direct e-mail. This message invites the recipient to register with Cashcloud to receive the payment. The message sent to such a not yet registered recipient then contains an identifier and a Uniform Resource Locator (URL) which leads it to a registration page containing the identifier in the URL parameters. When the recipient of this invitation clicks on the link, they will automatically be directed to a registration application page, where they can fill out a registration form to register with Cashcloud.

Der Vorgang zum Erzeugen einer Transaktion im Cashcloud-System ist als ein Flussdiagramm in den 4a und 4b dargestellt. In diesem Flussdiagramm enthält die Spalte auf der linken Seite Benutzerinteraktionen, die Spalte in der Mitte Schritte, die von der auf dem Benutzerendgerät installierten Anwendung durchgeführt werden, und die Spalte auf der rechten Seite Schritte, die beim Cashcloud-Server ablaufen.The process for creating a transaction in the cashcloud system is as a flowchart in the 4a and 4b shown. In this flow chart, the column on the left contains user interactions, the column in the middle, steps performed by the application installed on the user terminal, and the column on the right, steps that occur at the cash cloud server.

Die Anwendung hat ein Hauptmenü, das eine Schaltfläche für eine Geld-Senden-Funktion enthält. Wenn in einem Schritt 61 der Benutzer auf diese Schaltfläche „Geld senden” klickt, zeigt die Anwendung in Schritt 62 ein Formular für die Geld-Senden-Funktion. In Schritt 63 muss der Benutzer das Formular ausfüllen, um einen Empfänger und einen zu übertragenden Betrag sowie einen Grund für die Transaktion anzugeben.The application has a main menu that contains a button for a money-sending function. If in one step 61 the user clicks on this "send money" button, the application shows in step 62 a form for the money-sending function. In step 63 the user must complete the form to indicate a recipient and an amount to transfer and a reason for the transaction.

In Schritt 64 sendet die Anwendung die eingegebenen Daten an den Cashcloud-Server zur Validierung. Eine entsprechende Anforderungsnachricht, die im Nutzdatenbereich einer HTML-POST-Anforderung gesendet wird, ist unten gezeigt:

Figure 00190001
In step 64 the application sends the entered data to the Cashcloud server for validation. A corresponding request message sent in the payload area of an HTML POST request is shown below:
Figure 00190001

Die Anforderungsnachricht enthält die Einträge „credit_user”, „amount” und „reason_id”. Der Eintrag „credit_user” enthält die Parameter „source”, der den Weg angibt, über den der Empfänger über die Geldtransaktion informiert werden kann, z. B. E-Mail, Facebook oder Twitter, sowie einen Parameter „value”, der den Empfänger entweder durch seine E-Mail-Adresse, seinen Facebook-Namen oder seine Twitter-ID, je nach dem Wert von „source” identifiziert. Der Eintrag „amount” enthält den zu übertragenden Betrag in Euro-Cent. Der Eintrag „reason_id” enthält eine Kennung eines aus einer vordefinierten Liste ausgewählten Grunds.The request message contains the entries "credit_user", "amount" and "reason_id". The entry "credit_user" contains the parameters "source", which indicates the way by which the recipient can be informed about the financial transaction, e.g. E-mail, Facebook or Twitter, as well as a parameter "value" that identifies the recipient either by his e-mail address, his Facebook name or his Twitter ID, depending on the value of "source". The entry "amount" contains the amount to be transferred in euro cents. The entry "reason_id" contains an identifier of a reason selected from a predefined list.

In Schritt 65 überprüft der Cashcloud-Server die Stufe der Mitgliedschaft des Auftraggebers, ob er auf seinem Benutzerkonto ein verfügbares Guthaben hat und ob optional tägliche, wöchentliche oder monatliche Transferlimits auf der Grundlage der Mitgliedschaftsstufe nicht etwa schon überschritten wurden. Es kann eine weitere Überprüfung dahingehend erfolgen, ob der Auftraggeber oder der Empfänger auf einer schwarzen Liste stehen. Wenn die Validation fehlschlägt, sendet der Cashcloud-Server bei Schritt 66 eine entsprechende Fehlernachricht an die Cashcloud-Anwendung, die dann auf dem Bildschirm des Benutzerendgeräts angezeigt wird. Wenn zum Beispiel die E-Mail-Adresse oder die Kontaktangaben des Empfängers nicht gültig sind oder fehlen, dann zeigt die Anwendung eine entsprechende Warnung an. Wenn der Betrag den verfügbaren Kontostand übersteigt, dann zeigt die Anwendung auch eine entsprechende Warnung.In step 65 the Cashcloud server checks the level of the client's membership, whether it has an available credit on its user account and whether optional daily, weekly or monthly transfer limits based on the membership level have not already been exceeded. A further check can be made as to whether the contracting entity or the consignee is on a blacklist. If the validation fails, the Cashcloud server sends in step 66 a corresponding error message to the cashcloud application, which is then displayed on the screen of the user terminal. For example, if the recipient's e-mail address or contact information is not valid or missing, the application displays a warning message. If the amount exceeds the available balance, the application also displays a warning.

Wenn die Validation erfolgreich ist, sendet der Server bei Schritt 67 eine entsprechende Antwortnachricht an die Anwendung zurück. Die Antwort kann auch eine von der Mitgliedschaft des Benutzers und dem Gebührenmodell abhängige Gebühr enthalten. Ein Beispiel für eine Antwortnachricht ist unten angegeben:

Figure 00200001
If the validation succeeds, the server sends in step 67 a corresponding response message back to the application. The answer may also include a fee depending on the user's membership and the fee model. An example of a response message is given below:
Figure 00200001

Wenn die Anwendung die Antwortnachricht empfängt, die angibt, dass der Betrag und die Empfängerangaben die formellen Anforderungen erfüllen, wird ein Geld-Senden-Bildschirm bei Schritt 68 dem Benutzer angezeigt, der ihm nochmals die Einzelheiten der Transaktion zeigt und zur Eingabe eines Passworts oder einer PIN für den Cashcloud-Dienst auffordert. Dann kann der Benutzer in Schritt 69 entweder die Transaktion widerrufen oder durch Eingeben seines Passwortes oder seiner PIN diese bestätigen. Nachdem der Benutzer sein Passwort oder seine PIN eingegeben hat und eine Bestätigungsschaltfläche gedrückt hat, sendet die Anwendung die unten angegebene Anforderung an den Cashcloud-Server zurück, um das eingegebene Passwort bzw. die PIN zu validieren.When the application receives the response message indicating that the amount and the recipient details meet the formal requirements, a money-sending screen will be opened at step 68 to the user who will again show him the details of the transaction and prompt for a password or PIN for the Cashcloud service. Then the user in step 69 either revoke the transaction or confirm by entering his password or PIN. After the user enters his password or PIN and presses a confirmation button, the application returns the request below to the Cashcloud server to validate the entered password or PIN.

Figure 00200002
Figure 00200002

Der Parameter PIN repräsentiert einen doppelten Hash-Wert, der gemäß der folgenden Formel generiert wird:

Figure 00210001
The parameter PIN represents a double hash value, which is generated according to the following formula:
Figure 00210001

In dieser Formel bezeichnet $userEmail die E-Mail-Adresse des Benutzers, die im Cashcloud als ein Benutzername verwendet wird, und ist $pin der Pin-Code, der vom Benutzer eingegeben wird. Der Parameter $pinSalt ist ein Zufallsparameter, der aus 32 zufälligen Symbolen aus der folgenden Gruppe besteht:
”ABCDEFZHIKLMNOPQRSTVXabcdefzhiklmnopqrstvx1234567890”
In this formula, $ userEmail denotes the user's e-mail address used as a user name in the CashCloud, and $ pin is the pin code entered by the user. The $ pinSalt parameter is a random parameter consisting of 32 random symbols from the following group:
"ABCDEFZHIKLMNOPQRSTVXabcdefzhiklmnopqrstvx1234567890"

Der Hash-Wert $hash wird schließlich mit der Funktion base64_encode() codiert, um den 8-Bit-Binärwert in eine Code-Seiten-unabhängige ASCII-Sequenz $pinHash umzuwandeln.Finally, the $ hash hash value is encoded with the base64_encode () function to convert the 8-bit binary value into a $ page-independent ASCII sequence of $ pinHash.

Der Server prüft dann in Schritt 71 die eingegebene PIN oder das Passwort, um die Anforderung zu validieren. Wenn die eingegebene PIN oder das Passwort inkorrekt waren, wird in Schritt 72 eine Validierung-fehlgeschlagen-Nachricht an die Anwendung geschickt, die dann eine entsprechende Fehlernachricht auf dem Bildschirm des Benutzerendgeräts anzeigt. Wenn auf der anderen Seite die Validierung erfolgreich war, schreitet der Prozess bei 4b fort.The server then checks in step 71 the entered PIN or password to validate the request. If the entered PIN or password was incorrect, in step 72 a validation failed message is sent to the application, which then displays a corresponding error message on the screen of the user terminal. On the other hand, if the validation was successful, the process comes along 4b continued.

Als ein nächster Schritt überprüft dann der Cashcloud-Server, ob der Empfänger schon ein registrierter Cashcloud-Benutzer ist, z. B. ob die angegebene E-Mail-Adresse mit einem Benutzer in der Cashcloud-Datenbank übereinstimmt. Wenn der Benutzer (noch) nicht beim Cashcloud-System registriert ist, wird für ihn in Schritt 74 ein Benutzerdatensatz erstellt, der dann den Status „schwebende Registrierung” („PENDING_REGISTRATION”) erhält. Der Benutzerdatensatz wird in Schritt 75 in der Cashcloud-Datenbank gespeichert, und der Workflow geht zu Schritt 76 weiter. Wenn der Benutzer schon in der Cashcloud-Datenbank existiert, geht der Workflow direkt zu Schritt 76 weiter, bei dem eine Transaktion erzeugt wird und auf den Status „schwebende Annahme” („PENDING_ACCEPT”) gesetzt wird.As a next step, the cash cloud server then checks to see if the recipient is already a registered Cashcloud user, e.g. For example, if the specified email address matches a user in the Cashcloud database. If the user is not (yet) registered with the Cashcloud system, it will be in step for him 74 create a user record, which then gets the status "pending registration"("PENDING_REGISTRATION"). The user record will be in step 75 stored in the Cashcloud database, and the workflow goes to step 76 further. If the user already exists in the Cashcloud database, the workflow goes straight to step 76 Next, a transaction is generated and set to the PENDING_ACCEPT state.

In Schritt 77 wird die Transaktion in einer Form eines Datensatzes in der Cashcloud-Datenbank gespeichert. Zusätzlich zur Statusanzeige enthält der Datensatz mindestens den zu zahlenden Betrag, den Cashcloud-Benutzer, der die elektronische Zahlung sendet (d. h. den Auftraggeber) und den Empfänger oder Zahlungsempfänger der Zahlung.In step 77 the transaction is stored in a form of a record in the Cashcloud database. In addition to the status display, the record contains at least the amount to be paid, the Cashcloud user sending the electronic payment (ie, the payer), and the recipient or payee of the payment.

In Schritt 78 wird eine Antwort an die Cashcloud-App zurückgesendet, um mitzuteilen, dass die Transaktion erzeugt wurde. Die Antwort hat das unten gezeigte Format. Sie enthält den HTTP-Statuscode 200, der eine erfolgreiche Erzeugung der Transaktion anzeigt:

Figure 00220001
In step 78 a reply is sent back to the Cashcloud app to indicate that the transaction has been generated. The answer is in the format shown below. It contains the HTTP status code 200 indicating a successful generation of the transaction:
Figure 00220001

Schließlich wird in Schritt 79 eine Mitteilung an den Empfänger gesendet. Diese Mitteilung wird entweder als eine E-Mail direkt an den Empfänger oder, wenn der Empfänger aus einer Social-Network-Kontaktliste ausgewählt wurde, über seine Inbox beim entsprechenden sozialen Netzwerk gesendet. Zum Vermeiden von Problemen mit der Spam-Filterung beim Social-Network-Server kann eine Nachricht an den Empfänger über die Social-Network-Plattform alternativ auch namens und im Auftrag des Auftraggebers gesendet werden. Hierzu kann es nötig sein, dass der Benutzer seine Zugangsdaten seines Social-Network-Kontos erneut eingibt, um es dem Cashcloud-Backend zu erlauben, in seinem Namen zu agieren.Finally, in step 79 sent a message to the recipient. This message is sent either as an e-mail directly to the recipient or, if the recipient was selected from a social network contact list, via their inbox at the appropriate social network. Alternatively, to avoid problems with spam filtering on the social network server, a message can be sent to the recipient via the social network platform, also named and on behalf of the client. This may require the user to re-enter their social network account credentials to allow the cash cloud backend to act on its behalf.

Nachdem eine Transaktion erfolgreich erzeugt wurde und der Empfänger in Schritt 79 davon in Kenntnis gesetzt wurde, beginnt der Prozess der Ausführung der Transaktion, wie er in dem Workflow der 5a, 5b gezeigt ist. In den 5a, 5b bezeichnet die erste Spalte Benutzer-Interaktionen durch den Empfänger, bezieht sich die zweite Spalte auf Aktionen, die von der Cashcloud-Anwendung durchgeführt werden, die auf einem Endgerät des Empfängers läuft, bezieht sich die dritte Spalte auf Aktionen, die beim Cashcloud-Server durchgeführt werden, und bezieht sich die vierte Spalte auf Interaktion mit einem lizensierten E-Geld-Institut, wie zum Beispiel TUNZ.After a transaction has been successfully generated and the recipient in step 79 The process of execution of the transaction, as described in the workflow of the 5a . 5b is shown. In the 5a . 5b If the first column refers to user interactions by the recipient, the second column refers to actions performed by the cashcloud application running on a recipient's terminal, the third column refers to actions performed on the cashcloud server and the fourth column refers to interaction with a licensed e-money institution, such as TUNZ.

In Schritt 80 wird der Status des Datensatzes in der Cashcloud-Datenbank, der sich auf den Empfänger bezieht, überprüft. Wenn der entsprechende Benutzerdatensatz den Status „schwebende Registrierung” hat, was bedeutet, dass der Empfänger kein registrierter Cashcloud-Benutzer ist, dann teilt das Cashcloud-System mit einer E-Mail entweder direkt oder durch die Inbox eines sozialen Netzwerkes die schwebende Transaktion mit. Wie schon erwähnt, enthält die E-Mail dann eine Kennung und einen URL-Link, der zu einer Registrierungsseite führt, wo sich der Benutzer dann registrieren kann, um die elektronische Zahlung entgegenzunehmen. In Schritt 82 erhält der Benutzer dann die Einladungsnachricht, und er kann dann durch Folgen des enthaltenen Links die Registrierungsseite besuchen und sich in Schritt 83 als neuer Cashcloud-Benutzer registrieren. In step 80 the status of the record in the Cashcloud database relating to the recipient is checked. If the corresponding user record has the status "pending registration", meaning that the recipient is not a registered Cashcloud user, then the Cashcloud system notifies the pending transaction with an e-mail either directly or through the inbox of a social network. As already mentioned, the email then contains an identifier and a URL link leading to a registration page where the user can then register to receive the electronic payment. In step 82 the user then receives the invitation message, and then, by following the contained link, he can visit the registration page and go to step 83 register as a new Cashcloud user.

Wenn sich bei der Statusüberprüfung in Schritt 80 herausstellt, dass der Empfänger schon ein registrierter Cashcloud-Benutzer ist, oder wenn sich der Empfänger erfolgreich als ein neuer Cashcloud-Benutzer registriert hat, wird bei Schritt 84 eine Mitteilung versendet, die den Empfänger auffordert, die Transaktion anzunehmen. In Schritt 85 empfängt der Benutzer eine Mitteilung über die schwebende Transaktion, und er kann dann in Schritt 86 einem in der Mitteilung enthaltenen Link folgen, die ihn zur Cashcloud-Anwendung führt, entweder in der Form eines Webportals oder in der Form der auf seinem mobilen Endgerät laufenden Cashcloud-App. In Schritt 87 zeigt die Cashcloud-Anwendung ihm dann einen Bildschirm mit allen seinem Benutzerkonto zugewiesenen schwebenden Transaktionen.If the status check in step 80 turns out that the recipient is already a registered Cashcloud user, or if the recipient has successfully registered as a new Cashcloud user 84 send a message requesting the recipient to accept the transaction. In step 85 the user receives a message about the pending transaction, and he can then in step 86 follow a link in the message that leads him to the Cashcloud application, either in the form of a web portal or in the form of the Cashcloud app running on his mobile device. In step 87 The Cashcloud application will then show him a screen with all pending transactions assigned to his user account.

In Schritt 88 kann der Benutzer eine Transaktion aus der ihm von der Anwendung gezeigten Auswahl auswählen, und er bekommt dann in Schritt 89 Einzelheiten der ausgewählten Transaktion gezeigt. In Schritt 90 kann der Benutzer eine Annahmeschaltfläche antippen, die ihm für die ausgewählte Transaktion angezeigt wird. Wenn er die Annahme-Schaltfläche antippt, geht der Workflow in 5b weiter.In step 88 The user can select a transaction from the selection shown to him by the application, and then he gets in step 89 Details of the selected transaction shown. In step 90 For example, the user can tap an accept button that is displayed to him for the selected transaction. If he taps the accept button, the workflow goes into 5b further.

Dann fordert die Anwendung den Benutzer in Schritt 91 auf, seine Zugangsdaten einzugeben, z. B. seine Benutzer-PIN. In Schritt 92 muss der Benutzer seine PIN eingeben, und die Anwendung sendet dann in Schritt 93 eine Anforderung mit der Hash-codierten PIN an den Cashcloud-Server. In Schritt 94 validiert der Cashcloud-Server die PIN. Wenn die PIN ungültig ist, wird eine entsprechende Fehlernachricht in Schritt 95 an die Anwendung zurückgesendet und dem Benutzer angezeigt. Zusätzlich kann auch die Anzahl ungültiger Versuche zur Eingabe der PIN im Cashcloud-System gespeichert werden, um das Benutzerkonto nach einer vorbestimmten Anzahl ungültiger Versuche zu sperren.Then the application prompts the user in step 91 to enter his credentials, eg. B. his user PIN. In step 92 the user must enter his PIN, and then the application sends in step 93 a request with the hashed PIN to the cashcloud server. In step 94 The cashcloud server validates the PIN. If the PIN is invalid, a corresponding error message will be sent in step 95 returned to the application and displayed to the user. In addition, the number of invalid attempts to enter the PIN can also be stored in the Cashcloud system in order to block the user account after a predetermined number of invalid attempts.

Wenn die PIN erfolgreich validiert ist, leitet der Cashcloud-Server in Schritt 96 den tatsächlichen Geldtransfer ein. Dies erfolgt in der Ausführungsform über ein lizensiertes E-Geld-Institut, in diesem Fall die Gesellschaft TUNZ, durch Aufrufen einer Geldtransferfunktion, die in der API des E-Geld-Instituts verfügbar ist. Im Schritt 97 sind wird beim E-Geld-Institut der tatsächliche Geldtransfer durchgeführt und eine Bestätigung zurück an den Cashcloud-Server geschickt. Im Schritt 98 ändert der Cashcloud-Server den Kontostand für die Konten des Auftraggebers und des Empfängers, die in der Cashcloud-Datenbank gespeichert sind. Im Schritt 99 wird der Status der Transaktion auf „angenommen” („ACCEPTED”) geändert. Schließlich wird im Schritt 100 eine Mitteilung über den erfolgreichen Geldtransfer sowohl an den Auftraggeber als auch den Zahlungsempfänger des Transfers gesendet.If the PIN is successfully validated, the Cashcloud server initiates in step 96 the actual money transfer. This is done in the embodiment via a licensed e-money institution, in this case TUNZ, by calling a money transfer function available in the E-money institution's API. In step 97 At the e-money institution, the actual money transfer is carried out and a confirmation is sent back to the Cashcloud server. In step 98 The Cashcloud server changes the account balance for the customer and recipient accounts stored in the Cashcloud database. In step 99 the status of the transaction is changed to "ACCEPTED". Finally, in step 100 sent a notice of successful transfer of funds to both the principal and the payee of the transfer.

6 zeigt die Menüstruktur und die grafische Benutzerschnittstelle der Cashcloud-App, die auf einem mobilen Benutzerendgerät installiert ist und dort läuft. Die Bildschirmansicht A zeigt das Hauptmenü, mit dem die Cashcloud-Anwendung nach der erfolgreichen Authentifizierung startet. Das Hauptmenü A hat mehrere Schaltflächen für verschiedene Funktionen, wie zum Beispiel das Abrufen des Kontostands, das Auffüllen des Kontos von einer Kreditkarte, das Prüfen offener Transaktionen und andere. Die Schaltfläche 102 dient zum Senden von Geld an andere Cashcloud-Benutzer. Wenn die Schaltfläche 102 gedrückt wird, wird der Geld-Senden-Bildschirm B geöffnet. Mit der Schaltfläche Zurück 104 kann der Benutzer zum vorhergehenden Bildschirm zurückkehren. Zum Einleiten einer elektronischen Zahlung muss der Benutzer die benötigten Felder ausfüllen. In Feld 106 kann der Benutzer entweder manuell eine E-Mail-Adresse eines Empfängers eingeben, oder er kann aus einer Auswahlliste einen Empfänger wählen. In Feld 108 muss er einen zu übertragenden Betrag eingeben. In Feld 110 kann er einen Grund für die Zahlung aus einem Drop-Down-Menü auswählen. In Feld 112 kann er, wenn er das wünscht, einen Kommentar eingeben. Oben im Menü B wird dem Cashcloud-Benutzer sein verfügbarer Kontostand eingeblendet. Der Betrag, der übertragen werden kann, kann nicht höher als dieser verfügbare Kontostand sein. 6 shows the menu structure and graphical user interface of the Cashcloud App installed and running on a mobile user terminal. Screen view A shows the main menu used by the Cashcloud application after successful authentication. Main menu A has several buttons for various functions, such as retrieving account balance, refilling the account from a credit card, checking open transactions, and others. The button 102 is used to send money to other Cashcloud users. When the button 102 is pressed, the money sending screen B is opened. With the Back button 104 the user can return to the previous screen. To initiate an electronic payment, the user must complete the required fields. In box 106 the user can either manually enter an e-mail address of a recipient, or he can select a recipient from a selection list. In box 108 he must enter an amount to be transferred. In box 110 He may choose a reason for payment from a drop-down menu. In box 112 he can, if he so wishes, enter a comment. At the top of menu B, the Cashcloud user will see his available account balance. The amount that can be transferred can not be higher than this available balance.

Zum Auswählen des Empfängers aus einer Auswahlliste kann der Benutzer das Friend-Symbol 114 drücken, worauf die Anwendung zu Bildschirm C weitergeht, auf dem ein Menü von Kontakten angezeigt wird, die aus dem lokalen Adressbuch und von einem oder mehreren sozialen Netzwerken stammen, die von dem Benutzer freigeschaltet wurden, um für Cashcloud-Dienste verwendet zu werden. Solche Kontakte in der Auswahlliste, die schon selbst als Cashcloud-Benutzer registriert wurden, sind mit einem Symbol 116 markiert. Der Cashcloud-Benutzer weiß auf diese Weise, welcher seiner Freunde und Kontakte schon elektronische Zahlungen über den elektronischen Bezahldienst Cashcloud empfangen können. Zusätzlich zeigt ein Facebook- oder Twitter-Symbol, ob die Kontakte auch in Facebook- oder Twitter-Kontaktlisten enthalten sind oder von dort stammen. Wenn der Benutzer aus der Auswahlliste von Kontakten auf Bildschirm C einen Eintrag auswählt, wird die Information auf dem Geld-Senden-Bildschirm B übertragen und das Adressfeld 106 vorausgefüllt.To select the recipient from a selection list, the user can select the friend icon 114 Press, whereupon the application will proceed to screen C, which will display a menu of contacts originating from the local address book and from one or more social networks sent by the Users have been unlocked to use for Cashcloud services. Such contacts in the selection list, who have already been registered as Cashcloud users themselves, are marked with an icon 116 marked. The Cashcloud user knows in this way which of his friends and contacts can already receive electronic payments via the electronic payment service Cashcloud. In addition, a Facebook or Twitter icon indicates whether the contacts are also included in or from Facebook or Twitter contact lists. When the user selects an entry from the selection list of contacts on screen C, the information is transmitted on the money sending screen B and the address field 106 pre-filled.

Zurück auf dem Bildschirm B kann der Benutzer einen Betrag auswählen, den er senden will, indem er auf das Betragsfeld 108 navigiert. Dieses öffnet dann automatisch einen Betragsbildschirm D, der ein numerisches Tastenfeld anzeigt, um den Betrag einzugeben. Durch Drücken der Schaltfläche „fertig” wird der eingegebene Betrag dann in das Betragsfeld 108 des Bildschirms B übertragen.Back on screen B, the user can select an amount that he wants to send by clicking on the Amount field 108 navigated. This then automatically opens an amount screen D which displays a numeric keypad to enter the amount. By pressing the "done" button, the amount entered is then entered in the amount field 108 of the screen B transferred.

Zurück auf dem Bildschirm B kann der Benutzer einen Grund für die Zahlung eingeben, indem er zum Feld 110 navigiert. Hierdurch öffnet sich ein Bildschirm E mit einer Auswahlliste vordefinierter Gründe, aus denen der Benutzer einen Eintrag auswählen kann, der dann in das Feld 110 übertragen wird. Wenn der Benutzer keinen der so angebotenen Gründe aus der Liste auswählen möchte, kann das Feld 110 leergelassen werden oder der Benutzer kann einen Eintrag „andere” auswählen.Back on the screen B, the user can enter a reason for payment by going to the box 110 navigated. This will bring up a screen E with a selection list of predefined reasons from which the user can select an entry, which then enters the field 110 is transmitted. If the user does not want to select any of the reasons so offered from the list, the field may 110 be left blank or the user can select an entry "others".

Im Feld 112 kann der Benutzer eine freie Textnachricht als Kommentar eingeben, der dann zusammen mit der Transaktion an den Empfänger übertragen wird. Nachdem das Formular auf Bildschirm B ausgefüllt wurde, kann der Benutzer die Schaltfläche „Geld Senden” 113 drücken und sendet die Cashcloud-Anwendung die Daten zur Validation an den Cashcloud-Server, wie oben beschrieben. Nach der erfolgreichen Validierung der Einträge durch den Cashcloud-Server geht dann die Cashcloud-App weiter zu Bildschirm F, durch den der Benutzer aufgefordert wird, seine PIN in Feld 122 einzugeben, um die Transaktion zu bestätigen und zu autorisieren.in The Field 112 the user can enter a free text message as a comment, which is then transmitted to the recipient along with the transaction. After completing the form on screen B, the user can click the "send money" button 113 The Cashcloud application pushes and sends the data to the Cashcloud server for validation, as described above. After successful validation of the entries by the Cashcloud server, the Cashcloud app then proceeds to screen F, prompting the user to enter his PIN in the box 122 to confirm and authorize the transaction.

Auf Bildschirm F zeigt die Anwendung dann den ausgewählten Zahlbetrag und die Gebühr für den elektronischen Geldtransfer, die vom Cashcloud-Server berechnet wurde. Das Rückgängig-Schaltfeld 118 bringt den Benutzer dann zurück zu Bildschirm B. Wenn der Benutzer zu Feld 122 navigiert, erscheint die Tastatur zur Eingabe seiner PIN. Bei der Eingabe der PIN zeigt die Anwendung nur versteckte Zeichen an. Wenn die PIN eingegeben wurde, muss der Benutzer mit der Schaltfläche 124 bestätigen, und dann sendet die Anwendung eine Anforderung mit dem Hash-verschlüsselten PIN-Code an den Cashcloud-Server zur Validierung, wie oben beschrieben.On screen F, the application then displays the selected payment amount and the electronic money transfer fee charged by the cash cloud server. The undo button 118 then brings the user back to screen B. When the user is to field 122 navigates, the keyboard will appear to enter its PIN. When entering the PIN, the application displays only hidden characters. If the PIN has been entered, the user must use the button 124 then the application sends a request with the hashed PIN code to the cashcloud server for validation as described above.

Wenn die Erzeugung der Transaktion beim Cashcloud-Server erfolgreich war und bestätigt wurde, wird dem Benutzer der Bildschirm G angezeigt, der ihn über die erfolgreiche Erzeugung informiert. Die Schaltfläche „fertig” bringt den Benutzer dann zum Bildschirm „H”, auf dem er optional seine Erfahrung mit dem Cashcloud-Dienst auf einem beliebigen sozialen Netzwerk teilen kann, das er für Cashcloud-Dienste aktiviert hat.If the transaction generation on the Cashcloud server was successful and confirmed, the user will be presented with the screen G informing him of the successful creation. The "done" button then takes the user to the "H" screen, where he can optionally share his experience with the Cashcloud service on any social network he has activated for cash cloud services.

Als eine Alternative dazu, dass es dem Cashcloud-Backend erlaubt wird, Kontaktlisten von den Social-Network-Konten des Benutzers abzurufen, kann sich das Cashcloud-Frontend direkt mit einzelnen sozialen Netzwerken in Verbindung setzen und dann eine Kontaktliste von dem entsprechenden Social-Network-Benutzerkonto laden.As an alternative to allowing the cashcloud backend to retrieve contact lists from the user's social network accounts, the cashcloud frontend can directly contact individual social networks and then a contact list from the corresponding social network Load user account.

Die Cashcloud-App zeigt dann eine Bildschirmansicht I, auf der der Benutzer ein soziales Netz, wie zum Beispiel Facebook oder Twitter auswählen kann. Wenn der Benutzer eines davon auswählt, wird er aufgefordert, seine Zugangsdaten für das entsprechende soziale Netzwerk einzugeben. Nach einem erfolgreichen Login beim sozialen Netzwerk ruft dann die Cashcloud-App die Kontaktliste direkt von dem Social-Network-Benutzerkonto ab und zeigt die Liste in einer Bildschirmansicht K für Twitter- oder J für Facebook-Freunde an. Eine Auswahl aus einer dieser Listen J, K wird dann auf den Geld-Senden-Bildschirm B übertragen und in das Feld 106 als ein Empfänger einer Transaktion vorausgefüllt.The Cashcloud app then displays a screen view I where the user can select a social network, such as Facebook or Twitter. When the user selects one of them, he is prompted to enter his credentials for the corresponding social network. After a successful login to the social network, the Cashcloud App will then call the contact list directly from the Social Network user account and display the list in a K for Twitter or J for Facebook Friends screen. A selection from one of these lists J, K is then transferred to the money sending screen B and into the field 106 as a recipient of a transaction pre-filled.

Beispielsweise kann es sein, dass der Cashcloud-Benutzer zum Beispiel auf dem Facebook-Bildschirm J einen Freund aus Facebook auswählen möchte. Wenn der Cashcloud-Benutzer das soziale Netzwerk von Facebook noch nicht freigeschaltet und verbunden hat, zeigt die Anwendung die „Login”-Social-Graph-Anwendung von Facebook in der Form eines eingebetteten Webseiten-Frames an, in dem der Cashcloud-Benutzer seine E-Mail-Adresse und sein Passwort eingeben muss, um sich mit Facebook zu verbinden. Dann kann er das Zugreifen auf seine Facebook-Daten durch die Cashcloud-Anwendung bestätigen und alle Facebook-Freunde werden auf dem Bildschirm J angezeigt. Die Anwendung sendet Daten über die Freunde von dem Facebook-Profil an das Backend und sichert sie in der Datenbank zum Vorbereiten einer Verbindung zwischen dem Cashcloud-Benutzerkonto und dieser Facebook-ID.For example, it may be that the cashcloud user, for example, wants to select a friend from Facebook on the Facebook screen J. If the Cashcloud user has not yet unlocked and connected the Facebook social network, the application will display Facebook's "login" social graph application in the form of an embedded web page frame, where the Cashcloud user will type his E -Mail address and password must be entered to connect to Facebook. Then he can confirm access to his Facebook data through the Cashcloud application and all Facebook friends will be displayed on the J screen. The application sends data about the friends of that Facebook profile to the backend and save it in the database to prepare a connection between the Cashcloud user account and this Facebook ID.

Die 7 und 8 zeigen zwei alternative Login-Methoden, die zum Login bei Facebook verwendet werden können. Das in 7 gezeigte Login-Verfahren wird verwendet, wenn der Cashcloud-Dienst als ein Webportal implementiert ist. Der Benutzer greift mit seinem Webbrowser 50 auf ein Webportal 51 beim Cashcloud-Webserver zu und zeigt eine entsprechende Webseite des Portals in seinem Browser 50 an. Die Webseite enthält eine Facebook-Login-Schaltfläche, die bei ihrer Aktivierung eine JavaScript-Login-Funktion FB.login() der Facebook-API 52 auslöst. Die JavaScript-Funktion FB.login() zeigt in einem Popup-Fenster einen Login-Dialog an, in dem der Benutzer seine Zugangsdaten eingibt. Die Facebook-API 52 verwendet das OAuth2.0-Autorisierungs-Framework, das in JavaScript implementiert ist, um das Login und die erfolgreiche Erzeugung einer Session zu bestätigen und gibt einen Zugangstoken zurück. Das Webportal 51 zeigt auf dem Browser des Benutzers eine Login-abgeschlossen-Nachricht.The 7 and 8th show two alternative login methods that can be used to log in to Facebook. This in 7 The login method shown is used when the cashcloud service is implemented as a web portal. The user accesses with his web browser 50 on a web portal 51 at Cashcloud web server and shows a corresponding web page of the portal in his browser 50 at. The website includes a Facebook login button which when activated activates a JavaScript login function FB.login () of the Facebook API 52 triggers. The JavaScript function FB.login () displays a login dialog in a pop-up window in which the user enters his access data. The Facebook API 52 uses the OAuth2.0 authorization framework implemented in JavaScript to confirm login and successful session creation and returns an access token. The web portal 51 shows a login-completed message on the user's browser.

Das zweite Login-Verfahren, das schematisch in 8 dargestellt ist, wird von einem mobilen Benutzerendgerät 53 verwendet, auf dem eine Cashcloud-App installiert ist, anstatt von einem Benutzerendgerät mit einem herkömmlichen Webbrowser auf ein entferntes Webportal zuzugreifen. Die Cashcloud-App 54 zeigt dem Benutzer eine Schaltfläche für das Login bei Facebook in ähnlicher Weise wie auf der Bildschirmansicht I von 6. Wenn diese Login-Schaltfläche von einem Benutzer gedrückt wird, ruft die App 54 das SDK-Login-Verfahren (SDK = Software Development Kit) auf, das in der Facebook-API verfügbar ist. Insbesondere sendet die App 54 eine Anfrage zur Autorisierung an den Facebook-Server 55, die eine eindeutige Anwendungs-ID enthält, welche die Anwendung bei dem Facebook-Server identifiziert. Die Anforderung zur Autorisierung enthält auch eine Rückruf-URL, an welche der Facebook-Server 55 die Antwort umleiten soll.The second login procedure, which is schematically in 8th is shown by a mobile user terminal 53 on which a cash cloud app is installed rather than accessing a remote web portal from a user terminal using a traditional web browser. The Cashcloud app 54 shows the user a button for logging in to Facebook in a similar way as on the screen I of 6 , When this login button is pressed by a user, the app calls 54 the Software Development Kit (SDK) login procedure available in the Facebook API. In particular, the app sends 54 a request for authorization to the Facebook server 55 containing a unique application ID that identifies the application to the Facebook server. The request for authorization also includes a callback URL to which the Facebook server 55 to redirect the answer.

Unter der Rückruf-URL stellt der Facebook-Server 55 in der Form eines eingebetteten Webseiten-Frames einen Login-Bildschirm zur Verfügung, der Teil des Facebook-SDK ist, auf dem der Benutzer – wenn er sich nicht schon bei Facebook eingeloggt hat – seine Zugangsdaten eingeben muss und dann die der Cashcloud-App gewährten Zugangsrechte zum Zugreifen auf seine Facebook-Daten bestätigt. Das Facebook-SDK kehrt dann mit einem Validierungscode und einer Rückruf-URL zur Anwendung 54 zurück.Below the callback URL is the Facebook server 55 in the form of an embedded web page frame, a login screen that is part of the Facebook SDK on which the user - if he has not already logged in to Facebook - must enter his credentials and then grant those to the Cashcloud app Access rights to access his Facebook data confirmed. The Facebook SDK then returns with a validation code and a callback URL 54 back.

Die Anwendung 54 kann dann unter der Rückruf-URL erneut das Facebook-SDK auf dem Facebook-Server 55 aufrufen und autorisiert sich mit seiner eindeutigen Anwendungs-ID und dem im vorhergehenden Schritt durch das Facebook-SDK gelieferten Validierungscode. Der Facebook-Server bestätigt den erfolgreichen Login und gibt einen Zugangstoken zurück, den die Cashcloud-App dazu verwenden kann, auf die Freund-Liste des Facebook-Kontos des Benutzers zuzugreifen.The application 54 can then redial the Facebook SDK on the Facebook server at the callback URL 55 invokes and authorizes with its unique application ID and the validation code provided by the Facebook SDK in the previous step. The Facebook server confirms the successful login and returns an access token that the Cashcloud app can use to access the friend list of the user's Facebook account.

Der Cashcloud-Benutzer kann auch aus anderen sozialen Netzwerken einen Freund auswählen. Für Twitter zeigt die Anwendung zum Beispiel die Twitter-„Login”-Social-Graph-Anwendung der Twitter-API als einen eingebetteten Webseiten-Frame an, in welchem der Cashcloud Benutzer seine E-Mail-Adresse und sein Passwort eingibt, um sich mit Twitter zu verbinden. Er kann dann den Zugriff auf seine Twitter-Daten durch die Cashcloud-Anwendung bestätigen, worauf alle Twitter-Freunde (die bei Twitter typischerweise als „Followers” bezeichnet werden) ihm auf der Bildschirmansicht K von 6 angezeigt werden. Die Anwendung sendet Daten über Freunde des Twitter-Profils an das Cashcloud-Backend und sichert sie in einer Datenbank, um eine Verbindung zwischen dem Cashcloud-Benutzerkonto und seiner Twitter-ID vorzubereiten.The Cashcloud user can also select a friend from other social networks. For example, for Twitter, the application displays the Twitter "Login" Social Graph application of the Twitter API as an embedded web page frame in which the Cashcloud user enters their email address and password to log in with Twitter to connect. He can then confirm the access to his Twitter data through the Cashcloud application, whereupon all Twitter friends (which are typically referred to as "followers" on Twitter) display him on the K screen of 6 are displayed. The application sends data through friends of the Twitter profile to the Cashcloud backend and backs them up in a database to prepare a connection between the Cashcloud user account and its Twitter ID.

Die Beschreibung und die Zeichnungen veranschaulichen lediglich die Prinzipien der vorliegenden Erfindung. Es ist daher einzusehen, dass der Fachmann dazu fähig sein wird, verschiedene Anordnungen herzustellen, die hier zwar nicht ausdrücklich beschrieben werden, jedoch die Prinzipien der Erfindung verkörpern und innerhalb ihres Geistes und Umfangs enthalten sind. Ferner sollen alle hier genannten Beispiele prinzipiell nur unterrichtenden Zwecken dienen und dem Leser beim Verständnis der Prinzipien der Erfindung und den von den Erfindern beigetragenen Konzepten zur Weiterentwicklung dieses Gebietes der Technik helfen und sollen ohne Einschränkung auf derartige spezifische genannte Beispiele und Bedingungen verstanden werden. Darüber hinaus sollen alle Äußerungen, die hier Prinzipien, Aspekte und Ausführungsformen der Erfindung sowie spezifische Beispiele davon nennen, deren Äquivalente mit umfassen.The description and drawings merely illustrate the principles of the present invention. It is therefore to be understood that those skilled in the art will be able to make various arrangements which, while not expressly described herein, embody the principles of the invention and are within their spirit and scope. Furthermore, all examples herein are intended in principle to serve educational purposes only, and to assist the reader in understanding the principles of the invention and the concepts contributed by the inventors to advancing this art and are to be understood without limitation to such specific examples and conditions. In addition, all statements indicating principles, aspects, and embodiments of the invention, as well as specific examples thereof, are intended to include their equivalents.

Ein Fachmann wird sehr leicht erkennen, dass Schritte verschiedener oben beschriebener Verfahren durch programmierte Computer ausgeführt werden können. Einige Ausführungsformen sollen hier auch Programmspeichervorrichtungen, z. B. digitale Datenspeichermedien, abdecken, bei denen es sich um maschinen-, oder computerlesbare und codierte maschinenausführbare oder computerausführbare Programme aus Befehlen handelt, wobei diese Befehle einige oder alle Schritte der oben beschriebenen Verfahren ausführen. Die Programmspeichervorrichtungen können z. B. digitale Speicher, magnetische Speichermedien wie zum Beispiel Magnetspeicherplatten und Magnetbänder, Festplattenlaufwerke oder optisch lesbare digitale Datenspeichermedien sein. Die Ausführungsformen sollen auch Computer abdecken, die zum Ausführen der Schritte der oben beschriebenen Verfahren programmiert wurden.One skilled in the art will readily recognize that steps of various methods described above may be performed by programmed computers. Some embodiments are also intended to include program memory devices, e.g. Digital data storage media, which are machine- or computer-readable and encoded machine-executable or computer-executable programs of instructions, which instructions perform some or all steps of the above described methods. The program memory devices may, for. As digital storage, magnetic storage media such as magnetic storage disks and magnetic tapes, hard disk drives or optically readable digital data storage media. The embodiments are also intended to cover computers that have been programmed to perform the steps of the methods described above.

Claims (11)

Serverbasiertes Bezahlsystem (10), umfassend mindestens einen Hostcomputer (11), eine ausführbare Serveranwendung zum Verwalten einer Vielzahl von Bezahldienst-Benutzerkonten, und einen Datenspeicher (12) zum Speichern von Benutzerkontendaten in der Form von Datensätzen; wobei die Serveranwendung dazu programmiert ist, wenn sie auf mindestens einem Hostcomputer (11) läuft, die folgenden Aktionen durchzuführen: – nach Empfang eines Zugangstokens, der Informationen über eine Identität und Privilegien enthält, die mit einem Social-Network-Benutzerkonto verknüpft sind, das bei einer webbasierten Kommunikationsplattform (20, 20') besteht, Abrufen einer Kontaktliste, die bei der webbasierten Kommunikationsplattform (20, 20') für das Social-Network-Benutzerkonto gespeichert ist, unter der Verwendung des Zugangstokens; – Verarbeiten der Kontaktliste zum Bestimmen, ob für Einträge der Kontaktliste bei dem serverbasierten Bezahlsystem (10) entsprechende Bezahlsystemdienst-Benutzerkonten bestehen; – Übertragen einer verarbeiteten Kontaktliste, die für Einträge, für die ein entsprechendes Bezahldienst-Benutzerkonto besteht, Informationen über dieses enthält, von dem serverbasierten Bezahlsystem (10) an ein Benutzerendgerät (18, 19); – nach Empfang eines Zahlungsauftrags, der bei dem Benutzerendgerät (18, 19) durch Auswahl eines Eintrags aus der verarbeiteten Kontaktliste und Angabe eines zu bezahlenden Betrags generiert wurde, Erzeugen einer Transaktion und Speichern der Transaktion in dem Datenspeicher, wobei die Transaktion den zu bezahlenden Betrag, einen Auftraggeber der Transaktion und einen Zahlungsempfänger der Transaktion, wie sie von dem Zahlungsauftrag angegeben sind, in der Form eines Datensatzes enthält.Server based payment system ( 10 ) comprising at least one host computer ( 11 ), an executable server application for managing a plurality of payment service user accounts, and a data store ( 12 ) for storing user account data in the form of records; wherein the server application is programmed to run on at least one host computer ( 11 ) receives the following actions: - upon receipt of an access token containing information on an identity and privileges associated with a social network user account used in a web-based communication platform ( 20 . 20 ' ), retrieving a contact list used in the web-based communication platform ( 20 . 20 ' ) for the social network user account using the access token; Processing the contact list for determining whether entries of the contact list in the server-based payment system ( 10 ) corresponding payment system service user accounts exist; Transferring a processed contact list which contains information about entries for which there is a corresponding payment service user account, from the server-based payment system ( 10 ) to a user terminal ( 18 . 19 ); Upon receipt of a payment order which is at the user terminal ( 18 . 19 ) was generated by selecting an entry from the processed contact list and indicating an amount to be paid, generating a transaction and storing the transaction in the data store, wherein the transaction is the amount to be paid, a payer of the transaction, and a payee of the transaction as defined by the payment order, in the form of a record. Serverbasiertes Bezahlsystem (10) gemäß Anspruch 1, wobei die Serveranwendung dazu programmiert ist, das Erzeugen des Zugangstokens durch Umleiten einer Verbindung von dem Benutzerendgerät (18, 19) zu einem Autorisierungslink der webbasierten Kommunikationsplattform (20, 20') einzuleiten.Server based payment system ( 10 ) according to claim 1, wherein the server application is programmed to generate the access token by redirecting a connection from the user terminal ( 18 . 19 ) to an authorization link of the web-based communication platform ( 20 . 20 ' ). Serverbasiertes Bezahlsystem (10) gemäß Anspruch 1 oder 2, wobei die Serveranwendung dazu programmiert ist, von dem Benutzerendgerät (18, 19) eine lokale Kontaktliste zu empfangen; die von der webbasierten Kommunikationsplattform (20, 20') abgerufene Kontaktliste mit der lokalen Kontaktliste zusammenzuführen; und die verarbeitete Kontaktliste, die zusammengeführte Einträge aus der abgerufenen Kontaktliste und der der lokalen Kontaktliste enthält, an das Benutzerendgerät (18, 19) zurückzugeben.Server based payment system ( 10 ) according to claim 1 or 2, wherein the server application is programmed to receive from the user terminal ( 18 . 19 ) to receive a local contact list; from the web-based communication platform ( 20 . 20 ' ) to bring together the contact list retrieved with the local contact list; and the processed contact list containing merged entries from the retrieved contact list and the local contact list, to the user terminal ( 18 . 19 ) return. Serverbasiertes Bezahlsystem (10) nach einem der vorangehenden Ansprüche, wobei die Serveranwendung dazu programmiert ist, unter der Verwendung verschiedener Zugangstokens, die bei entsprechenden Kommunikationsplattformen (20, 20') generiert wurden, Kontaktlisten von zwei oder mehr der verschiedenen webbasierten Kommunikationsplattformen (20, 20') zu empfangen; die zwei oder mehr Kontaktlisten zusammenzuführen; und die verarbeitete Kontaktliste, die zusammengeführte Einträge aus den zwei oder mehr abgerufenen Kontaktlisten enthält, an das Benutzerendgerät (18, 19) zurückzugeben.Server based payment system ( 10 ) according to any one of the preceding claims, wherein the server application is programmed to use different access tokens provided in respective communication platforms ( 20 . 20 ' ), contact lists of two or more of the various web-based communication platforms ( 20 . 20 ' ) to recieve; to merge the two or more contact lists; and the processed contact list containing merged entries from the two or more retrieved contact lists to the user terminal ( 18 . 19 ) return. Serverbasiertes Bezahlsystem (10) nach einem der vorangehenden Ansprüche, wobei die Serveranwendung dazu programmiert ist, in dem Fall, in dem bisher für den Zahlungsempfänger bei dem serverbasierten Bezahlsystem (10) kein Bezahldienst-Benutzerkonto besteht, einen temporären Benutzerkontoeintrag für den Zahlungsempfänger zu erzeugen, einen schwebenden Registrierungsstatus für den temporären Benutzereintrag zuzuweisen, unter der Verwendung der in dem Zahlungsauftrag enthaltenen Kontaktinformationen eine Einladungsnachricht an den Zahlungsempfänger zu übertragen, wobei die Einladungsnachricht eine eindeutige Registrierungskennung und einen Link auf eine Registrierungsseite enthält; und nach Registrierung des Zahlungsempfängers bei dem Registrierungslink, den temporären Benutzereintrag durch Erzeugen eines neuen Bezahldienst-Benutzerkontos für den Zahlungsempfänger zu validieren und die Transaktion dem neuen Bezahldienst-Benutzerkonto zuzuweisen.Server based payment system ( 10 ) according to any one of the preceding claims, wherein the server application is programmed to, in the case in which the payee previously used in the server-based payment system ( 10 ) no payment service user account exists to generate a temporary user account entry for the payee, assign a pending registration status for the temporary user entry, transmit an invitation message to the payee using the contact information contained in the payment order, the invitation message having a unique registration identifier and a Contains a link to a registration page; and upon registration of the payee with the registration link, validating the temporary user entry by generating a new payment service user account for the payee and assigning the transaction to the new payment service user account. Serverbasiertes Bezahlsystem (10) nach einem der vorangehenden Ansprüche, wobei die Serveranwendung dazu programmiert ist, in dem Fall, in dem für den Zahlungsempfänger bei dem serverbasierten Bezahlsystem (10) schon ein Bezahldienst-Benutzerkonto besteht, der Transaktion einen schwebenden Annahmestatus zuzuweisen und eine Mitteilungsnachricht an den Zahlungsempfänger zu übertragen, wobei die Mitteilungsnachricht Informationen über die schwebende Transaktion enthält.Server based payment system ( 10 ) according to any one of the preceding claims, wherein the server application is programmed to, in the case where the payee of the server-based payment system ( 10 ) already has a payment service user account, assign the transaction a pending acceptance status, and transmit a notification message to the payee, the notification message containing information about the pending transaction. Serverbasiertes Bezahlsystem (10) gemäß Anspruch 6, wobei die Serveranwendung dazu programmiert ist, nachdem der Zahlungsempfänger sich mit dem serverbasierten Bezahlsystem (10) verbindet, die schwebende Transaktion anzunehmen, eine Ausführung der Transaktion auszulösen, Kontostände des Kontos des Auftraggebers und des Zahlungsempfängers entsprechend zu ändern und der Transaktion einen Annahmestatus zuzuweisen. Server based payment system ( 10 ) according to claim 6, wherein the server application is programmed after the payee acquires the server-based payment system ( 10 ), to accept the pending transaction, initiate execution of the transaction, change account balance of the account of the payer and the payee, and assign an acceptance status to the transaction. Programmierbares Benutzerendgerät (18, 19), umfassend ein Anwendungsprogramm zum Kommunizieren mit einem serverbasierten Bezahlsystem (10), wobei das Anwendungsprogramm dazu programmiert ist, wenn es von dem programmierbaren Benutzerendgerät (18, 19) ausgeführt wird, die folgenden Aktionen auszuführen: – Veranlassen der Generierung eines Zugangstokens, der Informationen über eine Identität und Privilegien enthält, die mit einem Social-Network-Benutzerkonto verknüpft sind, das bei einer webbasierten Kommunikationsplattform (20, 20') vorbesteht, durch Übertragen von Zugangsdaten, die von einem Benutzer in eine von dem Endgerät (18, 19) dem Benutzer angezeigte Eingabemaske eingegeben wurden; – Empfangen einer verarbeiteten Kontaktliste von dem serverbasierten Bezahlsystem (10), die Einträge, die von einer Kontaktliste stammen, die zu dem Social-Network-Benutzerkonto bei der webbasierten Kommunikationsplattform (20, 20') gehören, sowie Informationen enthält, die anzeigen, ob bei dem serverbasierten Bezahlsystem (10) entsprechende Bezahldienst-Benutzerkonten bestehen; – Anzeigen eines Menus (C) zur Auswahl eines Zahlungsempfängers aus der verarbeiteten Kontaktliste für den Benutzer; und – Übertragen eines Zahlungsauftrags, der Informationen enthält, die einen Eintrag, der aus der verarbeiteten Kontaktliste ausgewählt wurde, und einen zu zahlenden Betrag angeben, an das serverbasierte Bezahlsystem (10).Programmable user terminal ( 18 . 19 ) comprising an application program for communicating with a server-based payment system ( 10 ), the application program being programmed to be executed by the programmable user terminal ( 18 . 19 ), perform the following actions: - causing the generation of an access token containing information about an identity and privileges associated with a social network user account used in a web-based communication platform ( 20 . 20 ' ) by transferring access data transmitted by a user to one of the terminal ( 18 . 19 ) have been input to the user input screen; Receiving a processed contact list from the server-based payment system ( 10 ), the entries that originate from a contact list that goes to the social network user account at the web-based communication platform ( 20 . 20 ' ), as well as information indicating whether the server-based payment system ( 10 ) corresponding payment service user accounts exist; - displaying a menu (C) for selecting a payee from the processed contact list for the user; and - transmitting a payment order containing information indicating an entry selected from the processed contact list and an amount to be paid to the server-based payment system ( 10 ). Computerlesbares Speichermedium, das ein Anwendungsprogramm zur Verwendung an einem Benutzerendgerät (18, 19) zum Kommunizieren mit einem serverbasierten Bezahlsystem (10) enthält, wobei das Anwendungsprogramm dazu programmiert ist, wenn es von dem programmierbaren Benutzerendgerät (18, 19) ausgeführt wird, die folgenden Aktionen auszuführen: – Veranlassen der Generierung eines Zugangstokens, der Informationen über eine Identität und Privilegien enthält, die mit einem Social-Network-Benutzerkonto verknüpft sind, das bei einer webbasierten Kommunikationsplattform (20, 20') vorbesteht, durch Übertragen von Zugangsdaten, die von einem Benutzer in eine von dem Endgerät dem Benutzer angezeigte Eingabemaske eingegeben werden; – Empfangen einer verarbeiteten Kontaktliste von dem serverbasierten Bezahlsystem (10), die für Einträge, für die entsprechende Bezahldienst-Benutzerkonten bei dem serverbasierten Bezahlsystem (10) bestehen, Informationen über diese enthält; – Anzeigen eines Menus (C) zur Auswahl eines Zahlungsempfängers aus der verarbeiteten Kontaktliste für den Benutzer; und – Übertragen eines Zahlungsauftrags, der einen aus der verarbeiteten Kontaktliste ausgewählten Eintrag angebende Informationen und einen zu zahlenden Betrag enthält, an das serverbasierte Bezahlsystem (10).Computer-readable storage medium containing an application program for use on a user terminal ( 18 . 19 ) for communicating with a server-based payment system ( 10 ), wherein the application program is programmed to be executed by the programmable user terminal ( 18 . 19 ), perform the following actions: - causing the generation of an access token containing information about an identity and privileges associated with a social network user account used in a web-based communication platform ( 20 . 20 ' ) by transmitting access data entered by a user into an input mask displayed by the user to the user; Receiving a processed contact list from the server-based payment system ( 10 ) for entries, for the corresponding payment service user accounts in the server-based payment system ( 10 ), contains information about them; - displaying a menu (C) for selecting a payee from the processed contact list for the user; and - transmitting to the server-based payment system a payment order containing information indicating an entry selected from the processed contact list and an amount to be paid ( 10 ). Programmierbares Benutzerendgerät (18, 19), vorzugsweise nach Anspruch 8, das ein Anwendungsprogramm zur Kommunikation mit einem serverbasierten Bezahlsystem (10) enthält, wobei das Anwendungsprogramm dazu programmiert ist, wenn es von dem programmierbaren Benutzerendgerät (18, 19) ausgeführt wird, die folgenden Aktionen auszuführen: – Ausführen eines Login bei einer webbasierten Kommunikationsplattform (20, 20') durch Übertragen von Zugangsdaten, die von einem Benutzer in eine von dem Endgerät (18, 19) dem Benutzer angezeigte Eingabemaske eingegeben werden; – Abrufen einer Kontaktliste, die zu einem Social-Network-Benutzerkonto gehört, von der webbasierten Kommunikationsplattform (20, 20'); – Anzeigen eines Menus (K, J) für den Benutzer zur Auswahl eines Zahlungsempfängers aus der Kontaktliste; und – Übertragen eines Zahlungsauftrags, der einen aus der verarbeiteten Kontaktliste ausgewählten Eintrag angebende Informationen, die webbasierte Kommunikationsplattform (20, 20') angebende Informationen und einen zu zahlenden Betrag enthält, an das serverbasierte Bezahlsystem (10).Programmable user terminal ( 18 . 19 ), preferably according to claim 8, comprising an application program for communicating with a server-based payment system ( 10 ), wherein the application program is programmed to be executed by the programmable user terminal ( 18 . 19 ) to do the following: - Execute a login with a web-based communication platform ( 20 . 20 ' ) by transferring access data transmitted by a user to one of the terminal ( 18 . 19 ) Input form displayed to the user; - retrieve a contact list belonging to a social network user account from the web-based communication platform ( 20 . 20 ' ); - displaying a menu (K, J) for the user to select a payee from the contact list; and - transmitting a payment order indicating information indicative of an entry selected from the processed contact list, the web based communication platform ( 20 . 20 ' ) and the amount to be paid to the server-based payment system ( 10 ). Computerlesbares Speichermedium, vorzugsweise nach Anspruch 9, das ein Anwendungsprogramm zur Verwendung an einem Benutzerendgerät (18, 19) zum Kommunizieren mit einem serverbasierten Bezahlsystem (10) enthält, wobei das Anwendungsprogramm dazu programmiert ist, wenn es von dem programmierbaren Benutzerendgerät (18, 19) ausgeführt wird, die folgenden Aktionen auszuführen: – Ausführen eines Login bei einer webbasierten Kommunikationsplattform (20, 20') durch Übertragen von Zugangsdaten, die von einem Benutzer in eine von dem Endgerät (18, 19) dem Benutzer angezeigte Eingabemaske eingegeben werden; – Abrufen einer Kontaktliste, die zu einem Social-Network-Benutzerkonto gehört, von der webbasierten Kommunikationsplattform (20, 20'); – Anzeigen eines Menus (K, J) für den Benutzer zur Auswahl eines Zahlungsempfängers aus der Kontaktliste; und – Übertragen eines Zahlungsauftrags, der einen aus der verarbeiteten Kontaktliste ausgewählten Eintrag angebende Informationen, die webbasierte Kommunikationsplattform (20, 20') angebende Informationen und einen zu zahlenden Betrag enthält, an das serverbasierte Bezahlsystem (10).Computer-readable storage medium, preferably according to claim 9, comprising an application program for use on a user terminal ( 18 . 19 ) for communicating with a server-based payment system ( 10 ), wherein the application program is programmed to be executed by the programmable user terminal ( 18 . 19 ) performs the following actions: - performing a login on a web-based communication platform ( 20 . 20 ' ) by transferring access data transmitted by a user to one of the terminal ( 18 . 19 ) Input form displayed to the user; - retrieve a contact list belonging to a social network user account from the web-based communication platform ( 20 . 20 ' ); - displaying a menu (K, J) for the user to select a payee from the contact list; and - transmitting a payment order indicating information indicative of an entry selected from the processed contact list, the web based communication platform ( 20 . 20 ' ) and the amount to be paid to the server-based payment system ( 10 ).
DE202013007090U 2013-08-08 2013-08-08 Server based payment system Expired - Lifetime DE202013007090U1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE202013007090U DE202013007090U1 (en) 2013-08-08 2013-08-08 Server based payment system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE202013007090U DE202013007090U1 (en) 2013-08-08 2013-08-08 Server based payment system

Publications (1)

Publication Number Publication Date
DE202013007090U1 true DE202013007090U1 (en) 2013-10-29

Family

ID=49668301

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202013007090U Expired - Lifetime DE202013007090U1 (en) 2013-08-08 2013-08-08 Server based payment system

Country Status (1)

Country Link
DE (1) DE202013007090U1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3059703A1 (en) * 2015-02-20 2016-08-24 Gemalto Sa Method for retrieving by a payment server a funding permanent account number from a token payment account number
WO2020061607A1 (en) * 2018-09-27 2020-04-02 Plange Damian Computer-implemented method for transacting digital units
CN112583943A (en) * 2019-09-27 2021-03-30 阿尔派株式会社 Electronic device, display method of contact address and display program of contact address
CN114157630A (en) * 2020-09-07 2022-03-08 腾讯科技(深圳)有限公司 Social relation chain migration method, device, equipment and storage medium

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3059703A1 (en) * 2015-02-20 2016-08-24 Gemalto Sa Method for retrieving by a payment server a funding permanent account number from a token payment account number
WO2016131664A1 (en) * 2015-02-20 2016-08-25 Gemalto Sa Method for retrieving by a payment server a funding permanent account number from a token payment account number
WO2020061607A1 (en) * 2018-09-27 2020-04-02 Plange Damian Computer-implemented method for transacting digital units
CN112583943A (en) * 2019-09-27 2021-03-30 阿尔派株式会社 Electronic device, display method of contact address and display program of contact address
CN112583943B (en) * 2019-09-27 2024-01-05 阿尔派株式会社 Electronic device, information system, contact address display method and storage medium
CN114157630A (en) * 2020-09-07 2022-03-08 腾讯科技(深圳)有限公司 Social relation chain migration method, device, equipment and storage medium
CN114157630B (en) * 2020-09-07 2023-08-04 腾讯科技(深圳)有限公司 Social relation chain migration method, device, equipment and storage medium

Similar Documents

Publication Publication Date Title
WO2009003605A9 (en) Virtual prepaid or credit card and method and system for providing such and for electronic payment transactions
US20150046327A1 (en) Server-based payment system
DE60214632T2 (en) Multidomain authorization and authentication
DE60220718T2 (en) METHOD AND SYSTEM FOR SAFE TREATMENT OF ELECTRONIC BUSINESS ON THE INTERNET
EP3764614B1 (en) Distributed authentication system
DE212010000140U1 (en) System for a virtual piggy bank
EP3365854B1 (en) Electronic payment method and server computer
DE102008011192A1 (en) Method and service calculator and system for the transaction of a sum of money
DE112021001662T5 (en) CROSS REFERENCE TO RELATED APPLICATION
DE202013007090U1 (en) Server based payment system
EP4092958B1 (en) Issuing of a digital verifiable credential
DE102021205259A1 (en) CREATION OF RESTRICTED MOBILE ACCOUNTS
WO2005031667A1 (en) Method for carrying out an electronic transaction
DE102012205904A1 (en) Secure generation of a user account in a service server
EP2919145B1 (en) Authentication device, authentication system and authentication method
DE112020005586T5 (en) Method of supporting OTP service by identifying users using a personal URL medium, password or other information
DE102005062061B4 (en) Method and apparatus for mobile radio network-based access to content provided in a public data network and requiring a release
DE102012021318B4 (en) balance inquiry
DE202013007091U1 (en) Server-based payment system
DE602004009570T2 (en) Policy and attribute-based access to a resource
WO2020224809A1 (en) Method for authenticating an end user to a dependent service
DE10336519B4 (en) A method of performing payment transactions in a computer-based communication network
DE112013002111B4 (en) Managing recurring payments from mobile devices
DE112013002121B4 (en) Managing recurring payments from mobile devices
EP2439900B1 (en) Method and device for authentification

Legal Events

Date Code Title Description
R207 Utility model specification

Effective date: 20131219

R021 Search request validly filed

Effective date: 20131021

R163 Identified publications notified
R163 Identified publications notified

Effective date: 20140611

R150 Utility model maintained after payment of first maintenance fee after three years
R157 Lapse of ip right after 6 years