Abstract:
Secure electronic transaction system is provided between a plurality of computer systems and other electronic terminals wholly or partly over a public communication system such as the internet, a closed communication system such as a banking network or point-to-point communications such as dial-up connections and leased lines. Secure transmission of transaction information instructions and payment instructions is provided from a customer&#39;s computer system to the customer&#39;s bank&#39;s computer system. The bank&#39;s computer system processes and evaluates the instructions and transmits by way of secure transmissions the transaction instructions and payment instructions to the merchant&#39;s computer system.

Description:
FIELD OF THE INVENTION  
         [0001]    The present invention relates to a system for electronic transactions between two parties and payment for goods and services purchased over a communication network and more specifically, though not exclusively, to a system and method for transmitting both transaction instructions and payment instructions from a customer to a merchant and returning secure authorisation to the merchant and the customer.  
         DEFINITIONS  
         [0002]    Throughout this specification or reference to a person is to be taken as including a reference to a number of persons whether incorporated or not.  
           [0003]    Throughout this specification reference to a computer is to be taken as including a reference to a personal digital assistant, notebook computer, laptop computer, WAP-enabled telephones, and Internet-enabled telephones.  
           [0004]    Throughout this specification, the use of product in relation to a merchant is to be taken as including good(s) and/or service(s).  
           [0005]    Throughout this specification reference to a bank is to be taken as including a reference to any bank, financial service provider, lending organisation, insurance company, or any other organisation or business having an established distibution channel which includes consumers and or merchants. This includes, but is not limited to, telecommunications service providers, Internet service providers, government departments and organisations, Internet portal operators, petrochemical companies, petroleum companies, retail outlet chains including conveniences stores, and so forth  
         BACKGROUND OF THE INVENTION  
         [0006]    One of the primary reasons that Internet transactions have not taken off in the way experts predicted (and online sellers would have liked) is the reluctance of many buyers to reveal their account information over the Internet. There is a fear that anything submitted over the Internet can be compromised if a third party gains access to it by intercepting the electronically submitted information. In such a scenario, customers are not comfortable with revealing sensitive information (such as credit/debit card numbers, account numbers pin numbers and passwords) to third parties.  
           [0007]    This problem can be circumvented if the seller/service provider can tie up with the customer&#39;s bank, so that the customer can directly submit the information to their own bank, thus reducing the risk of the information falling into the wrong hands. Typically, online service providers would sign up with one bank (“merchant&#39;s bank”) whereas the customer would have an account with another bank (“customer&#39;s bank”). It is difficult for merchants to sign up with and provide a link to all banks possible, and for banks to have their presence on all online shopping/service provider sites. There is a pressing need to enable online service providers to be able to link with all banks.  
           [0008]    It is also desirable for a computer operated by a merchant that offers goods and services for sale over a publicly accessible packet-switched network such as the Internet to be able to confirm that the order was made by the customer who is identified in the transaction instruction as the customer, and that the payment instruction is from the customer.  
           [0009]    It is also desirable that:  
           [0010]    (i) the customer has the means to effect payment;  
           [0011]    (ii) the merchant has the assurance that the customer has such means to effect payment; and  
           [0012]    (iii) confirmation of authorization for payment be made by a payment system. Such a system is preferably operated by a bank or other financial institution that has the legal and contractual responsibility for providing payment on behalf of the customer, and to authorize the commercial transaction on behalf of the customer.  
           [0013]    It is further desirable that where the transaction instruction and the payment instruction are being transmitted over any communication channel, information about the customer&#39;s transaction instruction and payment instruction is kept secure. Only the relevant information should be provided to the merchant for processing the transaction. The risk of exposing sensitive information such as credit card and debit card numbers to interception by third parties, and for false authorization of payment to be effected, should be minimized.  
           [0014]    Various attempts at achieving these desired objectives have been devised. For example; see http://medoc.informatik.tu-muenchen.de/Chablis/MStudy/. One such attempt is to provide a secure transmission channel for transmission of payment information such as Secure Electronic Transaction (“SET”), jointly developed by the Visa and MasterCard card associations, and described in Visa and MasterCard&#39;s Secure Electronic Transaction (SET) Specification, Feb. 23, 1996; hereby incorporated by reference.  
           [0015]    Other similar payment technologies include Secure Electronic Payments Protocol (“SEPP”), Internet Keyed Payments (“IKP”), Net Trust, and Cybercash Credit Payment Protocol. Any of the known secure payment technologies can be substituted for the SET protocol without undue experimentation.  
           [0016]    Such secure payment technologies require the customer to operate software that is compliant with the secure payment technology. A drawback to the secure payment technology is that its deployment cost is very high. It requires the deployment of special purpose hardware and software by the customer, the merchant, and the bank or other financial institution. In particular, the use of cross-country certification authorities requires substantial investment in infrastructure, as well as co-ordination between the various certification authorities including for example, cross-certification mechanisms, and implementation of certification authority root digital certificates.  
           [0017]    Such an infrastructure also requires the implementation of various redundant payment gateways to process payment instructions, which further increases costs and adds to the complexity of the entire system.  
           [0018]    Another attempt made was to provide a general secure transmission channel for transmission of information in general. An instance of such an attempt is Netscape Inc&#39;s Secure Sockets Layer (Protocol “SSL”). The SSL Protocol version 3.0, March 1996, is hereby incorporated by reference. SSL provides a means for secure transmission between two computers. Other similar technologies include Private Communications Technology (“PCT”) from Microsoft, Secure Hyper-Text Transport Protocol (““SHTT”P”) from Theresa Systems. These have the advantage that they not require the customer to install special software as such technology is already incorporated into the software used by the customer. For example, the Microsoft Internet Explorer, and the Netscape Navigator, browsing tools. SSL is designed primarily for two computer communications, and it does not provide a mechanism for transmitting different types of encoded information to a merchant and to a payment gateway to minimize the risk of exposing sensitive information (such as credit card and debit card numbers) to the merchant, and to minimize abuse of that information if intercepted, by third parties. More importantly, the above technologies involving the use of secure transmission channels do not inhibit, stop or reduce the incidence of electronic commerce fraud. A very large proportion of electronic commerce conducted over the Internet today is conducted through the use of credit cards. Credit card information is transmitted over the Internet to the merchant&#39;s computer from the customer&#39;s computer through public communication channels. While security in transmission channels such as SET and SSL will minimize incidents of unauthorized third party interception of credit card information, these security measures are no assurance that the merchants&#39; computers themselves are secure from unauthorized third party access, or even from unauthorized access by rogue employees operating the merchants&#39; computers. Merchants&#39; computers are targets for unauthorized access by hackers because they contain records of many transactions, and credit card numbers from authentic cardholders will comprise part of the information stored.  
           [0019]    Once unauthorized access is achieved, access can be obtained to many of these credit card numbers. Fraudulent transactions can then be conducted without the knowledge of the credit card holder (or the merchant) both of whom are innocent parties.  
           [0020]    For example, it was reported in internetnew.com on Jan. 12, 2000 that in December 1999 a Russian hacker stole 300,000 credit card numbers from the electronic commerce retailer Cduniverse, and dispensed them for free to visitors to his website.  
           [0021]    A merchant who is provided a credit card number has to accept it and complete the transaction if the credit card network provides an approval code. An approval code will be given if the card is not reported lost or stolen, and there is sufficient credit. The credit card holder will not know of such a fraudulent transaction and be aware that something is amiss unless and until they receive their monthly statement. For the same reason, the banks detected that issued the credit cards, and made payments to the merchants, will not detected fraud. VISA reports that roughly  8  cents of every US$100.00 spent on line is lost to fraud.  
           [0022]    While this percentage may seem small, in the context of the business-to-consumer electronic commerce market that was estimated to worth about US$7 billion in 1998, these losses can be substantial. Such losses will ultimately have to be borne by the customer and the merchant.  
           [0023]    It is no surprise that this has given rise to consumer mistrust in electronic commerce. A survey by Visa revealed that currently only 5% of consumers trust electronic commerce on the Internet as opposed to 60% who trust telephone banking. And surveys have shown that the biggest concern of consumers is the transmission of their credit card numbers on the Internet. Unfortunately, the transmission of such information is prescribed by the secure transmission payment and communication technologies such as SET and SSL described above. Neither is digital cash a viable solution. Digital cash gives merchants the immediate assurance of payment for all transactions. This is a disadvantage because of consumer perceptions that these could be instruments of fraud in the electronic environment. As a result, many digital cash implementations restrict the maximum value of the transaction traded using digital cash. This restricts the acceptance of digital cash by merchants. Also, digital cash has not received widespread acceptance, and there are issues of controls over national currencies, currency denominations, and currency exchange controls that further hinder the acceptance of digital cash.  
           [0024]    The development of electronic commerce is at a critical juncture. Consumer demand for secure but convenient access to electronic shopping and other services is very high. Electronic commerce merchants want simple, cost-effective methods for conducting electronic transactions, and financial institutions want a level playing field to be able to make available their existing banking and finance infrastructure to both consumers and merchants.  
           [0025]    The next step towards achieving secure, cost-effective, on-line transactions to satisfy market demand for such technologies is the development of a single, open, industry standard secure electronic transaction system that takes all these concerns into account, and leverages on existing banking and finance infrastructure.  
           [0026]    There are number of variants of the present system:  
           [0027]    1. The customer enters their credit card number at the merchant&#39;s site. The merchant then contacts the issuing bank with the customer&#39;s credit card information and the bank debits the customer&#39;s credit card account. The problems associated with such a system are:  
           [0028]    the customer gives their credit card number at the merchant&#39;s site. This is not a safe transaction from the customer&#39;s point of view. The merchant can easily view the customer&#39;s credit card information and use it.  
           [0029]    the identity of the customer is not established and/or authenticated, leading to insecurity and losses due to fraud.  
           [0030]    2. During the time of payment, the customer is redirected to the bank&#39;s site and enters their his credit card number at the bank&#39;s site. This has the problem that each bank has to separately tie-up with each merchant. This is not feasible because each merchant would already have a tie-up with a particular bank and hence would be reluctant to tie-up with another bank. Also the cost would outweigh the advantages. With a large number of banks issuing credit cards, this would create significant logistical problems.  
           [0031]    3. There are other variants of the current system in which the customer goes to the bank&#39;s site and enters their debit card information, and provides their pin number. This suffers from the same drawback as the second system, i.e. reluctance of merchants to tie up with more than one bank, and the reluctant logistical problems.  
           [0032]    All of the three systems described above also have common drawbacks:  
           [0033]    there is no single interface for credit card holders and debit card holders;  
           [0034]    customers of banks that do not support Internet banking cannot purchase online; and  
           [0035]    customers cannot use their checking accounts for payment.  
         OBJECTS OF THE INVENTION  
         [0036]    It is a principal object of the present invention to provide an electronic transaction and payment system that provides confidentiality of payment information by separating the transaction information from the payment information.  
           [0037]    A further object is to provide a system for electronic payment wherein important payment information such as credit and debit card numbers are not passed across an open network, or to the merchant, but is only received and held by a bank.  
           [0038]    Yet another object is to provide a system for electronic payment wherein the merchant is provided a means by which the merchant can have the assurance and confidence that they are dealing with a customer who is a legitimate user of a payment card.  
           [0039]    A further object of the present invention is to provide a system for electronic payment wherein the merchant can receive confirmation from the customer, a bank, or a financial institution, that the customer has the means to pay for the transaction.  
           [0040]    A final object of the present invention is to provide a system for electronic payment between two persons.  
         SUMMARY OF THE INVENTION  
         [0041]    With the above and other objects in mind, the present invention provides a method for conducting an electronic transaction between a first person having a first&#39;s computer and a second person having a second computer, the first and second computers being able to be connected to each other by at least one communication network; the method including the steps of:  
           [0042]    (a) establishing a communication between the first computer and the second computer via the communication channel;  
           [0043]    (b) receiving at the first computer a request for payment from the second computer;  
           [0044]    (c) the first person using the first computer to pass a payment instruction to a first customer&#39;s bank to effect payment to the second person;  
           [0045]    (d) the first computer receiving a request from the first bank for identity and login information from the first person, and the first computer supplying to the first bank the identity and login information of the first person for enabling the first bank to effect a debit transaction to debit an account of the first person and to effect a corresponding payment transaction to the second person;  
           [0046]    (e) the first&#39;s computer receiving from the first person&#39;s bank approval of both the transaction.  
           [0047]    The present invention also provides a method for conducting an electronic transaction between a first person having a first computer and a second person having a second computer, the first and second computers being able to be connected to each other by at least one communication network, the method including the steps of:  
           [0048]    (a) establishing a communication between the first computer and the second computer via the communication channel;  
           [0049]    (b) sending from the second computer to the first computer a request for payment for the first person to use the first computer to pass a payment instruction to a first bank to effect payment to the second person, and for enabling the first bank to effect a debit transaction to debit an account of the first person; and  
           [0050]    (c) the second computer receiving a corresponding payment from the first bank.  
           [0051]    The request for payment may be passed from the second computer to the first computer via a server. Also, the first bank may pass a notification of approval of the payment to the second computer, and the first bank may effect the payment transaction to the second computer. The payment transaction may be effected via the server.  
           [0052]    The server may collect and collate information regarding the payment transaction and the request for payment.  
           [0053]    All communications over the communication network may be subject to security selected from the group consisting of: encryption, and SSL Protocol.  
           [0054]    Preferably, the first computer produces a transaction information instruction in relation to the second computer. The transaction information instruction may be sent from the first computer to the first bank. Preferably, the first computer also produces a payment authorization instruction on behalf of the first person. The payment authorization instruction may be sent from the first computer to the first bank at the same time as the transaction information instruction is sent.  
           [0055]    In response to the receipt of the transaction information instruction and the payment authorization instruction, the bank preferably produces and sends to the second computer a confirmed order and payment instruction. The confirmed order and payment instruction may contain only that information from the payment authorization instruction as is required for the second person to be able to process the payment transaction.  
           [0056]    Preferably, authentication information and an authentication instruction is transmitted from the first computer to a certification authority to authenticate the identity of the first person; and to authenticate the transaction information instruction, or the payment authorisation instruction, or both the transaction information instruction and the payment authorisation instruction, from the first computer to the bank before processing of the transaction information instruction or the payment authorisation instruction or both the transaction information instruction and the payment authorisation instruction.  
           [0057]    More preferably, further authentication information and a further authentication instruction is transmitted from the second computer to the certification authority to authenticate the identity of the second person; and to authenticate the confirmed order and payment instruction from the first bank to the second computer before processing of the confirmed order and payment instruction.  
           [0058]    The confirmed order and payment instruction may be transmitted to a third computer trusted by the second person from the first bank, the confirmed order and payment instruction being sent from the first bank to the third computer; and the processed confirmed order and payment instruction may be transmitted from the third computer to the second computer.  
           [0059]    Preferably, the transmission from the third computer to the second computer is via the server. More preferably, the transmission to the third computer form the first bank is via the server.  
           [0060]    The first person may be a customer and the second person may be a merchant, the request for payment being as a result of an order being placed with the merchant by the customer, the order being placed by the customer using the first computer, and being received by the merchant using the second computer. The order is preferably placed by the customer as a result of the merchant supplying to the customer information about at least one product, the information passing from the second computer to the first computer. The first bank may be a bank of the customer, and the third computer may be a merchant bank computer operated by a financial institution with which the merchant establishes an account, and which also processes said confirmed order and payment instructions on the merchant&#39;s account.  
           [0061]    The second computer may include a second component to integrate with the second person&#39;s software to implement message composition, encryption, hashing, and message sending routines. The second component may include a transaction generator that accepts messages from the second person and, depending upon the type of transaction, sends a second message to the server. The second message may be a transaction message from the second person and the second computer sends the second message to the server by redirecting the first person to the server.  
           [0062]    The second computer may retrieve result messages sent by the server when the first computer is redirected back to the second computer after the transaction is, completed.  
           [0063]    There may be a bank component responsible for authentication of the first person, communication with the bank&#39;s legacy systems, and to enable the bank to debit the first person for the required amount.  
           [0064]    The server may include a transaction processor to receive redirected messages from the second computer, validate the transaction, record the transaction in a database, and to send it to the first bank.  
           [0065]    The server may also receive status request messages from the second person regarding the status of an ongoing transaction, whereupon the server checks for the status in the database and advises the second person.  
           [0066]    The server may further include a settlement module by which the second person can request settlement of its transactions; whereupon settlement files for a second bank of the second person are prepared and sent to the second bank to credit an account of the second person, and to, the first bank to debit the account of the first person. 
       
    
    
     DESCRIPTION OF THE DRAWINGS  
       [0067]    In order that the invention may be fully understood and readily put into practical effect, there shall now be described by way of non-limitative example only preferred embodiments of the present invention, the description being with reference to the accompanying illustrative drawings in which:  
         [0068]    [0068]FIG. 1 is a representation of the system architecture;  
         [0069]    [0069]FIG. 2 is an illustration of the system architecture of a second embodiment;  
         [0070]    [0070]FIG. 3 is an overall flow chart for the first embodiment;  
         [0071]    [0071]FIG. 4 is a flow chart for the merchant component for the first embodiment;  
         [0072]    [0072]FIG. 5 is a hardware chart for the server component for the first embodiment;  
         [0073]    [0073]FIG. 6 is a configuration chart for the web server module of the server of FIG. 5;  
         [0074]    [0074]FIG. 7 is a hardware chart for the issuing bank for the first embodiment;  
         [0075]    [0075]FIG. 8 is a process flow chart;  
         [0076]    FIGS.  9 ( a ) and ( b ) are flow charts for the server;  
         [0077]    FIGS.  10 ( a ) and ( b ) are flow charts for the issuing bank;  
         [0078]    [0078]FIG. 11 is a flow chart for bank and merchant registration;  
         [0079]    [0079]FIG. 12 is a flow chart for customer registrations; and  
         [0080]    [0080]FIG. 13 is a flow chart for a person-to-person financial transaction. 
     
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0081]    [0081]FIGS. 1, 3 and  8  depict an overview of the method of securely transmitting transaction and payment instructions between customer, merchant and customer bank. The method starts with the customer&#39;s computer  1  establishing a communication with one or more merchants&#39; computers  3  via a communication channel such as the Internet  2 . The customer&#39;s computer  1  will receive from the merchants&#39; computers  3  information about various goods or services  4  via the Internet  2 . This information about goods or services will be assembled and processed by customer&#39;s computer  1 . Upon the customer confirming the purchase of the goods or services, customer&#39;s computer  1  will issue a transaction information and payment authorization instruction  5  to the customer&#39;s bank&#39;s computer  6 . The customer&#39;s bank&#39;s computer will process the transaction information and payment authorisation instruction  5  and upon ascertaining the validity of the transaction information and payment authorization instruction  5 , customer&#39;s bank&#39;s computer  6  will issue a confirmed order and payment instruction  7  to one or more of the merchant&#39;s computers  3 .  
         [0082]    In another embodiment of the invention, the customer&#39;s transaction instruction and payment authorization instruction and/or the customer&#39;s bank&#39;s computer&#39;s confirmed order and payment instruction may be via a payment gateway.  
         [0083]    [0083]FIGS. 2, 3 and  8  depict an overview of a further embodiment of the method of securely transmitting transaction and payment instructions between customer, merchant and customer bank. The method starts with the customer&#39;s computer  1  establishing a communication with one or more merchants&#39; computers  3  via a communication channel such as the Internet  2 . The customer&#39;s computer  1  will receive from the merchants&#39; computers  3  information about various goods or services  4  via the Internet  2 . This information about goods or services will be assembled and processed by customer&#39;s computer  1 . Upon the customer confirming the purchase of the goods or services, customer&#39;s computer  1  will issue a transaction on information and payment authorization instruction  5  to the customer&#39;s bank&#39;s computer  6 . To mutually authenticate the identities of the customer and the customer&#39;s bank and to verify the authenticity of the transaction information and payment authorization instruction  5 , customer&#39;s computer  1  and customer&#39;s bank&#39;s computer  6  will issue and receive authentication instructions and messages  10  from the certification authority  11 . After successful authentication, the customer&#39;s bank&#39;s computer  6  will process the transaction information and payment authorisation instruction  5  and will issue a confirmed order and payment instruction  7  to a gateway computer  8  which will in turn transmit the confirmed order and payment instruction  7  to the merchant&#39;s computer  3 . Through the use of the same payment gateway computer  8 , the merchant&#39;s computer  3 , the customer&#39;s bank&#39;s computer  6 , and the merchant&#39;s bank computer will process the confirmed order and payment instruction  7 .  
         [0084]    The various entities and components that make-up the system of, and the methods used by, the present invention include:  
         [0085]    Merchant Component—FIG. 4  
         [0086]    This will be installed at the merchant site. This component will integrate with the merchant&#39;s storefront software and will implement message composition, encryption, hashing, and message sending routines.  
         [0087]    The merchant component includes a transaction generator. The transaction generator accepts the messages from the merchant and, depending upon the type of transaction, sends a message to the server. If it is a transaction message from the merchant, it generates a checksum, encrypts the checksum and sends the message to the server by redirecting the customer to the server. Once the transaction is completed, it receives the message from the server and sends a message to the merchant&#39;s system. If it is a status message, then a message is sent directly to the server, requesting the status of the transaction. The merchant can also generate cancellation or reversal messages. These messages are sent to the server, which in turn processes the messages and sends them to the bank.  
         [0088]    The merchant&#39;s system retrieves the result messages sent by the server when the customer is redirected back to the merchant after the transaction is completed. An additional backup message is received directly from the server. The order is completed only after both the confirmations are received.  
         [0089]    In the offline mode, the merchant connects to the server using its login id and password. The merchant can view all its transactions, and can request settlement of transactions. The server will settle the transactions between the customer&#39;s bank and the merchant&#39;s bank.  
         [0090]    All transactions between the merchant and the server are preferably encrypted and sent with a checksum, using Secure Sockets Layer (SSL) communications to maintain a relatively high degree of security. The transactions take place over SSL connections, with direct connections being made over private SSLs using certificates generated by the server. This in effect creates a virtual private network between the merchant and the server.  
         [0091]    Bank Component—FIGS. 7 and 10.  
         [0092]    The software running at the bank will be responsible for customer authentication, communicate to the bank&#39;s legacy systems, and will enable the bank to debit the customer for the required amount.  
         [0093]    This contains the interface module and the switch interface. The interface module receives the transaction message from the server, decrypts the information, verifies the checksum, and asks the customer for their card no./account no./user ID and password/PIN. It then authenticates the customer. The authentication is done either by contacting the switch interface (which then contacts the bank for authentication) or directly by accessing the bank&#39;s systems. If the customer is authenticated, then the debit is processed, and the transaction result is sent back to the server after encryption.  
         [0094]    The bank can accept status and cancellation messages from the server. When such a message is received, the bank interface requests the existing bank&#39;s system to reverse the transaction and reports the result back to the server.  
         [0095]    All transactions between the bank and the server are encrypted and sent using Secure Sockets Layer (SSL) communications with a checksum to maintain a high degree of security. The transactions take place over SSL connections.  
         [0096]    Server Component—FIGS. 5, 6 and  9 .  
         [0097]    The server will be the main element of this system. The server will be an interface between the merchant and the bank. It will enable message encryption and decryption, message construction, and maintenance of information that will be used for settlement between the merchant&#39;s bank and the bank of the customer.  
         [0098]    The server includes a transaction processor that receives a redirected message from the merchant, decrypts it, authenticates the source, validates the transaction, and records the transaction in its database. It then asks registered customers for their user ID/password, and their bank. Unregistered users choose their country and their bank name.  
         [0099]    The server then creates a hash total for the message, encrypts the hash total, and sends it to the customer bank. This is by redirecting the customer browser to the bank site. After the transaction is complete, the result message is received, decrypted and verified, and the result is updated in the database. The result is again encrypted and sent to the merchant by redirecting the customer back to the merchant. It also receives a backup message from the bank verifying the transaction, and sends a backup message to the merchant.  
         [0100]    The server can receive status request messages from the merchant regarding the status of an ongoing transaction. When the server receives this message, it checks for the status in its database. If the result is not yet received, then it sends out a status request to the bank. The server will accept reversal and cancellation messages from the merchant, and reverse/cancel the transaction. These transactions are updated and then the message is forwarded to the bank for reversal/cancellation. The server will also allow the merchant to login to its system, and show the merchant the transaction history for the merchant. It will accept requests from the merchant for settlement of transactions, and will generate transaction files for settlement between the customer&#39;s banks and the merchant&#39;s bank.  
         [0101]    The bank can also send offline messages to the server requesting for charge back/refund of a transaction for a particular user. The server will mark the transaction, and send the message to the customer&#39;s bank.  
         [0102]    The server also provides a facility for the customer through which they can be intimated that their account has been debited and settled. This may be achieved by sending an SMS message to the customer&#39;s mobile, phone, normal, phone, facsimile machine, computer, message service, pager, or the like as requested by the customer. The relevant contact details such as, for example the customer&#39;s mobile cellular hand phone number will be captured during the registration process, and the customer will have an option to enable or disable this facility at any time. This facility will be available only to registered users.  
         [0103]    All transactions between the server and the merchant and bank are encrypted and sent using Secure Sockets Layer (SSL) communications, with a checksum to maintain relatively a high degree of security. The transactions take place over SSL connections.  
         [0104]    The server also includes a registration module. This module handles the registration for the three entities in the system, i.e. the customer, the merchant, and the bank.  
         [0105]    The customer registration module (FIG. 12) accepts the customer details, accepts the user ID from the customer, verifies that the user ID is not already in use, and updates the database, creates a registration number and sends an email to the customer, informing them that their account has been activated. Registered Users can then commence using their account to facilitate their purchases. The customer registration is completed over an SSL connection so that the information is not compromised.  
         [0106]    It is not mandatory for a customer to register to avail themselves of the system. Unregistered users can also make use of the Facilities by providing details of their country and issuing bank at the time of paying for their purchase. However, registration will make it easier and faster for the customer to transact. It will also be easier for the server to target registered users for promotional purposes. Hence users will be encouraged to register. Additionally, registered users can login and view their transactions, and avail themselves of other services of included in the system.  
         [0107]    This module will also provide standard features to enable customers to view and modify their entries, change their password, turn SMS messaging on/off, and so forth.  
         [0108]    The merchant registration module (FIG. 11) accepts the merchant&#39;s details, creates a unique merchant ID, verifies that the merchant ID is not already in use, and updates the database. Once registered, the merchant can start using the services that the system provides. Typically, once registered, the necessary software will be installed and integrated on the merchant&#39;s site, and customers can then start using the system to facilitate their online transactions. Merchant registration will be offline and will be an Intranet transaction, so that the authenticity of the merchant desiring registration can be verified. The registration process will follow a maker/checker procedure where the maker will input all the details, and these will have to be authorized by the checker after verifying all the details. In addition, certain technical details like the IP address/URL/encryption keys, and so forth will have to be maintained separately by the server in another module.  
         [0109]    Merchants can be standalone or can be a collection of individual merchants. In the latter case, an entry is created in the database for each of the merchants through the merchant registration routine, which is part of this module.  
         [0110]    This module will also provide standard features to enable the User to view and update/modify their entries, change their password, and so forth. They can also add new merchants to their existing merchant list, or delete merchants from their list.  
         [0111]    The bank registration module (FIG. 11) accepts the bank&#39;s details, creates a unique bank ID and updates the database. Once registered, banks can start using the services that the system provides. A server will be installed on the bank&#39;s premises, behind the bank&#39;s firewall, which will be able to communicate with the bank&#39;s legacy systems. The server of the present invention will communicate its requests to the server on the bank site, which will in turn communicate with the bank&#39;s legacy systems. Similar to the merchant registration module, this module will follow the maker/checker procedure.  
         [0112]    The server also includes a settlement module which will operate once the transaction is complete. At the end of the day, the merchant can log on to the server and request settlement of its transactions. This module will then prepare settlement files for the merchant&#39;s bank (to indicate to the merchant&#39;s bank to credit the merchant&#39;s account), and the banks of all customers who used the merchant to make online purchases to debit their accounts. The merchants will be informed of the settlement amount offline.  
         [0113]    These files will be integrated for all merchants arid one file will be prepared for each bank, which indicates the credit/debit for all the merchants/customers of that bank. The settlement files will be sent to the banks over a secure connection.  
         [0114]    This module will handle all charge back/refund requests from the bank or the merchant.  
         [0115]    The firewalls are intended to restrict unauthorized entry into the system. External users will be able to send requests to the server Preferably only through HTTP and HTTPS protocols. The incoming traffic on HTTP and HTTPS protocols will be routed to a load balancer.  
         [0116]    The second firewall preferably accepts requests only from Web Servers, and will forward the requests only to the application server. Physically, the two firewalls may be in the same machine. The firewall may be a hardware device.  
         [0117]    The load balancer may be a device which accept traffic from the firewall and route it to different servers. This will distribute the traffic across different web servers.  
         [0118]    The web servers will receive requests from the load balancer and process them using servlets/JSP technology. There may be a number of machines hosting the web server and the load balancer may distribute requests between them. Each web server machine may have two web servers running: one to cater to customer requests; and a second to communicate only with the merchant and the bank using SSL for sending direct messages.  
         [0119]    The server may be a Certification Authority and may issue Certificates to the bank and the merchant. One certificate will be generated for each bank and each merchant that registers.  
         [0120]    This system may use a SSL accelerator. It may be a hardware device that handles SSL connections for the web servers. SSL connections are time consuming to create and to tear down. This device may speed-up the process and reducing the processing required of the web server.  
         [0121]    The switch at the bank acts as an interface between the server message module and legacy bank system for processing of transaction. It is, basically, a transaction engine which can handle high transaction volumes, and different kinds of message structures.  
         [0122]    As the system will handle financial transactions of an extremely sensitive nature, and which flow through the Internet and not through a private network, security is important. Preferably, all transactions which take place on line (i.e., from the merchant to the server and vice versa, from the server to the bank and vice versa) will take place over SSL (secure socket layer) connections using, for example, 128-bit encryption/40-bit encryption. In addition to using SSL, all messages before being sent out on the Internet may be hashed to generate a checksum. This checksum will be encrypted using public key/private key infrastructure. This encrypted checksum may be appended to the end of the message before being sent out over the Internet.  
         [0123]    Furthermore, digital certificates may be maintained at each of the three sites, the merchant, the server and the bank. There may be two types of digital certificates:  
         [0124]    a certificate issued by an independent Certifying Authority, such as “Verisign”. (trade mark), will be maintained by all the three entities. This will be used when the merchant and the server exchange messages using the customer&#39;s browser as an intermediary, and also when the server sends direct messages to the bank or the merchant; and  
         [0125]    the server may be a Certifying Authority. It may issue digital certificates to the merchant and to the bank. These certificates will be used for authentication when the bank or merchant communicates with the server directly (i.e., without using the customer&#39;s browser to redirect).  
         [0126]    Passwords may be stored on the database using Secret Key Encryption.  
         [0127]    A mail server may be used at the server to communicate with customers. Merchants and banks may also be sent e-mail messages regarding administrative procedures and maintenance through the mail server.  
         [0128]    The security management system is used to authenticate the user. It may also be used to authenticate an internal user, their role, and entitlements. It may also be used to authenticate external users from the banks and merchants.  
         [0129]    To now refer to FIG. 12, there is illustrated a customer registration procedure. The customer goes to the server&#39;s web site, and selects the “register” option They then complete the profile fields, and provide details of their banks, a default bank, and the relevant accounts. After checking for completeness, the details are confirmed to the customer by e-mail, and stored in the server&#39;s database.  
         [0130]    If a customer wishes to update their profile, after login the details are retrieved from the database and changed by the customer. They are then stored in the database. There may be a confirmation to the customer by e-mail, if desired.  
         [0131]    To now refer to FIGS. 3 and 8, when the customer goes online to the merchant and purchases a few items, they have to pay for the purchases. They can therefore click on the link to the server which is provided as one of the payment options on the merchant&#39;s page. This may be by an icon. The data from the customer&#39;s shopping cart is transferred to the merchant&#39;s end. The merchant&#39;s module constructs a message in a format (e.g. XML) that the server will understand. A checksum for the message is generated and the checksum is encrypted.  
         [0132]    An SSL connection is established with the browser (if not already done so), and the data is sent to the server by being redirected through the customer&#39;s browser. An SSL connection is also established with the server at this time.  
         [0133]    The customer enters their login id and password, and selects their default bank. The server smaller group verifies the login id and password, and reconstructs the message, which needs to be sent to the bank. It generates a checksum for the message and encrypts the checksum. The system then redirects the customer to their issuing bank.  
         [0134]    Non-registered users can select their issuing bank from a list of banks which have registered. They are then redirected to the bank site in the same manner as for registered users.  
         [0135]    At the customer&#39;s bank site, the customer is asked for their user name and password, card number and pin. The message received from the server is decrypted and all information validated.  
         [0136]    In parallel, the account information entered by the customer is validated by the bank system. This validation may be by passing the message to the switch interface (which then “talks” to the bank&#39;s legacy system) or by the system&#39;s module at the bank “staking” directly to the bank&#39;s systems. This will depend on how the bank&#39;s systems function.  
         [0137]    If validation is successful, the customer&#39;s account is debited by the amount as specified in the message received from the server, which also specifies the currency for debit The debit is made through the switch or directly by the system “talking” to the bank&#39;s system.  
         [0138]    The transaction is now complete. The customer is informed that their account has been debited, and the customer is redirected back to the server site. A message is sent with the redirect informing the server about the success of the transaction. An additional message is sent directly from the bank to the server. This message is intended as a backup of the original (redirect) message.  
         [0139]    Settlement is done offline at the end of the day. The merchant requests the server for settlement. The server generates the settlement files for the merchant&#39;s bank and the customer&#39;s bank and informs its bank—the server&#39;s bank which acts as a settlement bank for the customer&#39;s and the merchant&#39;s banks. To settle the accounts.  
         [0140]    The merchant&#39;s bank pays the merchant and the customer&#39;s bank confirms to the customer (in a monthly statement or bill) that the debit was successful.  
         [0141]    The customer may cancel their order at the merchant&#39;s site using the order number provided by the merchant. The merchant&#39;s module generates a cancellation for that particular order and sends it to the server. The server receives the cancellation, verifies the transaction details and cancels the transaction. The merchant can also decide to cancel the order of its own accord (if it is unable to meet the order, for example).  
         [0142]    The customer can demand a refund from the bank (for example, if the customer claims they did not purchase the goods or receive the service as claimed by the merchant). The bank then requests a charge back from the merchant&#39;s bank through the server. The server processes this request and generates a file for the merchant&#39;s bank.  
         [0143]    [0143]FIG. 13 illustrates a person-to-person transaction, which would be available to registered users only. Here, the sender logs in to the server, and selects the person-to-person option. Details of the receiver are entered. The receiver is sent an e-mail by the server, the e-mail having a hyperlink to the server. If the receiver is not a registered user of the system, they will not be required to be registered, but may be encouraged to do so. Details of the intended payment are given to the receiver, and they are asked to confirm their intention to proceed. If “yes”, the server sends an e-mail to the sender indicating that the receiver intends to proceed. The e-mail contains a hyperlink. The sender selects the hyperlink, enters their login details, bank detals (if not the default bank), and the server sends to the receiver an e-mail requesting details of the account to be credited. Upon receipt of the information from the receiver, the sender&#39;s account is debited and the receiver&#39;s account credited. A confirmation is sent to the sender, and may be sent to the receiver, if desired.  
         [0144]    The server will handle currency conversion between the merchants and the banks. All transactions that are received from the merchant are converted either to a single currency or to the Issuing bank&#39;s local currency. The currency in which a particular bank deals is stored during the registration of the bank. The daily exchange rates will be maintained on the server. Registered users may check their transaction history and update their profile. Registered users may be able check their transaction history and update their profile, if desired.  
         [0145]    Whilst there has been described in the foregoing description preferred embodiments of the present invention, it will be understood by those skilled in the technology that many variations on modification in details of operation on methodology may be made without departing from the present invention.