VIRTUAL ASSISTANT TRANSFERS

A computer-implemented method includes receiving a request made by a user, via a virtual assistant interface of a remote user device, to transfer funds from a user account to an escrow account of an escrow service. The method also includes establishing a connection to the escrow service to transfer funds to the escrow account and validating, via the virtual assistant interface of the remote user device, authorization of the user to transfer funds from the user account. Additionally, the method includes transferring the funds from the user account to the escrow account. Further, method includes reporting to the user, via the virtual assistant interface of the remote user device, confirmation of transferring the funds to the escrow account.

TECHNICAL FIELD

The present disclosure relates generally to virtual assistant operations and, more particularly (although not necessarily exclusively), to transfer operations using virtual assistant-based technology.

BACKGROUND

Attempting to execute large financial transactions can be a cumbersome endeavor. Some large financial transaction may require certain in-person actions as a prerequisite, such as obtaining a cashier's check. In some instances, attempting to execute a large financial transaction may prompt restrictions from financial institutions. In such circumstances, financial institutions may implement restrictions without informing a customer or require verification before lifting the restrictions. Submitting verification to overcome the restriction may require additional burdensome tasks, such as navigating an automated telephone system. Despite the potentially onerous nature of executing large financial transactions, the obstacles exist for a reason. Fraudulent large financial transactions can be especially damaging to their victims.

SUMMARY

In an example, a non-transitory computer-readable medium includes instructions that are executable by a processing device for causing the processing device to perform operations. The operations include receiving a request made by a user, via a virtual assistant interface of a remote user device, to transfer funds from a user account to an escrow account of an escrow service. The operations also include establishing a connection to the escrow service to transfer funds to the escrow account. Additionally, the operations include validating, via the virtual assistant interface of the remote user device, authorization of the user to transfer funds from the user account. Further, the operations include transferring the funds from the user account to the escrow account. Furthermore, the operations include reporting to the user, via the virtual assistant interface of the remote user device, confirmation of transferring the funds to the escrow account.

In an additional example, a computer-implemented method includes receiving a request made by a user, via a virtual assistant interface of a remote user device, to transfer funds from a user account to an escrow account of an escrow service. The method also includes establishing a connection to the escrow service to transfer funds to the escrow account and validating, via the virtual assistant interface of the remote user device, authorization of the user to transfer funds from the user account. Additionally, the method includes transferring the funds from the user account to the escrow account. Further, method includes reporting to the user, via the virtual assistant interface of the remote user device, confirmation of transferring the funds to the escrow account.

In an additional example, a system includes a processor and a non-transitory computer-readable medium including instructions that are executable by a processing device for causing the processing device to perform operations. The operations include receiving a request made by a user, via a virtual assistant interface of a remote user device, to transfer funds from a user account to an escrow account of an escrow service. The operations also include establishing a connection to the escrow service to transfer funds to the escrow account. Additionally, the operations include validating, via the virtual assistant interface of the remote user device, authorization of the user to transfer funds from the user account. Further, the operations include transferring the funds from the user account to the escrow account. Furthermore, the operations include reporting to the user, via the virtual assistant interface of the remote user device, confirmation of transferring the funds to the escrow account.

DETAILED DESCRIPTION

Certain aspects and examples of the present disclosure relate to transfer operations using virtual assistant-based technology. A virtual assistant may be a software application used to conduct a conversation via text, speech-to-text, or text-to-speech in place of or in addition to direct contact with a live human agent. A virtual assistant may interpret natural language provided by a user to navigate an algorithm that may be arranged to execute a plurality of possible outcomes.

