Abstract:
A plurality of agent terminals operable by agents of the money transfer service are interconnected by a communications network. A money transfer control system is connected to the communications network for controlling the implementation of the money transfer service. The money transfer control system includes an agent account data store storing account data for each agent and a transaction data store storing transaction data for transactions by agents implementing money transfers from a sending entity to at least one receiving entity.

Description:
FIELD OF THE INVENTION 
       [0001]    The present invention relates to a computerized money transfer method and system. 
       BACKGROUND OF THE INVENTION 
       [0002]    There are many services available for the transfer of money from a sender to a receiver. One method offered by money transfer companies requires a sender to enter an office of the company in order to request the sending of money to a receiver, e.g. overseas. One office local to the receiver is identified and the money is transferred to that office. When the money reaches the office, the receiver can go to the office and withdraw the money, e.g. as cash or a cheque. The problem with this system is that there is a considerable time delay between the ordering of the transfer of the money and the actual receipt of the money. This method does however have the advantage of not requiring a sender to have an account with the institution through which the money is being transferred. 
         [0003]    Another method by which money can be transferred is, by transfer of funds between accounts, e.g. between bank accounts. Whilst this method of transferring funds can be fast, it requires a sender and a receiver to have an account with the financial organization involved in the transfer. 
       SUMMARY OF THE INVENTION 
       [0004]    It is thus an object of the present invention to provide a simplified and efficient money transfer system and method. 
         [0005]    The first aspect of the present invention provides a computerized money transfer system and method for implementing a money transfer service for transferring money from a sending entity such as an individual or company to at least one receiving entity such as a person or company. A plurality of agent terminals are provided which are operated by agents of the money transfer service. The agent terminals are interconnected by a communications network which can comprise any conventional communications network, e.g. a wired network such as the Internet, or a wireless network. Connected to the network is a money transfer controller for controlling the implementation of the money transfer service. Agents are registered with the money transfer controller plus account data for each agent is stored in the money transfer controller. A transaction data store is also provided to store transaction data for transactions by agents implementing money transfers from senders to receivers. 
         [0006]    In order to initiate a money transfer, an agent terminal is used by an agent to input data which identifies the sender, the or each receiver, the sending agent and at least one receiving agent. The data will also indicate the amount of money to be transferred. The input data is received by the money transfer controller and a transaction data record is stored in the transaction data store. Also as a result of the transaction the agent account data for the sending agent is updated based on the transaction. 
         [0007]    Thus in accordance with this embodiment of the present invention, a money transfer system is provided which does not require the sending entity or receiving entity to have an account. The sending entity can simply instruct an agent of the money transfer service to make the transfer which is reflected in the agent&#39;s account. Thus the money transfer system is based on a network of agents each of which register with the service and have accounts for the service. All transactions implemented by an agent accrues to their account, thus in this way a convenient money transfer service is provided having a network of agents enabling entities to transfer money therebetween without having a relationship with the money transfer service or between themselves. 
         [0008]    In one embodiment, the money transfer system can enable the transfer of money to be currency independent. A sending currency need not be the same as the receiving currency. In this embodiment the money transfer controller includes exchange rate data enabling the conversion of currencies. This enables not only the sending currency and receiving currency to be different, based on the exchange rate, but also it enables the agent&#39;s account data to be in the agent&#39;s local currency based on the exchange rate data involved in accumulated transactions. The currency exchange can be direct or indirect via at least one intermediate currency. 
         [0009]    In another embodiment of the present invention the money transfer controller includes a transaction monitor for monitoring transactions. This enables transactions that fit a predetermined criteria, e.g. comprise suspicious or irregular transactions, to require further information from the sender. The requirement for further information for suspicious or irregular transactions is a function of money laundering compliance regulations. The provision of additional information by the sender helps money laundering regulation officers to detect potential money laundering operations. On the basis of the input of further information, the money transfer controller can block the transaction automatically if it is determined that stored money laundering compliance regulations are contravened. 
         [0010]    In addition to or instead of the monitoring and use of further data, a transaction can be monitored against predetermined criteria to determine whether to allow the transaction. For example, the transaction can be compared with money laundering compliance regulations to determine whether they are contravened and if so to block the transaction. Alternatively, or in addition, the transactions can be monitored and used in conjunction with the agent&#39;s account data in order to determine whether the transaction should proceed. For example, if the transaction would cause a change in the agents account data outside predetermined criteria, the transaction can be blocked. This provides for automatic credit control, for example allowing the blocking of transactions until the agent&#39;s account is improved, e.g. by payment of some of the outstanding debt incurred as a result of previous transactions. 
         [0011]    In one embodiment of the present invention, because the agents account data and transaction data is stored centrally, this enables the netting off of agents&#39; accounts for agents against other agents. Agents have access to their accounts and can monitor and control their accounts. 
         [0012]    In one embodiment of the present invention a money transfer controller provides an interface to allow agents to register as master agents and to register other agents as sub-agents. When an agent registers sub-agents, they accept responsibility for the transactions of those sub-agents. Thus the account data for these sub-agents is linked to the account data of the master agent and in this way all transactions by sub-agents are to some extent controlled by the master agent. The organization of sub-agents and master agents can be hierarchical and thus sub-agents themselves can be master agents for their own sub-agents. However, if a master agent is also a sub-agent, then the financial activities of the sub-agents of a master agents who is also a sub-agent are the responsibility of the master agent at the top of the hierarchical tree. 
         [0013]    In one embodiment, where a master agent has registered sub-agents, the transfer terminal operated by the master agent can include a domain money transfer controller to control the implementation of the money transfer service between agents in a set of agent terminals operated by agents registered as sub-agents of the master agent. The domain money transfer controller also includes domain agent account data for the set of agents and domain transaction data for transactions between agents in the set of agents. This embodiment of the present invention provides for a hub- and spoke-type money transfer system in which sub-agents can transfer money to other sub-agents of the same master agent or the master agent using the domain money transfer controller implemented on the agent terminal operated by the master agent. Thus money transfers between sub-agents and the master agent can take place on a local basis without need to refer to the main hub money transfer controller. 
         [0014]    In one embodiment of the present invention, the input transaction data from an agent terminal identifies a sender and a plurality of receivers. In other words the data represents a combined transaction aimed at a number of recipients. This enables a sender to make a single request to an agent to send different amounts in different currencies to different recipients in a single transaction with the agent. This simplifies the transaction with the agent and within the money transfer controller, the transaction data can be stored as a single sending transaction indexed for the sending entity and/or as a plurality of receiving transactions indexed for each receiving entity. Alternatively, or in addition, the transaction data for the transaction can comprise a single sending transaction indexed for the sending agent and a plurality of receiving transactions indexed for each receiving agent. 
         [0015]    In a preferred embodiment of the present invention, the money transfer system comprises a web-based service implemented over an Internet Protocol (IP) network such as the Internet. The money transfer controller comprises a web server system accessible by the agent terminals using a web interface. The agent terminals comprise computers implementing web browser application to enable access to the web interface of the server system. 
         [0016]    In one embodiment of the present invention, to avoid the need for senders who use the money transfer service regularly from having to repeatedly enter personal data, a sender can be provided with a device such as a smartcard or other data storage device which can be read at an agent terminal to automatically input data identifying the sender. 
         [0017]    In accordance with another aspect of the present invention, there is provided a computerized money transfer system and method implementing a money transfer service for transferring money from a sender to a plurality of receivers in which a plurality of terminals are interconnected by a communications network. A money transfer controller is connected to the communications network for controlling the implementation of the money transfer service. The money transfer controller includes a transaction data store storing transaction data for transactions implementing money transfers from a sender to the receivers. Data is input at a terminal to instigate a money transfer from a sender to at least one receiver. The data is transmitted from the terminal to the money transfer controller. The data identifies the sender and the receivers and the money transfer controller records the data in the transaction data store as a transaction from a sender to the plurality of receivers. The money transfer controller also apportions the transaction to each receiver and sends data identifying the apportionment for respective receivers to at least one terminal to enable the completion of the money transfer to the respective receivers. 
         [0018]    Thus in accordance with this aspect of the present invention, a sender is able to complete a single transaction at a terminal of the money transfer system in which the transaction requires the transfer of money to more than one receiver who can be located at more than one terminal. Thus although the money transfer controller can store a single transaction for the sender, this must be apportioned appropriately for each receiver to ensure that the money aimed at the receiver is sent to a terminal to enable the completion of the money transfer. 
         [0019]    In this embodiment of the present invention, the terminals can be operated by the senders and receivers to provide a simple method of transferring funds simultaneously from one sender to multiple receivers in one transaction. 
         [0020]    In another embodiment of the present invention, the terminals are operated by agents of the money transfer service. The agents are registered with the service and have accounts against which the transactions are recorded. The senders therefore contact agents and make arrangements for payment of agents to send money to receivers. Receiving agents are identified for receivers and the money is made available immediately by the or each receiving agent operating agent terminals for collection by the receivers. 
         [0021]    In one embodiment the money transfer controller stores the input data as a single transaction indexed by the sender. 
         [0022]    In another embodiment of the present invention, the money transfer controller is adapted to store the input data as a plurality of associated transactions associated by the sender and indexed by the receiver. 
         [0023]    Another aspect of the present invention provides a computerized hub and spoke money transfer system implementing a money transfer service for transferring money from a sender to at least one receiver. The system comprises a plurality of agent terminals that are operable by agents of the money transfer service. The agent terminals are interconnected by a communications network to which is connected a hub money transfer controller for controlling the implementation of the money transfer service between unrelated agents. Related agents comprise daughters of a common parent agent. The hub money transfer control system also includes a transaction data store storing transaction data for transactions between unrelated agents implementing money transfers from a sending to at least one receiver, and an agent data store containing agent relationships identifying a hierarchy of parent and daughter agents. 
         [0024]    At least one agent terminal operable by a parent agent comprises a spoke money transfer controller for controlling the implementation of the money transfer service for money transfers between related agents. The spoke money transfer controller also comprises a local transaction data store storing transaction data for transactions between related agents implementing money transfers from a sender to at least one receiver, and an agent data store storing agent relationships identifying a hierarchy of parent and daughter agents. 
         [0025]    When data is input at a terminal by a sending agent instigating a money transfer at the request of a sender to at least one receiver, the data input identifies the sender and receiver, the sending agent, and at least one receiving agent that is to remit the money transferred thereto to the or each receiver. The input data is transmitted to either the hub money transfer controller or the spoke money transfer controller. The data is transmitted to the hub money transfer controller if a receiving agent identified in the data is not related to the sending agent. The hub money transfer controller records the input data in the transaction data store as a transaction from a sending agent to at least one receiving agent for a sender and at least one receiver, and transmits information on all transactions to the or each agent terminal operated by the or each receiving agent. 
         [0026]    If the data is sent to the spoke money transfer controller, the spoke money transfer controller records the input data in the local transaction data store as a transaction from a sending agent to at least one receiving agent for a sender and at least one receiver, and transmits information on the transaction to the or each agent terminal operated by the or each receiving agent. 
         [0027]    Thus in accordance with this aspect of the present invention, it is possible for spoke money transfer controllers to handle money transfers between related agents who are either the agent operating the spoke money transfer controller, or sub-agents thereof. This provides for more distributed processing of money transfers and enables transfers within a domain to be handled locally without having to utilize a central hub money transfer controller. 
         [0028]    In accordance with this aspect of the present invention, it is possible for transactions to be handled locally by the spoke money transfer controller because the agent operating the spoke money transfer controller has control over the sub-agents within the domain and the operator of the spoke money transfer controller takes ultimate responsibility for the financial transactions between its sub-agents. 
         [0029]    In one embodiment of the present invention, to ensure that the hub money transfer controller contains a complete picture of all transactions taking place within the money transfer control service, the hub money transfer controller includes transaction data synchronization means for synchronizing the transaction data in the transaction data store in the hub money transfer controller with the transaction data store in the spoke money transfer controller. 
         [0030]    Another aspect of the present invention provides A hub and spoke money transfer system implementing a money transfer service for transferring money from a sender to at least one receiver, the system comprising: a plurality of money transfer agent terminals operable by money transfer agents; a hub money transfer controller for controlling the transfer of money between unrelated agents; at least one spoke money transfer controller for controlling the transfer of money between related agents; wherein the agent terminals, the spoke money transfer controller and the hub money transfer controller communicate over a communications network. 
         [0031]    The present invention can be implemented using dedicated processing equipment, or programmable processing equipment such as suitably programmed general purpose computers. Further, the present invention can be implemented by a single processing apparatus or a number of networked processing apparatuses networked by any conventional communications network. The present invention can thus be implemented by suitably programming a computer. Therefore, the present invention encompasses computer program code for controlling a processing apparatus to implement the method of the present invention. The computer program can be embodied on any suitable carrier medium supplied to a processing apparatus such as a transient carrier medium, e.g. an electrical, optical, microwave, rf, or acoustic signal (an example being a TCP/IP signal carrying computer code over an IP network such as the Internet), or a storage medium such as a floppy disk, hard disk, tape device. CD-ROM, or solid state memory device. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0032]      FIG. 1  is a schematic diagram of a money transfer system in accordance with an embodiment of the present invention; 
           [0033]      FIG. 2  is a schematic diagram of the data provided in the database in the embodiment of  FIG. 1 ; 
           [0034]      FIG. 3  is a schematic diagram illustrating the different interfaces provided to the database in an embodiment of the present invention; 
           [0035]      FIG. 4  is a schematic diagram illustrating how agents can be controlled and organized in a money transfer system in accordance with an embodiment of the present invention; 
           [0036]      FIG. 5  is an organizational diagram illustrating the organization of agents hierarchically in a money transfer system in accordance with an embodiment of the present invention; 
           [0037]      FIG. 6  is a flow diagram illustrating the method of registering agents in accordance with an embodiment of the present invention; 
           [0038]      FIGS. 7   a  and  7   b  are a flow diagram illustrating the money transfer process in accordance with an embodiment of the present invention; and 
           [0039]      FIG. 8  is a schematic diagram of a system for implementing a hub and spoke money transfer service in accordance with an embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
       [0040]      FIG. 1  is a schematic diagram of a money transfer system in accordance with an embodiment of the present invention. In this embodiment a transaction server  1  implements the money transfer control function and this is connected over the Internet to a first agent&#39;s computer  3  and a second agent&#39;s computer  5 . The first agent&#39;s computer  3  implements a web browser  3   a  and is provided with a device reader  3   b  for receiving a device  3   c  from a sender who wishes to send money to a receiver. Thus the agent implementing the agent&#39;s computer  3  acts as a sending agent for a sender. The device  3   c  can comprise any conventional storage device such as a smartcard, magnetic card, or other solid state device. The device  3   c  can store personal information for a sender who is a regular user of the money transfer service to avoid the user having to manually provide their personal data every time they wish to instruct the sending agent to instigate a money transfer. The sending agent operating the agent&#39;s computer  3  will receive payment from the sender in respect of the money to be transferred to a receiver. The agent&#39;s computer  3  communicates with the transaction server  1  in order to provide the money transfer as will be described in more detail hereinafter. The transaction server  1  is also connected over the Internet to a second agent&#39;s computer  5 , which in this example is operated by an agent designated as the receiving agent. The receiving agent&#39;s computer  5  is located in an office which is conveniently accessible to the recipient of the transferred money. The agent&#39;s computer  5  implements a web browser  5   a  for implementing communications over the Internet  2  to the transaction server  1 . Thus data instructing the transfer of money is transferred from the sending agent&#39;s computer  3  upon payment by the sender to the receiving agent&#39;s computer  5 , whereupon the receiving agent will pay the receiver. Thus this system enables a sender to go to the offices of the sending agent and pay in cash or any convenient payment method accepted by the sending agent whereupon an instruction is sent to the receiving agent&#39;s computer to pay the receiver and the receiving agent will pay the receiver when they present themselves in the receiver&#39;s office in any convenient form, e.g. cash or cheque. The instruction between the sending agent and the receiving agent for the payment to the sender is almost instantaneous. There is no need to await the transfer of the funds. Credit is thus extended between the receiving and sending agents. This is reflected in their accounts which are stored within the transaction server  1  in database  10  as will be described in more detail hereinafter. 
         [0041]    The transaction server  1  in this embodiment of the present invention comprises a web-based service implemented by a web server  6  provided web page interfaces to web browsers  3   a  and  5   a  on the sending agent&#39;s computer  3  and the receiving agent&#39;s computer  5  respectively. The web server  6  in the transaction server  1  is provided with Java code in a Java code store  9  for the generation of appropriate web pages. Also, static web pages and web page templates are provided in a static web page and template store  7 . A database application  8  is provided to interface the web server  6  to a database  10  in which is stored agents&#39; account information and transaction information as will be described in more detail hereinafter. 
         [0042]    It can thus be seen from  FIG. 1  that the present invention provides a web-based system which enables the money transfer system to be provided globally to a global network of agents using the readily available Internet. Connections between computers over the Internet should be secure and can be implemented either by using the secure socket layer (SSL) or by implementing a virtual private network (VPN) between the computers. 
         [0043]    In addition to agents acting as sending and receiving agents, the system provides for an administrative interface to provide administrative functions. In  FIG. 1 , there is illustrated an administrator&#39;s computer  4  which is also provided with a web browser  4   a  to access web pages provided by the web server  6  to provide an administrator&#39;s interface to the information in the database  10 . 
         [0044]      FIG. 2  illustrates the content of the database  10  in the transaction server  1  in more detail. 
         [0045]    Within the database  10  there is stored sending entity records  11 . The sending entity represents the customer of the service. The records contain customer information. Each sending entity or customer is given a customer number. For each customer number the customer&#39;s name, address, contact details such as telephone number, fax number and e-mail are entered together with date or birth, age, and sex. Also the records can indicate whether the records are active or inactive to allow for an administrator to bar the customer. The records can also store a list of recipients, by recipient numbers to whom the sender has sent money before. 
         [0046]    Database  10  also includes recipient entity records  12 . The recipient entity records  12  contain information on the recipients of the money transfers by customers. Each recipient is given a recipient number and the recipient&#39;s personal details such as name, age, date or birth, sex, address, etc., is stored as a record. Also for each recipient, the agent number for the receiving agent they used to receive the money is stored. 
         [0047]    Database  10  also includes agent records  13  which comprise a record for each agent. Each agent is given an agent number or ID. The agent number or ID can indicate the type of agent. For example, an agent can be a master agent or a sub-agent. The agent ID will indicate whether the agent has been registered as a sub-agent since the ID will include the ID of the parent. A parent and child relationship can either be indicated by the agent ID, or by relationships within the database. The agent record will also indicate the type of agent, for example whether it is a sending agent, a receiving agent, or both a sending and receiving agent. The ability to send and receive money can be governed by local money transfer regulations. The agent record also includes the agent name, address (location), and contact details. For security, the Internet Protocol (IP) address of the agent&#39;s computer can also be stored in an agent record so that the IP address of the computer used during a money transfer can be checked to ensure that the communication during money transfer is to the agent&#39;s computer and not to a backer. The agent record will further include security details such as username and passwords. If the agent is an organization, there may be an organization password which provides a certain level of access and each operator can be provided with an individual password which provides a lower level of access. The level of access can govern the level of administrative access enabled to the information within the database. The agent record further stores credit limit information indicating the level of credit allowed for the agent and/or deposit information indicating the level of funds deposited by the agent. Further in the agent record the commission type or split to be earned by the agent for money transfers can be indicated to enable separate types of commission or separate commission splits to be used for different agents. For example, where an agent generates a high volume of business, a special commission type or split may be negotiated for that agent. The agent record further stores an indication of whether the agent record is active or inactive to allow for an administrator to bar the agent should that be required. 
         [0048]    The database  10  also stores money laundering regulation officer (MLRO) records  14 . An MLRO record is provided for each MLRO. Typically, each country will require a MLRO who has knowledge of the money laundering compliance regulations of that country to enable them to update the records when necessary. The MLRO record stores regulatory information, statutory limits for transactions, internal limits for transactions together with username and password information. 
         [0049]    The database  10  further contains administrator records  15 . The administrator records comprise a record for each administrator who has access to information in the database. The record for an administrator comprises an administrator number, an administrator level indicating the level of access permitted to the administrator, the geographical region for which the administrator is responsible, and the username and password information for the administrator. 
         [0050]    The database  10  further contains credit controller records  16 . Each credit controller is provided with a record having a credit controller number, an indication of the region for which the credit controller is responsible, and the username and password for the credit controller. This enables credit controllers to look at agents&#39; accounts to perform their credit control responsibilities in respect of the regions for which they have responsibility. 
         [0051]    The database  10  further stores transaction records. A transaction record is created for each transaction or money transfer that takes place. A transaction record comprises a transaction number unique to the transaction, the sender number, the receiver number or numbers, the sending agent number, the receiving agent or agents, the principal sum, i.e. the amount paid by the sender, the amount to be paid to the or each receiver, the commission charged for the transaction, the sending and receiving currencies, the actual and realized exchange rates (the actual exchange rate representing the exchange rate used by the sending agent to calculate the amount to be paid to the receiver in relationship to the actual amount paid by the sender, whereas the realized exchange rate represents the exchange rate at the time of settlement of the transaction with the sending agent). The transaction record can also include an indication of whether the transaction is a suspicious or irregular transaction or not. If the transaction is a suspicious or irregular transaction, the transaction record can include either the additional transaction data which is required to be entered by the sender or a pointer to the additional transaction data. The transaction record further stores a status indication indicating the status of the transaction. The transaction has four states;
   1. Pending, indicating that the instruction to pay the receiver has been received by the receiving agent but payment has not yet been made to the receiver;   2. Remitted, indicating that the receiver has been paid;   3. Settled, indicating that the sending agent has been paid;   4. Failed/cancelled, indicating that the transaction has failed or has been blocked.   
 
         [0056]    The transaction record can further store a password that a receiver must give to a receiving agent before they are paid. 
         [0057]    The database  10  further stores exchange rate and commission data  18 . Exchange rate data must be updated regularly to reflect current exchange rates. The commission data can comprise commission rates to be used for transactions. The exchange rate and commission data is referred to in the formation of a transaction record. 
         [0058]    It will thus be clear that the data stored in the database  10  contains a wealth of information on transactions implemented by agents which can be accessed and viewed as reports by administrators, agents, MLROs or credit controllers. 
         [0059]    Thus entities within the money transfer system comprise agents which can be organized hierarchically as parent and daughter agents or master and sub-agents, administrators, which can be provided with administrative access at different levels, credit controller, and MLAO. Each entity requires access to the database  10  with different levels of access.  FIG. 3  illustrates the interfaces provided to the database  10  by the generation of appropriate web pages by the web server  6  using the Java code  9 . An agent transaction interface  110  is provided for interfacing to a transaction processing module  111  comprising code implemented within the web server  6 . An entity enquiry interface  112  is provided to allow an agent to perform enquiry functions via an exchange rate processor  113  implemented by the web server  6 . This enables an agent to return information on rates of exchange, countries, cities and locations where money can be sent by an entity, the suggested nearest sending agent location to the location of the desired receiver, the total charge for making a transaction, the nett amount receivable in a particular country in a particular currency, the total amount to be paid, and the ability to check the status of transactions performed by an entity. 
         [0060]    An agent is also provided with an agent administration interface  114  to allow an agent to access the database  10  in order to look at their account information and transactions performed by them, i.e. sending and receiving transactions. The agent administration interface allows an agent to access the following information:
       To access the agent profile;   See all transactions performed by or on behalf of the agent;   To see the total sales made and commissions earned for a period of time;   To view the outstanding amount due to be paid to the money transfer organization.       
 
         [0065]    The agent can type a record of the cash paid into the bank in lieu of the payments made. The agent can also view the status of transactions he is responsible for. 
         [0066]    An administration interface  115  can be provided to database  10  to provide access to administrators at different levels. For example, a master administrator could have access to all data in the database. Local administrators, on the other hand, can have access only to certain parts of the database related to a number of agents, or to a geographic region. An administrator can view information dependent upon their level of access. An administrator can not only access data but can also make changes to, for example, currency exchange rates, commission rates and other data. The administrator can obtain reports for agents for which the administrator is responsible, showing transactions for periods of time, or transactions that meet certain criteria. 
         [0067]    Credit controllers are provided with a credit control interface  116  to enable them to perform credit control. Money laundering regulation officers (MLROs) are provided with a MLRO interface  117  to enable them to perform their regulatory function. 
         [0068]      FIG. 4  illustrates how the various entities in the money transfer system can be organized. A money transfer organization  70  controls the money transfer controller  71 . The money transfer organization  70  is also provided with an administrator  72 , a credit controller  74  and a money laundering regulation officer  73 . This enables the money transfer organization to provide for central control of the money transfer service. The money transfer organization  70  can also include their own agents  75  which are under their direct control. Outside the money transfer organization  70  agents can operate independently such as agent  90 . Such an agent could, for example, be operated by the owner of a newsagent. This enables people to go to the newsagent and send money to recipients overseas. Because the system is a web-based system, the owner of the newsagent acting as an agent simply requires access to the Internet in order to provide the service. They will also need to enter into a contractual relationship with regard to setting up an account with the money transfer organization  70 . 
         [0069]    In  FIG. 4  organization  100  such as a company comprises two separate agents  101  and  102 . The organization  100  also has an administrator  103  to provide an administrative function for the agents  101  and  102 . Thus the money transfer organization  70  provides the organization with two agent interfaces and an administrative interface at a level required for the organization  100 . 
         [0070]    Organization  80  which can comprise for example a company, has an agent  83  and two sub-agents  82  and  84  which are sub-agents of agent  83 . The main agent  83  of the organization has thus registered sub-agents  82  and  84  as sub-agents of agent  83  with the Money transfer controller  71 . This process will be described in more detail hereinafter. The organization  80  also has an administrator  81  to provide administrative control over the agent  83  and sub-agents  82  and  84 . Thus the money transfer organization  70  has provided the organization  80  with interfaces to the money transfer controller  71  to enable three agents to access the money transfer controller  71 , two of them being as sub-agents of the main agent  83 , and an administrative interface. 
         [0071]      FIG. 5  is an organizational diagram illustrating the hierarchical organization of agents in relation to the money transfer controller and entities. The relationships illustrated by the solid lines in  FIG. 5  are the financial responsibility relationships. For example, each agent or parent agent  21 ,  26 ,  27 ,  28  and  34  have a contractual relationship with the money transfer controller  20  and credit is arranged to enable these agents to transact. The remaining agents  22 ,  23 ,  24 ,  25 ,  29 ,  30 ,  31 ,  32  and  33  are all daughter or sub-agents that have been set up as sub-agents of the parent agents  21 ,  26  and  28 . It is these parent agents  21 ,  26  and  28  that bear the financial responsibility of the sub-agents that they have registered. The sub-agents  22 ,  23 ,  24 ,  25 ,  29 ,  30 ,  31 ,  32  and  33  can perform transactions with any other agents. The transactions are, however, mapped to the accounts for the master or parent agents, particularly for credit checking purposes. Agents  21 ,  26  and  28  have limited credit which requires them to ensure that transactions are paid for by settling with receiving agents, and that their sub-agents settle transactions with receiving agents. 
         [0072]    It can be seen in  FIG. 5  that sub-agents can be registered as master agents for sub-agents and thus a hierarchy of agents can be registered with the money transfer controller  20 . Each agent can implement the money transfers for separate entities, e.g. persons or companies, or the agent might be operated by an organization such as a company and therefore the agent becomes an agent/entity such as agent/entities  25  and  34 . 
         [0073]    The dashed lines in  FIG. 5  illustrate money transfers between entities. Entity  46  is a sending entity using agent  24  as a sending agent. Sending agent  24 , although responsible to parent agent  21  financially, can connect to the money transfer controller  20  using the web interface. The money transfer controller  20  will identify that the receiving agent is agent  21  and thus information will be transferred to agent  21  so that agent  21  can complete the transfer of the money to the receiving entity  40 . It can be seen that this transfer comprises a transfer involving sub-agent  24  to parent agent  21 . This is thus a transaction which could be implemented as a local transaction on a spoke in a hub and spoke transaction model as will be described in more detail with reference to the embodiment of  FIG. 8 . 
         [0074]    The other transaction illustrated in  FIG. 5  by the dashed line is a transaction from a sending entity  47  to multiple receiving entities  48 ,  50  and  60 . The sending entity  47  uses the sending agent  26  to compile a single transaction for which the sending entity makes a single payment represented as a transaction from a single sending entity to multiple receiving entities. The transaction data will also indicate that two receiving agents  27  and  33  are involved in completion of the transfer to the three receiving entities  48 ,  50  and  60 . The money transfer controller  20  thus receives the transaction data from the sending agent  26 , stores it as a transaction and instructs the receiving agents  27  and  28  to make payment to their respective receiving entities  48 ,  50  and  60 . It can thus be seen that for this transaction it is possible for a sending entity to make a single transaction to multiple receiving entities, thus simplifying the transaction process for the sending entity. 
         [0075]    The process of registering agents for the money transfer service will now be described with reference to the flow diagram of  FIG. 6 . Any prospective agent for the service must first access the agent registration web page (step SD. If an agent has already registered, it is possible for the agent to log in (step S 2 ) to enable them to register sub-agents (step S 5 ). 
         [0076]    If an agent does not log in (because they are not registered) they enter agent data (step S 3 ) to enable an agent record to be formed in the database  10  (step S 4 ). When an agent registers, they will need to either obtain secured credit, or make a deposit to use the service. The level of credit or level of their deposit will determine the credit available to them for transactions. 
         [0077]    Once an agent is registered, it is possible for the agent to select to register sub-agents for which they will be financially responsible (step S 5 ). If they do not select to register sub-agents, the registration process is terminated (step S 6 ). If the agent selects to register sub-agents (step S 5 ), a web page is generated by the web server  6  for registering sub-agent (step S 7 ). An agent can then select to register daughter sub-agents of a registered sub-agent (step S 8 ). If the agent does not select at this point to register sub-agents of a registered sub-agent, but instead wishes to register a sub-agent, the sub-agent data is entered (step S 9 ) and an agent record is created for the sub-agent as a sub-agent of the agent (step S 10 ). The agent can then select to register daughter sub-agents (step S 11 ). If they do not select and register daughter sub-agents, the registration process is terminated (step S 6 ). If the agent selects to register daughter sub-agents (step S 8  or step S 11 ) the parent sub-agent for the daughter sub-agent is selected (step S 12 ) and daughter sub-agent data is entered (step S 13 ). An agent record is then formed for the daughter sub-agent as a daughter sub-agent of the parent sub-agent (step S 14 ). This process can be repeated for further daughter sub-agents (step S 11 ). 
         [0078]    In this way an agent operating as a master or parent agent can register a hierarchy of sub-agents for which the master or parent agent takes financial responsibility. Such an agent is agent  28  illustrated in  FIG. 5  which has two sub-agents  29  and  33 . Sub-agent  29  has daughter sub-agents  30 ,  31  and  32 . All of these agents  29 ,  30 ,  31 ,  32  and  33  fall under the financial responsibility of the parent agent  28 . 
         [0079]    The process of transferring money from a sending entity to one or more receiving entities will now be described with reference to the flow diagram of  FIGS. 7   a  and  7   b.    
         [0080]    When a sending entity instructs an agent to transfer money to one or more receiving agents, the sending agent logs in to the money transfer system and accesses the money transfer web page provided by the web server  6  (step S 20 ). The sending agent takes the following information from the customer:
       Customer number (if not a new customer)   Sender&#39;s title   Sender&#39;s first name   Sender&#39;s last name   Sender&#39;s date of birth or age   Sender&#39;s full address   Sender&#39;s postcode   Sender&#39;s phone number   Sender&#39;s e-mail   Mode of payment, e.g. cash, draft or bank account   Bank, bank account number, branch, sort code   Where the money is to be sent   The amount to be sent   Paying-in currency (by default this is the local currency of the sending agent)   Paying-out currency   Password he wants the receiver to give to obtain the money   Reasons for sending (required for money laundering regulations), i.e. personal,   family maintenance or foreign tourist   Is this the sender&#39;s money (yes or no)   Recipient&#39;s title   Recipient&#39;s date of birth or age   Receipt&#39;s first name   Recipient&#39;s last name   Recipient&#39;s address   Recipient&#39;s phone number   Total amount to be paid to the sending customer   Pay out method, e.g. cash, cheque or credit card       
 
         [0108]    Thus, the sending and receiving entity data and money transfer data is input (step S 21 ). The exchange rate and commission data is used to determine the sum to be paid by the receiving agent to the receiving entity (step S 22 ). 
         [0109]    During the determination of the exchange rate and the finalization of the transaction by the sending agent, a receipt is issued to the sender. A sender can also see the status of all previous transactions carried out on his behalf. 
         [0110]    The data is sent to and received at the transaction server (step S 23 ). The transaction server adds the sending agent information obtained by virtue of identifying the agent during the log-on sequence (step S 20 ) is added to the received data for the stored transaction data (step S 24 ). The transaction server then determines whether the transaction data identifies more than one receiving entity (step S 25 ). If so, the transaction data is stored as a linked set of transaction records where the transaction records are associated or linked by the sending entity and/or agent and are indexed by the receiving agents and/or entities. If the transaction data identifies only one receiving entity (step S 25 ) the transaction data is stored as a transaction record (step S 27 ). The transaction record or records are then compared to the sending agent&#39;s data and the regulatory data (step S 28 ). If the comparison of the transaction record or records of the regulatory data identifies that the transaction is a suspicious or irregular transaction (step S 29 ), a web page requesting additional transaction data from the sending entity is generated (step S 30 ). Thus the sending entity must provide further data such as passport details, driving license or other acceptable identification. The comparison (step S 28 ) enables a possibly valid but suspicious or irregular transaction to be processed with necessary additional data to aid the detection of money laundering. The additional transaction data is received at the transaction server (step S 31 ) as a result of the sending agent filling in the forms on the web page, and the additional transaction data is entered in the transaction record or records (step S 32 ). 
         [0111]    Once the additional transaction data has been entered in the transaction records, or if the transaction is not a suspicious or irregular transaction, the transaction server then determines whether the transaction causes the credit limit for the sending agent to be exceeded, or whether the agent has been barred from using the service, or whether a money laundering compliance regulation would be broken by the transaction. If so, a web page is generated to inform the sending agent that the money transfer cannot be accepted (step S 34 ), the transaction is then marked as refused in the transaction records (step S 35 ). Thus in this way the transaction server can monitor and control transactions and prevent transactions which would either expose the receiving agent to an unacceable credit risk (because the credit limit of the sending agent has been exceeded or the agent has been barred) or breach money laundering compliance regulations applicable to the transaction. 
         [0112]    If it is determined that the credit limit has not been exceeded for the sending agent, the sending agent is not barred, and that no regulation has been broken (step S 33 ) a web page is generated to inform the sending agent that the transfer is accepted and the transaction number or numbers are displayed (step S 36 ). The transaction server marks the transaction or transactions as pending (step S 37 ) and the receiving agent or agents for the transaction or transactions are notified (step S 38 ). The receiving agent or agents then accesses the web page showing pending transactions for which they are the receiving agent (step S 39 ). The receiving agent or agents then make arrangements to pay the receiving entity or entities and input an indication that the payment or payments have been made (step S 40 ). In order for the receiving agent to pay the receiving entity, the receiving entity must confirm their name, address, telephone number, the amount they expect to receive, from whom he expects to receive the funds, the country from which the funds are expected to come from, a password (if applicable), a form of identification, and a selection of the method of payout. 
         [0113]    The transaction server then updates the transaction record or records to remitted status and records the exchange rate at the time of remittance in the transaction record (step S 41 ). The recording of the exchange rate of the time remittance in the transaction record enables the exchange rate difference for a transaction record, i.e. the spread to be determined. Because the money transfer organization accept payment from the sending entity based on the exchange rate at the time of payment by the sending entity and then make payment to the receiving entity based on the exchange rate at the time of payment, there is a potential exchange rate difference. This is borne by the money transfer organization. This exchange rate difference may result in a profit or a loss. Careful selection of exchange rates used for calculation of the payment to be made by the sending entity need to be used to avoid exchange rate losses. At the end of each day, the sending agent will deposit all money he has received from all customers minus his commission in a bank specified by the money transfer organization. This allows the money transfer organization to credit accounts accordingly, i.e. to transfer funds to receiving agents who have paid money out to receiving entities. Records of the payment of the cash made to the money transfer organization can be entered by the sending entity using the administration interface  114 . 
         [0114]    Once transactions have been completed, using the administration interface, agents can view their account data of previous transactions. This enables agents to affect a netting off against any other agents at any time using the current exchange rates. 
         [0115]      FIG. 8  is a schematic diagram of a money transfer system in accordance with another embodiment of the present invention. The system operates as a hub and spoke money transfer system in which the transaction server  1000  acts as a hub and the master agent&#39;s computer  3000  acts as a spoke. In this embodiment of the present invention, a master agent operating the master agent&#39;s computer  3000  has registered two sub-agents operating sub-agents&#39; computers  4000  and  5000 , each implementing respective web browsers  4000   a  and  5000   a . The agents are all part of an organization  6000 . The master agent is liable for its sub-agents as described hereinabove. 
         [0116]    In this embodiment of the present invention, when a master agent registers as a master agent, the master agent&#39;s computer  3000  is configured as a spoke in the hub and spoke money transfer system. The master agent&#39;s computer receives code for implementing a master agent application  3003  that a database subset  3004  which is a subset of database  1005  in the transaction server  1000  (i.e. the hub). The master agent&#39;s computer  3000  also implements a web browser  3001  and web server  3002 . 
         [0117]    The transaction server  1000  acting as hub money transfer system comprises a web server  1001  implementing Java code stored in the Java code store  1003  and static web page and templates stored in a static web page and templates store  1002 . The database application  1004  acts as an interface between the web server  1001  and the database  1005 . The operation of the transaction server  1000  is substantially the same as described hereinabove for the previous embodiment. 
         [0118]    When a sub-agent is instructed to a receiving entity, if the receiving entity wishes to use a receiving agent having the agent&#39;s computer  7000 , since this is not under the control of the master agent, the sub-agent must use the transaction server  1000  as the hub money transfer system as described hereinabove for the previous embodiment. However, if money is to be transferred from a sending agent operating the sub-agent&#39;s computer  5000  to the agent operating as a receiving agent and operating a sub-agents computer  4000 , the master agent&#39;s computer  3000  can be used as a spoke money transfer system. Since there is no responsibility outside the organization  6000  for the money transfer, the hub money transfer system need not be involved. There is simply a transfer of funds between agents for which the master agent has ultimate liability. Thus, the web browser  5000   a  of the sub-agents computer  5000  can be used by the sending agent to access the web server  3002  at the master agent&#39;s computer  3000 . The master agent application  3003  can then access data within the database subset  3004  in order to complete the transaction to the receiving agent using the sub-agent&#39;s computer  4000 . In this way the transaction is controlled by the master agent application  3003  and the database subset  3004  contains records of local transactions within the organization  6000 . 
         [0119]    In order to ensure that the hub money transfer system implemented by the transaction server  1000  contains an up-to-date global database  1005 , periodically, the database application  1004  implements a procedure to synchronize the database subset  3004  with the database  1005 . 
         [0120]    It can thus be seen that this second embodiment of the present invention enables local transactions to be implemented using a spoke money transfer system implemented under the control of a master agent for transactions between sub-agents of the master agent. 
         [0121]    Although the present invention has been described hereinabove with reference to specific embodiments, it will be apparent to the skilled person in the art that modifications lie within the spirit and scope of the present invention. 
         [0122]    For example, although the currency conversion has been described hereinabove as a direct conversion from the sender&#39;s currency to the receiver&#39;s currency, the present invention encompasses the use of any number of intermediate currencies in the currency conversion process.