A method for biometric authentication and securely handling, by a software service provider, an operation between a first visitor and an operator of a hardware terminal, the method comprising:
- creating a first user account for a first user, wherein creating the first user account comprises:
- receiving, by the software service provider, first data wherein the first data comprises identification document information associated with the first user;
- creating, by the software service provider, an account identifier for the first user;
- storing, by the software service provider, in association with the first user account, the account identifier in an at least one database or datastore;
- establishing a secure session between the software service provider and the hardware terminal;
- wherein the secure session is established using at least a secure socket layer (SSL) or transport layer security (TLS) protocol;
- wherein the secure session is established using a secured connection using a virtual private network (VPN);
- performing a first processing of the operation, wherein performing the first processing of the operation comprises:
- receiving, by the software service provider, an encrypted first payload;
- wherein the encrypted first payload is produced by encrypting a first payload, the first payload produced by the hardware terminal, and wherein the first payload comprises a phone number, the phone number received from the first visitor at the hardware terminal;
- wherein the encrypted first payload is communicated to the software service provider from the hardware terminal during the secure session using the secured connection;
- identifying, by the software service provider, an IP address associated with the VPN;
- allowing, by software service provider, traffic from the VPN based on the IP address;
- and
- decrypting, by the software service provider, the encrypted first payload;
- sending, by the software service provider, an SMS verification code to the phone number;
- performing a second processing of the operation, wherein performing the second processing of the operation comprises:
- receiving, by the software service provider, an encrypted second payload;
- wherein the encrypted second payload is produced by encrypting a second payload, the second payload produced by the hardware terminal;
- wherein the encrypted second payload is communicated to the software service provider from the hardware terminal during the secure session using the secured connection;
- identifying, by the software service provider, the IP address associated with the VPN;
- allowing, by software service provider, traffic from the VPN based on the IP address;
- and
- decrypting, by the software service provider, the encrypted second payload;
- identifying a first security factor associated with the first visitor, wherein the identifying the first security factor associated with the first visitor comprises:
- the software service provider forwarding a first HTTP/HTTPS request to at least one of a set of third party service providers,
- wherein the request is an age verification request, and
- wherein the first request comprises:
- a third payload;
- wherein the third payload comprises at least a portion of the first data;
- the software service provider receiving a first third party response from at least one of the set of third party service providers;
- performing a third processing of the operation, wherein performing the third processing of the operation comprises:
- receiving, by the software service provider, an encrypted fourth payload;
- wherein the encrypted fourth payload is produced by encrypting a fourth payload, the fourth payload produced by the hardware terminal, and wherein the fourth payload comprises at least second data;
- wherein the encrypted fourth payload is communicated to the software service provider from the hardware terminal during the secure session using the secured connection;
- identifying, by the software service provider, the IP address associated with the VPN;
- allowing, by software service provider, traffic from the VPN based on the IP address;
- and
- decrypting, by the software service provider, the encrypted fourth payload;
- identifying a second security factor associated with the first visitor, wherein the identifying the second security factor associated with the first visitor comprises:
- the software service provider forwarding a second HTTP or HTTPS request to at least one of the set of third party service providers, wherein the second request comprises:
- a fifth payload;
- wherein the fifth payload comprises at least a portion of the second data;
- receiving a second third party response from at least one of the set of third party service providers;
- identifying a facial recognition factor associated with the first visitor, wherein the identifying the facial recognition factor associated with the first visitor comprises:
- receiving, by the software service provider, an encrypted sixth payload;
- wherein the encrypted sixth payload is produced by encrypting a sixth payload, the sixth payload produced by the hardware terminal, and wherein the sixth payload comprises at least one parameter associated with image or video data associated with the first customers face;
- wherein the encrypted sixth payload is communicated to the software service provider from the hardware terminal during the secure session using the secured connection;
- identifying, by the software service provider, the IP address associated with the VPN;
- allowing, by software service provider, traffic from the VPN based on the IP address;
- and
- decrypting, by the software service provider, the encrypted sixth payload;
- determining, by the software service provider, a score associated with the first visitor based on the first factor and the second factor;
- in response to determining that the score is less than a threshold score or equal to an acceptable score:
- sending, by the software service provider, an encrypted seventh payload to the hardware terminal;
- wherein the encrypted seventh payload is produced by encrypting a seventh payload, the seventh payload produced by the software service provider, and wherein the seventh payload comprises at least a message to allow a completing of the operation;
- wherein the encrypted seventh payload is communicated to the hardware terminal from the software service provider during the secure session using the secured connection;
- logging, by the software service provider, the operation details in the at least one database or datastore wherein the logging comprises at least:
- storing, in association with the account, an operation parameter;
- storing, in association with the account, an operation date or time;
- and
- storing, in association with the account, the IP address associated with the operation.