A transaction customer may find themselves in a competitive real-estate market where houses are placed on the market and under contract in a limited amount of time. In such circumstances, the customer may desire securement of funds for an earnest money deposit as fast as possible to avoid losing a property they desire to another buyer. Human agents may not be instantly available to facilitate a transfer of funds from a customer's account to an escrow account. Even if a human agent is available, the human agent's ability to transfer funds may be slowed by obstacles such as navigating their own computer or transcribing account numbers read aloud by the customer. A virtual assistant may enable a customer to execute a transfer of earnest money to an escrow account in a manner more efficient than requesting the transfer through a human agent. A virtual assistant may also be a preferable means of interaction. For example, a customer may be able to maintain a face-to-face conversation with a seller's agent while requesting a transfer via a virtual assistant instead of stepping away to conduct a phone conversation with a human agent.

The virtual assistant may be programmed to respond to a plurality of requests. The customer may request, by written or spoken natural language, a deposit of earnest money into an escrow account. The virtual assistant may respond by requesting the name of the escrow service with which the customer wishes to make the deposit. The virtual assistant may provide an escrow service in the event the customer, the seller's agent, or other appropriate parties have not made the appropriate arrangements for an escrow account. The virtual assistant may request an account number to direct the deposit towards. In the event the account number is not available, the virtual assistant may be able to ascertain the appropriate account based on alternative information such as the name of the seller's agent's firm or the address of the real property for which the earnest money is being deposited. The virtual assistant may request the customer specify which account the customer would like to make the deposit from. The virtual assistant may enable the customer to specify contributions from a combination of accounts to satisfy the deposit. Any questions asked by the virtual assistant to the customer may be answered in typed natural language, spoken commands, or by selecting a graphical interface object such as a button, icon, or drop-down menu.

FIG.1is a block diagram of an example computing device100according to one example of the present disclosure. The computing device100includes a processor102that is communicatively coupled to a memory104. In some examples, the processor102and the memory104may be distributed from (e.g., remote to) one another. The processor102can include one processing device or multiple processing devices. Non-limiting examples of the processor102include a Field-Programmable Gate Array (FPGA), an application-specific integrated circuit (ASIC), a microprocessor, etc. The processor102can execute instructions106stored in the memory104to perform operations. In some examples, the instructions106can include processor-specific instructions generated by a compiler or an interpreter from code written in a suitable computer-programming language, such as C, C++, C#, etc.

The memory104can include one memory or multiple memories. The memory104can be non-volatile and may include any type of memory that retains stored information when powered off. Non-limiting examples of the memory104include electrically erasable and programmable read-only memory (EEPROM), flash memory, or any other type of non-volatile memory. At least some of the memory104can include a non-transitory, computer-readable medium form which the processor102can read instructions106. A computer-readable medium can include electronic, optical, magnetic, or other storage devices capable of providing the processor102with computer-readable instructions or other program code. Non-limiting examples of a computer-readable medium include magnetic disk(s), memory chip(s), ROM, random-access memory (RAM), an ASIC, a configured processor, optical storage, or any other medium from which a computer processor can read the instructions106.

The memory104may also contain escrow information108and customer account information110. Escrow information108may include information for transferring funds into an escrow account, such as the account number or the escrow service holding the account. Escrow information108may also include information related to finding an escrow service for the customer. Customer account information110may include information related to accessing the customer's account, such as account numbers and passwords. Customer account information110may also include information about the customer's account, such as account balances or holds on the customer's accounts.

The memory104may contain a virtual assistant module107. The virtual assistant module107may guide a user through an algorithm related to an escrow transfer. The virtual assistant module107may guide a user through other algorithms related to other banking services, such as transfers, deposits, or inquiries about transactions. The virtual assistant module107may recognize natural language in the form of text or voice commands and assign inputs, such as numerical values or decision node values, to the natural language. Example decision node values may include a type of banking service requested by the virtual assistant module107, such as a transfer, a deposit, or an inquiry about transaction.

