KR102109875B1 - 비컨 장치에 의해 방송되는 회전 코드들을 통해 사용자 장치 상태 식별 - Google Patents

비컨 장치에 의해 방송되는 회전 코드들을 통해 사용자 장치 상태 식별 Download PDF

Info

Publication number
KR102109875B1
KR102109875B1 KR1020187019181A KR20187019181A KR102109875B1 KR 102109875 B1 KR102109875 B1 KR 102109875B1 KR 1020187019181 A KR1020187019181 A KR 1020187019181A KR 20187019181 A KR20187019181 A KR 20187019181A KR 102109875 B1 KR102109875 B1 KR 102109875B1
Authority
KR
South Korea
Prior art keywords
user
beacon device
check
beacon
user computing
Prior art date
Application number
KR1020187019181A
Other languages
English (en)
Other versions
KR20180091872A (ko
Inventor
사시칸쓰 찬드라세카란
미첼 팔체프스키
바로우 치틸리언
Original Assignee
구글 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구글 엘엘씨 filed Critical 구글 엘엘씨
Publication of KR20180091872A publication Critical patent/KR20180091872A/ko
Application granted granted Critical
Publication of KR102109875B1 publication Critical patent/KR102109875B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S1/00Beacons or beacon systems transmitting signals having a characteristic or characteristics capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters; Receivers co-operating therewith
    • G01S1/02Beacons or beacon systems transmitting signals having a characteristic or characteristics capable of being detected by non-directional receivers and defining directions, positions, or position lines fixed relatively to the beacon transmitters; Receivers co-operating therewith using radio waves
    • G01S1/04Details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/202Interconnection or interaction of plural electronic cash registers [ECR] or to host computer, e.g. network details, transfer of information from host to ECR or from ECR to ECR
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/22Payment schemes or models
    • G06Q20/24Credit schemes, i.e. "pay after"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3224Transactions dependent on location of M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/405Establishing or using transaction specific rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • H04L43/106Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • H04L67/18
    • H04L67/22
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Abstract

사용자가 사용자 장치로 위치를 입력한다. 비컨 장치는 상기 위치에서 로컬 무선 네트워크를 통해 하드웨어 식별자를 포함하는 제1 비컨 장치 코드를 방송한다. 사용자 장치의 서비스 애플리케이션은 제1 비컨 장치 하드웨어 식별자를 수신하고, 사용자의 체크인 상태를 로그하고, 서비스 제공자 시스템에 그 체크인 상태를 전송한다. 상기 비컨 장치는 미리결정된 기간 후에, 상기 로컬 무선 네트워크를 통해 상기 위치에서 방송하기 위한 난수를 포함하는 후속 비컨 장치 코드를 생성한다. 상기 비컨 장치에 의해 방송된 후속 비컨 장치 코드를 수신하는 것에 응답하여, 상기 사용자 장치는 상기 네트워크를 통해 상기 서비스 제공자 시스템에 후속 체크인 상태를 로그 및 전송한다. 상기 서비스 제공자 시스템은 사용자 장치의 체크인 상태에 따라 상기 위치에서 사용자 장치 또는 다른 장치에 서비스들을 제공한다.

Description

비컨 장치에 의해 방송되는 회전 코드들을 통해 사용자 장치 상태 식별
본 개시는 위치들에서 사용자 컴퓨팅 장치들의 위치를 로깅(logging)하는 것에 관한 것으로, 특히 특정 위치들에 설치된 비컨 장치들로부터 비컨 장치 하드웨어 식별자들을 수신하여 사용자 컴퓨팅 장치들의 위치를 로깅하는 것에 관한 것이다.
머천트 시스템(merchant system)들, 지불 처리 시스템들 및 사용자들에게 서비스들을 제공하는 다른 서비스 제공 시스템들은 사용자 컴퓨팅 장치와 연관된 고객이 위치와 연관된 서비스들을 제공하기 전에 그 위치에 있는지를 결정하도록 사용자 컴퓨팅 장치의 체크인 상태를 활용할 수 있다. 서비스 제공 시스템은 사용자 컴퓨팅 장치에 서비스 애플리케이션을 제공할 수 있고, 그리고 상기 사용자 컴퓨팅 장치는 무선 통신 채널을 통해 비컨 장치로부터 하드웨어 식별자를 수신하여 상기 위치에 설치된 비컨 장치를 상기 사용자 컴퓨팅 장치를 통해 검출함으로써 상기 서비스 애플리케이션을 통해 체크인 상태를 개시할 수 있다. 상기 서비스 제공 시스템은 상기 비컨 장치를 검출하는 사용자 컴퓨팅 장치에 응답하여 상기 애플리케이션으로부터 체크인 상태 신호를 수신할 수 있다. 상기 사용자 컴퓨팅 장치는 상기 위치에서 상기 비컨 장치를 재검출하는 것에 응답하여 미리결정된 시간 간격들로 상기 서비스 제공 시스템에 상기 체크인 상태 신호를 제공할 수 있다. 상기 서비스 제공 시스템은 상기 시스템이 사용자 컴퓨팅 장치로부터 체크인 상태 신호들을 계속 수신하면 상기 사용자 컴퓨팅 장치에 대한 체크인 상태를 계속 유지할 수 있다. 그러나, 현재, 일부 사용자 컴퓨팅 장치 운영 환경은 운영 환경의 백그라운드에서 운영하는 서비스 애플리케이션들이 특정 비컨 장치로부터 데이터를 초기에 수신한 후에 특정 비컨 장치를 연속적으로 검출할 수 없다는 점에서 제약을 받는다.
본 발명의 기술들은 특정 비컨 장치의 하드웨어 식별자를 주기적으로 변경시킴으로써 사용자 컴퓨팅 장치 운영 시스템의 백그라운드에서 동작하는 애플리케이션에 의해 위치에 있는 특정 비컨 장치를 반복적으로 검출할 수 있는 컴퓨터로 구현되는 방법을 제공한다. 사용자는 사용자 컴퓨팅 장치를 통해 서비스 제공자 시스템과 계정을 설정하고, 상기 서비스 제공자 시스템과 연관된 서비스 애플리케이션을 네트워크를 통해 사용자 컴퓨팅 장치에 다운로드/설치한다. 상기 서비스 제공자 시스템과 연관된 시스템 또는 상기 서비스 제공자 시스템은 위치에 설치된 비컨 장치와 연관된다. 사용자는 사용자 컴퓨팅 장치에서 운영하는 서비스 애플리케이션을 통해 그 서비스 애플리케이션에 로그인(sign)한다. 일 예에서, 사용자가 서비스 애플리케이션에 로그인하면, 그 서비스 애플리케이션은 사용자 컴퓨팅 장치의 운영 시스템의 포어그라운드(foreground)에서 동작한다. 이 예에서, 사용자가 사용자 컴퓨팅 장치상의 다른 애플리케이션을 선택하면, 상기 서비스 애플리케이션은 상기 운영 시스템의 백그라운드에서 동작하는 반면, 다른 애플리케이션은 상기 운영 시스템의 포어그라운드에서 동작한다. 다른 예에서, 사용자 컴퓨팅 장치는 사용자 컴퓨팅 장치의 사용자 인터페이스가 비활성화되고, 상기 서비스 애플리케이션이 상기 사용자 컴퓨팅 장치의 운영 시스템의 백그라운드에서 동작하는 슬립 모드 또는 다른 절전 모드에서 동작한다. 상기 사용자는 상기 설치된 비컨 장치와 연관된 위치를 사용자 컴퓨팅 장치로 입력한다. 상기 비컨 장치는 로컬 무선 네트워크를 통해 상기 위치에서 제1 비컨 장치 하드웨어 식별자 및 다른 데이터를 방송한다. 상기 사용자 컴퓨팅 장치 운영 시스템의 백그라운드에서 동작하는 상기 서비스 애플리케이션은 상기 제1 비컨 장치 하드웨어 식별자 및 다른 데이터를 그 위치에서 로컬 무선 네트워크를 통해 상기 비컨 장치로부터 수신한다. 상기 비컨 장치 하드웨어 식별자를 수신하는 것에 응답하여, 상기 사용자 컴퓨팅 장치 운영 시스템의 백그라운드에서 동작하는 상기 서비스 애플리케이션은 상기 위치에서의 사용자의 체크인 상태를 로그(log)하고, 상기 네트워크를 통해 상기 서비스 제공자 시스템에 체크인 상태 신호를 전송한다. 미리결정된 기간 동안 상기 제1 비컨 장치 하드웨어 식별자를 방송한 후에, 상기 비컨 장치는 예를 들어, 난수 발생기를 통해 후속 비컨 장치 하드웨어 식별자를 통해 생성하고, 로컬 무선 네트워크를 통해 상기 위치의 다른 데이터와 함께 상기 후속 비컨 장치 하드웨어 식별자를 방송한다. 예를 들어, 각각의 미리결정된 기간이 경과 한 후에, 상기 비컨 장치는 새로운 비컨 장치 하드웨어 식별자를 랜덤하게 생성하여 상기 다른 데이터와 함께 상기 위치에서 방송한다. 상기 사용자 컴퓨팅 장치 운영 시스템의 백그라운드에서 동작하는 상기 서비스 애플리케이션은 상기 후속 비컨 장치 하드웨어 식별자 및 상기 다른 데이터를 상기 위치에서 상기 로컬 무선 네트워크를 통해 상기 비컨 장치로부터 수신한다. 상기 비컨 장치로부터 상기 후속 비컨 장치 하드웨어 식별자를 수신하는 것에 응답하여, 상기 사용자 컴퓨팅 장치 운영 시스템의 백그라운드에서 동작하는 상기 서비스 애플리케이션은 상기 위치에서 상기 사용자의 후속 체크인 상태를 로그하고, 후속 체크인 상태 신호를 상기 네트워크를 통해 상기 서비스 제공자 시스템에 전송한다. 상기 서비스 제공자 시스템은 상기 위치의 사용자 컴퓨팅 장치 또는 다른 컴퓨팅 장치에 서비스들 또는 데이터를 제공할 수 있는 반면, 상기 서비스 제공자 시스템은 상기 위치에서 상기 사용자의 체크인 상태를 유지할 수 있다. 상기 서비스 제공자 시스템은 상기 서비스 제공자 시스템이 이전 체크인 상태 신호를 상기 사용자 컴퓨팅 장치로부터 수신한 후에 미리 결정된 시간 길이 내에 상기 사용자 컴퓨팅 장치로부터 후속 체크인 상태 신호를 수신하지 않으면 체크 아웃 또는 체크-인 되지 않은 상태를 로그할 수 있다.
본 명세서에 기재된 소정의 다른 예시적인 양태들에서, 특정 비컨 장치의 하드웨어 식별자를 주기적으로 변경시킴으로써 사용자 컴퓨팅 장치 운영 시스템의 백그라운드에서 동작하는 애플리케이션에 의해 위치에 있는 특정 비컨 장치를 반복적으로 검출할 수 있게 하는 시스템들 및 컴퓨터 프로그램 제품들이 제공된다.
실시예들의 양태들 및 다른 양태들, 목적들, 특징들 및 장점들은 예시된 실시예들에 대한 다음의 상세한 설명을 고려하면 당업자에게 명백해질 것이다.
도 1은 특정 예들에 따라, 비컨 장치의 하드웨어 식별자를 주기적으로 변경하여 사용자 컴퓨팅 장치 운영 시스템의 백그라운드에서 동작하는 지불 애플리케이션에 의해 위치에서 비컨 장치의 반복 검출을 가능하게 하는 시스템을 나타내는 블록도이다.
도 2는 특정 예들에 따라, 비컨 장치의 하드웨어 식별자를 주기적으로 변경함으로써 사용자 컴퓨팅 장치 운영 시스템의 백그라운드에서 동작하는 지불 애플리케이션에 의해 위치에서 비컨 장치의 반복적인 검출을 가능하게 하는 방법을 도시하는 블록 흐름도이다.
도 3은 특정 예들에 따라, 계정 관리 시스템에 계정을 사용자가 등록하는 방법을 도시하는 블록 흐름도이다.
도 4는 특정 예들에 따라, 머천트 시스템에 의해 계정 관리 시스템에 계정을 등록하고, 머천트 시스템 위치에 하드웨어를 설치하는 방법을 도시하는 블록 흐름도이다.
도 5는 특정 예들에 따라, 사용자 컴퓨팅 장치에 의해, 머천트 비컨 장치에 의해 방송된 머천트 비컨 장치 코드를 수신하고, 계정 관리 시스템에 체크인 신호를 전송하는 방법을 도시하는 블록 흐름도이다.
도 6은 특정 예들에 따라, 지불 애플리케이션이 사용자 컴퓨팅 장치 운영 시스템의 백그라운드에서 동작하는 동안 머천트 비컨 장치에 의해 방송된 머천트 비컨 식별자를 사용자 컴퓨팅 장치가 수신하고, 후속 체크인 신호를 계정 관리 시스템에 전송하는 방법을 도시하는 블록 흐름도이다.
도 7은 특정 예들에 따라, 계정 관리 시스템에 의해 사용자 계정에 대한 체크인 상태를 모니터링하는 방법을 도시하는 블록 흐름도이다.
도 8은 특정 예들에 따라, 머천트 시스템 POS(point of sale) 장치에서의 트랜잭션을 사용자에 의해 개시하는 방법을 도시하는 블록 흐름도이다.
도 9는 특정 예들에 따라, 계정 관리 시스템에 의해 트랜잭션을 처리하기 위한 방법을 도시하는 블록 흐름도이다.
도 10은 특정 예들에 따른 컴퓨팅 머신 및 모듈을 도시하는 블록도이다.
개요
도 1을 참조하면, 본 명세서에 기술된 예들은 특정 예들에 따라, 비컨 장치(120)의 하드웨어 식별자를 주기적으로 변경함으로써 사용자 컴퓨팅 장치(110) 운영 시스템의 백그라운드에서 동작하는 서비스 애플리케이션(113)에 의한 위치에서 비컨 장치(120)의 반복적인 검출을 가능하게 하는 컴퓨터로 구현되는 기술들을 제공한다.
예를 들어, 사용자(101)는 사용자 컴퓨팅 장치(110)를 통해 서비스 제공자 시스템(130)과 계정을 설정하고, 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)에 서비스 제공자 시스템(130)과 연관된 서비스 애플리케이션(113)을 다운로드/설치한다. 일 예에서, 사용자(101)는 서비스 제공자 시스템(130)에 등록한다. 예를 들어, 사용자(101)는 사용자(101)와 연관된 사용자 컴퓨팅 장치(110)를 통해 서비스 제공자 시스템 웹사이트(139)에 액세스한다. 사용자(101)는 서비스 제공자 시스템(130)에 등록하고, 사용자 컴퓨팅 장치(110)상에 서비스 애플리케이션(113)을 다운로드한다. 일 예에서, 사용자(101)는 금융 계정 데이터와 같은 서비스 애플리케이션(113)을 통해 서비스 제공자 시스템(130)을 통해 사용자(101) 계정에 데이터를 업로드한다.
예를 들어, 서비스 제공자 시스템(130) 또는 머천트 시스템과 같은 서비스 제공자 시스템(130)과 연관된 시스템은 위치에 설치된 하나 이상의 비컨 장치(120)를 포함한다. 예를 들어, 머천트는 머천트의 매장 위치와 같은 머천트 시스템 위치에 하나 이상의 비컨 장치(120)를 설치한다. 이 예에서, 머천트 및/또는 서비스 제공자 시스템(130)은 무선 통신 네트워크, 예컨대 블루투스 저에너지("BLE") 네트워크를 통해 각각의 머천트 비컨 장치(120) 하드웨어 식별자를 방송할 위치에 각각의 비컨 장치(120)를 설정한다. 예를 들어, 상기 하드웨어 식별자는 각각의 비컨 장치(120)와 연관된 미디어 액세스 제어 어드레스("MAC 어드레스") 또는 다른 하드웨어 식별자를 포함한다. 특정 예들에서, 머천트 및/또는 서비스 제공자 시스템(130)은 하나 이상의 비컨 장치들(120)에 추가하여, 하나 이상의 POS 장치들(160), 하나 이상의 카메라 장치들(150) 및/또는 하나 이상의 다른 컴퓨팅 장치들을 그 위치에 설치한다.
사용자(101)는 사용자 컴퓨팅 장치(110)상의 서비스 애플리케이션(113)에 로그인하고, 상기 설치된 비컨 장치와 연관된 위치를 입력한다. 일 예에서, 사용자(101)가 서비스 애플리케이션(113)에 로그인할 때, 서비스 애플리케이션(113)은 사용자 컴퓨팅 장치(110)의 운영 시스템의 포어그라운드에서 동작한다. 이 예에서, 사용자(101)가 사용자 컴퓨팅 장치(110)상의 다른 애플리케이션을 선택하면, 서비스 애플리케이션(113)은 상기 포어그라운드에서의 동작을 멈추고 상기 운영 시스템의 백그라운드에서 동작하기 시작하는 반면, 상기 다른 애플리케이션은 사용자 컴퓨팅 장치(110)의 상기 운영 시스템의 포어그라운드에서 동작한다. 다른 예에서, 사용자 컴퓨팅 장치(110)는 사용자 컴퓨팅 장치의 사용자 인터페이스(111)가 비활성화되고 그리고 서비스 애플리케이션(113)이 사용자 컴퓨팅 장치(110)의 운영 시스템의 백그라운드에서 동작하는 슬립 모드 또는 다른 절전 모드에서 동작한다. 일 예에서, 사용자 컴퓨팅 장치(110)상의 단 하나의 애플리케이션만이 한 번에 상기 포어그라운드에서 동작할 수 있다. 이 예에서, 상기 백그라운드에서 동작하는 애플리케이션들은 처리 능력들이 제한적이지만, 상기 포어그라운드에서 동작하는 애플리케이션은 사용자 컴퓨팅 장치(110)상에서 자유롭게 실행될 수 있다. 특히, 특정 비컨 장치(120)가 동일한 MAC 어드레스를 방송하기 때문에, 상기 운영 시스템의 백그라운드에서 실행하는 서비스 애플리케이션(113)은 그 특정 비컨 장치(120)를 계속해서 검출하지 못할 수 있다. 서비스 애플리케이션(113)은 방송된 MAC 어드레스에 기초하여 특정 비컨 장치(120)를 초기에 검출한다. 그 후, 상기 서비스 애플리케이션은 특정 비컨 장치의 MAC 어드레스와는 다른 비컨 장치들의 MAC 어드레스들만을 검출한다. 사용자(101)는 상기 설치된 비컨 장치(120)와 연관된 위치를 입력한다. 예를 들어, 사용자(101)는 사용자 컴퓨팅 장치(110)로 상기 위치를 입력한다. 일 예에서, 사용자(101)는 상기 위치에서 비컨 장치(120)의 거리 내에서 휴대하며, 상기 거리는 비컨 장치(120)의 검출 범위 이내이다. 일 예에서, 상기 위치의 비컨 장치(120)는 그 위치에서의 블루투스 저에너지("BLE") 네트워크(180) 또는 그 위치에서의 다른 무선 네트워크를 통해 그 위치에 제1 비컨 장치(120) 하드웨어 식별자 및 다른 데이터를 방송한다. 일 예에서, 비컨 장치(120)는 예를 들어 블루투스 네트워크 또는 근거리 통신("NFC") 네트워크와 같은 다른 유형의 로컬 무선 네트워크를 통해 그 위치에서 상기 하드웨어 식별자 및 다른 데이터를 방송한다. 일 예에서, 상기 다른 데이터는 비컨 장치(120) 이름, BLE 네트워크(180) 연결 이름, 또는 다른 데이터를 포함한다.
일 예에서, 사용자 컴퓨팅 장치(110) 운영 시스템의 백그라운드 또는 포어그라운드에서 동작하는 서비스 애플리케이션(113)은 상기 위치에서의 BLE 네트워크(180) 또는 다른 무선 네트워크를 통해 비컨 장치(120)로부터 상기 제1 비컨 장치(120) 하드웨어 식별자 및 다른 데이터를 수신한다. 비컨 장치(120)의 하드웨어 식별자를 수신한 것에 응답하여, 서비스 애플리케이션(113)은 상기 위치에서 사용자(101)의 체크인 상태를 기록하고, 네트워크(170)를 통해 서비스 제공자 시스템(130)에 체크인 상태 신호를 전송한다. 일 예에서, 서비스 제공자 시스템(130)은 비컨 장치(120)와 연관된 상기 위치에서 현재 체크인 된 현재 사용자 컴퓨팅 장치(110)의 로그를 유지한다. 미리 결정된 기간 동안 상기 제1 비컨 장치(120) 하드웨어 식별자를 방송한 후, 비컨 장치(120)는 난수 생성기(123)를 통해 후속 비컨 장치(120) 하드웨어 식별자를 생성하고, BLE 네트워크(180) 또는 다른 로컬 무선 네트워크를 통해 그 위치에서 다른 데이터와 함께 상기 후속 비컨 장치(120) 하드웨어 식별자를 방송한다. 예시적인 비컨 장치(120) 하드웨어 식별자는 랜덤하게 생성된 연속성의 영숫자 및/또는 기호 문자들을 포함한다. 예를 들어, 각각의 미리결정된 기간이 경과한 후에, 상기 비컨 장치는 새로운 비컨 장치(120) 하드웨어 식별자를 랜덤하게 생성하여 상기 위치에서 BLE 네트워크(180) 또는 다른 로컬 무선 네트워크를 통해 다른 데이터와 함께 그 위치에서 방송한다.
사용자 컴퓨팅 장치(110) 운영 시스템의 백그라운드에서 동작하는 서비스 애플리케이션(113)은 그 위치의 BLE 네트워크(180) 또는 다른 로컬 무선 네트워크를 통해 비컨 장치(120)로부터 후속 비컨 장치(120) 하드웨어 식별자 및 다른 데이터를 수신한다. 비컨 장치(120)로부터 후속 비컨 장치(120) 하드웨어 식별자를 수신하는 것에 응답하여, 사용자 컴퓨팅 장치(110) 운영 시스템의 백그라운드에서 동작하는 서비스 애플리케이션(113)은 상기 위치에서 사용자(101)의 후속 체크인 상태를 로그하고, 네트워크(170)를 통해 후속 체크인 상태 신호를 서비스 제공자 시스템(130)에 전송한다. 서비스 제공자 시스템(130)은 상기 위치에서 사용자 컴퓨팅 장치(110) 또는 다른 컴퓨팅 장치에 서비스들 또는 데이터를 제공할 수 있지만, 서비스 제공자 시스템(130)은 그 위치에서 사용자(101)의 체크인 상태를 유지할 수 있다. 상기 서비스 제공자 시스템은 그 서비스 제공자 시스템이 사용자 컴퓨팅 장치(110)로부터 이전 체크인 상태 신호를 수신한 후 임계 시간 내에 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)로부터 후속 체크인 상태 신호를 수신하지 못하면, 체크 아웃 또는 비체크인 상태(not-checked-in status)를 로그할 수 있다.
일 예에서, POS 장치(160)(point of sale device)는 사용자(101)가 현재 그 위치에서 체크인 되었으면 서비스 제공자 시스템(130)과 연관된 데이터를 사용하여 트랜잭션만 처리할 수 있다. 다른 예에서, POS 장치(160)는 사용자(101)가 그 위치에서 현재 체크인되지 않은 경우 서비스 제공자 시스템(130)과 연관된 데이터를 사용하여 트랜잭션을 처리할 수 없다. 일 예에서, POS 장치(160)는 POS 장치 운영자(102)에 의한 트랜잭션의 개시에 응답하여 서비스 제공자 시스템(130)이 사용자 (101)와 연관된 데이터로 트랜잭션을 처리하도록 요청할 수 있다. 이 예에서, 서비스 제공자 시스템(130)은 상기 위치와 연관된 체크인 로그에 액세스한다.
사용자(101)가 상기 위치에서 체크인 된 것으로 현재 로그되면, 상기 서비스 제공자 시스템은 발급사(issuer) 시스템(140)과 통신하여 서비스 제공자 시스템(130)에 의해 계정으로 유지되는 사용자(101)와 연관된 데이터를 사용하여 트랜잭션을 처리한다. 이 예에서, 사용자(101)가 상기 위치에서 체크인 된 것으로 현재 로그되지 않으면, 상기 서비스 제공자 시스템은 상기 트랜잭션이 처리될 수 없다는 메시지를 POS 장치(160)에 전송한다.
위치에서 사용자 컴퓨팅 장치의 체크인 상태를 유지하기 위한 기존 애플리케이션들은 상기 위치에서 동일한 비컨 장치로부터 주기적으로 후속 하드웨어 식별자를 수신함으로써 상기 사용자 컴퓨팅 장치의 백그라운드에서 작동하는 애플리케이션을 통해 상기 사용자 컴퓨팅 장치가 체크인 상태 신호를 전송하도록 하지 않는다. 본 명세서에 설명된 방법들 및 시스템들을 사용하고 의존함으로써, 서비스 제공자 시스템(130), 비컨 장치(120) 및 사용자 컴퓨팅 장치(110)는 비컨 장치(120)에 의해 방송된 코드를 주기적으로 변경하여 사용자 컴퓨팅 장치(110)의 운영 시스템의 백그라운드에서 동작하는 지불 애플리케이션(113)에 의한 위치에서의 비컨 장치(120)의 반복적인 검출을 가능하게 한다.
예시적인 시스템 아키텍처
도면들을 참조하면, 동일한 도면 부호들은 도면 전체에 걸쳐 동일한(그러나 반드시 동일하지는 않은) 구성요소들을 나타내며, 실시예들이 상세히 설명된다.
도 1은 특정 예들에 따라 비컨 장치(120)의 하드웨어 식별자를 주기적으로 변경함으로써 사용자 컴퓨팅 장치(110)의 서비스 애플리케이션(113)에 의한 위치에서 비컨 장치(120)의 반복적인 검출을 가능하게 하는 시스템(100)을 도시하는 블록도이다. 도 1에 도시된 바와 같이, 시스템(100)은 하나 이상의 네트워크(170)를 통해 서로 통신하도록 구성된 네트워크 컴퓨팅 장치들(110, 120, 130, 140, 150 및 160)를 포함한다. 일부 실시예들에서, 장치와 연관된 사용자는 여기에 설명된 기술들의 이점을 얻기 위해 애플리케이션을 설치하고 및/또는 기능을 선택해야한다.
예들에서, 네트워크(170)는 LAN(local area network), WAN(wide area network), 인트라넷, 인터넷, SAN(storage area network), PAN(personal area network), MAN(Metropolitan Area Network), WLAN(Wireless Local Area Network), VPN(Virtual Private Network), 셀룰러 또는 기타 이동 통신 네트워크, Wi-Fi, 블루투스, 블루투스 저에너지(BLE), NFC, 또는 이들의 임의의 조합 또는 신호들, 데이터 및/또는 메시지들의 통신을 용이하게 하는 임의의 다른 적절한 아키텍처 또는 시스템을 포함할 수 있다. 예들에 대한 설명을 통해, "데이터" 및 "정보"라는 용어는 텍스트, 이미지, 오디오, 비디오 또는 컴퓨터 기반 환경에 존재할 수 있는 임의의 다른 형태의 정보를 나타내기 위해 여기서 교환 가능하게 사용된다는 것을 이해해야 한다.
각각의 네트워크 컴퓨팅 장치(110, 120, 130, 140, 150 및 160)는 네트워크(170)를 통해 데이터를 송신 및 수신할 수 있는 통신 모듈을 갖는 장치를 포함한다. 예를 들어, 각각의 네트워크 컴퓨팅 장치(110,130,140,150,160)는 서버, 데스크톱 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 하나 이상의 프로세서가 내장 및/또는 결합된 텔레비전, 스마트폰, 핸드헬드 컴퓨터, PDA(Personal Digital Assistant), 비컨 장치 또는 기타 유선 또는 무선 프로세서 기반 장치를 포함할 수 있다. 도 1에 도시된 예에서, 네트워크 컴퓨팅 장치(110, 120, 130, 140, 150 및 160)는 사용자(101), 비컨 장치(120) 운영자, 서비스 제공자 시스템(130) 운영자, 발급자 시스템(140) 운영자, 카메라 장치 운영자, POS(point of sale) 장치(160) 운영자 및 지불 처리 시스템(160) 운영자에 의해 각각 동작될 수 있다.
도 1에 도시된 예에서, 네트워크 컴퓨팅 장치(110)는 사용자 컴퓨팅 장치(110)로서 구현된다. 예시적인 사용자 컴퓨팅 장치(110)는 안테나(111), 블루투스 저에너지("BLE") 제어기(112), 서비스 애플리케이션(113), 사용자 인터페이스(115), 데이터 저장부(116), 웹 브라우저(118) 및 통신 애플리케이션(119)을 포함한다.
일 예에서, 안테나(111)는 사용자 컴퓨팅 장치(110)와 비컨 장치(120) 및 네트워크(170) 간의 통신을 위한 하드웨어 장치이다. 일 예에서, BLE 제어기(112)는 안테나(111)를 통해 신호들을 출력하거나, 그 위치에서 BLE 네트워크(180) 또는 다른 로컬 무선 네트워크를 통해 비컨 장치(120)로부터 신호들을 수신한다. 다른 예에서, 블루투스 제어기 또는 근거리 통신("NFC") 제어기가 사용된다.
일 예에서, BLE 제어기(112)는 데이터를 송신 및 수신하고, 인증 및 암호화 기능을 수행하고, 사용자 컴퓨팅 장치(110)가 비컨 장치(120)로부터의 송신을 수신 및 청취하는 방법을 지시하거나, 또는 사용자 컴퓨팅 장치(110)를 BLE 지정 절차들에 따라 다양한 절전 모드로 전환할 수 있다. 다른 예에서, 사용자 컴퓨팅 장치(110)는 유사한 기능들을 수행할 수 있는 NFC 제어기, 블루투스 제어기, Wi-Fi 제어기를 포함한다. 예시적인 BLE 제어기(112)는 서비스 애플리케이션(113)과 통신하고, 무선 BLE 네트워크(180)를 통해 데이터를 송신 및 수신할 수 있다. 다른 예에서, 블루투스 제어기(112) 또는 NFC 제어기(112)는 블루투스 또는 NFC 프로토콜을 사용하여 BLE 제어기(112)와 유사한 기능들을 수행한다. 일 예에서, BLE 제어기(112)는 안테나(111)를 활성화하여 사용자 컴퓨팅 장치(110)와 비컨 장치(120) 사이에 BLE 통신 채널과 같은 무선 통신 채널을 생성한다. 사용자 컴퓨팅 장치(110)는 안테나(111)를 통해 비컨 장치(120)와 통신한다. 일 예에서, 사용자 컴퓨팅 장치(110)가 활성화되면, BLE 제어기(112)는 안테나(111)를 통해 신호를 폴링하거나, 비컨 장치(120)로부터 신호들을 청취하고 수신한다.
일 예에서, 서비스 애플리케이션(113)은 사용자 컴퓨팅 장치(110) 상에 존재하고 사용자 컴퓨팅 장치(110)상의 동작들을 수행하는 프로그램, 함수, 루틴, 애플릿 또는 유사한 엔티티이며, 사용자 컴퓨팅 장치(110)의 운영 시스템에서 실행한다. 특정 예들에서, 사용자(101)는 여기에 기술된 기술들의 이점을 얻기 위해 사용자 컴퓨팅 장치(110) 상에 서비스 애플리케이션(113)을 설치 및/또는 기능 선택을해야 한다. 일 예에서, 사용자(101)는 사용자 인터페이스(115)를 통해 사용자 컴퓨팅 장치(110)상의 서비스 애플리케이션(113)에 액세스할 수 있다. 일 예에서, 서비스 애플리케이션(113)은 서비스 제공자 시스템(130)과 연관될 수 있다. 다른 예에서, 서비스 애플리케이션(113)은 상기 위치에서 비컨 장치(120), POS 장치(150) 및/또는 카메라 장치(150)와 연관된 머천트 시스템과 연관될 수 있다.
일 예에서, 사용자 인터페이스(115)는 사용자(101)가 서비스 애플리케이션(113) 및/또는 웹 브라우저(118)와 상호 작용할 수 있게 한다. 예를 들어, 사용자 인터페이스(115)는 터치 스크린, 음성 기반 인터페이스, 또는 사용자(101)가 사용자 컴퓨팅 장치(110)상의 애플리케이션 또는 모듈로부터 입력을 제공하고 출력을 수신하게 하는 임의의 다른 인터페이스일 수 있다. 일 예에서, 사용자(101)는 사용자 인터페이스(115)를 통해 서비스 애플리케이션(113) 및/또는 웹 브라우저(118)와 상호 작용하여 서비스 제공자 시스템(130)에 사용자(101) 계정을 구성한다. 다른 예에서, 사용자(101)는 사용자 인터페이스(115)를 통해 서비스 애플리케이션(113) 및/또는 웹 브라우저(118)와 상호 작용하여 필요할 경우 핸즈프리 지불과 같은 서비스 제공자 시스템(130)에 의해 제공되는 서비스를 가능하게 한다.
일 예에서, 데이터 저장부(116)는 정보를 저장하기에 적합한 사용자 컴퓨팅 장치(110)에 액세스 가능한 로컬 또는 원격 데이터 저장 구조를 포함한다.
예를 들어, 사용자(101)는 웹 브라우저(118) 애플리케이션 또는 독립형 애플리케이션과 같은 통신 애플리케이션(119)을 사용하여 네트워크(170)를 통해 문서들 또는 웹 페이지들을 보고, 다운로드하고, 업로드하거나 그렇지 않으면 액세스할 수 있다.
일 예에서, 웹 브라우저(118)는 사용자(101)가 사용자 컴퓨팅 장치(110)를 사용하여 웹 페이지들과 상호 작용할 수 있게 한다. 일 예에서, 사용자(101)는 웹 브라우저(118)를 통해 서비스 제공자 시스템(130)에 의해 유지되는 사용자(101)의 계정에 액세스할 수 있다. 다른 예에서, 사용자(101)는 웹 브라우저(118)를 통해 서비스 제공자 시스템 웹 사이트(139)에 액세스할 수 있다. 여기에 설명된 특정 예들에서, 서비스 애플리케이션(113)에 의해 수행되는 하나 이상의 기능들은 또한 서비스 제공자 시스템(130)과 연관된 웹 브라우저(118) 애플리케이션에 의해 수행될 수 있다.
일 예에서, 통신 애플리케이션(119)은 사용자 컴퓨팅 장치(110) 및 서비스 제공자 시스템(130)의 웹 서버(138)를 포함하여 네트워크(170)에 연결된 웹 서버들 또는 다른 컴퓨팅 장치들과 상호 작용할 수 있다.
특정 예들에서, 서비스 애플리케이션(113)에 의해 수행되는 것으로서 설명된 하나 이상의 기능들은 웹 브라우저(118) 애플리케이션, 예를 들어 서비스 제공자 시스템(130) 웹 사이트(139)와 연관된 또는 웹 서비스 제공자 시스템(130)과 연관된 웹 브라우저(118) 애플리케이션에 의해 수행된다. 특정 예에서, 서비스 애플리케이션(113)에 의해 수행되는 것으로 여기에서 설명되는 하나 이상의 기능들은 또한 사용자 컴퓨팅 장치(110) 운영 시스템에 의해 수행될 수 있다. 특정 예들에서, 웹 브라우저(118)를 통해 수행되는 것으로 여기에서 설명된 하나 이상의 기능들은 또한 서비스 애플리케이션(113)을 통해 수행될 수 있다.
도 1에 도시된 예에서, 네트워크 컴퓨팅 장치(120)는 비컨 장치(120)로서 구현된다. 예시적인 비컨 장치(120)는 안테나(121), BLE 제어기(122) 및 난수 발생기(123)를 포함한다. 예시적인 비컨 장치(120)는 BLE 네트워크(180) 또는 다른 로컬 무선 네트워크를 통해 비컨 장치(120)와 연관된 특정 머천트 비컨 장치(120) 하드웨어 식별자 및 다른 데이터를 비컨 장치(120)의 통신 범위 내의 임의의 사용자 컴퓨팅 장치(110)에 방송, 방출 또는 전송하도록 프로그램된다. 다른 예에서,
BLE 네트워크(180)는 블루투스 네트워크, NFC 네트워크, 또는 임의의 다른 적절한 로컬 무선 네트워크를 대신 포함할 수 있으며, 비컨 장치(120)는 블루투스 네트워크 제어기, NFC 네트워크 제어기 또는 임의의 다른 적절한 로컬 무선 네트워크 제어기를 대응적으로 포함할 수 있다.
일 예에서, 안테나(121)는 상기 위치에 설치된 비컨 장치(120)와 사용자 컴퓨팅 장치(110) 사이의 통신을 위한 하드웨어 컴포넌트이다. 일 예에서, BLE 제어기(122)는 안테나(121)를 통해 신호를 출력하거나, 사용자 컴퓨팅 장치(110)로부터 신호들을 청취하고 수신한다. 다른 예에서, 블루투스 제어기 또는 근거리 통신("NFC") 제어기가 사용된다.
예를 들어, BLE 제어기(122)는 데이터를 송신 및 수신하고, 인증 및 암호화 기능을 수행하고, 비컨 장치(120)가 사용자 컴퓨팅 장치(110)로부터의 송신을 수신하는 방법을 지시하거나, 비컨 장치(120)를 BLE 지정 절차에 따라 다양한 절전 모드로 설정할 수 있다. 다른 예에서, 비컨 장치(120)는 유사한 기능들을 수행할 수 있는 블루투스 제어기 또는 NFC 제어기를 포함한다. 예시적인 BLE 제어기(122)는 서비스 애플리케이션(113)과 통신하고, 무선 BLE 통신 채널을 통해 데이터를 송신 및 수신할 수 있다. 다른 예에서, 블루투스 제어기 또는 NFC 제어기는 블루투스 또는 NFC 프로토콜을 사용하여 BLE 제어기(122)와 유사한 기능들을 수행한다. 일 예에서, BLE 제어기(122)는 안테나(121)를 활성화하여 사용자 컴퓨팅 장치(110)와 비컨 장치(120) 사이에 무선 통신 채널을 생성한다. 비컨 장치(120)는 안테나(121)를 통해 사용자 컴퓨팅 장치(110)와 통신한다. 일 예에서, 비컨 장치(120)가 활성화되면, BLE 제어기(122)는 안테나(121)를 통해 신호를 폴링하거나, 사용자 컴퓨팅 장치(110)로부터 신호들을 청취하고 수신한다.
예시적인 난수 생성기(123)는 비컨 장치(120) 하드웨어 식별자를 생성한다. 예시적인 비컨 장치(120) 하드웨어 식별자는 매체 액세스 제어("MAC") 어드레스를 포함한다. 일 예에서, 난수 발생기(123)는 주기적인 시간 간격, 예를 들어 매 5분마다 후속 MAC 어드레스 또는 다른 하드웨어 식별자를 생성한다. 예에서, 난수 생성기(123)는 후속으로 생성된 하드웨어 식별자를 BLE 제어기(122)에 전달하고, BLE 제어기(122)는 이전 비컨 장치(120) 하드웨어 식별자의 방송을 중단하고, 상기 위치에서 BLE 네트워크(180)를 통해 상기 후속적으로 생성된 비컨 장치(120) 하드웨어 식별자를 방송한다.
도 1에 도시된 예에서, 네트워크 컴퓨팅 장치(130)는 서비스 제공자 시스템(130)으로서 구현된다. 예시적인 서비스 제공자 시스템(130)은 계정 관리 모듈(131), 데이터 저장부(136), 트랜잭션 처리 모듈(137), 서버(138) 및 웹 사이트(139)를 포함한다.
일 예에서, 계정 관리 모듈(131)은 하나 이상의 사용자(101) 계정을 관리한다. 일 예에서, 사용자(101) 계정은 디지털 지갑 계정, 이메일 계정, 소셜 네트워킹 계정, 또는 서비스 제공자 시스템(130)과 연관된 임의의 다른 적절한 계정을 포함할 수 있다. 일 예에서, 계정 관리 모듈(131)은 서비스 제공자 시스템(130)과의 사용자(101) 계정을 갖는 사용자(101)와 연관된 사용자 컴퓨팅 장치(110)상에서 동작하는 서비스 애플리케이션(113)과 통신한다. 예를 들어, 사용자(101)는 서비스 애플리케이션(113)을 통해 지불 계정 정보와 같은 데이터를 사용자(101) 계정에 입력하고, 계정 관리 모듈(131)은 네트워크(170)를 통해 상기 데이터를 수신하고, 그 수신된 데이터를 사용자(101) 계정과 연관시킨다. 일 예에서, 데이터 저장부(136)는 정보를 저장하기에 적합한 서비스 제공자 시스템(130)에 액세스 가능한 로컬 또는 원격 데이터 저장 구조를 포함한다.
일 예에서, 프로세싱 모듈(137)은 머천트 POS(point of sale) 장치(160) 또는 상기 위치에서의 다른 장치로부터 데이터를 수신하고, 트랜잭션을 개시하거나 서비스를 제공하기 위한 요청을 수신한다. 일례에서, 처리 모듈(137)은 상기 트랜잭션 요청 또는 서비스 요청을 수신하고, 비컨 장치(120)와 연관된 상기 위치에서 현재 체크인 된 사용자 컴퓨팅 장치(110)의 리스트를 포함하는 로그에 액세스한다. 일 예에서, 처리 모듈(137)은 사용자 컴퓨팅 장치(110)가 상기 위치에서 체크인 되었다는 결정에 응답하여 사용자(101) 계정으로부터 계정 정보를 추출한다. 다른 예에서, 처리 모듈(137)은 사용자 컴퓨팅 장치(110)가 상기 위치에서 체크인되지 않았다고 결정한다. 일 예에서, 사용자 컴퓨팅 장치(110)가 상기 위치에서 체크인 되면, 트랜잭션 처리 모듈(137)은 발급사 시스템(140) 또는 다른 적절한 시스템과 같은 제3 자 시스템에 인증 요청을 전송한다. 예를 들어, 예시적인 지불 승인 요청은 머천트 시스템 지불 계정 정보, 사용자(101) 지불 계정 정보, 및 상기 트랜잭션의 합계를 포함할 수 있다. 이 예에서, 발급사 시스템(140) 또는 다른 적절한 시스템이 지불 승인 요청 또는 서비스 요청을 처리한 후에, 처리 모듈(137)은 네트워크(170)를 통해 발급사 시스템(140) 또는 다른 적절한 시스템으로부터 지불 승인 요청 또는 서비스 요청에 대한 승인 또는 거부를 수신한다. 이 예에서, 처리 모듈(137)은 상기 트랜잭션 또는 서비스 요청에 대한 요약을 포함하는 영수증을 머천트 POS 장치(160) 및/또는 사용자 컴퓨팅 장치(110)에 송신한다.
도 1에 도시된 예에서, 네트워크 컴퓨팅 장치(140)는 발급사 시스템(140)으로서 구현된다. 예시적인 발급사 시스템(140)은 서비스 제공자 시스템(130)으로부터 수신된 지불 승인 요청을 승인하거나 거부한다. 일 예에서, 발급사 시스템(140)은 네트워크(170)를 통해 서비스 제공자 시스템(130)과 통신한다. 일 예에서, 발급사 시스템(140)은 신용 허가를 승인하고, 서비스 제공자 시스템(130) 및/또는 머천트 시스템에 지불을 하기 위해 매입사(acquirer) 시스템(도시되지 않음)과 통신한다. 예를 들어, 상기 매입사 시스템은 제3자 지불 처리 회사이다.
도 1에 도시된 예에서, 네트워크 컴퓨팅 장치(150)는 카메라 장치(150)로서 구현된다. 예시적인 카메라 장치(150)는 프로세서, 데이터 저장부, 카메라 모듈 및 통신 애플리케이션(도시되지 않음)을 포함한다. 일 예에서, 카메라 장치(150)는 비컨 장치(120)에 근접한 위치에 설치된다. 예를 들어, 카메라 장치(150) 및 비컨 장치(120)는 공통 머천트 시스템 상점 위치에 설치된다. 일 예에서, 카메라 프로세서는 머천트 카메라 장치(150)에 의해 수행되는 것으로 여기서 설명된 하나 이상의 기능들을 수행한다. 일 예에서, 카메라 장치(150)의 데이터 저장부는 정보를 저장하기에 적합한 카메라 장치(150)에 액세스 가능한 로컬 또는 원격 데이터 저장 구조를 포함한다. 일 예시에서, 카메라 장치(150)의 카메라 모듈은 카메라 장치(150)의 외부 환경의 디지털 이미지를 캡처하거나 비디오 입력을 캡처하는 카메라 장치(150)의 임의의 모듈 또는 기능일 수 있다. 상기 카메라 모듈은 카메라 장치(150)에 논리적으로 연결된 임의의 방식으로 또는 카메라 장치(150) 상에 존재할 수 있다. 예를 들어, 상기 카메라 모듈은 네트워크(170)를 통해 카메라 장치(150)에 연결될 수 있다. 상기 카메라 모듈은 개별 이미지들 또는 비디오 스캔을 획득할 수 있다. 임의의 다른 적합한 이미지 캡처 장치는 카메라 장치(150)의 카메라 모듈에 의해 표현될 수 있다. 일 예에서, 카메라 장치(150)의 통신 애플리케이션은 머천트 카메라 장치(150)가 서비스 제공자 시스템(130)의 서버(138)와 통신할 수 있게 한다.
도 1에 도시된 예에서, 네트워크 컴퓨팅 장치(160)는 POS 장치(160)로서 구현된다. 예시적인 POS 장치(160)는 지불 애플리케이션(163), 사용자 인터페이스(165), 데이터 저장부(166) 및 통신 애플리케이션(169)을 포함한다.
일 예에서, 지불 애플리케이션(163)은 POS 장치(160) 상에 존재하고 POS 장치(160)상에서 동작들을 수행하는 프로그램, 기능, 루틴, 애플릿 또는 유사한 엔티티이다. 특정 예에서, POS 장치 운영자(102) 또는 다른 머천트 시스템 운영자는 지불 애플리케이션(163)을 설치하고 및/또는 본 명세서에 기술된 기술들의 이점을 획득하도록 POS 장치(160) 상의 기능을 선택한다. 일 예에서, POS 장치 운영자(102)는 사용자 인터페이스(165)를 통해 POS 장치(160)상의 지불 애플리케이션(163)에 액세스할 수 있다. 일 예에서, 지불 애플리케이션(163)은 서비스 제공자 시스템(130)과 연관될 수 있다. 다른 예에서, 지불 애플리케이션(163)은 상기 위치에 설치된 카메라 장치(150)와 비컨 장치(120)에 연관된 머천트 시스템과 연관될 수 있다.
일 예에서, 사용자 인터페이스(165)는 POS 장치 운영자(102)가 POS 장치(160)와 상호 작용할 수 있게 한다. 예를 들어, 사용자 인터페이스(165)는 POS 장치 운영자(102)가 POS 장치(160)상의 애플리케이션 또는 모듈로부터 입력을 제공하고 출력을 수신하게 하는 터치 스크린, 음성 기반 인터페이스 또는 임의의 다른 인터페이스일 수 있다. 일 예에서, POS 장치 운영자(102)는 사용자 인터페이스(165)를 통해 지불 애플리케이션(163)과 상호 작용한다.
예를 들어, 데이터 저장부(166)는 정보를 저장하기에 적합한 머천트 POS 장치(160)에 액세스 가능한 로컬 또는 원격 데이터 저장 구조를 포함한다.
일 예에서, 웹 브라우저 애플리케이션 또는 독립형 애플리케이션과 같은 통신 애플리케이션(169)은 POS 장치(160)의 운영자가 분산 네트워크(170)를 통해 문서들 또는 웹 페이지들을 보고, 다운로드하고, 업로드하거나 그렇지 않으면 액세스할 수 있게 한다. 예를 들어, 통신 애플리케이션(169)은 네트워크(170)를 통해 지불 처리 시스템(160)과의 통신을 가능하게 할 수 있다.
도시된 네트워크 연결들은 예시이며, 컴퓨터들과 장치들 사이의 통신 링크를 설정하는 다른 수단이 사용될 수 있음을 알 것이다. 또한, 본 개시의 이점을 갖는 당업자들은 도 1에 도시된 사용자 컴퓨팅 장치(110), 비컨 장치(120), 서비스 제공자 시스템(130), 발급자 시스템(140), 카메라 장치(150), POS 장치(160)는 몇 가지 다른 적절한 컴퓨터 시스템 구성들 중 임의의 것을 가질 수 있다는 것을 이해할 것이다. 예를 들어, 이동 전화 또는 핸드헬드 컴퓨터로서 구현된 사용자 컴퓨팅 장치(110)는 상술한 모든 컴포넌트들을 포함하거나 포함하지 않을 수도 있다.
예들에서, 본 명세서에 제시된 기술과 연관된 네트워크 컴퓨팅 장치들 및 임의의 다른 컴퓨팅 머신들은 도 2와 관련하여 보다 상세히 설명된 임의의 유형의 컴퓨팅 머신일 수 있지만, 이에 한정되는 것은 아니다.
또한, 여기에 설명된 컴퓨팅 머신들 중 임의의 것과 연관된 임의의 기능들, 애플리케이션들 또는 컴포넌트들 또는 여기에 제시된 기술과 연관된 임의의 다른 것들(예를 들어, 스크립트들, 웹 콘텐츠, 소프트웨어, 펌웨어, 하드웨어 또는 모듈들)은 도 2와 관련하여보다 상세하게 설명된 임의의 컴포넌트들에 의해 수행될 수 있다. 본 명세서에 설명된 컴퓨팅 머신들은 네트워크들(170 및 180)과 같은 하나 이상의 네트워크를 통해 다른 컴퓨팅 머신들 또는 통신 시스템들과 서로 통신할 수 있다. 네트워크들(170 및 180)은 도 2와 관련하여 설명된 임의의 네트워크 기술을 포함하는 임의의 유형의 데이터 또는 통신 네트워크를 포함할 수 있다.
예시적인 프로세스
도 2 내지 도 9에 도시된 예시적인 방법들은 예시적인 동작 환경(100)의 컴포넌트들에 관하여 이후에 설명된다. 도 2-9의 예시적인 방법들은 다른 시스템들 및 다른 환경들에서도 수행될 수도 있다.
도 2는 특정 예들에 따라, 상기 비컨 장치의 하드웨어 식별자를 주기적으로 변경함으로써 사용자 컴퓨팅 장치(110) 운영 시스템의 백그라운드에서 동작하는 지불 애플리케이션(113)에 의한 위치에서의 비컨 장치(120)의 반복적인 검출을 가능하게 하는 방법(200)을 도시하는 블록도이다. 방법(200)은 도 1에 도시된 컴포넌트들을 참조하여 설명된다.
블록(210)에서, 사용자(101)는 계정 관리 시스템(130)에 계정을 등록한다. 사용자(101)에 의해 계정 관리 시스템(130)에 계정을 등록하는 방법은 도 3에 설명된 방법을 참조하여 이하 더 상세히 설명된다.
도 3은 사용자(101)에 의해 계정 관리 시스템(130)을 등록하는 방법(210)을 나타내는 블록도이다. 방법(210)은 도 1에 도시된 컴포넌트들을 참조하여 설명된다.
블록(310)에서, 사용자(101)는 사용자 컴퓨팅 장치(110)를 통해 계정 관리 시스템(130) 웹 사이트(139)에 액세스한다. 예를 들어, 사용자(101)는 사용자 컴퓨팅 장치(110)의 웹 브라우저(118)를 통해 계정 관리 시스템 웹사이트(139)에 액세스한다. 다른 예에서, 사용자(101)는 사용자(101) 계정을 등록하도록 계정 관리 시스템(130)에 접속할 수 있다.
블록(320)에서, 사용자(101)는 계정 관리 시스템(130)에 등록한다. 사용자(101)는 사용자(101) 계정 번호를 획득하고, 사용자 컴퓨팅 장치(110)에 설치하기 위한 적절한 애플리케이션 및 소프트웨어를 수신하고, 핸즈프리 지불 처리에 참여할 권한을 요청하거나, 계정 관리 시스템(130)에 의해 요구되는 임의의 액션을 수행할 수 있다. 사용자(101)는 사용자 인터페이스(111) 및 웹 브라우저(118)와 같은 사용자 컴퓨팅 장치(110)의 기능들을 이용하여 사용자(101) 계정을 등록 및 설정할 수 있다. 예를 들어, 사용자(101)는 하나 이상의 신용 계정, 하나 이상의 은행 계정, 하나 이상의 저장된 중요한 계정 및/또는 다른 적절한 계정과 같은 하나 이상의 사용자 계정과 연관된 지불 계정 정보를 계정 관리 시스템(130)에 의해 유지되는 사용자(101) 계정에 입력할 수 있다.
블록(330)에서, 사용자(101)는 사용자 컴퓨팅 장치(110) 상에 지불 애플리케이션(113)을 다운로드한다. 일 예에서, 사용자 컴퓨팅 장치(110)상에서 동작하는 지불 애플리케이션(113)은 네트워크(170)를 통해 계정 관리 시스템(130)과 통신할 수 있다.
블록(340)에서, 사용자(101)는 지불 애플리케이션(113)을 통해 상기 계정에 지불 계정 정보를 입력한다. 일 예에서, 사용자(101)는 사용자(101) 계정 설정을 구성하거나 지불 애플리케이션(113)을 통해 지불 계정 정보를 추가, 삭제 또는 편집할 수 있다. 일 예에서, 사용자(101)는 핸즈프리 트랜잭션을 처리하기 위해 계정 관리 시스템(130)의 허가를 인에이블 또는 디스에이블하는 옵션을 선택할 수 있다. 예를 들어, 핸즈프리 트랜잭션은 사용자(101)가 사용자 컴퓨팅 장치(110)와 상호 작용할 필요가 없거나, 머천트 시스템과의 트랜잭션을 개시하도록 사용자(101)가 사용자 컴퓨팅 장치(110)와 최소한의 상호 작용을 요구하는 트랜잭션을 포함한다.
블록(340)으로부터, 방법(210)은 도 2의 블록(220)으로 진행한다.
도 2로 돌아가서, 블록(220)에서, 상기 머천트 시스템은 계정 관리 시스템(130)에 계정을 등록하고, 상기 머천트 시스템 위치에 하드웨어를 설치한다. 상기 머천트 시스템에 의해 계정 관리 시스템(130)에 등록하고, 상기 머천트 시스템 위치에 하드웨어를 설치하는 방법은 도 4에서 설명된 방법을 참조하여 이하에서 더 상세하게 설명된다.
도 4는 특정 예들에 따라, 머천트 시스템에 의해 계정 관리 시스템(130)에 등록하고, 머천트 시스템 위치에 하드웨어를 설치하는 방법(220)을 도시하는 블록도이다. 방법(220)은 도 1에 도시된 컴포넌트들을 참조하여 설명된다.
여기에 기재된 실시예들에서, 머천트 시스템은 임의의 특정 순서로 예시적인 머천트 시스템 위치에서 하드웨어, 예를 들어 하나 이상의 비컨 장치(120) 및 하나 이상의 POS 장치(160)를 설치할 필요가 없다. 방법(220)은 머천트 위치에 하드웨어를 설치하는 방법의 일례를 설명한다. 그러나, 상기 머천트 하드웨어를 설치하는 머천트 시스템 또는 다른 시스템은 여기에 설명된 순서로 하나 이상의 머천트 POS 장치(160) 또는 하나 이상의 비컨 장치(120)를 설치할 필요가 없다.
블럭(410)에서, 머천트 시스템은 계정 관리 시스템(130)에 등록한다. 예를 들어, 머천트 시스템의 에이전트는 계정 관리 시스템 웹사이트(139)에 액세스하고, 웹사이트(139)를 통해 머천트 시스템 계정을 계정 관리 시스템(130)에 등록한다. 예를 들어, 상기 머천트 시스템은 머천트 시스템 지불 계정과 연관된 지불 계정 정보를 계정 관리 시스템(130)에 의해 관리되는 머천트 계정에 추가한다. 일 예에서, 상기 머천트 시스템은 하나 이상의 머천트 시스템 위치를 포함한다. 예를 들어, 상기 머천트 시스템은 하나 이상의 물리적 상점 위치를 포함할 수 있다. 예시적인 머천트 위치는 하나 이상의 머천트 POS 장치(160)를 포함한다. 일 예에서, 하나 이상의 머천트 POS 장치(160) 운영자는 상기 머천트 시스템 위치에서 상기 하나 이상의 머천트 POS 장치(160)를 운영한다.
블록(420)에서, 머천트 시스템 운영자는 머천트 POS 장치(160) 상에 지불 애플리케이션(163)을 설치한다. 다른 예에서, 머천트 시스템 운영자는 머천트 POS 장치(160) 상에 미리설치된 지불 애플리케이션(163)을 갖는 머천트 POS 장치(160)를 계정 관리 시스템(130)으로부터 구매한다. 일 예에서, 머천트 POS 장치(160)는 지불 애플리케이션(113)을 수신하도록 네트워크(170)를 통해 계정 관리 시스템(130)과 통신할 수 있다. 일 예에서, 머천트 POS 장치(160)는 네트워크(170)를 통해 지불 애플리케이션(163)으로 계정 관리 시스템(130)과 통신한다. 예를 들어, 머천트 POS 장치(160)는 계정 관리 시스템(130)이 트랜잭션을 처리할 수 있도록 네트워크(170)를 통해 지불 애플리케이션(163)으로 트랜잭션 세부사항들을 계정 관리 시스템(130)에 전송할 수 있다. 다른 예에서, 머천트 POS 장치(160)는 머천트 POS 장치(160) 운영자에게 트랜잭션이 성공했는지 아닌지 여부를 통지하는 영수증을 계정 관리 시스템(130)으로부터 수신할 수 있다.
블록(430)에서, 머천트 시스템 운영자는 머천트 POS 장치(160)에 대응하도록 비컨 장치(120)를 머천트 시스템 위치에 설치한다. 일 예에서, 머천트 시스템 운영자는 연관된 머천트 POS 장치(160)에 근접하여 각각의 비컨 장치(120)를 설치한다. 예시적인 머천트 비컨 장치(120)는 무선 네트워크(170)를 유지하기 위해 필요한 임계, 미리 정의된 또는 지정된 거리 내에서 임의의 사용자 컴퓨팅 장치(110)에 무선 네트워크(170)를 통해 특정 머천트 비컨 장치(120) 코드를 방송, 방출 또는 전송하도록 프로그램된다.
예를 들어, 계정 관리 시스템(130)은 머천트 POS 장치(160) 식별자를 수신하고, 이를 비컨 장치(120)의 해당 비컨 장치(120) 코드와 연관시킨다. 다른 예에서, 계정 관리 시스템(130)은 머천트 POS 장치(160) 식별자를 머천트 POS 장치(160)가 설치된 머천트 시스템 위치에 대응하는 머천트 시스템 위치 식별자와 연관시킨다. 일 예에서, 각각 설치된 비컨 장치(120)는 계정 관리 시스템(130)에 의해 머천트 시스템 위치에 설치된 특정 머천트 POS 장치(160)와 연관된다. 예를 들어, 계정 관리 시스템(130)은 비컨 장치(120) 코드들을 머천트 POS 장치(160) 식별자들 및/또는 연관된 머천트 POS 장치들(160) 및/또는 머천트 시스템 위치들에 대한 머천트 시스템 위치 식별자들과 상관시키는 데이터베이스를 포함할 수 있다. 예를 들어, 머천트 POS 장치(160) 식별자는 시리얼 번호 또는 MAC ID와 같은 상기 장치에 특정한 하드웨어 식별자를 포함할 수 있다. 다른 예에서, 비컨 장치(120) 코드는 상기 비컨 장치에 특정한 하드웨어 식별자 또는 계정 관리 시스템(130)에 의해 생성되고 비컨 장치(120)에 저장된 식별자를 포함할 수 있다. 예시적인 머천트 시스템 위치 식별자는 특정 머천트 시스템 위치를 고유하게 식별하는 식별자를 포함한다.
블록(440)에서, 비컨 장치(120)는 머천트 시스템의 위치에서 무선 통신 네트워크(170)를 통해 비컨 장치 코드를 방송한다. 일 예에서, 비컨 장치(120)는 계정 관리 시스템(130)으로부터 새로운 비컨 장치 코드를 수신할 때까지 머천트 시스템 위치에서 로컬 무선 네트워크(170)를 통해 계정 관리 시스템(130)으로부터 수신된 비컨 장치 코드를 방송한다. 이 예에서, 네트워크(170)를 통해 계정 관리 시스템(130)으로부터 새로운 비컨 장치 코드를 수신하는 것에 응답하여, 비컨 장치(120)는 계정 관리 시스템(130)으로부터 후속하는 새로운 비컨 장치 코드를 수신할 때까지 로컬 무선 네트워크(170)를 통해 상기 머천트 시스템 위치에서 상기 새로운 비컨 장치 코드를 방송한다.
예를 들어, 비컨 장치(120)는 무선 네트워크(170) 매체를 통해 머천트 비컨 코드를 방송하며, 비컨 장치(120)에 대해 임계 근접거리 내에 위치한 하나 이상의 사용자 컴퓨팅 장치(110)는 로컬 무선 네트워크(170)를 통해 비컨 장치 코드를 수신할 수 있다. 일 예에서, 사용자 컴퓨팅 장치(110) 및/또는 상기 머천트 시스템 위치에 위치한 장치들만이 비컨 장치(120)에 미리정의된 근접거리를 설정하여 로컬 무선 네트워크(170)를 통해 비컨 장치(120)와 통신할 수 있게 한다. 예를 들어, 로컬 무선 네트워크(170) 연결을 설정하는데 필요한 임계 근접거리는 비컨 장치(120)에 의해 이용되는 네트워크(120) 통신 프로토콜에 의존한다. 예를 들어, 비컨 장치(120)는 Wi-Fi, 블루투스, 블루투스 저 에너지("BLE"), 근거리 통신("NFC") 또는 다른 적절한 통신을 통해 상기 비컨 장치 코드를 포함하는 데이터를 비컨 장치(120)에 대해 임계 근접거리 내의 머천트 시스템 위치에 위치한 하나 이상의 사용자 컴퓨팅 장치(110)에 방송, 방출 또는 전송할 수 있다. 일부 예들에서, 비컨 장치 코드를 송신하기 전의 시간에 비컨 장치(120)는 비컨 장치(120)와 하나 이상의 사용자 컴퓨팅 장치(110) 및/또는 비컨 장치(120)에 대해 임계, 미리정의된 또는 특정된 근접거리 내의 머천트 시스템 위치에 위치한 머천트 POS 장치(160) 간의 네트워크(170) 연결을 설정하도록 동작 가능하다.
특정 예들에서, 비컨 장치(120)는 머천트 POS 장치(160)의 컴포넌트이거나 머천트 POS 장치(160)에 무선으로 또는 물리적으로 연결되고 머천트 POS 장치(160)의 하나 이상의 프로세서들에 의해 제어된다. 특정 예에서, 비컨 장치(120)에 의해 수행되는 하나 이상의 기능은 머천트 POS 장치(160)에 의해 수행될 수도 있다.
블록(440)으로부터, 방법(220)은 도 2의 블록(230)으로 진행한다.
도 2로 돌아가서, 블록(230)에서, 사용자(101)는 지불 처리 시스템(150)에 등록한다. 사용자(101)에 의해 지불 처리 시스템(150)에 등록하는 방법은 도 4에서 설명된 방법(220)을 참조하여 이하에서 더 상세하게 설명된다.
도 4는 특정 예들에 따라 사용자(101)에 의해 지불 처리 시스템(150)에 등록하는 방법(220)을 나타내는 블록도이다. 방법(220)은 도 1에 도시된 컴포넌트들을 참조하여 설명된다.
도 2로 돌아가서, 블록(230)에서, 사용자(101)는 사용자 컴퓨팅 장치(110)를 통해 지불 애플리케이션(113)에 로그인하고, 상기 머천트 시스템 위치를 입력한다. 일 예에서, 상기 사용자는 상기 머천트 시스템 위치를 입력하기 전에 지불 애플리케이션(113)에 로그인한다. 다른 예에서, 사용자(101)는 사용자(101)가 머천트 시스템 위치를 입력하기 하는 것과 동시에 또는 이후에 지불 애플리케이션(113)에 로그인한다. 일 예에서, 지불 애플리케이션(113)에 로그인하기 위해, 사용자(101)는 사용자(101)의 계정 관리 시스템 계정과 연관된 사용자 이름 및 패스워드를 입력하고, "로그인"을 읽는 사용자 인터페이스(111)에 대한 객체를 선택할 수 있다. 이 예에서, 지불 애플리케이션(113)은 네트워크(170)를 통해 계정 관리 시스템(130)에 상기 사용자 이름 및 패스워드를 전달한다. 이 예에서, 계정 관리 시스템(130)은 사용자(101) 계정에 대한 상기 사용자 이름 및 패스워드를 확인한다. 이 예에서, 상기 사용자 이름 및 패스워드가 정확하다면, 계정 관리 시스템(130)은 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)상의 지불 애플리케이션(113)과의 통신을 설정한다.
블록(240)에서, 사용자 컴퓨팅 장치(110)는 비컨 장치(120)에 의해 방송된 비컨 장치(120) 코드를 수신하고, 체크인 신호를 계정 관리 시스템(130)에 전송한다. 비컨 장치(120)에 의해 방송된 비컨 장치 코드(120)를 사용자 컴퓨팅 장치(110)에 의해 수신하고, 체크인 신호를 계정 관리 시스템(130)에 전송하는 방법은 도 5에 설명된 방법(240)을 참조하여 이하에서 보다 상세하게 설명된다.
도 5는 소정의 예들에 따라, 사용자 컴퓨팅 장치(110)에 의해 비컨 장치(120)에 의해 방송된 비컨 장치 코드(120)를 수신하고, 체크인 신호를 계정 관리 시스템(130)에 전송하는 방법(240)을 나타낸 블록도이다. 방법 240)은 도 1에 도시된 컴포넌트들을 참조하여 설명된다.
블록(510)에서, 사용자(101)는 머천트 시스템 위치에서의 비컨 장치(120)의 임계 거리 내에서 사용자 컴퓨팅 장치(110)를 휴대한다. 일 예에서, 상기 임계 거리는 사용자 컴퓨팅 장치(110)가 머천트 시스템 위치에서 로컬 무선 네트워크(170)를 통해 비컨 장치(120)로부터 데이터를 수신하는데 필요한 사용자 컴퓨팅 장치(110)와 비컨 장치(120) 사이의 최대 거리를 포함한다. 예를 들어, 사용자(101)는 사용자 컴퓨팅 장치(110)와 함께 머천트 POS 장치(160)에 접근한다.
블록(520)에서, 사용자 컴퓨팅 장치(110)는 비컨 장치(120)에 의해 방송된 비컨 장치(120) 코드를 수신한다. 일 예에서, 비컨 장치(120)는 비컨 장치(120) 코드를 연속적으로 또는 주기적으로 방송한다. 예를 들어, 비컨 장치(120)는 매 5초마다 비컨 장치(120) 코드를 방송한다. 일 예에서, 사용자 컴퓨팅 장치(110)는 비컨 장치(120)가 로컬 무선 네트워크(170)를 통해 상기 코드를 송신하는 빈도에 따라 상기 비컨 장치(120) 코드를 주기적으로 수신한다. 일 예에서, 사용자(101)가 지불 애플리케이션(113)에 로그인할 때, 지불 애플리케이션(113)은 사용자 컴퓨팅 장치(110)의 운영 시스템의 포어그라운드에서 동작한다. 이 예에서, 사용자(101)가 사용자 컴퓨팅 장치(110)상의 다른 애플리케이션을 선택하면, 지불 애플리케이션(113)은 상기 포어 그라운드에서의 동작을 중단하고, 상기 운영 시스템의 백그라운드에서 동작하기 시작하는 반면에, 그 선택된 다른 애플리케이션은 사용자 컴퓨팅 장치(110)의 운영 시스템의 포어그라운드에서 동작한다. 다른 예에서, 사용자 컴퓨팅 장치(110)는 사용자 컴퓨팅 장치의 사용자 인터페이스(111)가 비활성화되고, 지불 애플리케이션(113)이 사용자 컴퓨팅 장치(110)의 운영 시스템의 백그라운드에서 동작하는 슬립 모드 또는 다른 절전 모드에서 동작한다. 일 예에서, 사용자 컴퓨팅 장치(110)상의 하나의 애플리케이션만이 언제든지 상기 포어그라운드에서 동작할 수 있다. 이 예에서, 상기 백그라운드에서 동작하는 애플리케이션들은 처리 능력이 제한적이지만, 상기 포어그라운드에서 동작하는 애플리케이션은 사용자 컴퓨팅 장치(110)상에서 자유롭게 실행할 수 있다. 보다 구체적으로, 상기 운영 시스템의 백그라운드에서 실행중인 지불 애플리케이션(113)은 특정 비컨 장치(120)가 동일한 비컨 장치(120) 코드를 방송할 때 특정 비컨 장치(120)를 계속해서 검출하지 않을 수 있다. 지불 애플리케이션(113)은 방송된 비컨 장치(120) 코드에 기초하여 특정 비컨 장치(120)를 초기에 검출한다. 일 예에서, 비컨 장치(120) 코드는 비컨 장치(120)와 연관된 하드웨어 식별자 또는 MAC(media access control) 어드레스를 포함한다. 그 후, 지불 애플리케이션(113)은 상기 특정 비컨 장치에 대한 비컨 장치(120) 코드와 상이한 비컨 장치들에 대한 비컨 장치(120) 코드들만을 검출한다. 일 예에서, 상기 위치의 비컨 장치(120)는 상기 위치에서 블루투스 저에너지("BLE") 네트워크(170) 또는 다른 무선 네트워크를 통해 상기 위치에서 제1 비컨 장치(120) 코드를 방송한다. 일 예에서, 비컨 장치(120)는 예를 들어 블루투스 네트워크, Wi-Fi 네트워크, 오디오 네트워크 또는 근거리 통신("NFC") 네트워크와 같은 다른 유형의 로컬 무선 네트워크를 통해 그 위치에서 비컨 장치(120) 코드 및 다른 데이터를 방송한다. 일 예에서, 상기 다른 데이터는 비컨 장치(120) 이름, 네트워크(170) 연결 이름, 또는 다른 데이터를 포함한다. 일 예에서, 사용자 컴퓨팅 장치(110) 운영 시스템의 백그라운드 또는 포어그라운드에서 동작하는 지불 애플리케이션(113)은 BLE 네트워크(170) 또는 다른 무선 네트워크를 통해 비컨 장치(120)로부터 제1 비컨 장치(120) 코드 및 다른 데이터를 수신한다.
블록(530)에서, 사용자 컴퓨팅 장치(110)는 체크인 신호 및 사용자(101) 계정 식별자를 계정 관리 시스템(130)에 전송한다. 일 예에서, 비컨 장치(120) 코드를 수신하는 것에 응답하여, 지불 애플리케이션(113)은 사용자(101)의 체크인 상태를 로그하고, 사용자(101) 계정과 연관된 사용자(101) 계정 식별자 및 체크인 상태 신호를 네트워크(170)를 통해 계정 관리 시스템(130)에 전송한다. 일례로, 비컨 장치(120) 코드를 수신하는 것에 응답하여, 사용자 컴퓨팅 장치(110)는 사용자 컴퓨팅 장치(110)의 위치 데이터를 로그하고, 상기 위치 데이터를 포함하는 체크인 신호, 비컨 장치(120)와 연관된 하드웨어 식별자 및 사용자(101) 계정 식별자를 네트워크(170)를 통해 계정 관리 시스템(130)에 전송한다.
블록(540)에서, 계정 관리 시스템(130)은 체크인 신호 및 사용자(101) 계정 식별자를 수신한다. 일례에서, 계정 관리 시스템(130)은 네트워크(170)를 통해 체크인 신호 및 사용자(101) 계정 식별자를 수신한다.
블록(550)에서, 계정 관리 시스템(130)은 체크인 신호 및 사용자(101) 계정 식별자의 수신을 로그하고, 체크인된 사용자(101) 계정을 지정한다. 일 예에서, 계정 관리 시스템(130)은 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치(110)의 로그를 유지한다. 일 예에서, 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치들(110)의 로그는 비컨 장치(120)의 하드웨어 식별자와 연관된다. 이 예에서, 체크인 신호의 일부로서, 계정 관리 시스템(130)은 비컨 장치(120)의 하드웨어 식별자를 수신하고, 그 수신된 하드웨어 식별자에 기초하여 비컨 장치(120)와 연관된 위치에서 현재 체크인 된 현재 사용자 컴퓨팅 장치들(110)의 로그를 식별한다. 또 다른 예에서, 비컨 장치(120)와 연관된 위치에서 현재 체크인 된 현재 사용자 컴퓨팅 장치들(110)의 로그는 위치 데이터와 연관된다. 이 예에서, 체크인 신호의 일부로서, 계정 관리 시스템(130)은 사용자 컴퓨팅 장치(110)에 의해 로그된 위치 데이터를 수신하고, 그 수신된 위치 데이터에 기초하여 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치들(110)의 로그를 식별한다. 예를 들어, 계정 관리 시스템(130)은 상기 체크인 신호의 일부로서 사용자 컴퓨팅 장치(110)로부터 수신된 로그된 위치 데이터가 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치들(110)의 로그와 연관된 위치로부터의 임계 거리 내에 있는지를 결정한다. 일 예에서, 계정 관리 시스템(130)은 상기 후속 체크인 신호를 메모리 또는 데이터 저장부(136)에 로그한다. 일 예에서, 계정 관리 시스템(130)은 데이터 저장부(136) 내의 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치들(110)의 로그를 유지한다. 예를 들어, 계정 관리 시스템(130)은 상기 체크인 신호의 수신 시간에 현재 타임스탬프를 로그하고, 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치들(110)의 로그에서 상기 수신된 체크인 신호와 상기 로그된 타임 스탬프를 연관시킨다. 예를 들어, 상기 로그된 타임스탬프는 날짜, 월, 년, 시, 분, 초 및/또는 상기 로그된 현재 타임스탬프와 연관된 시간을 식별하는 다른 지정을 포함하는 시간을 포함한다.
블록(550)으로부터, 방법(240)은 도 2의 블록(250)으로 진행한다.
도 2를 참조하면, 블록(250)에서, 지불 애플리케이션(113)이 사용자 컴퓨팅 장치(110) 운영 시스템의 백그라운드에서 동작하는 동안에 사용자 컴퓨팅 장치(110)는 후속 비컨 장치(120) 코드를 수신하고, 그 후속 체크인 신호를 계정 관리 시스템(130)에 전송한다. 지불 애플리케이션(113)이 사용자 컴퓨팅 장치(110) 운영 시스템의 백그라운드에서 동작하는 동안 비컨 장치(120)에 의해 방송된 후속 비컨 장치 코드(120)를 사용자 컴퓨팅 장치(110)에 의해 수신하고, 후속 체크인 신호를 계정 관리 시스템(130)에 전송하는 방법은 도 6에 설명된 방법(250)을 참조하여 이하에서 더 상세하게 설명된다.
도 6은 특정 예들에 따라, 지불 애플리케이션(113)이 사용자 컴퓨팅 장치(110) 운영 시스템의 백그라운드에서 동작하는 동안 비컨 장치(120)에 의해 방송된 후속 비컨 장치 코드(120)를 사용자 컴퓨팅 장치(110)에 의해 수신하고, 후속 체크인 신호를 계정 관리 시스템(130)에 전송하는 방법(250)을 나타낸 블록 흐름도이다. 방법(250)은 도 1에 도시된 컴포넌트들을 참조하여 설명된다.
블록(610)에서, 지불 애플리케이션(113)은 사용자 컴퓨팅 장치(110) 운영 시스템의 백그라운드에서 동작한다. 일 예에서, 사용자(101)가 지불 애플리케이션(113)에 로그인할 때, 지불 애플리케이션(113)은 사용자 컴퓨팅 장치(110)의 운영 시스템의 포어그라운드에서 동작한다. 이 예에서, 사용자(101)가 사용자 컴퓨팅 장치(110)상의 다른 애플리케이션을 선택하면, 지불 애플리케이션(113)은 상기 포어그라운드에서의 동작을 중단하고, 상기 운영 시스템의 백그라운드에서 동작하기 시작하고, 상기 다른 선택된 애플리케이션은 사용자 컴퓨팅 장치(110)의 운영 시스템의 포어그라운드에서 동작한다. 이 예에서, 지불 애플리케이션(113)이 사용자 컴퓨팅 장치(110)상의 백그라운드에서 동작하는 동안 사용자(101)가 지불 애플리케이션(113)을 선택 또는 상호 작용하는 것에 응답하여, 지불 애플리케이션(113)은 사용자 컴퓨팅 장치(110)의 포어그라운드에서 동작하기 시작한다. 이 예에서, 사용자(101)가 사용자 컴퓨팅 장치(110)상의 지불 애플리케이션(113) 이외의 다른 애플리케이션을 선택 또는 상호 작용하는 것에 응답하여, 상기 포어그라운드에서 동작하는 지불 애플리케이션(113)은 사용자 컴퓨팅 장치(110)의 백그라운드에서 동작하기 시작한다. 다른 예에서, 사용자 컴퓨팅 장치(110)는 사용자 컴퓨팅 장치의 사용자 인터페이스(111)가 비활성화되고, 지불 애플리케이션(113)이 사용자 컴퓨팅 장치(110)의 운영 시스템의 백그라운드에서 동작하는 슬립 모드 또는 다른 절전 모드에서 동작한다. 일 예에서, 사용자 컴퓨팅 장치(110)상의 하나의 애플리케이션만이 언제든지 상기 포어그라운드에서 동작할 수 있다. 이 예에서, 상기 백그라운드에서 동작하는 애플리케이션은 처리 능력이 제한적이지만, 상기 포어그라운드에서 동작하는 애플리케이션은 사용자 컴퓨팅 장치(110)상에서 제한없이 실행할 수 있다. 보다 구체적으로, 상기 운영 시스템의 백그라운드에서 실행중인 지불 애플리케이션(113)은 특정 비컨 장치(120)가 동일한 비컨 장치(120) 코드를 방송할 때 특정 비컨 장치(120)를 계속해서 검출하지 않을 수 있다. 지불 애플리케이션(113)은 방송된 비컨 장치(120) 코드에 기초하여 특정 비컨 장치(120)를 초기에 검출한다. 일 예에서, 비컨 장치(120) 코드는 비컨 장치(120)와 연관된 하드웨어 식별자 또는 MAC(media access control) 어드레스를 포함한다. 그 후, 지불 애플리케이션(113)은 특정 비컨 장치에 대한 비컨 장치(120) 코드와 상이한 비컨 장치들에 대한 비컨 장치(120) 코드들만을 검출한다.
블록(620)에서, 비컨 장치(120)는 비컨 장치(120) 코드를 방송하는 것을 중단하고, 후속 비컨 장치(120) 코드를 생성한다. 일 예에서, 비컨 장치(120)는 특정 간격으로 지정된 길이의 시간 동안 비컨 장치(120) 코드를 방송한다. 예를 들어, 비컨 장치(120)는 5초 간격으로 5분 동안 비컨 장치(120) 코드를 방송한다. 또 다른 예에서, 비컨 장치(120)는 지정된 길이의 시간 동안 비컨 장치(120) 코드를 연속적으로 방송한다. 일 예에서, 비컨 장치(120)는 난수 생성기(123)를 통해 후속 비컨 장치(120) 코드를 생성한다. 후속 비컨 장치(120) 코드는 난수 생성기(123)에 의해 생성된 영숫자 및/또는 기호 문자들을 포함할 수 있다. 일 예에서, 초기 비컨 장치(120) 코드는 비컨 장치(120)의 MAC 어드레스 또는 하드웨어 식별자를 포함하고, 후속 비컨 장치(120) 코드는 하드웨어 식별자 또는 MAC 어드레스와 상이한 난수 생성기(123)에 의해 생성된 코드를 포함한다.
블록(630)에서, 비컨 장치(120)는 후속 비컨 장치(120) 코드를 방송한다. 일 예에서, 비컨 장치(120)는 특정 간격으로 특정 시간 길이 동안 비컨 장치(120)와 연관된 하드웨어 식별자 및 후속 비컨 장치(120) 코드를 방송한다. 예를 들어, 비컨 장치(120)는 5초 간격으로 5분 동안 후속 비컨 장치(120) 코드를 방송한다. 또 다른 예에서, 비컨 장치(120)는 지정된 길이의 시간 동안 연속적으로 후속 비컨 장치(120) 코드를 지속적으로 방송한다. 일 예에서, 비컨 장치(120)는 난수 생성기(123)를 통해 후속 비컨 장치(120) 코드에 후속하여 연속적인 비컨 장치(120) 코드를 생성한다. 일 예에서, 비컨 장치(120)는, 지정된 시간의 길이 동안 후속 비컨 장치(120) 코드를 방송한 후, 특정 간격으로 특정 길이의 시간 동안 또는 특정 시간의 길이 동안 연속적으로 연속적인 비컨 장치(120) 코드들 각각을 방송한다. 예를 들어, 매 5분마다, 비컨 장치(120)는 비컨 장치(120)에 의해 방송된 이전 비컨 장치(120)와 다른 새로운 비컨 장치(120) 코드를 방송한다. 일 예에서, 비컨 장치(120)는 BLE 네트워크(170) 또는 다른 로컬 무선 네트워크(170)를 통해 머천트 위치에서 상기 다른 데이터와 함께 후속 비컨 장치(120) 코드를 방송한다.
블록(640)에서, 사용자 컴퓨팅 장치(110)는 비컨 장치(120)에 의해 방송된 후속 비컨 장치(120) 코드를 수신한다. 일 예에서, 사용자 컴퓨팅 장치(110)는 머천트 시스템(110) 위치에서 BLE 네트워크(170) 또는 다른 무선 네트워크를 통해 비컨 장치(120)에 의해 방송된 후속 비컨 장치(120) 코드를 수신한다. 일 예에서, 사용자 컴퓨팅 장치(110) 지불 애플리케이션(113)은 사용자 컴퓨팅 장치(110)의 운영 시스템 상의 백그라운드에서 동작한다. 일 예에서, 후속 비컨 장치(120) 코드가 사용자 컴퓨팅 장치(110)에 의해 이전에 수신된 비컨 장치(120) 코드와 상이하기 때문에, 지불 애플리케이션(113)은 후속 비컨 장치(120) 코드를 검출한다.
블록(650)에서, 사용자 컴퓨팅 장치(110)는 후속 체크인 신호 및 사용자(101) 계정 식별자를 계정 관리 시스템(130)에 전송한다. 일 예에서, 후속 비컨 장치(120) 코드를 검출하는 것에 응답하여, 지불 애플리케이션(113)은 네트워크(170)를 통해 상기 후속 체크인 신호 및 사용자(101) 계정과 연관된 사용자(101) 계정 식별자를 계정 관리 시스템(130)에 전송한다. 일 예에서, 상기 후속 비컨 장치(120) 코드를 수신하는 것에 응답하여, 사용자 컴퓨팅 장치(110)는 사용자 컴퓨팅 장치(110)의 후속 위치 데이터를 로그하고, 상기 후속 위치 데이터, 비컨 장치(120)와 연관된 하드웨어 식별자 및 사용자(101) 계정 식별자를 포함하는 후속 체크인 신호를 네트워크(170)를 통해 계정 관리 시스템(130)에 전송한다.
블록(660)에서, 계정 관리 시스템(130)은 후속 체크인 신호 및 사용자(101) 계정 식별자를 수신한다. 예를 들어, 계정 관리 시스템(130)은 상기 체크인 신호, 사용자(101) 계정 식별자, 비컨 장치(120)의 하드웨어 식별자 및/또는 위치 데이터를 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)로부터 수신한다. 일 예에서, 비컨 장치(120)와 연관된 위치에서 현재 체크인 된 현재 사용자 컴퓨팅 장치(110)의 로그는 비컨 장치(120)의 하드웨어 식별자와 연관된다. 이 예에서, 상기 후속 체크인 신호의 일부로서, 계정 관리 시스템(130)은 비컨 장치(120)의 하드웨어 식별자를 수신하고, 상기 수신된 하드웨어 식별자에 기초하여 비컨 장치(120)와 연관된 위치에서 현재 체크인 된 현재 사용자 컴퓨팅 장치들(110)의 로그를 식별한다. 또 다른 예에서, 비컨 장치(120)와 연관된 위치에서 현재 체크인 된 현재 사용자 컴퓨팅 장치(110)의 로그는 위치 데이터와 연관된다. 이 예에서, 후속 체크인 신호의 일부로서, 계정 관리 시스템(130)은 사용자 컴퓨팅 장치(110)에 의해 로그된 상기 후속 위치 데이터를 수신하고, 그 수신된 후속 위치 데이터에 기초하여 비컨 장치(120)와 연관된 위치에서 현재 체크인 된 현재 사용자 컴퓨팅 장치들(110)의 로그를 식별한다. 예를 들어, 계정 관리 시스템(130)은 상기 체크인 신호의 일부로서 사용자 컴퓨팅 장치(110)로부터 수신된 상기 로그된 후속 위치 데이터가 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치(110)의 로그와 연관된 위치로부터의 임계 거리 내에 있는지를 결정한다.
블록(670)에서, 계정 관리 시스템(130)은 사용자(101) 계정 식별자 및 상기 후속 체크인 신호의 수신을 로그하고, 체크인시 사용자(101) 계정 지정을 유지한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 상기 수신된 사용자(101) 계정 식별자에 기초하여 사용자(101) 계정을 식별하고, 그 식별된 사용자(101) 계정과 연관된 상기 후속 체크인 신호를 로그한다. 일 예에서, 계정 관리 시스템(130)은 상기 후속 체크인 신호를 메모리 또는 데이터 저장부(136)에 로그한다. 일 예에서,
계정 관리 시스템(130)은 데이터 저장부(136) 내의 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치(110)의 로그를 모니터링하고, 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치들(110)의 로그에 상기 후속 체크인 신호를 로그한다. 일 예에서, 계정 관리 시스템(130)은 상기 후속 체크인 신호의 수신시에 현재 타임스탬프를 로그하고, 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치들(110)의 로그에서 상기 수신된 후속 체크인 신호를 상기 로그된 타임스탬프와 연관시킨다. 예를 들어, 상기 로그된 타임스탬프는 날짜, 월, 년, 시, 분, 초 및/또는 상기 로그된 현재 타임스탬프와 연관된 시간을 식별하는 다른 지정을 포함하는 시간을 포함한다.
블록(670)으로부터, 방법(250)은 도 2의 블록(260)으로 진행한다.
도 2로 돌아가서, 블록(260)에서, 계정 관리 시스템(130)은 사용자(101) 계정에 대한 체크인 상태를 모니터링한다. 예를 들어, 계정 관리 시스템(130)은 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치들(110)의 로그를 모니터링한다. 이 예에서, 계정 관리 시스템(130)은 사용자 컴퓨팅 장치(110)로부터 수신된 후속 체크인 신호들 또는 하나 이상의 체크인 신호에 기초하여 사용자 컴퓨팅 장치들(110)과 연관된 사용자(101) 계정 식별자들을 추가 및 삭제한다. 계정 관리 시스템(130)에 의해 사용자(101) 계정의 체크인 상태를 모니터링하는 방법은 도 7에서 설명된 방법(260)을 참조하여 이하에서 더 상세히 설명된다.
도 7은 특정 예들에 따라, 계정 관리 시스템(130)에 의해 사용자(101) 계정의 체크인 상태를 모니터링하는 방법(260)을 나타내는 블록도이다. 방법(260)은 도 1에 도시된 컴포넌트들을 참조하여 설명된다.
블록(710)에서, 계정 관리 시스템(130)은 체크인 신호의 수신에 응답하여 머천트 위치에 대한 현재 사용자(101) 계정 체크인 상태 로그에 사용자(101) 계정의 체크인 상태를 로그한다. 예를 들어, 상기 머천트 위치에 대한 현재 사용자(101)계정 체크인 상태 로그는 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치(110)의 로그를 포함한다. 예를 들어, 상기 머천트 위치에 대한 현재 사용자(101) 계정 체크인 상태 로그에서 사용자(101) 계정의 체크인 상태를 로그하는 방법은 블록들(510-550)에서 설명된다.
블록(720)에서, 계정 관리 시스템(130)은 후속 체크인 신호가 수신되었는지를 특정 기간 후에 결정한다. 예를 들어, 계정 관리 시스템(130)은 사용자(101) 계정에 대한 사용자 컴퓨팅 장치(110)로부터 수신된 초기 체크인 신호를 로그하고, 상기 후속 체크인 신호는 상기 초기 체크인 신호를 수신한 이후 시점에 수신된다. 예시적인 실시예에서, 상기 특정 기간은 30초, 2분, 5분, 10분 또는 다른 적절한 길이의 시간을 포함한다.
계정 관리 시스템(130)이 상기 초기 체크인 신호와 연관된 시간으로부터 상기 특정 기간 후에 후속 체크인 신호를 수신하지 못하면, 방법(260)은 블록(740)으로 진행한다. 예를 들어, 사용자(101) 계정에 대한 상기 초기 체크인 신호는 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)로부터 3시50분15초에 수신되었다. 이 예에서, 계정 관리 시스템(130)은 사용자(101) 계정에 대한 상기 초기 체크인 신호가 상기 로그된 체크인 신호와 연관된 타임스탬프에 기초하여 3시50분15초에 수신되었다고 결정한다. 이 예에서, 3시56분30초에, 계정 관리 시스템(130)은 후속 체크인 신호가 사용자 컴퓨팅 장치(110)로부터 네트워크(170)를 통해 수신되지 않았음을 검출하며, 상기 특정 기간은 5분이다. 이 예에서, 계정 관리 시스템(130)은 계정 관리 시스템(130)이 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)로부터 상기 특정 기간 내에 후속 체크인 신호를 수신하지 못한 것으로 결정한다.
블록(740)에서, 상기 계정 관리 시스템은 상기 머천트 위치에 대한 현재 사용자(101) 계정 체크인 상태 로그로부터 사용자(101) 계정 식별자를 제거한다. 예를 들어, 계정 관리 시스템(130)이 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)로부터 상기 특정 기간 내에 후속 체크인 신호를 수신하지 못했다는 결정에 응답하여, 상기 계정 관리 시스템은 상기 머천트 위치에 대한 현재 사용자(101) 계정 체크인 상태 로그로부터 사용자(101) 계정 식별자를 제거한다. 예를 들어, 상기 머천트 위치에 대한 현재 사용자(101) 계정 체크인 상태 로그로부터 사용자(101) 계정 식별자를 제거한 후, 계정 관리 시스템(130)은 계정 관리 시스템(130)이 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)로부터 후속 체크인 신호를 수신하면 상기 머천트 위치에 대한 현재 사용자(101) 계정 체크인 상태 로그에 사용자(101) 계정 식별자를 다시 추가할 수 있다. 예를 들어, 상기 머천트 위치에 대한 현재 사용자(101) 계정 체크인 상태 로그에 사용자(101) 계정 식별자를 추가하는 예시적인 방법은 도 5에서 설명된다.
블록(740)으로부터, 방법(260)은 도 2의 블록(270)으로 진행한다.
블록(720)으로 돌아가서, 계정 관리 시스템(130)이 상기 초기 체크인 신호를 로그한 후 상기 특정 기간 후에 상기 후속 체크인 신호를 수신하면, 방법(260)은 블록(730)으로 진행한다. 예를 들어, 사용자(101) 계정에 대한 초기 체크인 신호는 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)로부터 3시50분15초에 수신되었다. 이 예에서, 3시53분30초에, 계정 관리 시스템(130)은 후속 체크인 신호를 수신하거나 그렇지 않으면 상기 후속 체크인 신호가 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)로부터 수신되었음을 검출하며, 상기 특정 기간은 5분이다. 이 예에서, 계정 관리 시스템(130)은 계정 관리 시스템(130)이 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)로부터 상기 특정 기간 내에 후속 체크인 신호를 수신했는지를 결정한다.
블록(730)에서, 상기 계정 관리 시스템은 상기 머천트 위치에 대한 사용자(101) 계정 체크인 상태 로그에서 사용자(101) 계정의 체크인 상태를 유지한다. 일 실시예에서, 계정 관리 시스템(130)이 네트워크(170)를 통해 사용자 컴퓨팅 장치(110)로부터 상기 특정 기간 내에 후속 체크인 신호를 수신했는지를 결정하는 것에 응답하여, 계정 관리 시스템(130)은 후속 타임스탬프를 로그하고, 상기 후속 타임스탬프를 상기 로그된 후속 체크인 신호와 연관시킨다. 이 예에서, 상기 계정 관리 시스템은 상기 체크인 신호 및 상기 체크인 신호와 연관된 상기 로그된 타임스탬프를 삭제하고, 상기 후속 체크인 신호 및 상기 후속 체크인 신호와 연관된 상기 후속 로그된 타임스탬프를 상기 머천트 위치에 대한 현재 사용자(101) 계정 체크인 상태 로그에 추가한다.
블록(730)으로부터, 방법(260)은 도 2의 블록(270)으로 진행한다.
도 2로 돌아가서, 블록(270)에서, 사용자(101)는 머천트 시스템 POS 장치(160)에서 트랜잭션을 개시한다. 상기 머천트 POS 장치(130)에서의 트랜잭션을 사용자(101)에 의해 개시하는 방법은 도 8에서 설명된 방법(270)을 참조하여 이하에서 더 상세하게 설명된다. 여기에 설명된 예들에서, 사용자(101)는 상기 머천트 POS 장치(160)에서 "핸즈프리 트랜잭션"을 개시한다. 예시적인 핸즈프리 트랜잭션은 사용자(101) 측에서 사용자 컴퓨팅 장치(110)와 어떠한 상호 작용도 요구하지 않는다. 다른 예에서, 핸즈프리 트랜잭션은 사용자(101)에 의한 사용자 컴퓨팅 장치(110)와의 최소한의 상호 작용만을 필요로한다.
도 8은 특정 예들에 따라, 사용자(101)에 의해 머천트 POS 장치(160)에서의 트랜잭션을 개시하는 방법(270)을 나타내는 블록도이다. 방법(270)은 도 1에 도시된 컴포넌트들을 참조하여 설명된다.
블록(810)에서, 사용자(101)는 머천트 POS 장치(160)에 접근한다. 일 예에서, 머천트 POS 장치(160)에 접근하기 전에, 사용자(101)는 상기 머천트 시스템 위치를 브라우징하고, 구매할 하나 이상의 아이템을 선택한다. 이 예에서, 사용자(101)는 하나 이상의 아이템을 수집하고, 물리적인 바스켓 또는 쇼핑 카트를 통해 하나 이상의 아이템을 머천트 POS 장치(160)로 운반할 수 있다.
블록(820)에서, 머천트 POS 장치(160) 운영자는 구매를 위해 사용자(101)의 아이템들을 합산한다. 일 예에서, 머천트 POS 장치(160) 운영자는 하나 이상의 아이템에 부착된 바코드를 스캔하거나 그렇지 않으면 하나 이상의 아이템과 연관된 설명들 및 가격들을 머천트 POS 장치(160)에 입력한다. 예를 들어, 머천트 POS 장치(160)에 상기 아이템들을 수동으로 입력하거나 스캐닝한 후에, 상기 머천트 POS 장치 운영자는 지불 애플리케이션(163)을 통해 머천트 POS 장치(160)의 사용자 인터페이스(165)상의 오브젝트를 작동시켜 상기 아이템들을 합산하도록 머천트 POS 장치(160)에 지시한다. 일 예에서, 머천트 POS 장치(160)는 사용자 인터페이스(165)를 통해 사용자(101)에게 상기 합산의 결과를 디스플레이한다. 일 예에서, 머천트 POS 장치(160) 운영자는 사용자(101)에게 지불 옵션을 선택하도록 요청한다. 일 예에서, 머천트 POS 장치(160)는 사용자(101)가 트랜잭션에서 사용하도록 선택할 수 있는 하나 이상의 지불 옵션을 디스플레이한다. 예시적인 지불 옵션들은 계정 관리 시스템(130)과 연관된 지불 애플리케이션(113)을 통한 지불, 현금 지불, 수표 지불, 신용 카드 지불, 직불 카드 지불 및/또는 상기 머천트 시스템이 사용자(101)로부터 지불을 위해 기꺼이 받아들일 수 있거나 지불하고자 하는 임의의 다른 지불 수단을 포함할 수 있다. 일 예에서, 하나 이상의 지불 옵션은 사용자 인터페이스(165) 상에 오브젝트들로서 디스플레이되고, 사용자(101)가 선택하도록 머천트 POS 장치(160) 운영자에게 지시하는 것에 응답하여 머천트 POS 장치(160) 운영자에 의해 선택 가능하다. 일 예에서, 사용자(101)는 지불 애플리케이션(113)을 통해 트랜잭션을 개시하도록 머천트 POS 장치(160) 운영자에게 지시한다. 일 예에서, 지불 애플리케이션(113)을 지불 옵션으로서 선택하기 위해 사용자(101)로부터 구두 요청을 수신한 것에 응답하여, 머천트 POS 장치(160) 운영자는 지불 애플리케이션(113) 지불 옵션에 대응하는 머천트 POS 장치(160)의 사용자 인터페이스(165)상의 오브젝트를 작동시킨다.
블록(830)에서, 머천트 POS 장치(160) 운영자는 지불 애플리케이션(113)을 사용하여 트랜잭션을 개시하도록 머천트 POS 장치(160)상의 옵션을 선택한다. 일 예에서, 머천트 POS 장치(160)는 머천트 POS 장치(160) 운영자가 지불 애플리케이션(113)을 사용하여 트랜잭션을 개시하도록 옵션을 선택한 후에 확인 화면을 디스플레이한다. 예시적인 확인 화면은 잠재적 트랜잭션을 요약하고, 하나 이상의 트랜잭션 합계, 사용자(101)에 의해 구매되는 하나 이상의 아이템에 대한 설명, 사용자(101)가 상기 트랜잭션에 대한 지불 방법으로서 지불 애플리케이션(113)을 선택했다는 인디케이션을 포함하는 정보를 디스플레이한다. 예시적인 확인 화면은 상기 트랜잭션을 확인하거나 그 트랜잭션을 취소하는 옵션들을 더 디스플레이할 수 있다. 예를 들어, 사용자(101)는 상기 확인 화면을 검토하고, 그 확인 화면에 디스플레이된 상기 정보가 정확한 것인지를 결정하고, 상기 트랜잭션을 계속하기로 결정하고, 머천트 POS 장치(160) 운영자에게 사용자 인터페이스(165)를 통해 상기 트랜잭션을 확인하기 위해 상기 옵션을 선택하도록 지시한다.
다른 예에서, 사용자(101)는 상기 정보가 부정확하거나 사용자(101)가 변심하여 상기 아이템들을 구매하지 않기로 결정하여 상기 트랜잭션을 포기하기로 결정한다. 또 다른 예에서, 상기 확인 화면은 트랜잭션 세부사항들을 편집하는 옵션을 더 포함한다. 이 예에서, 머천트 POS 장치(160) 운영자는 사용자(101)의 지시에 따라 상기 트랜잭션 세부사항들을 편집하는 옵션을 선택할 수 있고, 그 다음 상기 트랜잭션의 아이템들 중 하나 이상을 편집, 추가 또는 삭제하거나 상기 트랜잭션에 대한 지불 방법들 또는 지불 세부사항들을 편집할 수 있다.
블록(840)에서, 머천트 POS 장치(160)는 트랜잭션을 처리하기 위한 요청을 계정 관리 시스템(130)에 전송한다. 일 예에서, 머천트 POS 장치(160)는 네트워크(170)를 통해 POS 장치(160) 사용자이름 및 패스워드를 포함하는 계정 관리 시스템(130)에 트랜잭션을 처리하기 위한 요청을 전송한다. 일 예에서, 머천트 시스템이 계정 관리 시스템(130)에 등록할 때, 상기 머천트 시스템은 상기 머천트 시스템 위치에서 각각의 머천트 POS 장치(160)와 연관된 별도의 사용자이름 및 패스워드를 설정한다. 일 예에서, 머천트 POS 장치(160) 운영자는 머천트 POS 장치(160)의 지불 애플리케이션(163)을 통해 머천트 POS 장치(160)와 연관된 사용자이름 및 패스워드를 설정한다. 이 예에서, 계정 관리 시스템(130)은 상기 머천트 시스템 위치에서 각 머천트 POS 장치(160)에 대한 머천트 POS 장치(160) 식별자를 포함하는 데이터베이스를 유지한다. 예를 들어, 머천트 POS 장치(160) 식별자는 MAC(media access control) 어드레스 또는 인터넷 프로토콜(IP") 어드레스를 포함할 수 있다.
블록(850)에서, 계정 관리 시스템(130)은 상기 트랜잭션을 처리하기 위한 요청을 수신한다. 일 예에서, 계정 관리 시스템(130)은 네트워크(170)를 통해 트랜잭션 및 POS 장치(130) 사용자이름 및 패스워드를 처리하기 위한 요청을 수신한다. 일 예에서, 계정 관리 시스템(130)은 머천트 POS 장치(160)와 연관된 상기 수신된 사용자이름 및 패스워드에 기초하여 머천트 POS 장치(130) 및 머천트 시스템 위치를 식별한다.
블록(860)에서, 계정 관리 시스템(130)은 현재 고객 로그를 머천트 POS 장치(160)에 전송하고, 머천트 POS 장치(160)는 상기 현재 고객 로그를 디스플레이한다. 일 예에서, 계정 관리 시스템(130)은 상기 식별된 머천트 시스템 위치에 대한 현재 고객 로그를 식별 및 검색한다. 예를 들어, 실시예에서, 상기 현재 고객 로그는 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치들(110)의 로그를 포함한다. 일 예에서, 상기 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치(110)의 로그는 체크인 신호들 및/또는 후속 체크인 신호들이 특정 갈이의 시간 내에 수신된 사용자 컴퓨팅 장치들(110)의 리스트를 포함한다. 예시적인 실시예에서, 계정 관리 시스템(130)은 사용자(101) 얼굴 이미지들, 각 사용자(101) 계정과 연관된 챌린지 및/또는 응답 또는 비컨 장치(120)와 연관된 위치에서 현재 체크인된 현재 사용자 컴퓨팅 장치들(110)의 로그 상에 리스트된 사용자(101) 계정 또는 각 사용자 컴퓨팅 장치(110)와 연관된 다른 식별 데이터와 함께 상기 현재 고객 로그를 전송한다.
블록(870)에서, 머천트 POS 장치(160) 운영자는 사용자(101) 계정이 상기 현재 고객 로그에 리스트되어 있는지 여부를 결정한다. 특정 예들에서, 머천트 POS 장치(160) 운영자는 챌린지 및 응답을 통해 사용자(101)를 식별한다. 예를 들어, 머천트 POS 장치(160) 운영자(102)는 사용자(101)에게 챌린지를 발행한다. 일 예에서, 머천트 POS 장치(160) 운영자는 사용자(101)의 이니셜을 사용자에게 요청한다. 다른 예에서, 머천트 POS 장치(160) 운영자는 사용자(101)의 전화번호의 마지막 네 자리를 사용자(101)에게 요청한다. 다른 예에서, 머천트 POS 장치(160) 운영자는 설정된 패스워드를 사용자(101)에게 요청한다. 임의의 적합한 챌린지가 머천트 POS 장치(160) 운영자에 의해 발행될 수 있다. 일 예에서, 상기 챌린지에 대한 응답은 보안 또는 개인 정보를 제공하지 않는다. 이 예에서, 사용자(101)는 챌린지 응답을 제공한다. 예시적인 챌린지에서 설명한 것처럼, 상기 응답은 사용자(101)의 이니셜, 사용자(101)의 전화번호의 마지막 4자리, 설정된 패스워드, 또는 사용자(101)와 연관된 임의의 다른 데이터일 수 있다.
임의의 설정된 챌린지 응답이 활용될 수 있다. 특정 실시예들에서, 상기 응답은 음성 응답, 손 제스처, 키패드 입력, 식별 카드의 디스플레이, 또는 임의의 적절한 응답일 수 있다. 일 예에서, POS 장치(130) 운영자는 머천트 POS 장치(160)에 상기 응답을 입력한다. 머천트 POS 장치(160) 운영자는 사용자(101)의 챌린지 응답을 입력한다. 예를 들어, 사용자(101)가 사용자(101)의 이니셜이 "AC"라고 나타내는 경우, 머천트 POS 장치 운영자는 머천트 POS 장치(160)의 지불 애플리케이션(163)에 "AC"를 입력한다. 일 예에서, 머천트 POS 장치(160)의 사용자 인터페이스(165)는 사용자(101)의 응답의 엔트리에 대한 요청을 디스플레이한다. 상기 머천트 POS 장치 운영자는 가상 또는 물리적인 키보드, 음성 딕테이션(voice dictation) 또는 적절한 방식으로 상기 응답을 입력한다. 다른 예에서, 사용자(101)는 머천트 POS 장치(160)의 사용자 인터페이스(165)에 응답을 입력한다. 이 예에서, 머천트 POS 장치(130)는 상기 챌린지 응답에 기초하여 잠재적인 사용자들(101)을 디스플레이한다. 머천트 POS 장치(160)는 상기 챌린지 응답에 기초하여 잠재적인 사용자들(101)을 디스플레이한다. 상기 챌린지 응답과 연관된 사용자들(101) 리스트는 머천트 POS 장치(160)상에서 머천트 POS 장치(160) 운영자에 디스플레이된다. 예를 들어, 10명의 고객이 연관된 머천트 비컨 장치(120)의 부근에 있고, 10명의 고객 각각과 연관된 사용자 컴퓨팅 장치들(110)이 계정 관리 시스템(130)에 체크인 신호 또는 후속 체크인 신호를 전송한 경우, 머천트 POS 장치(160)는 계정 관리 시스템(130)으로부터 상기 현재 고객 로그와 함께 각 10명의 고객의 각 사용자(101) 계정와 연관된 챌린지 응답을 수신할 수 있다. 머천트 POS 장치(160)가 챌린지 응답 입력을 수신하면, 상기 챌린지 응답과 연관된 잠재적인 사용자들(101)만이 상기 현재 고객 로그로부터 사용자 인터페이스(165)를 통해 머천트 POS 장치(160) 운영자에게 디스플레이된다.
지불 애플리케이션(163)은 머천트 POS 장치(160) 운영자에게 제시되는 잠재적인 사용자(101) 계정들의 화상을 표시할 수 있다. 예를 들어, 각 사용자(101)는 화상을 사용자(101) 계정과 연관시킬 수 있다. 머천트 POS 장치(160)가 하나 이상의 잠재적인 사용자(101) 계정들을 머천트 POS 장치 운영자에게 제시할 때, 머천트 POS 장치 운영자는 상기 트랜잭션을 수행하는 사용자(101)와 매치하는 화상에 기초하여 적절한 사용자(101) 계정을 선택할 수 있다. 다른 식별 정보는 화상 대신에 또는 화상에 추가로 제시될 수 있다. 예를 들어, 사용자(101)의 이름이 디스플레이될 수 있고, 머천트 POS 장치 운영자(102)는 그 이름으로 잠재적인 사용자(101)를 식별할 수 있다. 임의의 다른 적합한 식별 정보가 제시될 수 있다.
머천트 POS 장치(160) 운영자가 사용자(101) 계정이 상기 현재 고객 로그에 리스트되지 않았다고 결정하면, 방법(270)은 블록(880)으로 진행한다. 예를 들어, 상기 현재 고객 로그는 상기 트랜잭션을 수행하기를 원하는 사용자(101)와 연관된 정보를 포함하지 않으며 및/또는 머천트 POS 장치(160) 운영자는 체크아웃 중에 사용자(101)에 의해 제공된 정보 및/또는 상기 현재 고객 로그 내의 정보에 기초하여 사용자(101)를 식별할 수 없다.
블록(880)에서, 머천트 POS 장치(160) 운영자는 상기 트랜잭션을 취소한다. 예를 들어, 상기 디스플레이된 현재 고객 로그 내의 얼굴 이미지들, 계정 정보 또는 다른 식별 정보 중 어느 것도 상기 트랜잭션 수행을 원하는 사용자(101)의 정보와 일치하지 않는다. 일 예에서, 머천트 POS 장치(160) 운영자는 머천트 POS 장치(160)의 사용자 인터페이스(165)상의 오브젝트를 작동시킴으로써 상기 트랜잭션을 취소할 수 있으며, 불일치를 사용자(101)에게 통지하거나, 임의의 다른 적절한 액션을 수행할 수 있다. 다른 예에서, 머천트 POS 장치(160)는 사용자 인터페이스(165)와 상호 작용하여 상기 트랜잭션에서 사용하기 위해 사용자(101)로부터 다른 지불 방법을 요청하도록 머천트 POS 장치(160)에 지시한다.
블록(870)으로 돌아가서, 머천트 POS 장치(160) 운영자가 사용자(101) 계정이 상기 현재 고객 로그에 리스트되어 있는 것으로 결정하면, 방법(270)은 블록(890)으로 진행한다.
블록(890)에서, 머천트 POS 장치(160) 운영자는 상기 현재 고객 로그로부터 사용자(101)에 대응하는 사용자(101) 계정을 선택한다. 예를 들어, 머천트 POS 장치 운영자는 상기 트랜잭션에서 사용하기 위한 사용자(101) 계정을 선택한다. 사용자(101)의 디스플레이된 화상을 식별한 후, 머천트 POS 장치(160) 운영자는 상기 화상과 연관된 사용자 인터페이스(165) 제어를 작동시키거나 임의의 적절한 방식으로 상기 선택을 입력함으로써 사용자(101)의 상기 선택을 입력할 수 있다.
일 예에서, 단일 사용자(101) 계정만이 잠재적인 사용자들(101)의 리스트에 제시된다. 단일 사용자(101) 계정만이 식별되면, 상기 방법은 머천트 POS 장치(160) 운영자가 상기 디스플레이된 화상이 사용자(101)와 일치하는지를 검증한 후에 진행될 수 있다. 상기 화상이 일치하지 않으면, 머천트 POS 장치(160) 운영자는 상기 트랜잭션을 취소하거나 상기 불일치를 사용자(101)에게 통보하거나 임의의 다른 적절한 액션을 수행할 수 있다. 특정 예들에서, 머천트 POS 장치(160) 운영자는 예를 들어 사용자(101)의 신원 문서를 보기를 요청함으로써 상기 트랜잭션에 대한 사용자(101) 식별자를 선택하기 전에 사용자(101)의 신원을 검증하기 위한 추가 단계를 취할 수 있다.
블록(890)으로부터, 방법(270)은 도 2의 블록(280)으로 진행한다.
도 2로 돌아가서, 블록(280)에서, 계정 관리 시스템(130)은 머천트 시스템 위치에서 개시된 트랜잭션을 처리한다. 계정 관리 시스템(130)에 의해 트랜잭션을 처리하기 위한 방법(280)은 도 9에서 설명된 방법(280)을 참조하여 보다 상세하게 설명된다.
도 9는 특정 예들에 따라, 계정 관리 시스템(130)에 의해 트랜잭션을 처리하기 위한 방법(280)을 나타내는 블록도이다. 방법(280)은 도 1에 도시된 컴포넌트들을 참조하여 설명된다.
블록(910)에서, 계정 관리 시스템(130)은 사용자(101) 식별자를 포함하는 머천트 POS 장치(160)로부터 트랜잭션을 처리하도록 하는 요청을 수신한다. 예를 들어, 트랜잭션에서 사용하기 위한 사용자(101) 계정을 선택하는 머천트 POS 장치 운영자에 응답하여, 머천트 POS 장치(160)는 상기 선택된 사용자(101) 계정과 연관된 사용자(101) 계정 식별자를 전송하거나 그렇지 않으면 상기 트랜잭션을 처리하도록 하는 요청과 함께 네트워크(170)를 통해 계정 관리 시스템(130)에 사용자(101) 계정의 선택에 대한 인디케이션을 전송한다. 일 예에서, 계정 관리 시스템(130)은 머천트 시스템 지불 계정 식별자, 트랜잭션 합계, 트랜잭션에서 구매되는 하나 이상의 아이템들에 대한 설명, 기타 관련 트랜잭션 세부정보들을 포함하는 트랜잭션 세부사항들을 네트워크(170)를 통해 계정 관리 시스템(130)에 전송한다. 상기 트랜잭션 세부사항들은 머천트 시스템 지불 계정과 연관된 만료 날짜 또는 상기 머천트 시스템의 어드레스와 같은 트랜잭션을 처리하기 위해 계정 관리 시스템(130)에 필요한 정보를 포함할 수 있다. 일 예에서, 계정 관리 시스템(130)은 상기 머천트 시스템과 연관된 계정의 상기 트랜잭션 세부사항들의 일부 또는 전부를 이미 포함한다.
블록(920)에서, 계정 관리 시스템(130)은 상기 선택된 사용자(101) 계정의 계정 정보를 머천트 POS 장치(160)에 송신한다. 예를 들어, 계정 관리 시스템(130)으로 사용자(101) 계정은 사용자(101)의 하나 이상의 지불 계정과 연관된 지불 계정 정보를 포함한다. 사용자(101)의 예시적인 지불 계정은 신용 계정, 은행 계정, 저장된 중요한 계정, 선물 카드, 머천트 시스템 요금 계정, 또는 다른 관련 사용자(101) 계정을 포함한다. 일 예에서, 머천트 POS 장치(130)는 사용자(101) 지불 계정들 중에서 하나 이상에 대한 전체 지불 정보를 수신하지 않는다. 예를 들어, 상기 지불 정보가 난독화되거나, 오류가 발생하거나, 잘릴 수 있다. 예를 들어, 머천트 POS 장치(160)는 사용자 인터페이스(165)를 통해 사용자(101)가 지불 계정을 식별하기에 충분한 축약된 지불 정보만을 수신할 수 있다.
블록(930)에서, 머천트 POS 장치(160)는 상기 선택된 사용자(101)의 계정을 디스플레이한다. 예를 들어, 머천트 POS 장치(160)는 사용자 인터페이스(165) 상에 사용자(101)의 전체 계정 정보를 디스플레이하지 않는다. 예를 들어, 신용 카드 계정의 경우, 머천트 POS 장치 사용자 인터페이스(165)는 신용 카드와 연관된 이름, 신용 카드 번호의 마지막 4자리 및 만료 날짜만을 디스플레이할 수 있다.
블록(940)에서, 머천트 POS 장치(160) 운영자는 상기 트랜잭션을 위한 사용자(101) 계정을 선택하고, 사용자(101)의 허가하에 상기 트랜잭션을 확인한다. 예를 들어, 사용자(101)는 사용자 인터페이스(165) 상에 직접 디스플레이된 계정 옵션들을 보거나 머천트 POS 장치(160) 운영자가 사용자(101)에게 사용자(101) 지불 계정 옵션들을 읽는 것을 청취한다. 일 예에서, 사용자(101)는 트랜잭션에서 사용할 지불 계정 옵션을 선택한다. 예를 들어, 사용자(101)는 신용 카드 계정을 사용하기로 결정한다. 일 예에서, 사용자(101)는 트랜잭션에서 사용하기 위한 지불 계정의 선택을 머천트 POS 장치(160) 운영자에게 전달한다. 예를 들어, 상기 지불 계정의 사용자(101) 인디케이션을 수신하는 것에 응답하여, 머천트 POS 장치(160) 운영자는 머천트 POS 장치 사용자 인터페이스(165)상의 사용자(101)에 의해 표시된 지불 계정을 선택한다.
블록(950)에서, 머천트 POS 장치(160)는 트랜잭션 세부사항들 및 상기 선택된 특정 지불 계정의 인디케이션을 계정 관리 시스템(130)에 전송한다. 예를 들어, 머천트 POS 장치(160)는 트랜잭션 합계, 머천트 시스템의 계정 식별자 및 사용자(101) 계정 지불 옵션의 선택을 포함하는 트랜잭션 세부사항들을 전송한다. 일 예에서, 계정 관리 시스템(130)은 네트워크(170)를 통해 트랜잭션 세부사항들을 수신한다. 일 예에서, 계정 관리 시스템(130)은 사용자(101) 지불 계정의 상기 수신된 선택에 대응하는 사용자(101) 계정으로부터 지불 계정 정보를 추출한다.
블록(960)에서, 계정 관리 시스템(130)은 발급자 시스템(140)에 트랜잭션 승인 요청을 전송한다. 일 예에서, 계정 관리 시스템(130)은 사용자(101) 지불 계정 정보, 머천트 시스템 지불 계정 정보, 및 트랜잭션의 합계를 포함하는 트랜잭션 승인 요청을 생성한다. 예를 들어, 계정 관리 시스템(130)은 네트워크(170)를 통해 계정 관리 시스템(130)으로부터 상기 트랜잭션 승인 요청을 수신한다.
블록(970)에서, 발급자 시스템(140)은 트랜잭션 승인 요청을 승인하고, 지불 처리 시스템(150)에 트랜잭션 승인 인가를 전송한다. 일 예에서, 발급자 시스템(140)은 사용자(101)의 현재 계정 잔액을 사용자(101)의 신용 계정과 연관된 사용자(101)의 신용 한도에서 차감한다. 예를 들어, 상기 신용 한도와 신용 잔액 간의 차이가 상기 트랜잭션의 합계보다 큰 양수인 경우, 발급자 시스템(140)은 트랜잭션 승인을 승인한다. 예를 들어, 트랜잭션이 승인되면 사용자(101)는 그의 신용 한도를 초과하지 않을 것이므로, 발급자 시스템(140)은 트랜잭션 승인 요청을 승인한다. 일 예에서, 지불 처리 시스템(150)은 발급자 시스템(140)으로부터 트랜잭션 승인 인가를 수신한다. 다른 예에서, 지불 처리 시스템(150)은 발급자 시스템(140)이 트랜잭션 승인 요청을 거절하는 것에 응답하여 트랜잭션 승인 요청의 거부를 수신한다. 예를 들어, 발급자 시스템(140)이 트랜잭션 승인 요청을 승인하면, 발급자 시스템(140)은 머천트 시스템 계정을 신용하고, 사용자(101) 신용 계정 명세서, 은행 계정 명세서 또는 다른 적절한 명세서에 요금을 부가한다.
블록(980)에서, 계정 관리 시스템(130)은 트랜잭션 영수증을 머천트 POS 장치(160)에 송신한다. 예를 들어, 계정 관리 시스템(130)은 네트워크(170)를 통해 머천트 POS 장치(160)에 트랜잭션의 승인 확인 또는 거부된 트랜잭션의 통지를 전송한다. 일 예에서, 머천트 POS 장치(160)는 머천트 POS 장치(160)의 컴포넌트이거나 그렇지 않으면 머천트 POS 장치(160)에 통신 가능하게 결합된 프린터 장치를 통해 트랜잭션 성공 또는 실패에 대한 요약을 포함하는 영수증을 프린트한다. 다른 예에서, 계정 관리 시스템(130)은 사용자 컴퓨팅 장치상에 디스플레이될 트랜잭션 영수증을 사용자 컴퓨팅 장치(110)에 전송할 수 있다. 또 다른 예에서, 머천트 POS 장치(160)는 사용자 컴퓨팅 장치상에 디스플레이될 트랜잭션 영수증을 사용자 컴퓨팅 장치(110)에 전송한다.
다른 예들
도 2는 특정 예들에 따른 컴퓨팅 머신(2000) 및 모듈(2050)을 나타낸다. 컴퓨팅 머신(2000)은 여기에 제시된 다양한 컴퓨터들, 서버들, 모바일 장치들, 임베디드 시스템들 또는 컴퓨팅 시스템들 중 임의의 것에 대응할 수 있다. 모듈(2050)은 여기에 제시된 다양한 방법들 및 처리 기능들을 수행함에 있어서 컴퓨팅 머신(2000)을 용이하게 하도록 구성된 하나 이상의 하드웨어 또는 소프트웨어 구성요소들을 포함할 수 있다. 컴퓨팅 머신(2000)은 네트워크(2080)와 통신하기 위한 프로세서(2010), 시스템 버스(2020), 시스템 메모리(2030), 저장 매체(2040), 입/출력 인터페이스(2060) 및 네트워크 인터페이스(2070)와 같은 다양한 내부 또는 부착된 컴포넌트들을 포함할 수 있다.
컴퓨팅 머신(2000)은 종래의 컴퓨터 시스템, 임베디드 컨트롤러, 랩탑, 서버, 모바일 장치, 스마트폰, 셋톱 박스, 키오스크, 차량 정보 시스템, 텔레비전와 연관된 하나 이상의 프로세서들, 개인화된 머신, 임의의 다른 하드웨어 플랫폼, 또는 이들의 임의의 조합 또는 다중 조합으로 구현될 수 있다. 컴퓨팅 머신(2000)은 데이터 네트워크 또는 버스 시스템을 통해 상호 연결된 다수의 컴퓨팅 머신을 사용하여 기능하도록 구성된 분산 시스템일 수 있다.
프로세서(2010)는 여기에 설명된 동작들 및 기능을 수행하고, 요청 흐름 및 어드레스 매핑을 관리하고, 계산을 수행하도록 하는 명령어들 또는 코드를 실행하도록 구성되고, 명령들을 생성하도록 구성될 수 있다. 프로세서(2010)는 컴퓨팅 머신(2000) 내의 컴포넌트들의 동작을 모니터링하고 제어하도록 구성될 수 있다.
프로세서(2010)는 범용 프로세서, 프로세서 코어, 멀티프로세서, 재구성 가능한 프로세서, 마이크로 컨트롤러, 디지털 신호 프로세서(DSP), ASIC(application specific integrated circuit), 그래픽 처리 장치(GPU), FPGA(field programmable gate array), 프로그램 가능 로직 장치(PLD), 컨트롤러, 상태 머신, 게이트 로직, 이산 하드웨어 컴포넌트들, 임의의 다른 프로세싱 유닛, 또는 이들의 임의의 조합 또는 다수의 조합일 수 있다. 프로세서(2010)는 단일 처리 유닛, 다중 처리 유닛, 단일 처리 코어, 다중 처리 코어, 범용 처리 코어들, 코프로세서들 또는 이들의 임의의 조합일 수 있다. 특정 실시예들에 따르면, 컴퓨팅 머신(2000)의 다른 컴포넌트들과 함께 프로세서(2010)는 하나 이상의 다른 컴퓨팅 머신들 내에서 실행되는 가상화된 컴퓨팅 머신일 수 있다.
시스템 메모리(2030)는 ROM(read-only memory)과 같은 비휘발성 메모리, 프로그램 가능 판독 전용 메모리(PROM), 소거 가능한 프로그램가능 판독 전용 메모리(EPROM), 플래시 메모리 또는 인가된 전력으로 또는 전력 없이 프로그램 명령어들 또는 데이터를 저장할 수 있는 임의의 다른 장치를 포함할 수 있다. 상기 시스템 메모리(2030)는 RAM(random access memory), SRAM(static random access memory), DRAM(dynamic random access memory) 및 SDRAM(synchronous dynamic random access memory)과 같은 휘발성 메모리들을 포함할 수 있다. 다른 유형들의 RAM이 또한 시스템 메모리(2030)를 구현하는데 사용될 수 있다. 시스템 메모리(2030)는 단일 메모리 모듈 또는 다중 메모리 모듈을 사용하여 구현될 수 있다. 시스템 메모리(2030)가 컴퓨팅 머신(2000)의 일부로서 도시되어 있지만, 당업자라면 본 기술의 범위를 벗어나지 않고 시스템 메모리(2030)가 컴퓨팅 머신(2000)과 별개인 것으로 인식할 것이다. 또한, 시스템 메모리(2030)는 저장 매체(2040)와 같은 비휘발성 저장 장치를 포함할 수 있거나 또는 비휘발성 저장 장치와 함께 동작되는 것으로 이해될 것이다.
저장 매체(2040)는 하드 디스크, 플로피 디스크, CD-ROM(compact disc read only memory), DVD(digital versatile disc), 블루레이 디스크, 자기 테이프, 플래시 메모리, 다른 비휘발성 메모리 장치, SSD(solid state drive), 임의의 자기 저장 장치, 임의의 광학 저장 장치, 모든 전기 저장 장치, 임의의 반도체 저장 장치, 임의의 물리적 기반 저장 장치, 임의의 다른 데이터 저장 장치, 또는 이들의 임의의 조합 또는 다수의 조합을 포함할 수 있다. 저장 매체(2040)는 하나 이상의 운영 시스템, 애플리케이션 프로그램들 및 모듈(2050), 데이터 또는 임의의 다른 정보와 같은 프로그램 모듈들을 저장할 수 있다. 저장 매체(2040)는 컴퓨팅 머신(2000)의 일부이거나 컴퓨팅 머신(2000)에 연결될 수 있다. 저장 매체(2040)는 서버들, 데이터베이스 서버들, 클라우드 스토리지, 네트워크 부착 스토리지 등과 같은 컴퓨팅 머신(2000)과 통신하는 하나 이상의 다른 컴퓨팅 머신의 일부일 수도 있다.
모듈(2050)은 여기에 제시된 다양한 방법들 및 처리 기능들을 수행하는 컴퓨팅 머신(2000)을 용이하게 하도록 구성된 하나 이상의 하드웨어 또는 소프트웨어 구성요소들을 포함할 수 있다. 모듈(2050)은 시스템 메모리(2030), 저장 매체(2040) 또는 둘 모두와 연관된 소프트웨어 또는 펌웨어로서 저장된 하나 이상의 명령어 시퀀스를 포함할 수 있다. 따라서, 저장 매체(2040)는 명령어들 또는 코드가 프로세서(2010)에 의한 실행을 위해 저장될 수 있는 머신 또는 컴퓨터 판독가능 매체의 예들을 나타낼 수 있다. 머신 또는 컴퓨터 판독가능 매체는 일반적으로 프로세서(2010)에 명령어들을 제공하는데 사용되는 임의의 미디어 또는 매체를 지칭할 수 있다. 모듈(2050)과 연관된 그러한 머신 또는 컴퓨터 판독가능 매체는 컴퓨터 소프트웨어 제품을 포함할 수 있다. 모듈(2050)을 포함하는 컴퓨터 소프트웨어 제품은 또한 네트워크(2080), 임의의 신호-베어링 매체, 또는 임의의 다른 통신 또는 다른 전달 기술을 통해 컴퓨팅 머신(2000)에 모듈(2050)을 전달하기 위한 하나 이상의 프로세스 또는 방법들과 연관될 수 있는 것으로 이해되어야 한다. 모듈(2050)은 또한 FPGA 또는 다른 PLD에 대한 마이크로코드 또는 구성 정보와 같은 하드웨어 회로들을 구성하기 위한 정보를 또는 하드웨어 회로들을 포함할 수 있다.
입/출력(I/O) 인터페이스(2060)는 하나 이상의 외부 장치에 연결되고, 하나 이상의 외부 장치로부터 데이터를 수신하고, 하나 이상의 외부 장치에 데이터를 전송하도록 구성될 수 있다. 이러한 외부 장치들은 다양한 내부 장치들과 함께 주변 장치들로도 알려져있을 수 있다. I/O 인터페이스(2060)는 다양한 주변 장치들을 컴퓨팅 머신(2000) 또는 프로세서(2010)에 동작 가능하게 연결하기 위한 전기적 및 물리적 연결들을 포함할 수 있다. I/O 인터페이스(2060)는 주변 장치들, 컴퓨팅 머신(2000) 또는 프로세서(2010) 간에 데이터, 어드레스 및 제어 신호들을 전달하도록 구성될 수 있다. I/O 인터페이스(2060)는 소형 컴퓨터 시스템 인터페이스("SCSI"), 직렬 접속 SCSI(SAS), 파이버 채널, PCI(peripheral component interconnect), PCI 익스프레스(PCIe), 직렬 버스, 병렬 버스, ATA(advanced technology attached), 직렬 ATA(SATA), 범용 직렬 버스(USB), 썬더볼트, 파이어와이어, 다양한 비디오 버스들 등과 같은 임의의 표준 인터페이스를 구현하도록 구성될 수 있다. I/O 인터페이스(2060)는 단지 하나의 인터페이스 또는 버스 기술을 구현하도록 구성될 수 있다. 대안으로, I/O 인터페이스(2060)는 다중 인터페이스 또는 버스 기술들을 구현하도록 구성될 수 있다. I/O 인터페이스(2060)는 시스템 버스(2020)의 일부로서 또는 시스템 버스(2020)와 함께 동작하도록 구성될 수 있다. I/O 인터페이스(2060)는 하나 이상의 외부 장치들, 내부 장치들, 컴퓨팅 머신(2000) 또는 프로세서(2010) 간의 전송들을 버퍼링하기 위한 하나 이상의 버퍼를 포함할 수 있다.
I/O 인터페이스(2060)는 컴퓨팅 머신(2000)을 마우스들, 터치 스크린들, 스캐너들, 전자 디지타이저들, 센서들, 수신기들, 터치패드들, 트랙볼들, 카메라들, 마이크로폰들, 키보드들, 임의의 다른 포인팅 장치들 또는 이들 중 임의의 조합들을 포함하는 다양한 입력 장치에 연결할 수 있다. I/O 인터페이스(2060)는 컴퓨팅 머신(2000)에 비디오 디스플레이들, 스피커들, 프린터들, 프로젝터들, 촉각 피드백 장치들, 자동화 제어, 로봇 컴포넌트들, 액추에이터들, 모터들, 팬들, 솔레노이드들, 밸브들, 펌프들, 송신기들, 신호 방출기들, 조명들 등을 포함하는 다양한 출력 장치를 연결할 수 있다.
컴퓨팅 머신(2000)은 네트워크(2080)를 통한 컴퓨팅 머신들 또는 네트워크 인터페이스(2070)를 통한 하나 이상의 다른 시스템들에 대한 로직 연결들을 사용하여 네트워크 환경에서 동작할 수 있다. 네트워크(2080)는 광역 네트워크(WAN), 근거리 통신망(LAN), 인트라넷, 인터넷, 무선 액세스 네트워크, 유선 네트워크, 이동 네트워크, 전화 네트워크, 광 네트워크, 또는 이들의 조합을 포함할 수 있다. 네트워크(2080)는 임의의 토폴로지의 패킷 교환, 회선 교환방식일 수 있으며, 임의의 통신 프로토콜을 사용할 수 있다.
네트워크(2080) 내의 통신 링크들은 광섬유 케이블들, 자유 공간 광학장치들, 도파관들, 전기 전도체들, 무선 링크들, 안테나들, 무선 주파수 통신들 등과 같은 다양한 디지털 또는 아날로그 통신 매체를 포함할 수 있다.
프로세서(2010)는 시스템 버스(2020)를 통해 여기에서 설명된 컴퓨팅 머신(2000)의 다른 구성요소들 또는 다양한 주변장치들에 연결될 수 있다. 시스템 버스(2020)는 프로세서(2010) 내부, 프로세서(2010) 외부, 또는 둘 모두에 있을 수 있는 것으로 이해되어야 한다. 일부 실시예들에 따르면, 프로세서(2010), 컴퓨팅 머신(2000)의 다른 구성요소들 또는 여기에 설명된 다양한 주변장치들 중 임의의 것은 시스템 온 칩(SOC), SOP(system on package) 또는 ASIC 장치와 같은 단일 장치에 통합될 수 있다.
여기에서 설명한 시스템들이 사용자들에 관한 개인 정보를 수집하거나 개인 정보를 사용할 수 있는 경우, 사용자는 프로그램들이나 구성들이 사용자 정보(예를 들어, 사용자의 소셜 네트워크, 사회적 행동 또는 활동, 직업, 사용자의 선호도 또는 사용자의 현재 위치에 대한 정보)를 수집할 것인지에 대해 제어하기 위한 옵션 또는 기회, 또는 사용자와 더 관련이 있을 수 있는 콘텐츠를 콘텐츠 서버로부터 어떻게 수신할지에 대한 방법을 제어하기 위한 옵션 또는 기회를 제공받을 수 있다. 또한, 특정 데이터는 저장되거나 사용되기 전에 개인 식별 정보가 제거되도록 하나 이상의 방법으로 처리될 수 있다. 예를 들어, 사용자의 신원정보는, 사용자에 대한 개인 식별 정보를 결정할 수 없도록 하거나, 사용자의 특정 위치가 결정될 수 없도록 위치 정보(예를 들어, 도시, 우편 번호 또는 주 레벨)가 획득되는 곳에서 사용자의 지리적 위치가 일반화되도록 처리될 수 있다. 따라서, 사용자는 사용자에 관한 정보 수집 방법 및 콘텐츠 서버에 의한 사용 방법을 제어할 수 있다.
실시예들은 본 명세서에 설명되고 도시된 구성을 구현하는 컴퓨터 프로그램을 포함할 수 있으며, 그 컴퓨터 프로그램은 머신 판독가능 매체에 저장된 명령어들을 포함하는 컴퓨터 시스템 및 그 명령어들을 실행하는 프로세서에서 구현된다. 그러나, 컴퓨터 프로그래밍에서 실시예들을 구현하는 많은 다른 방법이 있을 수 있으며, 실시예들은 임의의 한 세트의 컴퓨터 프로그램 명령어로 한정되는 것으로 제한되지 않는 것으로 이해되어야 한다. 또한, 숙련된 프로그래머는 첨부된 흐름도 및 애플리케이션 텍스트의 연관된 설명에 기초하여 개시된 실시예들 중 실시예를 구현하기 위해 그러한 컴퓨터 프로그램을 작성할 수 있을 것이다. 따라서, 특정 세트의 프로그램 코드 명령어들의 개시는 실시예들을 이루고 사용하는 방법의 적절한 이해를 위해 반드시필요한 것으로 고려되지 않는다. 또한, 당업자는 하나 이상의 컴퓨팅 시스템에서 구현될 수 있는 바와 같이, 본 명세서에 설명된 실시예들의 하나 이상의 양태들이 하드웨어, 소프트웨어 또는 이들의 조합에 의해 수행될 수 있는 것으로 이해할 것이다. 또한, 컴퓨터에 의해 수행되는 동작에 대한 설명은 하나 이상의 컴퓨터가 그 동작을 수행할 수 있기 때문에 단일 컴퓨터에 의해 수행되는 것으로 해석되어서는 안된다.
여기에 설명된 예들은 여기에 설명된 기능들을 처리하고 방법들을 수행하는 컴퓨터 하드웨어 및 소프트웨어와 함께 사용될 수 있다. 여기에 설명된 시스템들, 방법들 및 절차들은 프로그램 가능한 컴퓨터, 컴퓨터 실행 가능 소프트웨어 또는 디지털 회로로 구현될 수 있다. 상기 소프트웨어는 컴퓨터 판독가능 매체에 저장될 수 있다. 예를 들어, 컴퓨터 판독가능 매체는 플로피 디스크, RAM, ROM, 하드 디스크, 이동식 매체, 플래시 메모리, 메모리 스틱, 광 매체, 광 자기 매체, CD-ROM 등을 포함할 수 있다. 디지털 회로는 집적 회로들, 게이트 어레이들, 빌딩 블록 로직, FPGA( field programmable gate arrays) 등을 포함할 수 있다.
이전에 제시된 실시예들에서 설명된 예시적인 시스템들, 방법들 및 동작들은 예시적인 것이며, 대안적인 실시예들에서, 특정 동작들은 서로 다른 순서로, 서로 병렬로, 전체 생략되거나 및/또는 상이한 예들 사이에서 조합될 수 있으며, 소정의 부가적인 동작들이 다양한 실시예들의 범위 및 사상을 벗어나지 않고 수행될 수 있다. 따라서, 이러한 대안적인 실시예들은 이하의 청구항의 범위에 포함되며, 이러한 대안적인 실시예들을 포함하도록 가장 넓게 해석되어야 한다.
특정 실시예들이 상세하게 기술되었지만, 상기 설명은 단지 설명의 목적을 위한 것이다. 따라서, 상술한 많은 양태들이 달리 명시적으로 언급되지 않는 한, 필수적이거나 필수적인 구성요소들로 의도되지 않는 것으로 이해되어야 한다. 상술한 것들에 추가하여, 상기 예들의 개시된 양태들에 대한 변경들 및 이에 상응하는 등가의 컴포넌트들 또는 동작들은 본 개시의 이점을 갖는 당업자에 의해 만들어 질 수 있으며, 다음의 청구항들에서 정의된 실시예들의 사상 및 범주를 벗어나지 않고, 그러한 변경들 및 등가 구조들을 포함하도록 그 범위가 가장 넓게 해석되어야 한다.

Claims (20)

  1. 비컨 장치 코드들을 주기적으로 변경함으로써 사용자 컴퓨팅 장치들에 의해 체크인 신호들을 반복 가능하게 하는 컴퓨터로 구현되는 방법으로서,
    사용자 컴퓨팅 장치에 의해, 서비스 제공자 시스템의 위치에서 비컨 장치로부터 제1 비컨 장치 코드를 상기 사용자 컴퓨팅 장치의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 수신하는 단계;
    상기 제1 비컨 장치 코드를 수신하는 것에 응답하여, 상기 사용자 컴퓨팅 장치에 의해, 하나 이상의 컴퓨팅 장치들에 사용자 컴퓨팅 장치 식별자 및 사용자 계정과 연관된 사용자 계정 식별자를 포함하는 제1 체크인 신호를 상기 사용자 컴퓨팅 장치의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 전송하는 단계;
    상기 제1 비컨 장치 코드를 수신한 후의 시간에, 상기 사용자 컴퓨팅 장치에 의해, 상기 비컨 장치로부터 제2 비컨 장치 코드를 상기 사용자 컴퓨팅 장치의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 수신하는 단계 -상기 제2 비컨 장치 코드는 상기 제1 비컨 장치 코드와는 상이함-; 그리고
    상기 제2 비컨 장치 코드를 수신하는 것에 응답하여, 상기 사용자 컴퓨팅 장치에 의해, 상기 하나 이상의 컴퓨팅 장치들에 상기 사용자 컴퓨팅 장치 식별자 및 상기 사용자 계정 식별자를 포함하는 제2 체크인 신호를 상기 사용자 컴퓨팅 장치의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 전송하는 단계를 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  2. 제1항에 있어서, 상기 제1 비컨 장치 코드를 수신하는 것에 응답하여, 상기 사용자 컴퓨팅 장치에 의해, 상기 사용자 컴퓨팅 장치의 제1 위치 데이터를 로그하고, 상기 제1 체크인 신호와 함께 상기 제1 위치 데이터를 상기 하나 이상의 컴퓨팅 장치들에 전송하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  3. 제1항에 있어서, 상기 제2 비컨 장치 코드를 수신하는 것에 응답하여, 상기 사용자 컴퓨팅 장치에 의해, 상기 사용자 컴퓨팅 장치의 제2 위치 데이터를 로그하고, 상기 제2 체크인 신호와 함께 상기 제2 위치 데이터를 상기 하나 이상의 컴퓨팅 장치들에 전송하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  4. 제1항에 있어서, 상기 제1 체크인 신호를 수신하는 것에 응답하여, 상기 하나 이상의 컴퓨팅 장치들은 제1 타임스탬프 및 상기 사용자 계정에 대한 체크인 상태를 로그하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  5. 제4항에 있어서, 상기 제1 타임스탬프의 시간으로부터 특정 시간 내에 상기 제2 체크인 신호를 수신하는 것에 응답하여, 상기 하나 이상의 컴퓨팅 장치들은 상기 사용자 계정에 대한 체크인 상태를 로그하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  6. 제1항에 있어서,
    상기 제1 비컨 장치 코드는 상기 비컨 장치에 의해 생성된 제1 난수를 포함하며, 상기 제2 비컨 장치 코드는 상기 비컨 장치에 의해 생성된 제2 난수를 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  7. 컴퓨터에 의해 실행될 때 상기 컴퓨터로 하여금 비컨 장치 코드들을 주기적으로 변경함으로써 사용자 컴퓨팅 장치들에 의해 체크인 신호들을 반복 가능하게 하는 컴퓨터로 실행가능한 명령어들을 갖는 비-일시적 컴퓨터 판독가능 매체에 수록된 컴퓨터 프로그램으로서, 상기 컴퓨터로 실행가능한 프로그램 명령어들은,
    비컨 장치로부터 제1 비컨 장치 코드를 상기 컴퓨터의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 수신하도록 하는 컴퓨터로 실행가능한 프로그램 명령어들;
    상기 제1 비컨 장치 코드를 수신하는 것에 응답하여, 사용자 컴퓨팅 장치 식별자 및 사용자 계정과 연관된 사용자 계정 식별자를 포함하는 제1 체크인 신호를 상기 컴퓨터의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 하나 이상의 컴퓨팅 장치들에 전송하도록 하는 컴퓨터로 실행가능한 프로그램 명령어들;
    상기 제1 비컨 장치 코드를 수신한 후의 시간에, 상기 비컨 장치로부터 제2 비컨 장치 코드를 상기 컴퓨터의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 수신하도록 하는 컴퓨터로 실행가능한 프로그램 명령어들 -상기 제2 비컨 장치 코드는 상기 제1 비컨 장치 코드와는 상이함-; 그리고
    상기 제2 비컨 장치 코드를 수신하는 것에 응답하여, 상기 사용자 컴퓨팅 장치 식별자 및 상기 사용자 계정 식별자를 포함하는 제2 체크인 신호를 상기 사용자 컴퓨팅 장치의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 상기 하나 이상의 컴퓨팅 장치들에 전송하도록 하는 컴퓨터로 실행가능한 프로그램 명령어들을 포함하는 것을 특징으로 하는 컴퓨터 프로그램.
  8. 제7항에 있어서, 상기 제1 비컨 장치 코드를 수신하는 것에 응답하여, 상기 사용자 컴퓨팅 장치의 제1 위치 데이터를 수신하도록 하는 컴퓨터로 실행가능한 프로그램 명령어들; 그리고 상기 제1 체크인 신호와 함께 상기 제1 위치 데이터를 상기 하나 이상의 컴퓨팅 장치들에 전송하도록 하는 컴퓨터로 실행가능한 프로그램 명령어들을 더 포함하는 것을 특징으로 하는 컴퓨터 프로그램.
  9. 제7항에 있어서,
    상기 제2 비컨 장치 코드를 수신하는 것에 응답하여, 상기 사용자 컴퓨팅 장치의 제2 위치 데이터를 로그하도록 하는 컴퓨터로 실행가능한 프로그램 명령어들; 그리고 상기 제2 체크인 신호와 함께 상기 제2 위치 데이터를 상기 하나 이상의 컴퓨팅 장치들에 전송하도록 하는 컴퓨터로 실행가능한 프로그램 명령어들을 더 포함하는 것을 특징으로 하는 컴퓨터 프로그램.
  10. 제7항에 있어서, 상기 제1 체크인 신호를 수신하는 것에 응답하여, 상기 하나 이상의 컴퓨팅 장치들은 제1 타임스탬프 및 상기 사용자 계정에 대한 체크인 상태를 로그하는 것을 특징으로 하는 컴퓨터 프로그램.
  11. 제10항에 있어서, 상기 제1 타임스탬프의 시간으로부터 특정 시간 내에 상기 제2 체크인 신호를 수신하는 것에 응답하여, 상기 하나 이상의 컴퓨팅 장치들은 상기 사용자 계정에 대한 체크인 상태를 로그하는 것을 특징으로 하는 컴퓨터 프로그램.
  12. 제7항에 있어서,
    상기 제1 비컨 장치 코드는 상기 비컨 장치에 의해 생성된 제1 난수를 포함하고, 상기 제2 비컨 장치 코드는 상기 비컨 장치에 의해 생성된 제2 난수를 포함하는 것을 특징으로 하는 컴퓨터 프로그램.
  13. 제7항에 있어서, 상기 비컨 장치는 서비스 제공자 시스템의 위치에 위치하는 것을 특징으로 하는 컴퓨터 프로그램.
  14. 비컨 장치 코드들을 주기적으로 변경함으로써 사용자 컴퓨팅 장치들에 의해 체크인 신호들을 반복 가능하게 하는 체크인 시스템으로서,
    저장 장치; 그리고
    상기 저장 장치에 통신 가능하게 연결된 프로세서를 포함하며, 상기 프로세서는 상기 저장 장치에 저장된 애플리케이션 코드 명령어들을 실행하여 상기 시스템으로 하여금 동작들을 수행하게 하며, 상기 동작들은
    비컨 장치로부터 제1 비컨 장치 코드를 상기 체크인 시스템의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 수신하는 동작;
    상기 제1 비컨 장치 코드를 수신하는 것에 응답하여, 하나 이상의 컴퓨팅 장치들에 사용자 컴퓨팅 장치 식별자 및 사용자 계정과 연관된 사용자 계정 식별자를 포함하는 제1 체크인 신호를 상기 체크인 시스템의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 전송하는 동작;
    상기 제1 비컨 장치 코드를 수신한 후의 시간에, 상기 비컨 장치로부터 제2 비컨 장치 코드를 상기 체크인 시스템의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 수신하는 동작 -상기 제2 비컨 장치 코드는 상기 제1 비컨 장치 코드와는 상이함-; 그리고
    상기 제2 비컨 장치 코드를 수신하는 것에 응답하여, 상기 하나 이상의 컴퓨팅 장치들에 상기 사용자 컴퓨팅 장치 식별자 및 상기 사용자 계정 식별자를 포함하는 제2 체크인 신호를 상기 체크인 시스템의 운영 시스템의 백그라운드에서 동작하는 애플리케이션을 사용하여 전송하는 동작을 포함하는 것을 특징으로 하는 시스템.
  15. 제14항에 있어서, 상기 프로세서는, 상기 시스템으로 하여금 상기 제1 비컨 장치 코드를 수신하는 것에 응답하여, 상기 사용자 컴퓨팅 장치의 제1 위치 데이터를 로그하고, 상기 제1 체크인 신호와 함께 상기 제1 위치 데이터를 상기 하나 이상의 컴퓨팅 장치들에 전송하도록, 상기 저장 장치에 저장된 애플리케이션 코드 명령어들을 실행하도록 더 구성되는 것을 특징으로 하는 시스템.
  16. 제14항에 있어서,
    상기 프로세서는 상기 시스템으로 하여금 상기 제2 비컨 장치 코드를 수신하는 것에 응답하여 상기 사용자 컴퓨팅 장치의 제2 위치 데이터를 로그하고, 상기 제2 체크인 신호와 함께 상기 제2 위치 데이터를 상기 하나 이상의 컴퓨팅 장치들에 전송하도록, 상기 저장 장치에 저장된 애플리케이션 코드 명령어들을 실행하도록 더 구성되는 것을 특징으로 하는 시스템.
  17. 제14항에 있어서, 상기 제1 체크인 신호를 수신하는 것에 응답하여, 상기 하나 이상의 컴퓨팅 장치들은 제1 타임스탬프 및 상기 사용자 계정에 대한 체크인 상태를 로그하는 것을 특징으로 하는 시스템.
  18. 제17항에 있어서, 상기 제1 타임스탬프의 시간으로부터 특정 시간 내에 상기 제2 체크인 신호를 수신하는 것에 응답하여, 상기 하나 이상의 컴퓨팅 장치들은 상기 사용자 계정에 대한 체크인 상태를 로그하는 것을 특징으로 하는 시스템.
  19. 제14항에 있어서,
    상기 제1 비컨 장치 코드는 상기 비컨 장치에 의해 생성된 제1 난수를 포함하고, 상기 제2 비컨 장치 코드는 상기 비컨 장치에 의해 생성된 제2 난수를 포함하는 것을 특징으로 하는 시스템.
  20. 제14항에 있어서, 상기 비컨 장치는 서비스 제공자 시스템의 위치에 위치하는 것을 특징으로 하는 시스템.
KR1020187019181A 2016-02-23 2017-02-23 비컨 장치에 의해 방송되는 회전 코드들을 통해 사용자 장치 상태 식별 KR102109875B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662298975P 2016-02-23 2016-02-23
US62/298,975 2016-02-23
PCT/US2017/019159 WO2017147315A1 (en) 2016-02-23 2017-02-23 Identifying user device status via rotating codes broadcast by a beacon device

Publications (2)

Publication Number Publication Date
KR20180091872A KR20180091872A (ko) 2018-08-16
KR102109875B1 true KR102109875B1 (ko) 2020-05-12

Family

ID=58264613

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187019181A KR102109875B1 (ko) 2016-02-23 2017-02-23 비컨 장치에 의해 방송되는 회전 코드들을 통해 사용자 장치 상태 식별

Country Status (6)

Country Link
US (1) US10278006B2 (ko)
EP (1) EP3375172B1 (ko)
JP (1) JP6643485B2 (ko)
KR (1) KR102109875B1 (ko)
CN (1) CN108496342B (ko)
WO (1) WO2017147315A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108496342B (zh) 2016-02-23 2021-07-16 谷歌有限责任公司 用于记录用户计算设备的位置的方法、介质和系统
WO2017151859A1 (en) * 2016-03-02 2017-09-08 Tinoq Inc. Systems and methods for efficient face recognition
CN112866575A (zh) 2016-03-30 2021-05-28 蒂诺克股份有限公司 用于用户检测和识别的系统和方法
US10491598B2 (en) * 2016-06-30 2019-11-26 Amazon Technologies, Inc. Multi-factor authentication to access services
US10523387B2 (en) * 2018-01-24 2019-12-31 GM Global Technology Operations LLC Method and system for transmission of signals with efficient bandwidth utilization
WO2020041352A1 (en) 2018-08-21 2020-02-27 Tinoq Inc. Systems and methods for member facial recognition based on context information
CN111770430A (zh) * 2019-03-12 2020-10-13 中国移动通信有限公司研究院 一种信息处理方法及系统、设备
US11265711B2 (en) 2019-09-13 2022-03-01 Microsoft Technology Licensing, Llc Proximity-based management of a computing device
JP7428447B1 (ja) 2023-06-22 2024-02-06 Tangerine株式会社 情報処理システム、情報処理方法、送信装置、受信装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090061820A1 (en) 2007-08-27 2009-03-05 Sarvar Patel Method and system of communication using extended sequence number
WO2015149032A1 (en) * 2014-03-28 2015-10-01 Brian Roundtree Beacon based privacy centric network communication, sharing, relevancy tools and other tools
WO2016007445A1 (en) * 2014-07-11 2016-01-14 Google Inc. Hands-free transactions
US20160021687A1 (en) 2014-07-15 2016-01-21 Paypal, Inc. Systems and methods for reusing generic tokens using bluetooth low energy (ble) beacons

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645213B2 (en) * 2010-01-15 2014-02-04 Ebay, Inc. Transactions associated with a mobile device
KR101227519B1 (ko) * 2010-10-17 2013-01-31 엘지전자 주식회사 위치측정용 참조신호 전송방법 및 기지국과, 위치측정용 참조신호 수신방법 및 사용자기기
US9215685B2 (en) * 2011-09-23 2015-12-15 Qualcomm Incorporated Position estimation via proximate fingerprints
US20130268378A1 (en) * 2012-04-06 2013-10-10 Microsoft Corporation Transaction validation between a mobile communication device and a terminal using location data
MX346551B (es) * 2013-03-11 2017-03-24 Fustes Manuel Cobro de peaje con dispositivo de comunicación.
US9185648B2 (en) * 2013-03-13 2015-11-10 Qualcomm Incorporated Intelligent beaconing by software-enabled access point
US9544869B2 (en) * 2013-05-16 2017-01-10 Qualcomm Incorporated Method for adapting to venue positioning capabilities
WO2015014903A2 (en) * 2013-07-31 2015-02-05 Pharnext Diagnostic tools for alzheimer's disease
US9356819B2 (en) * 2013-09-27 2016-05-31 Ebay Inc. Systems and methods for checking a user into a location using a packet sequence including location information
KR102139998B1 (ko) * 2014-03-21 2020-08-03 에스케이플래닛 주식회사 비콘의 보안을 위한 제어 시스템 및 방법 그리고 그 제어 장치
US20170171382A1 (en) 2014-03-31 2017-06-15 Ntt Docomo, Inc. Communication system, communication terminal, communication method, and program
CN103874021B (zh) * 2014-04-02 2018-07-10 银理安金融信息服务(北京)有限公司 安全区域识别方法、识别设备及用户终端
US9648652B2 (en) * 2014-04-08 2017-05-09 Paypal, Inc. Facilitating wireless connections using a BLE beacon
CN110049489B (zh) * 2014-06-05 2022-01-28 创新先进技术有限公司 传输信标数据的方法及装置
CA2951954A1 (en) 2014-06-24 2015-12-30 Retailmenot, Inc. Cross-device geolocation sensing to geotarget offers
US9378494B2 (en) * 2014-08-22 2016-06-28 Paypal, Inc. Suspending and resuming transactions through wireless beacon communications
US10055707B2 (en) * 2015-04-07 2018-08-21 Paypal, Inc. Location detection devices for use in a courier services network
US20160300216A1 (en) * 2015-04-13 2016-10-13 Paypal, Inc. Wireless beacon devices for preventing fraud using loyalty information for a user
CN108496342B (zh) 2016-02-23 2021-07-16 谷歌有限责任公司 用于记录用户计算设备的位置的方法、介质和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090061820A1 (en) 2007-08-27 2009-03-05 Sarvar Patel Method and system of communication using extended sequence number
WO2015149032A1 (en) * 2014-03-28 2015-10-01 Brian Roundtree Beacon based privacy centric network communication, sharing, relevancy tools and other tools
WO2016007445A1 (en) * 2014-07-11 2016-01-14 Google Inc. Hands-free transactions
US20160021687A1 (en) 2014-07-15 2016-01-21 Paypal, Inc. Systems and methods for reusing generic tokens using bluetooth low energy (ble) beacons

Also Published As

Publication number Publication date
CN108496342A (zh) 2018-09-04
WO2017147315A8 (en) 2017-10-19
KR20180091872A (ko) 2018-08-16
US10278006B2 (en) 2019-04-30
EP3375172B1 (en) 2020-04-29
WO2017147315A1 (en) 2017-08-31
EP3375172A1 (en) 2018-09-19
US20170245101A1 (en) 2017-08-24
JP2019514231A (ja) 2019-05-30
JP6643485B2 (ja) 2020-02-12
CN108496342B (zh) 2021-07-16

Similar Documents

Publication Publication Date Title
US11694175B2 (en) Identifying consumers in a transaction via facial recognition
KR102109875B1 (ko) 비컨 장치에 의해 방송되는 회전 코드들을 통해 사용자 장치 상태 식별
JP7160883B2 (ja) ハンズフリー取引のための顔の外形の修正
KR102273818B1 (ko) 오프라인 사용자 식별
CN108040495B (zh) 经由面部识别标识交易中的顾客的方法、系统和存储介质
US20170364901A1 (en) Identifying user computing device specific locations
KR102195222B1 (ko) 핸즈-프리 트랜잭션들의 직접 정산
CN108463825B (zh) 免提服务请求中的面部模板和令牌预取
US20160012414A1 (en) Hands-free transactions
KR20180051609A (ko) 근접 기반 네트워크 보안
US20180053176A1 (en) Tap And Pair Via Proximity Sensing
US20160005023A1 (en) Conducting financial transactions by telephone
CN107527198B (zh) 识别特定于用户计算设备的位置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant