A method of authenticating a user for a transaction, the method comprising: prior to a user initiating a transaction with a communication device: receiving, at a server computer, a notification indicative of the communication device associated with the user entering a location within a virtual perimeter, the notification including user identifying data identifying the user of the communication device; in response to receiving the notification and prior to receiving a voice segment from the user, retrieving, via the server computer, a reference for accessing a voice model associated with the user, wherein the voice model is stored in a database, wherein the reference is a pointer to a storage address within the database; and retrieving the voice model stored in the database using the reference; after the user initiates the transaction with the communication device; receiving, at the server computer, a voice segment from the user; comparing, at the server computer, the received voice segment to the voice model; and determining, at the server computer, whether the user is authenticated for the transaction based at least in part on comparing the received voice segment to the voice model. prior to a user initiating a transaction with a communication device: receiving, at a server computer, a notification indicative of the communication device associated with the user entering a location within a virtual perimeter, the notification including user identifying data identifying the user of the communication device; in response to receiving the notification and prior to receiving a voice segment from the user, retrieving, via the server computer, a reference for accessing a voice model associated with the user, wherein the voice model is stored in a database, wherein the reference is a pointer to a storage address within the database; and retrieving the voice model stored in the database using the reference; receiving, at a server computer, a notification indicative of the communication device associated with the user entering a location within a virtual perimeter, the notification including user identifying data identifying the user of the communication device; in response to receiving the notification and prior to receiving a voice segment from the user, retrieving, via the server computer, a reference for accessing a voice model associated with the user, wherein the voice model is stored in a database, wherein the reference is a pointer to a storage address within the database; and retrieving the voice model stored in the database using the reference; after the user initiates the transaction with the communication device; receiving, at the server computer, a voice segment from the user; comparing, at the server computer, the received voice segment to the voice model; and determining, at the server computer, whether the user is authenticated for the transaction based at least in part on comparing the received voice segment to the voice model. receiving, at the server computer, a voice segment from the user; comparing, at the server computer, the received voice segment to the voice model; and determining, at the server computer, whether the user is authenticated for the transaction based at least in part on comparing the received voice segment to the voice model.