FIG.2is an example of a user interface200(UI) for a virtual assistant module107, according to some aspects of the present disclosure. The user may request204a transfer of funds within the UI200. The virtual assistant module107may respond206,208with a query for relevant information. In the present example, the virtual assistant module107requests if the information is available, to which the user responds affirmatively210. The virtual assistant module107requests212the name of an escrow company and the user responds with the name214of an escrow company. In other examples, the virtual assistant module107may respond with different statements or different questions based on a different request from the user, prior interactions with the user, or the user's personal financial information.

The virtual assistant module107informs216the user information related to the escrow company named by the user is being searched for. Messages of a similar character, which may update a user on a process without necessarily asking a question or providing information, can be helpful for demonstrating to the user a process is underway. The virtual assistant module107informs218the user that a connection exists between the user's bank and the escrow company. In other examples, the virtual assistant module107may respond by informing the user a connection may not be possible, requesting more information to better establish a connection for the user, or suggesting a different entity for the transfer.

The virtual assistant module107requests220a transfer account, to which the user responds222with an account number. The virtual assistant module107responds224that an attempt to connect to the escrow company is being made. In other examples, the user may respond with an invalid account number. In some such examples, the virtual assistant module107may respond by informing the user the account number is invalid and may reissue a request for an account number.

The virtual assistant module107requests226a user bank account from which to withdraw funds. The user responds228with an escrow savings account. In some examples, the user may have previously established a bank account explicitly accessible by the virtual assistant module107. In some examples, the virtual assistant module107may be able to guide the user through a series of questions that may allow a user's bank account to become accessible to the virtual assistant module107.

The virtual assistant module107confirms230the account specified by the user by displaying a portion of the account number. The user confirms232the account displayed is the correct account. The virtual assistant module107requests234the amount the user wishes to transfer from their account. The user responds236with an amount. The virtual assistant module107responds238that an attempt to transfer is being made, confirms240the success of the transfer, and informs242the user they will receive an email detailing the transaction. The user responds244to the virtual assistant module107, prompting a response246from the virtual assistant module107that may be appropriate for the circumstances regarding the transfer.

FIG.3is a flow chart of an example of a process for performing a virtual assistant transaction, according to some aspects of the present disclosure. In block300, a computing device100may receive a request made by a user, via the virtual assistant module107, to transfer earnest money to an escrow account. The earnest money may be for the purchase of real property. The earnest money may be for the purchase of a vehicle. The earnest money may be for any other suitable transaction. In some examples, the computing device100may respond to a request made by a user, via the virtual assistant module107, to transfer funds other than earnest money to an escrow account. Example transfers of funds other than earnest money may be transferring funds into a settlement escrow account, pursuant to a court order.

In block302, the computing device100may ask the user, via the virtual assistant module107, to identify an escrow service associated with the escrow account. In some examples, the computing device100may consult stored escrow information108to provide the user with an escrow service. The escrow information108may be able to provide an escrow service based on at least one question posed to the user, via the virtual assistant module107, about the nature of the earnest money transfer request. For example, the virtual assistant module107may ask the user to identify a buyer's agent, a seller's agent, real estate firms of the buyer's agent or the seller's agent, an address of the real property being purchased, or other information pertinent to providing an appropriate escrow service. The computing device100may store the escrow service provided to the user or provided by the user within the escrow information108.

In block303, the computing device100may establish, via the virtual assistant module107, a connection to the escrow service. The connection may depend on a history between the bank of the user and the escrow service. The connection may be encrypted.

In block304, the computing device100may ask the user, via the virtual assistant module107, for an account number of the escrow account. In some examples, the computing device100may provide an escrow account number when providing an escrow service. The account number may be stored within the escrow information108. Upon receiving the escrow account number, the computing device100may have sufficient information to ask the user, via the virtual assistant module107, questions regarding terms of the earnest money transfer. The virtual assistant module107may ask whether the user will waive a clawback provision. A clawback provision may allow the user to recover their earnest money in some situations. For example, a clawback provision may allow a user to recover their earnest money if a house they are in the process of purchasing does not pass an inspection. The virtual assistant module107may ask the user whether the funds held in escrow can be invested.

In block306, the computing device100may ask the user, via virtual assistant module107, to identify a user account from which to transfer the funds. For example, the virtual assistant module107may ask the user to select a checking account or a savings account. In some examples, the virtual assistant module107may simply ask the user which account they would like to withdraw from, and the user can respond by naming the account. The computing device100may have information related to the user's accounts stored in customer account information110. In such an example, the user may not need to name the exact account number or perfectly describe the account. The user may only need to sufficiently describe the account. For example, the user may respond “savings account” to describe a money market savings account. The virtual assistant module107may ask clarifying questions if the response is unclear. The virtual assistant module107may ask for authenticating information related to the account identified by the user if the account has a hold or other restriction currently applied to it. The virtual assistant module107may ask for authenticating information for other suitable reasons.

In block307, the computing device100may verify, via the virtual assistant module107, authorization of the user to transfer funds from the user account. In an example, verifying the authorization of the user may include evaluating transfer rules associated with the user account to confirm that the transfer is authorized and confirming an identity of the user through the virtual assistant module107. Rules associated with the user account may include a maximum dollar amount for an individual transfer, an indication of users that are authorized to transfer money from the user account, an indication that funds from the user account can or cannot be used in an earnest money transfer, an indication that the virtual assistant module107is able to initiate a funds transfer from the user account, any combination thereof, or any additional rules that may be relevant.

Additionally, the identity of the user may be confirmed through a biometric screening performed on the user through the virtual assistant module107. For example, the biometric screening can include voice verification, electronic signature verification, image verification, or a combination thereof. When the user identity is confirmed, and the user account rules indicate that the user is authorized to perform the transfer, then the transfer of funds to the escrow account may be attempted.

In block308, the computing device100may attempt to transfer funds from the account identified by the user to the escrow account that was either provided by the user or provided to the user. The computing device100may transfer funds if the user has a sufficient balance, has accepted the terms of the earnest money transfer, or if other conditions are met. The computing device100may not transfer funds from the account identified by the user if certain conditions are not met, such as insufficient funds or rejected terms.

In block310, the computing device100may report to the user, via virtual assistant module107, the results of the attempted transfer from block308. The virtual assistant module107may report a successful transfer if the transfer was successful or report a failed transfer if the transfer was unsuccessful. The virtual assistant module107may report a reason for the transfer failing. Example reasons for a failed transfer may be insufficient funds, a server timeout, or a loss of a secure connection.

FIG.4is a flow chart of an example of a process for providing account access, according to some aspects of the present disclosure. In block404, a computing device100may respond to a request made by a user for enabling account access by a virtual assistant module107. The request may be for enabling access to a checking account, a savings account, a money market account, a certificate of deposit account, or any other suitable account. The request may be for enabling access to an account created for a specific purpose. For example, the request may be for enabling access to an account with the express purpose of holding earnest money for transfer into an escrow account. The request may be for enabling access to a line of credit, such as a credit card. The request may be for enabling access to an investment account, such as a 401(k) or an individual retirement account. The request may be for enabling access to an account unrelated to banking, such as an account associated with a utility company, an internet service provider, or an online gaming account. The computing device100may respond by providing the user with instructions necessary to permit account access to a virtual assistant module107. For example, the computing device100may ask the user security questions, request personal information from the user, or connect the user with a live agent.

In block402, the computing device100may request a preferred mode of confirmation for access by the virtual assistant module107. The preferred mode of confirmation may be employed when the user attempts to access the account by virtual assistant module107. For example, the user may inform the computing device their preferred mode of confirmation is facial recognition, biometric scan, a password, a voice password, a gesture password recognized by a touchscreen, or any other suitable mode of confirmation.

In block404, the computing device100may enable account access by the virtual assistant module107. After this step, the user may be able to access their specified account by the virtual assistant module107.