KR101687132B1 - 보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치 - Google Patents
보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치 Download PDFInfo
- Publication number
- KR101687132B1 KR101687132B1 KR1020160027641A KR20160027641A KR101687132B1 KR 101687132 B1 KR101687132 B1 KR 101687132B1 KR 1020160027641 A KR1020160027641 A KR 1020160027641A KR 20160027641 A KR20160027641 A KR 20160027641A KR 101687132 B1 KR101687132 B1 KR 101687132B1
- Authority
- KR
- South Korea
- Prior art keywords
- payment
- application
- card
- information
- pos
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, 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/409—Device specific authentication in transaction processing
- G06Q20/4097—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Cash Registers Or Receiving Machines (AREA)
Abstract
보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치가 개시된다. 일 실시예에 따른 포스 단말기는 운영체제; 포스(POS: Point of Sales) 어플리케이션; 및 상기 포스 어플리케이션과 상기 운영체제 사이에서 연결되고, 부가통신망(VAN: Value Add Network) 서비스를 제공하는 서비스 서버와 상기 포스 어플리케이션 사이에서 상기 포스 어플리케이션으로부터의 결제 요청에 따라 결제를 수행하는 결제 어플리케이션을 포함하고, 상기 결제 어플리케이션은, 상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 요청 및 상기 결제 요청에 대한 총 결제 금액을 획득하고, 카드 리더기로부터 제1 카드 정보 - 상기 제1 카드 정보는 결제에 이용되는 카드의 카드번호 전체가 암호화된 정보를 나타냄 - 를 획득하고, 상기 결제를 승인받기 위하여, 상기 제1 카드 정보 및 상기 총 결제 금액을 상기 서비스 서버에 제공하고, 상기 서비스 서버로부터 상기 결제 결과와 함께 승인 내역 정보 - 상기 승인 내역 정보는 결제 승인 금액을 포함함 - 을 획득하고, 상기 포스 어플리케이션에 상기 결제 결과를 제공하되, 상기 포스 어플리케이션이 상기 제1 카드 정보를 획득하지 못하도록 관리할 수 있다.
Description
아래의 실시예들은 보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치에 관한 것이다.
포스(POS: Point of Sales) 시스템은 일반적으로 금전 출납 등록 기능과 컴퓨터 기능을 보유한 판매시점 관리 시스템을 일컫는다. 이와 같은 포스 시스템을 사용하게 되면, 상품의 판매 흐름을 단위 품목별로 파악할 수 있을 뿐 아니라, 신상품과 판촉상품의 판매경향과 시간대, 매출부진 상품, 유사품이나 경쟁상품과의 판매경향 등을 세부적으로 파악할 수 있어 판매가격과 판매량과의 상관관계, 주요공략 대상, 광고계획 등의 마케팅 전략을 효과적으로 수립할 수 있다.
이러한, 포스 시스템은 통상적으로 포스 기능을 지원하는 서버와, 상기 서버와 연결되어 다양한 포스 기능을 수행하는 포스 단말기를 포함하여 이루어질 수 있고, 포스 단말기에는 다양한 포스 주변기기들(예를 들어, 바코드 리더기, 카드 리더기, 영수증 프린터, 카드 결제 서명 패드, 캐시 드로워(cash drawer) 등)이 연결될 수 있다.
포스 단말기는 포스 어플리케이션에 의해 구동될 수 있다. 일반적으로, 포스 어플리케이션은 상품 관리, 판매 금액정산 처리 및 점포나 매장 경영에 필요한 각종정보와 자료를 수집/처리하는 등의 기능을 수행할 수 있다. 또한, 포스 어플리케이션은 결제 기능까지 수행할 수 있다. 예를 들어, 결제 기능을 수행하기 위해 포스 어플리케이션은 포스 단말기와 연결된 카드 리더기로부터 카드 정보를 획득하고, 획득된 카드 정보 및 결제 대금 정보를 외부의 결제 서버에 전송하여 결제 기능을 수행할 수 있다. 이 경우, 카드 정보가 포스 어플리케이션에 의하여 필수적으로 접근되고, 포스 어플리케이션은 결제 기능 외에 상품 관리와 같은 다른 기능들을 함께 수행하므로, 이러한 다른 기능들을 수행하는 과정에서 카드 정보가 쉽게 유출될 우려가 있다.
최근에는, 포스 어플리케이션에서의 카드 정보의 유출을 방지하기 위한 노력이 계속되고 있다.
본 발명이 해결하고자 하는 과제는, 보안성을 향상시키면서, 카드 결제자의 편의성을 증가시킬 수 있는 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치를 제공하는 것에 있다.
본 발명의 일 실시예에 따른 포스 단말기는 운영체제; 포스(POS: Point of Sales) 어플리케이션; 및 상기 포스 어플리케이션과 상기 운영체제 사이에서 연결되고, 부가통신망(VAN: Value Add Network) 서비스를 제공하는 서비스 서버와 상기 포스 어플리케이션 사이에서 상기 포스 어플리케이션으로부터의 결제 요청에 따라 결제를 수행하는 결제 어플리케이션을 포함하고, 상기 결제 어플리케이션은, 상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 요청 및 상기 결제 요청에 대한 총 결제 금액을 획득하고, 카드 리더기로부터 제1 카드 정보 - 상기 제1 카드 정보는 결제에 이용되는 카드의 카드번호 전체가 암호화된 정보를 나타냄 - 를 획득하고, 상기 결제를 승인받기 위하여, 상기 제1 카드 정보 및 상기 총 결제 금액을 상기 서비스 서버에 제공하고, 상기 서비스 서버로부터 상기 결제 결과와 함께 승인 내역 정보 - 상기 승인 내역 정보는 결제 승인 금액을 포함함 - 을 획득하고, 상기 포스 어플리케이션에 상기 결제 결과를 제공하되, 상기 포스 어플리케이션이 상기 제1 카드 정보를 획득하지 못하도록 관리하는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, 상기 카드 리더기로부터 제2 카드 정보 - 상기 제2 카드 정보는 상기 카드번호 중 일부가 마스킹된 정보를 나타냄 - 을 획득하고, 상기 포스 어플리케이션으로부터 상기 카드에 대한 정보 제공을 요청받을 경우, 상기 제2 카드 정보를 상기 포스 어플리케이션에 전송하되, 상기 제1 카드 정보를 상기 포스 어플리케이션에 전송하지 않는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, 상기 운영 체제를 통하여 상기 포스 어플리케이션으로부터 상기 결제 요청을 획득하는 경우, 상기 카드 리더기를 활성화시키기 위한 제어 명령을 상기 카드 리더기에 전송하고, 상기 제어 명령에 따라 상기 카드 리더기가 활성화되는 미리 정해진 시간 동안 상기 카드 리더기로부터 상기 제1 카드 정보를 획득하는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, OS 커널층에서의 상기 운영체제의 관리에 따라, 상기 포스 어플리케이션으로부터 상기 결제 요청, 상기 총 결제 금액을 획득하고, 상기 포스 어플리케이션에 상기 결제 결과를 제공하는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, 상기 획득된 제1 카드 정보가 가공되지 않고, 상기 서비스 서버에 전달되도록 상기 제1 카드 정보에 대한 상기 포스 어플리케이션의 접근을 차단시키는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, 상기 운영체제를 통해 상기 제1 카드 정보가 상기 서비스 서버에 제공되도록, 상기 운영체제에 의해 상기 포스 어플리케이션이 접근하지 못하도록 설정된 메모리 영역에 상기 제1 카드 정보를 저장하는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, 상기 승인 내역 정보를 포함하는 인쇄 다큐먼트 - 상기 인쇄 다큐먼트는 결제 어플리케이션에서 이해할 수 있는 포맷 및 명령어로 구성됨 - 를 획득하고, 상기 인쇄 다큐먼트를 상기 결제 어플리케이션과 연동하는 프린터에서 출력가능한 형식의 인쇄 데이터로 변환하는 것을 특징으로 할 수 있다.
상기 인쇄 다큐먼트는, 상기 총 결제 금액, 상기 승인 내역 정보, 상기 제2 카드 정보 중 적어도 하나를 포함하는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, 상기 서비스 서버로부터 상기 결제 결과를 획득한 후, 상기 운영체제를 통하여, 상기 포스 어플리케이션으로부터 적어도 하나의 결제 항목, 상기 적어도 하나의 결제 항목 각각에 대응하는 결제 금액, 상기 총 결제 금액, 상기 제2 카드 정보 및 상기 승인 내역 정보가 포함된 인쇄 다큐먼트를 획득하고, 상기 인쇄 다큐먼트를 상기 인쇄 데이터로 변환하는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, 상기 운영체제를 통하여, 상기 포스 어플리케이션으로부터 적어도 하나의 결제 항목 및 상기 적어도 하나의 결제 항목 각각에 대응하는 결제 금액을 획득하고, 미리 정해진 템플릿에 상기 적어도 하나의 결제 항목, 상기 결제 금액, 상기 총 결제 금액 및 상기 승인 내역 정보를 부가하여 상기 인쇄 다큐먼트를 생성하고, 상기 획득한 인쇄 다큐먼트를 상기 인쇄 데이터로 변환하는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, 상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 적어도 하나의 결제 항목, 결제 금액 및 상기 총 결제 금액을 포함하는 부분 인쇄 다큐먼트를 획득하고, 상기 부분 인쇄 다큐먼트에 상기 승인 내역 정보를 부가하여 전체 인쇄 다큐먼트를 생성하고, 상기 전체 인쇄 다큐먼트를 상기 인쇄 데이터로 변환하는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, 상기 포스 단말기에 연결된 주변기기 - 상기 주변기기는 바코드 리더기 또는 서명 패드 중 적어도 하나를 포함함 - 의 상태를 제어하는 제어 명령을 생성하고, 상기 제어 명령에 따라 상기 주변기기의 상태가 제어되도록 상기 제어 명령을 상기 주변기기에 전송하는 것을 특징으로 할 수 있다.
상기 결제 어플리케이션은, 상기 카드 리더기의 마스킹을 제어하기 위한 마스킹 설정 명령 - 상기 마스킹 설정 명령은 상기 마스킹된 카드 정보의 전송 요청, 상기 마스킹된 카드 정보의 비전송 요청 또는 상기 마스킹이 수행되는 범위를 지시하는 마스킹 범위 설정 중 적어도 하나를 포함함 - 을 생성하고, 상기 마스킹 설정 명령에 따라 상기 카드 리더기가 상기 마스킹을 수행하도록 상기 카드 리더기에 상기 마스킹 설정 명령을 전송하는 것을 특징으로 할 수 있다.
본 발명의 일 실시예에 따른 포스 단말기에서의 결제 어플리케이션의 결제 방법에서, 결제 어플리케이션은 포스 단말기에 포함되고, 포스 어플리케이션과 운영체제 사이에서 연결되고, 부가통신망 서비스를 제공하는 서비스 서버와 상기 포스 어플리케이션 사이에서 상기 포스 어플리케이션으로부터의 결제 요청에 따라 결제를 수행하고, 포스 단말기에서의 결제 어플리케이션의 결제 방법은 상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 요청 및 상기 결제 요청에 대한 총 결제 금액을 획득하는 단계; 카드 리더기로부터 제1 카드 정보 - 상기 제1 카드 정보는 결제에 이용되는 카드의 카드번호 전체가 암호화된 정보를 나타냄 - 를 획득하는 단계; 상기 결제를 승인받기 위하여, 상기 제1 카드 정보 및 상기 총 결제 금액을 상기 서비스 서버에 제공하는 단계; 및 상기 서비스 서버로부터 상기 결제 결과와 함께 승인 내역 정보 - 상기 승인 내역 정보는 결제 승인 금액을 포함함 - 을 획득하는 단계를 포함하되, 상기 포스 어플리케이션에 상기 결제 결과를 제공하되, 상기 포스 어플리케이션이 상기 제1 카드 정보를 획득하지 못하도록 관리하는 것을 특징으로 할 수 있다.
본 발명의 일 실시예에 따른 포스 단말기에서의 결제 어플리케이션의 인쇄 방법에서, 결제 어플리케이션은 포스 단말기에 포함되고, 포스 어플리케이션과 운영체제 사이에서 연결되고, 부가통신망 서비스를 제공하는 서비스 서버와 상기 포스 어플리케이션 사이에서 상기 포스 어플리케이션으로부터의 결제 요청에 따라 결제를 수행하고, 승인 내역 정보를 인쇄하고, 포스 단말기에서의 결제 어플리케이션의 인쇄 방법은 상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 요청을 획득하는 단계; 카드 리더기로부터 암호화된 카드 정보를 획득하는 단계; 상기 결제를 승인받기 위하여, 상기 서비스 서버에 상기 결제를 요청하고, 상기 암호화된 카드 정보를 제공하는 단계; 상기 서비스 서버로부터 결제 결과와 함께 승인 내역 정보 - 상기 승인 내역 정보는 결제 승인 금액을 포함함 - 을 획득하는 단계; 상기 승인 내역 정보를 포함하는 인쇄 다큐먼트 - 상기 인쇄 다큐먼트는 결제 어플리케이션에서 이해할 수 있는 포맷 및 명령어로 구성됨 - 를 획득하는 단계; 및 상기 인쇄 다큐먼트를 상기 결제 어플리케이션과 연동하는 프린터에서 출력가능한 형식의 인쇄 데이터로 변환하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 포스 단말기에서의 결제 어플리케이션의 주변기기 제어 방법에서, 결제 어플리케이션은 포스 단말기에 포함되고, 포스 어플리케이션과 운영체제 사이에서 연결되고, 부가통신망 서비스를 제공하는 서비스 서버와 상기 포스 어플리케이션 사이에서 상기 포스 어플리케이션으로부터의 결제 요청에 따라 결제를 수행하고, 상기 포스 단말기와 연결된 주변기기를 제어하고, 포스 단말기에서의 결제 어플리케이션의 주변기기 제어 방법은 상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 요청을 획득하는 단계; 상기 포스 단말기에 연결된 주변기기 - 상기 주변기기는 카드 리더기, 바코드 리더기 또는 서명패드 중 적어도 하나를 포함함 - 의 상태를 제어하는 제어 명령을 생성하는 단계; 상기 제어 명령에 따라 상기 주변기기의 상태가 제어되도록 상기 제어 명령을 상기 주변기기에 전송하는 단계; 상기 제어 명령에 의해 상기 카드 리더기가 활성화되는 경우, 상기 카드 리더기로부터 상기 운영체제를 통하여 암호화된 카드 정보를 획득하는 단계; 상기 결제를 승인받기 위하여, 상기 암호화된 카드 정보를 상기 서비스 서버에 제공하는 단계; 및 상기 서비스 서버로부터 상기 결제 결과를 획득하는 단계를 포함할 수 있다.
본 발명에 의하면, 결제 어플리케이션이 포스 어플리케이션과 분리됨에 따라, 포스 어플리케이션의 카드 정보에 대한 접근이 차단됨으로써, 보안성을 향상시킨다는 효과가 발생한다.
도 1은 일 실시예에 따른 전자기기를 설명하기 위한 블록도이다.
도 2는 일 실시예에 따른 결제 시스템을 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 포스 어플리케이션과 결제 어플리케이션의 동작을 설명하기 위한 흐름도이다.
도 4는 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 시스템을 설명하기 위한 블록도이다.
도 5는 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 결제 방법을 설명하기 위한 블록도이다.
도 6은 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 블록도이다.
도 7은 일 실시예에 따른 인쇄 다큐먼트를 예시적으로 나타낸 도면이다.
도 8은 일 실시예에 따른 인쇄 모듈이 포스 어플리케이션에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 동작 흐름도이다.
도 9는 일 실시예에 따른 인쇄 모듈이 결제 어플리케이션에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 동작 흐름도이다.
도 10은 일 실시예에 따른 제1 인쇄 모듈이 포스 어플리케이션에 포함되고, 제2 인쇄 모듈이 결제 어플리케이션에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 동작 흐름도이다.
도 11은 다른 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 블록도이다.
도 12는 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 주변기기 제어방법을 설명하기 위한 블록도이다.
도 13은 일 실시예에 따른 결제 어플리케이션이 프린터에 포함될 경우의 결제 시스템을 설명하기 위한 블록도이다.
도 14는 일 실시예에 따른 결제 어플리케이션이 프린터에 포함될 경우의 결제 어플리케이션의 결제 방법, 인쇄 방법 및 주변기기 제어 방법을 설명하기 위한 블록도이다.
도 15는 일 실시예에 따른 결제 어플리케이션이 일체형 프린터에 포함될 경우의 결제 어플리케이션의 결제 방법을 설명하기 위한 블록도이다.
도 16은 일 실시예에 따른 결제 어플리케이션이 프린터에 포함되고, 복수의 포스 단말기의 결제 요청에 따라 결제를 수행할 경우의 결제 어플리케이션의 동작을 설명하기 위한 블록도이다.
도 17은 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함될 경우의 결제 시스템을 설명하기 위한 블록도이다.
도 18은 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함될 경우의 결제 어플리케이션의 결제 방법을 설명하기 위한 블록도이다.
도 19는 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함될 경우의 결제 어플리케이션의 인쇄 방법 및 주변기기 제어 방법을 설명하기 위한 블록도이다.
도 20은 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함되고, 복수의 포스 단말기의 결제 요청에 따라 결제를 수행할 경우의 결제 어플리케이션의 동작을 설명하기 위한 블록도이다.
도 2는 일 실시예에 따른 결제 시스템을 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 포스 어플리케이션과 결제 어플리케이션의 동작을 설명하기 위한 흐름도이다.
도 4는 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 시스템을 설명하기 위한 블록도이다.
도 5는 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 결제 방법을 설명하기 위한 블록도이다.
도 6은 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 블록도이다.
도 7은 일 실시예에 따른 인쇄 다큐먼트를 예시적으로 나타낸 도면이다.
도 8은 일 실시예에 따른 인쇄 모듈이 포스 어플리케이션에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 동작 흐름도이다.
도 9는 일 실시예에 따른 인쇄 모듈이 결제 어플리케이션에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 동작 흐름도이다.
도 10은 일 실시예에 따른 제1 인쇄 모듈이 포스 어플리케이션에 포함되고, 제2 인쇄 모듈이 결제 어플리케이션에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 동작 흐름도이다.
도 11은 다른 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 블록도이다.
도 12는 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 주변기기 제어방법을 설명하기 위한 블록도이다.
도 13은 일 실시예에 따른 결제 어플리케이션이 프린터에 포함될 경우의 결제 시스템을 설명하기 위한 블록도이다.
도 14는 일 실시예에 따른 결제 어플리케이션이 프린터에 포함될 경우의 결제 어플리케이션의 결제 방법, 인쇄 방법 및 주변기기 제어 방법을 설명하기 위한 블록도이다.
도 15는 일 실시예에 따른 결제 어플리케이션이 일체형 프린터에 포함될 경우의 결제 어플리케이션의 결제 방법을 설명하기 위한 블록도이다.
도 16은 일 실시예에 따른 결제 어플리케이션이 프린터에 포함되고, 복수의 포스 단말기의 결제 요청에 따라 결제를 수행할 경우의 결제 어플리케이션의 동작을 설명하기 위한 블록도이다.
도 17은 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함될 경우의 결제 시스템을 설명하기 위한 블록도이다.
도 18은 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함될 경우의 결제 어플리케이션의 결제 방법을 설명하기 위한 블록도이다.
도 19는 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함될 경우의 결제 어플리케이션의 인쇄 방법 및 주변기기 제어 방법을 설명하기 위한 블록도이다.
도 20은 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함되고, 복수의 포스 단말기의 결제 요청에 따라 결제를 수행할 경우의 결제 어플리케이션의 동작을 설명하기 위한 블록도이다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 일 실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도면들에 있어서, 층 및 영역들의 두께는 명확성을 기하기 위하여 과장되어진 것이며, 또한, 구성요소(element) 또는 층이 다른 구성요소 또는 층의 "위(on)" 또는 "상(on)"으로 지칭되는 것은 다른 구성요소 또는 층의 바로 위 뿐만 아니라 중간에 다른 층 또는 다른 구성요소를 개재한 경우를 모두 포함한다. 명세서 전체에 걸쳐서 동일한 참조번호들은 원칙적으로 동일한 구성요소들을 나타낸다.
또한, 본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
이하, 본 발명과 관련된 전자기기에 대하여 도면을 참조하여 보다 상세하게 설명한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
<전자기기 및 결제 시스템의 구성>
도 1은 일 실시예에 따른 전자기기를 설명하기 위한 블록도이다.
도 1을 참조하면, 전자기기(100)는 포스 단말기, 프린터, 카드 리더기를 포함할 수 있다. 상기 포스 단말기는 포스 어플리케이션에 의해 구동되어, 상품 관리, 판매 금액정산 처리 및 점포나 매장 경영에 필요한 각종정보와 자료를 수집/처리하는 등의 기능을 수행하는 장치를 나타내는 것으로, 휴대폰, 스마트 폰(smart phone), 태블릿(tablet), 노트북 컴퓨터(laptop computer), PDA(Personal Digital Assistants)와 같은 이동 단말기를 포함할 수 있을 뿐만 아니라, 디지털 TV, 데스크탑 컴퓨터 등과 같은 고정 단말기도 포함할 수 있다.
또한, 상기 프린터는 용지에 인쇄를 수행하는 장치를 나타내는 것으로, 영수증 프린터, 라벨 프린터, 모바일 프린터, 카드 리더기를 포함하는 일체형 프린터 등을 포함할 수 있다.
또한, 상기 카드 리더기는 카드에 포함된 결제 정보를 리딩하는 장치로, 마그네틱 카드 리더기, IC 카드 리더기, 스마트카드 리더기 등을 포함할 수 있다.
전자기기(100)는 통신 인터페이스(110), 메모리부(120), 사용자 입력부(130), 출력부(140), 제어부(150), 프린터부(160) 및 카드 리더부(170) 등을 포함할 수 있다. 도 1에 도시된 구성요소들이 필수적인 것은 아니어서, 그보다 많은 구성요소들을 갖거나 그보다 적은 구성요소들을 갖는 전자기기가 구현될 수도 있다. 예를 들어, 포스 단말기는 통신 인터페이스(110), 메모리부(120), 사용자 입력부(130), 출력부(140) 및 제어부(150)를 포함할 수 있고, 프린터는 통신 인터페이스(110), 메모리부(120), 제어부(150) 및 프린터부(160)를 포함할 수 있고, 일체형 프린터는 통신 인터페이스(110), 메모리부(120), 제어부(150), 프린터부(160), 카드 리더부(170)를 포함할 수 있고, 카드 리더기는 통신 인터페이스(110), 메모리부(120), 제어부(150) 및 카드 리더부(170)를 포함할 수 있다.
통신 인터페이스(110)는 전자기기(100)와 외부 장치 사이의 네트워크 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다.
예를 들어, 통신 인터페이스(110)는 무선랜(WLAN), 와이파이(Wifi) 등의 무선 인터넷 인터페이스와, 블루투쓰(Bluetooth), 직비(ZigBee), 와이기그(WiGig), 알에프아이디(RFID, Radio Frequency Identification), 엔에프시(NFC, Near Field Communication), 적외선 통신(IrDA, infrared Data Association), 유더블유비(UWB, Ultra Wideband) 및 와이에이치디(WiHD)와 같은 근거리 통신 인터페이스와 같은 무선 통신 모듈을 포함하고, 무선 통신 모듈을 통해 외부와 데이터를 통신할 수 있다.
물론, 통신 인터페이스(110)는, 무선 통신 모듈만이 아니라 유선 통신 모듈을 구비할 수도 있다. 예를 들어, 통신부(110)를 통해, 전자기기(100)는, 유에스비(USB) 방식, 시리얼 방식 및 패러럴 방식 중 적어도 하나의 통신 방식에 의해 외부와 데이터를 통신할 수 있다.
메모리부(120)는, 전자기기(100)의 동작에 필요한 각종 데이터를 저장하고 있을 수 있다. 예를 들어, 메모리부(120)는, 제어부(150)의 동작을 위한 프로그램(예를 들어, 포스 어플리케이션, 결제 어플리케이션, 프린터부(160)를 제어하기 위한 프로그램, 카드 리더부(170)를 제어하기 위한 프로그램 등)을 저장할 수 있고, 각종 데이터들을 저장할 수도 있다.
메모리부(120)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(ReadOnly Memory, ROM), EEPROM(Electrically Erasable Programmable ReadOnly Memory), PROM(Programmable ReadOnly Memory) 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
사용자 입력부(130)는, 사용자로부터 필요한 데이터 및/또는 명령을 수신하는 기능을 수행할 수 있다. 사용자 입력부(130)는, 사용자로부터 수신한 필요한 데이터 및/또는 명령에 기초하여, 전자기기(100)의 동작 제어를 위한 입력 데이터를 발생시킬 수 있다.
사용자 입력부(130)는 키보드(keyboard), 마우스(mouse), 키 패드(key pad) 돔 스위치(dome switch), 딥 스위치(dip switch), 터치 패드(정압/정전), 조그 휠 및 조그 스위치 중 적어도 하나를 포함할 수 있다.
출력부(140)는, 시각 또는 청각 등과 관련된 출력을 발생시키기 위한 것으로, 이에는 오디오 출력부(141) 및 비디오 출력부(142) 등이 포함될 수 있다.
오디오 출력부(141)는 전자기기(100)에서 수행되는 기능과 관련된 정보를 청각적으로 출력한다. 이러한 오디오 출력부(141)에는 스피커(speaker), 버저(Buzzer) 등이 포함될 수 있다.
비디오 출력부(142)는 전자기기(100)에서 처리되는 정보를 시각적으로 출력한다. 예를 들어, 전자기기(100)는, 사용자와 인터페이스 할 수 있는 GUI(Graphic User Interface)를, 상기 비디오 출력부(142)를 통해 표시할 수 있다.
비디오 출력부(142)는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor liquid crystal display), 유기 발광 다이오드(organic light emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display) 중에서 적어도 하나를 포함할 수 있다.
비디오 출력부(142)와 터치 동작을 감지하는 센서(이하, '터치 센서'라 함)가 상호 레이어 구조를 이루는 경우(이하, '터치 스크린'이라 약칭함)에, 비디오 출력부(142)는 출력 장치 이외에 입력 장치로도 사용될 수 있다. 터치 센서는, 예를 들어, 터치 필름, 터치 시트, 터치 패드 등의 형태를 가질 수 있다.
제어부(150)는, 전자기기(100)의 전반적인 동작을 총괄한다. 특히, 제어부(150)는, 전자기기(100)에 설치되어 있는 운영체제, 다양한 어플리케이션들 및/또는 프린터 드라이버, 및/또는 카드 리더기 드라이버에 의한 코드들에 따라서 전자기기(100)의 동작을 제어할 수도 있다.
이하에서, 운영체제(OS)는, 전자기기(100) 전체의 동작 상태를 감시, 감독하고 자원들을 관리하며 각종 입출력 장치(예를 들어, 사용자 입력부(130) 및 출력부(140) 등)를 제어하며, 중앙처리장치(예를 들어, 제어부(150))의 스케줄링과 작업관리, 기억장치(예를 들어, 메모리부(120))의 관리 등의 기능을 수행할 수 있다. 즉, 운영체제는, 상기 전자기기(100)의 전반적인 동작을 제어하기 위한 다양한 기능들을 제공하며, 한편, 다양한 어플리케이션들이 상기 전자기기(100)에 설치되어 동작할 수 있도록 하기 위한 기본적인 플랫폼을 제공할 수 있다.
어플리케이션은, 응용프로그램으로써, 상기 전자기기(100)에 특정한 기능을 수행하기 위한 프로그램 코드들을 포함할 수 있다. 예를 들어, 어플리케이션은, 이에 한정되는 것은 아니지만, 포스 기능을 수행하는 포스 어플리케이션, 결제 기능을 수행하는 결제 어플리케이션 등을 포함할 수 있다.
전술한 운영체제 및 어플리케이션은 소프트웨어의 형태로 구현될 수 있고, 소프트웨어 형태로 구현된 운영체제 및/또는 어플리케이션 메모리부(120)에 저장되어 있다가, 필요에 따라, 제어부(150)를 통해, 필요한 기능들을 전자기기(100)에 제공할 수 있다.
전자기기(100)가 프린터일 경우, 전자기기(100)에 프린터부(160)가 포함될 수 있다. 프린터부(160)는 제어부(150)의 제어에 따라 인쇄를 수행할 수 있다. 프린트 헤드(160)는 데이터의 신호를 용지에 기록하는 장치로, 써멀 방식 헤드, 잉크젯 방식 헤드, 도트 방식 헤드, 레이저 방식 헤드 등을 포함할 수 있다.
전자기기(100)가 카드 리더기 또는 카드 리더기를 포함하는 일체형 프린터일 경우, 전자기기(100)에 카드 리더부(170)가 포함될 수 있다. 카드 리더부(170)는 각종 카드에 기억된 정보를 리딩하고, 리딩된 정보를 제어부(150)에 제공할 수 있다.
마그네틱 리더부(171)는 소정의 코일을 포함하는 적어도 하나 이상의 자기 헤드(Magnetic Head)를 포함하여 이루어지며, 예를 들어, 소정의 정보(예컨대, 자성화된 이진(Binary) 데이터)가 기록된 마그네틱 카드가 상기 자기 헤드와 밀착하여 소정의 방향으로 이동(또는 자기 헤드가 소정의 정보가 기록된 마그네틱 카드와 밀착하여 이동)하거나, 마그네틱 신호가 전기적으로 발생되면, 상기 자기 헤드에 소정의 전기적 신호가 로딩되는 것을 이용하여 소정의 정보 또는 데이터를 리딩한다.
IC 카드 리더부(172)는 접촉식 IC 리더부 및 비접촉식 IC 리더부를 포함한다. 접촉식 IC 리더부는 접촉식 IC카드에 구비된 COB(Chip On Board; COB)와 접촉식으로 전기적 접점을 이루는 적어도 하나 이상의 접촉점을 포함하여 이루어지며, 상기 접촉점을 통해 상기 IC카드의 IC칩으로 전원을 공급하고, APDU(Application Protocol Data Unit)를 이용하는 상기 반이중(Half Duplex) 방식의 트랜잭션을 통해 상기 IC칩으로부터 소정의 정보 또는 데이터를 리딩한다.
비접촉식 IC 리더부는 정전결합(Capacitive Coupling) 및/또는 전자유도(Inductive Coupling) 등을 이용하여 비접촉식 IC카드와 비접촉식으로 전기적 접점을 이루는 적어도 하나 이상의 안테나를 포함하여 이루어지며, 상기 안테나를 통해 상기 IC카드의 IC칩으로 전원을 공급하고, APDU를 이용하는 상기 반이중(Half Duplex) 방식의 트랜잭션을 통해 상기 IC칩으로부터 소정의 정보 또는 데이터를 리딩한다.
또한, 스마트카드 리더부(173)는 마그네틱 카드, IC 카드 이외의 카드에 포함된 소정의 정보 또는 데이터를 리딩한다. 예를 들어, 스마트 카드 리더부(173)는 NFC 방식을 이용할 수 있다. 구체적으로, 스마트 카드 리더부(173)는 NFC 리더를 포함하며, NFC 리더는 NFC 리더의 코일과 NFC 태그의 코일 안테나 사이의 자기장을 이용하여 NFC 태그에 포함된 소정의 정보 또는 데이터를 리딩한다.
보안 처리부(174)는 마그네틱 카드 리더부(171), IC 카드 리더부(172) 또는 스마트 카드 리더부(173)에서 리딩된 소정의 정보 또는 데이터를 암호화하거나 마스킹 한다. 예를 들어, 보안 처리부(174)는 상기 소정의 정보 또는 데이터를 대칭키 방식 또는 비대칭키 방식으로 암호화할 수 있다. 또한, 보안 처리부(174)는 상기 소정의 정보 또는 데이터 중 적어도 일부분을 마스킹할 수 있다. 보안 처리부(174)는 암호화된 데이터 또는 마스킹된 데이터를 제어부(150)에 제공할 수 있다.
도 2는 일 실시예에 따른 결제 시스템을 설명하기 위한 도면이다.
도 2를 참조하면, 결제 시스템은 전자기기(210), 서비스 서버(220) 및 카드사 서버(230)를 포함할 수 있다.
전자기기(210)는 결제 기능을 수행하는 장치로, 도 1에서 설명된 전자기기(100)(예를 들어, 포스 단말기, 프린터, 카드 리더기 등)가 적용될 수 있다.
전자기기(210)는 결제 기능을 수행하는 결제 어플리케이션(211)을 포함할 수 있다. 일 예로, 결제 어플리케이션(211)은 카드 결제 기능 및 카드 결제 취소 기능을 수행한다.
카드 결제 기능은 결제자가 구입한 항목에 대한 대금을 지불하기 위하여, 결제자의 카드 정보 및 결제 대금 정보를 카드사 서버(230)에 제공하고, 카드사 서버(230)로부터 결제 승인을 받는 기능을 의미한다.
카드 결제 취소 기능은 카드사 서버(230)에 결제자의 카드 정보 및 결제 취소 대금 정보를 제공하고, 카드사 서버(230)로부터 결제 승인을 취소받는 기능을 의미한다.
이하에서는, 편의상 카드 결제 기능을 중심으로 설명하지만, 카드 결체 취소 기능에는 카드 결제 기능으로 설명한 사항이 그대로 적용될 수 있다.
서비스 서버(220)는 전자기기(210)와 카드사 서버(230) 사이에서, 카드사용 승인중계, 결제내역 취소중계 및/또는 카드전표 매입 등의 서비스를 제공하는 서버로, VAN(Value Add Network)사에서 제공하는 VAN 서버를 포함할 수 있다.
서비스 서버(220)는 부가통신망(VAN) 서비스를 제공하고, 부가통신망 서비스는 신용승인, 직불카드, 자동이체, EDI결제, 수표조회, 전자 지불 등의 기능을 포함한다. 예를 들어, 신용승인 기능은 결제 수단으로 카드가 사용되었을 경우, 네트워크를 통하여 카드의 연체 및 불량 여부를 카드사 서버(230)로부터 확인하여 승인/거절/취소 등의 사용 여부를 신속 정확하게 제공하는 기능을 나타낸다.
카드사 서버(230)는 카드사에서 운영하는 서버로, 카드 결제 승인 및 승인 취소를 수행한다. 예를 들어, 카드사 서버(230)는 결제 대상 카드의 사용 가능 여부, 한도 여부등을 조회하고, 카드 사용이 가능한 경우 카드 결제를 승인하고, 카드 사용이 불가능한 경우 승인을 거절한다. 또한, 카드사 서버(230)는 결제 취소 요청을 받은 경우, 결제 취소가 가능한지 여부를 확인하고, 결제 취소가 가능한 경우, 해당 결제 승인을 취소한다.
일 실시예에서, 결제 어플리케이션(211)이 결제를 요청받은 경우, 결제 어플리케이션(211)는 카드 리더기로부터 결제자의 카드 정보를 획득하고, 카드 정보 및 결제 대금 정보를 서비스 서버(220)에 전송한다. 서비스 서버(220)는 결제 어플리케이션(211)로부터 획득한 카드 정보 및 결제 대금 정보가 유효한지 여부를 확인하고, 유효한 경우, 획득한 카드 정보 및 결제 대금 정보를 카드사 서버(230)에 전송한다. 카드사 서버(230)는 결제 대금을 승인할 수 있는지 여부를 확인하고, 승인 결과를 서비스 서버(220)에 전송하고, 서비스 서버(220)는 승인 결과를 결제 어플리케이션(211)에 전달한다.
도 3은 일 실시예에 따른 포스 어플리케이션과 결제 어플리케이션의 동작을 설명하기 위한 흐름도이다.
도 3을 참조하면, 포스 어플리케이션 및 결제 어플리케이션은 하나의 전자기기에 포함될 수도 있는 반면, 포스 어플리케이션과 결제 어플리케이션은 서로 다른 전자기기에 포함될 수도 있다. 예를 들어, 포스 어플리케이션 및 결제 어플리케이션은 포스 단말기에 포함될 수도 있다. 또한, 포스 어플리케이션이 포스 단말기에 포함되고, 결제 어플리케이션은 프린터 또는 카드 리더기에 포함될 수도 있다.
본 발명의 몇몇 실시예에 따른 결제 방법에서, 포스 어플리케이션은 결제 항목 내역을 확인할 수 있다(311). 여기서, 결제 항목은 결제 대금을 지불하는 조건으로 결제자가 제공받은 것으로 결제자가 구입한 상품, 결제자가 제공받은 서비스 등을 포함할 수 있다. 일 예로, 포스 어플리케이션은 결제 항목이 추가될 때마다 결제 항목 및 해당 결제 항목에 대한 결제 금액 정보를 기록할 수 있다.
또한, 포스 어플리케이션은 결제 요청을 수신할 수 있다(312). 예를 들어, 포스 어플리케이션은 도 1의 사용자 입력부(130)를 통하여 사용자로부터 결제 요청을 수신할 수도 있다. 또한, 포스 어플리케이션은 포스 어플리케이션에 연결된 주변기기 또는 포스 어플리케이션과 통신을 수행하는 외부 장치로부터 결제 요청을 수신할 수 있다. 결제 요청을 수신한 경우, 포스 어플리케이션은 결제자가 지불해야 할 결제 금액을 합산하여 총 결제 금액 정보를 생성할 수 있다.
또한, 포스 어플리케이션은 결제 어플리케이션에 결제를 요청할 수 있다(313). 본 발명의 몇몇 실시예에 따른 결제 방법에서, 포스 어플리케이션은 보안 강화를 위하여 결제 기능을 포함하지 않는다. 구체적으로, 결제 기능을 수행하기 위해서는, 결제를 승인하는 카드사 서버 또는 결제 승인을 중계하는 서비스 서버에 카드 정보를 전송하기 위하여, 카드 정보를 필수적으로 리딩하여야 한다. 그러나, 일반적으로, 포스 어플리케이션은 상품 관리, 매출 관리, 재고 관리 등의 기능들을 수행하기 위해 포스 서버 또는 다른 외부 장치와 통신을 하게 되고, 이에 따라, 포스 어플리케이션이 결제 기능을 수행하여 포스 어플리케이션이 카드 정보에 접근가능한 경우에는, 카드 정보가 포스 단말기와 통신을 수행하는 장치들에 유출될 가능성이 높아진다. 이와 같이, 카드 정보의 유출을 방지하기 위하여, 본 발명의 실시예들에서는 포스 어플리케이션과 결제 어플리케이션이 분리되고, 결제 어플리케이션은 포스 어플리케이션이 카드 정보에 접근하지 못하도록 관리한다. 이에 대해서는 도 5에서 상세하게 설명한다.
단계 313에서, 포스 어플리케이션은 결제 요청과 함께, 결제에 필요한 정보를 결제 어플리케이션에 전송할 수 있다. 여기서, 결제에 필요한 정보는 총 결제 금액 정보를 포함할 수 있다.
또한, 결제 어플리케이션은 포스 어플리케이션으로부터 결제 요청을 수신하고, 결제를 진행하기 위하여 카드 리더기를 활성화시킨다(321). 여기서, 카드 리더기를 활성화시킨다는 것은 카드 리더기가 카드 정보를 리딩할 수 있는 상태로 제어하는 것을 의미한다. 따라서, 카드 리더기가 비활성화되는 경우, 카드 리더기는 카드 정보를 리딩할 수 없다.
결제 어플리케이션은 결제를 수행하기 위하여 카드 리더기로부터 카드 정보를 획득하여야 한다. 그러나, 카드 리더기가 활성화될 경우, 결제 어플리케이션이 결제와 상관없이 카드 정보를 획득할 수 있게 되어 보안에 문제가 발생할 수 있다. 이에 따라, 결제 어플리케이션은 포스 어플리케이션으로부터 결제 요청을 수신한 경우에 한하여 미리 설정된 시간동안 카드 리더기를 활성화 시킬 수 있다. 카드 리더기가 활성화될 경우, 카드 리더기는 카드로부터 카드 정보를 리딩할 수 있다. 여기서, 카드 정보는 카드 번호, 카드 보안 코드(예를 들어, CVC(Card Validation Code), CVV(Card Verification Value), CID(Confidential Identifier Number or Card Identification Number)) 및 유효기간을 포함할 수 있다. 또한, 카드 리더기는 카드 정보를 암호화하며, 암호화와 함께, 카드 정보를 마스킹할 수도 있다.
또한, 결제 어플리케이션은 카드 리더기로부터 카드 정보를 획득할 수 있다(322). 결제 어플리케이션은 암호화된 카드 정보를 필수적으로 획득한다. 또한, 결제 어플리케이션은 선택적으로, 암호화된 카드 정보와 함께 마스킹된 카드 정보를 획득할 수 있다. 그러나, 결제 어플리케이션은 개인 정보가 인식될 수 있는 카드 정보는 획득할 수 없다. 일 예로, 결제 어플리케이션은 카드 리더기로부터 획득되는 카드 정보가 결제 어플리케이션에 의해 숫자로 인식될 수 있는지 여부를 판단할 수 있다. 만약, 카드 리더기의 고장등에 의하여 카드 리더기에서 암호화되지 않은 카드 정보가 결제 어플리케이션으로 전송되는 경우, 결제 어플리케이션은 카드 리더기로부터 수신하는 카드 정보를 숫자로 인식할 수 있고, 이 경우, 결제 어플리케이션은 카드 정보의 수신을 차단하거나, 카드 정보를 숫자로 인식하는 즉시 카드 정보를 즉시 제거할 수 있다. 또한, 일 실시예에서, 결제 어플리케이션은 미리 정해진 기간(예를 들어, 3개월)이 경과한 후, 암호화된 카드 정보를 삭제할 수 있다.
또한, 결제 어플리케이션은 서비스 서버로 암호화된 카드 정보 및 결제 금액 정보를 전송할 수 있다(323). 일 실시예에서, 서비스 서버는 암호화된 카드 정보를 미리 정해진 복호화 키를 이용하여 암호화된 카드정보를 복호화 하고, 복호화된 카드 정보 및 결제 금액 정보를 카드사 서버에 전송하고, 카드사 서버로부터 결제 승인 결과를 획득할 수 있다.
또한, 결제 어플리케이션은 서비스 서버로부터 승인 결과를 획득할 수 있다(324). 결제가 승인된 경우, 결제 어플리케이션은 서비스 서버로부터 승인 결과와 함께 승인 내역 정보를 획득할 수 있다. 여기서, 승인 내역 정보는 승인 번호 및 승인 금액을 포함할 수 있다. 또한, 승인 내역 정보는 가맹점 정보, 카드사 정보 또는 서비스 서버를 운영하는 서비스사 정보 중 적어도 하나를 더 포함할 수 있다.
본 발명의 일 실시예에서, 포스 어플리케이션은 영수증 발행 기능을 포함할 수 있고, 영수증 발행 기능을 수행하기 위하여 영수증에 대한 인쇄 다큐먼트를 생성할 수 있다(314). 여기서, 인쇄 다큐먼트는 프린터에서의 인쇄를 목적으로, 포스 어플리케이션 또는 결제 어플리케이션이 이해할 수 있는 포맷과 명령어로 구성된 데이터를 의미할 수 있다.
도 3의 예에서, 인쇄 다큐먼트는 포스 어플리케이션에서 생성되는 것으로 표현되었지만, 이에 한정되지 않으며, 인쇄 다큐먼트는 결제 어플리케이션에서 생성될 수도 있고, 포스 어플리케이션과 연동하는 문서 편집 어플리케이션에서 생성될 수도 있다.
단계 314에서, 포스 어플리케이션은 결제 어플리케이션에서 수신되는 승인 내역 정보 중 적어도 하나가 포함되도록 인쇄 다큐먼트를 생성할 수 있다. 포스 어플리케이션은 승인 내역 정보와 함께 결제 항목 및 결제 금액 정보, 서명 패드로부터 획득되는 결제자의 서명이 포함되도록 인쇄 다큐먼트를 생성할 수 있다.
또한, 포스 어플리케이션은 인쇄 다큐먼트를 결제 어플리케이션에 전송할 수 있고, 결제 어플리케이션은 인쇄 다큐먼트를 기초로 인쇄 데이터를 생성할 수 있다(325). 여기서, 인쇄 데이터는 프린터에서의 인쇄를 목적으로, 프린터가 이해할 수 있는 포맷과 명령어로 구성된 데이터를 의미할 수 있다.
본 발명의 몇몇 실시예에 따른 결제 방법에서, 결제 어플리케이션은 프린터 드라이버를 이용하여 인쇄 다큐먼트를 인쇄 데이터로 변환할 수 있다. 여기서, 프린터 드라이버는, 프린터의 동작과 프린터와의 입출력 및/또는 통신을 제어하는 데 사용되는 명령어의 집합이나 프로그램을 의미한다. 즉, 프린터 드라이버는 전자기기에서 프린터를 제어하기 위한 일종의 응용 프로그램일 수 있다.
본 발명의 일 실시예에서, 프린터 드라이버는 결제 어플리케이션에 포함되어, 결제 어플리케이션 내부에서 인쇄 데이터를 생성할 수 있다. 다만, 프린터 드라이버가 반드시 결제 어플리케이션에 포함되지는 않고, 오히려, 전술한 운영체제에 일부로서 포함될 수 있다.
또한, 결제 어플리케이션은 프린터에 인쇄 데이터를 전송할 수 있다(326). 프린터는 인쇄 데이터에 따라 용지에 인쇄를 수행하여, 결제자에게 영수증을 제공할 수 있다.
앞서 설명한 바와 같이, 포스 어플리케이션은 포스 단말기에 포함되지만, 결제 어플리케이션은 포스 단말기뿐만 아니라 프린터 또는 카드 리더기에 포함될 수 있고, 결제 어플리케이션이 포함되는 전자기기의 특성에 따라, 결제 어플리케이션은 동작 및 이에 따른 기술적 효과는 상이해질 수 있다. 이하에서는, 결제 어플리케이션이 각 전자기기에서 동작하는 구체적인 실시예들에 대해 상세하게 설명한다.
<포스 단말기에서의 결제 어플리케이션의 동작>
도 4는 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 시스템을 설명하기 위한 블록도이다.
도 4를 참조하면, 결제 시스템은 프린터(410), 포스 단말기(420), 카드 리더기(430), 서비스 서버(440) 및 카드사 서버(450)를 포함할 수 있다.
포스 단말기(420)는 프린터(410), 카드 리더기(430) 및 서비스 서버(440)와 통신을 수행할 수 있다. 다만, 도 4에서 도시되지는 않았지만, 포스 단말기(420)에는 서명 패드와 같은 주변기기도 포스 단말기(420)에 연결될 수 있다.
포스 단말기(420)는 포스 어플리케이션 및 결제 어플리케이션을 포함할 수 있다. 포스 어플리케이션은 포스 기능을 수행하여 결제 항목 및 결제 금액을 기록한다. 또한, 결제 어플리케이션은 포스 어플리케이션에 기록된 결제 항목 및 결제 금액을 기초로 결제를 수행한다. 보다 구체적으로, 결제 어플리케이션은 카드 리더기(430)로부터 암호화된 카드 정보를 획득하고, 서비스 서버(440)에 결제 승인 요청을 위하여 암호화된 카드 정보 및 결제 금액을 전송한다. 서비스 서버(440)는 결제 어플리케이션 및 카드사 서버(450) 사이에서 결제 승인을 중계하고, 카드사 서버(450)로부터 결제 승인 결과를 획득한다. 또한, 서비스 서버(440)는 결제 어플리케이션에 결제 승인 결과를 전송하고, 결제 어플리케이션은 포스 어플리케이션에 결제 승인 결과를 제공한다. 일 실시예에서, 결제 어플리케이션은 포스 어플리케이션에 결제 승인 결과와 함께 카드 리더기(430)로부터 수신한 마스킹된 카드 정보를 제공할 수 있다. 그러나, 카드 정보 유출 방지를 위하여, 결제 어플리케이션은 암호화된 카드 정보를 포스 어플리케이션에 제공하지 않는다. 또한, 결제 어플리케이션 또는 포스 어플리케이션 중 적어도 하나는 사용자에게 결제 승인 결과를 제공하기 위한 인쇄 다큐먼트를 생성하고, 인쇄 다큐먼트를 프린터(410)에서 이해할 수 있는 포맷 및 데이터로 구성된 인쇄 데이터로 변환한다. 프린터(410)는 인쇄 데이터를 수신하여, 인쇄 데이터에 따라 인쇄를 수행한다.
상술한 바와 같이, 포스 어플리케이션 및 결제 어플리케이션이 하나의 전자기기에 저장되어 있음에 따라 포스 어플리케이션과 결제 어플리케이션 간의 데이터 교환은 운영체제를 통해 이뤄진다. 따라서, 포스 어플리케이션에 결제 어플리케이션이 포함되는 경우와는 달리, 포스 어플리케이션은 결제 어플리케이션이 억세스하는 모든 정보를 획득할 수 없고, 결제 어플리케이션이 제공하는 정보만을 결제 어플리케이션으로부터 획득할 수 있다.
이하에서는, 포스 단말기(420)의 내부에서 포스 어플리케이션과 분리되어 설치되는 결제 어플리케이션과 포스 어플리케이션의 동작에 대해 설명하며, 특히 포스 단말기(420)에 설치된 결제 어플리케이션의 결제 방법, 결제 어플리케이션의 인쇄 방법 및 결제 어플리케이션의 주변기기 제어 방법에 대해 구체적으로 설명한다.
도 5는 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 결제 방법을 설명하기 위한 블록도이다.
도 5를 참조하면, 포스 단말기(500)는 제어부(510) 및 통신 인터페이스(560)를 포함한다.
제어부(510)는 통신 인터페이스(560)를 통하여 서비스 서버(580) 및 카드 리더기(570)와 통신을 수행한다. 도 5에서는 도시되지 않았지만, 제어부(510)에는 서비스 모듈(미도시)이 포함될 수 있고, 제어부(510)는 서비스 모듈(미도시)을 통하여 서비스 서버(580)와 데이터를 송수신할 수 있다.
또한, 제어부(510)는 포스 어플리케이션(520), 결제 어플리케이션(530), 운영체제(540) 및 카드 리더기 드라이버(550)를 포함할 수 있다.
다만, 도 5에서는 제어부(510)가 포스 어플리케이션(520), 결제 어플리케이션(530), 운영체제(540) 및 카드 리더기 드라이버(550)를 포함하는 것으로 표현되었지만, 이는 포스 어플리케이션(520), 결제 어플리케이션(530), 운영체제(540) 및 카드 리더기 드라이버(550)가 제어부(510)에서 구동된다는 것을 의미하고, 포스 어플리케이션(520), 결제 어플리케이션(530), 운영체제(540) 및 카드 리더기 드라이버(550)는 포스 단말기(500)의 메모리부(미도시)에 저장되어, 제어부(510)에 의해 호출될 수 있다. 이는 이하의 설명에서도 동일하게 적용된다.
또한, 포스 어플리케이션(520)는 포스 기능을 수행하는 포스 모듈(521)을 포함할 수 있고, 결제 어플리케이션(530)는 결제 기능을 수행하는 결제 모듈(531)을 포함할 수 있다.
운영체제(540)는 포스 단말기(500) 전체의 동작 상태 및 자원들을 관리하고 통신 인터페이스(560)를 제어할 수 있다. 특히, 운영체제(540)는 포스 어플리케이션(520), 결제 어플리케이션(530), 카드 리더기 드라이버(550) 각각의 입출력을 관리한다. 이에 따라, 포스 어플리케이션(520) 및 결제 어플리케이션(530) 상호간은 직접적으로 데이터를 송수신할 수 없으며, 운영체제(540)를 통하여 데이터를 송수신하여야 한다.
본 발명의 구체적인 실시예에서, 운영체제(540)는 커널을 포함하고, 커널은 각 어플리케이션의 메모리 접근을 관리하며, 어떠한 어플리케이션이 어떠한 하드웨어 자원을 이용할지 여부를 결정한다. 일 예로, 포스 단말기(500)를 각 층(layer)으로 구분할 경우, 통신 인터페이스(560)는 물리층에 포함될 수 있고, 커널은 OS 커널층에 포함될 수 있으며, 어플리케이션들(520, 530) 및 카드 리더기 드라이버(550)는 어플리케이션 층에 포함될 수 있으며, 어플리케이션들(520, 530) 및 카드 리더기 드라이버(550)는 커널의 관리하에 포스 단말기(500)의 리소스를 이용할 수 있다.
일 실시예에서, 어플리케이션들(520, 530)간 데이터 교환 방식은 메시지 전달(message passing) 방식 및 공유 메모리 방식을 포함할 수 있다. 메시지 전달 방식은 운영체제(540)를 매개로 어플리케이션들(520, 530)이 메시지를 교환하는 방식이다. 예를 들어, 승인 정보 번호가 결제 모듈(531)에서 포스 모듈(521)로 전달되기 위하여, 결제 모듈(531)은 운영체제(540)에 승인 번호를 전송하고, 운영체제(540)는 승인 번호 데이터를 포스 모듈(521)에 제공할 수 있다.
또한, 공유 메모리 방식에서, 커널은 포스 어플리케이션(520)과 결제 어플리케이션(530)간 데이터 송수신을 위한 공유 메모리를 할당하고, 포스 어플리케이션(520)과 결제 어플리케이션(530)은 할당된 공유 메모리에 데이터를 저장하여 정보를 교환할 수 있다. 예를 들어, 결제 금액이 포스 모듈(521)에서 결제 모듈(531)로 전달되기 위하여, 포스 모듈(521)은 공유 메모리에 결제 금액 데이터를 저장하고, 결제 모듈(531)은 공유 메모리로부터 결제 금액 데이터를 추출할 수 있다.
또한, 이에 한정되지 않고, 어플리케이션들(520, 530)간 데이터 교환은 파일, 신호, 소켓, 메시지 큐, 파이프, 지명 파이프, 세마포어, 메모리 맵 파일, URI(Uniform Resource Identifier) 등 다양한 방식(예를 들어, IPC(Inter-Process Communication) 방식)으로 수행될 수 있다.
이하에서는, 도 5에서 설명한 내용을 바탕으로, 결제 어플리케이션의 결제 방법에 대해 구체적으로 설명한다.
먼저, 포스 모듈(521)은 포스 기능을 수행하여 결제 항목이 추가될 때마다 결제 항목 및 결제 금액을 기록할 수 있다. 포스 모듈(521)이 결제 요청을 수신하는 경우, 포스 모듈(521)은 기록된 결제 금액을 합산하여 총 결제 금액 정보를 생성하고, 결제 모듈(531)에 결제 요청 및 총 결제 금액 정보를 전달하기 위하여, 결제 요청 및 총 결제 금액 정보를 운영체제(540)에 전송한다. 운영체제(540)는 상술한 방식에 따라 결제 요청 및 결제 금액 정보를 결제 모듈(531)에 전달한다. 운영체제(540)로부터 결제 요청을 수신함에 따라, 결제 모듈(531)은 카드 리더기(570)로부터 카드 정보를 획득한다. 이를 위해, 결제 모듈(531)은 카드 리더기 드라이버(550)에 카드 리더기 활성화 명령을 전송하고, 카드 리더기 드라이버(550)는 카드 리더기 활성화 명령을 운영체제(540) 및 통신 인터페이스(560)를 통하여 카드 리더기(570)에 전송할 수 있다. 카드 리더기(570)는 카드 리더기 활성화 명령에 따라 미리 정해진 시간동안 활성화될 수 있다. 카드 리더기(570)가 활성화 된 후, 카드 리더기(570)는 결제자의 카드 정보를 획득하고, 획득한 카드 정보를 암호화한다. 이 후, 결제 모듈(531)은 통신 인터페이스(560), 운영체제(540) 및 카드 리더기 드라이버(550)를 통하여 카드 리더기(570)로부터 암호화된 카드 정보를 획득할 수 있다. 또한, 이에 한정되지 않고, 결제 모듈(531)은 카드 리더기 드라이버(550)를 통하지 않고, 운영체제(540) 및 통신 인터페이스(560)를 통하여, 카드 리더기(570)에 카드 리더기 활성화 명령을 전달하거나, 카드 리더기(570)로부터 암호화된 카드 정보를 획득할 수 있다.
이와 같이, 포스 어플리케이션(520)은 결제 어플리케이션(530)과 분리되고, 결제 어플리케이션(530)은 결제 어플리케이션(530)이 획득하는 암호화된 카드 정보에 포스 어플리케이션(520)이 접근하지 못하도록 관리할 수 있다. 예를 들어, 포스 어플리케이션(520)이 암호화된 카드 정보를 획득하거나 가공하지 못하도록, 결제 어플리케이션(530)은 암호화된 카드 정보를 포스 모듈에 제공하지 않거나, 포스 어플리케이션(520)의 카드 리더기 드라이버(550)의 접근을 차단할 수 있다. 또한, 운영체제(540)와 결제 어플리케이션(530)사이에서 암호화된 카드 정보가 송수신되는 경우, 결제 어플리케이션(530)은 암호화된 카드 정보가 포스 어플리케이션(520)이 접근할 수 없는 메모리 영역에 저장되도록 운영체제(540)에 요청할 수 있다. 이에 따라, 포스 어플리케이션(520)은 암호화된 카드 정보에 접근할 수 없게 되어 보안성이 강화된다. 다만, 상기 메모리 영역에 저장되는 암호화된 카드 정보는 미리 정해진 기간(예를 들어, 3개월)이 경과된 후, 삭제될 수 있다.
결제 모듈(531)은 결제를 요청하기 위하여, 서비스 서버(580)에 암호화된 카드 정보 및 결제 금액 정보를 전송하여 결제 승인을 요청할 수 있다. 보다 구체적으로, 결제 모듈(531)은 암호화된 카드 정보 및 결제 금액 정보를 운영체제(540)에 제공하고, 운영체제(540)는 암호화된 카드 정보 및 결제 금액 정보를 통신 인터페이스(560)를 통하여 서비스 서버(580)에 전송할 수 있다. 서비스 서버(580)는 승인 결과를 통신 인터페이스(560) 및 운영 체제(540)를 통하여 결제 모듈(531)에 전송할 수 있다. 결제 모듈(531)은 운영체제(540)를 통하여 승인 결과를 포스 모듈(521)에 제공할 수 있다.
도 6은 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 블록도이다.
도 6을 참조하면, 포스 단말기(600)는 제어부(610) 및 통신 인터페이스(660)를 포함한다. 제어부(610)는 통신 인터페이스(660)를 통하여 프린터(670), 카드 리더기(680) 및 서비스 서버(690)와 통신을 수행한다.
포스 어플리케이션(620)은 포스 기능을 수행하는 포스 모듈(621)을 포함할 수 있고, 결제 어플리케이션(630)은 결제 기능을 수행하는 결제 모듈(631) 및 프린터 드라이버(632)를 포함할 수 있다. 도 6의 예에서는 프린터 드라이버(632)가 결제 어플리케이션(630)에 포함된 것으로 표현되었지만, 이에 한정되지 않고, 프린터 드라이버(632)는 결제 어플리케이션(630)의 외부에 위치하여, 운영체제(640)를 통해 결제 어플리케이션(630)과 연동할 수 있다.
결제를 수행하거나 취소하는 과정에서, 포스 모듈(621)은 결제자의 결제 항목, 결제 금액을 기록하고, 결제 요청을 수신하는 경우 결제 금액을 합산하여 총 결제 금액을 생성한다.
또한, 결제를 수행하거나 취소하는 과정에서, 결제 모듈(631)은 카드 리더기(680)로부터 암호화된 카드 정보를 획득한다. 이 때, 본 발명의 몇몇 실시예에서, 결제 모듈(631)은 카드 리더기(680)로부터 암호화된 카드 정보와 함께 마스킹된 카드 정보를 함께 획득할 수 있다.
또한, 결제를 수행하는 경우, 결제 모듈(631)은 서비스 서버(690)로부터 승인 결과와 함께 승인 내역 정보를 획득할 수 있다. 여기서, 승인 내역 정보는 승인 번호, 승인 금액, 가맹점 정보, 카드사 정보 또는 서비스 서버를 운영하는 서비스사 정보 중 적어도 하나를 포함할 수 있다.
또한, 결제를 취소하는 경우, 결제 모듈(631)은 서비스 서버(690)로부터 취소 결과와 함께 취소 내역 정보를 획득할 수 있다. 여기서, 취소 내역 정보는 취소 승인 번호, 취소 금액, 가맹점 정보, 카드사 정보 또는 서비스 서버를 운영하는 서비스사 정보 중 적어도 하나를 포함할 수 있다.
또한, 제어부(610)는 인쇄 모듈(미도시)를 포함할 수 있다. 인쇄 모듈은 도 3에서 언급한 영수증에 대한 인쇄 다큐먼트를 생성하는 역할을 수행한다. 여기서, 인쇄 다큐먼트는 포스 어플리케이션 또는 결제 어플리케이션이 이해할 수 있는 포맷과 명령어로 구성된다. 인쇄 모듈은 포스 어플리케이션(620)에 포함될 수도 있고, 결제 어플리케이션(630)에 포함될 수도 있으며, 포스 어플리케이션(620) 및 결제 어플리케이션(630) 각각에 포함될 수도 있다. 이에 대해서는 도 8 내지 도 10에서 상세하게 설명한다.
결제 모듈(631)이 포스 모듈(621)로부터 결제 요청을 받거나, 서비스 서버(690)로부터 결제를 승인한다는 결과를 획득하거나, 결제를 취소한다는 결과를 획득하는 경우, 결제 모듈(631)은 인쇄 모듈에 인쇄 다큐먼트 생성 명령을 전송한다. 또한, 본 발명의 몇몇 실시예에서, 포스 모듈(621)이 결제 모듈(631)에 결제 요청을 하는 경우, 포스 모듈(621)은 인쇄 모듈에 인쇄 다큐먼트 생성 명령을 전송할 수 있다.
인쇄 다큐먼트 생성 명령에 따라, 인쇄 모듈은 인쇄 다큐먼트를 생성한다. 설명의 편의를 위하여, 인쇄 다큐먼트에 대해서는 도 7의 인쇄 다큐먼트(710)를 예시적으로 설명한다.
본 발명의 몇몇 실시예에서, 인쇄 모듈은 미리 정해진 템플릿을 기초로 인쇄 다큐먼트를 생성한다. 여기서, 미리 정해진 템플릿은 포스 단말기(600)를 사용하는 가맹점 정보(예를 들어, 도 7의 식별부호 711), 영수증의 각 항목(예를 들어, 도 7의 식별부호 712, 713, 714)을 포함한다.
또한, 인쇄 모듈은 포스 모듈(621)로부터 결제 항목, 결제 금액, 총 결제 금액을 획득하고, 결제 항목 및 결제 금액(예를 들어, 도 7의 식별부호 721), 총 결제 금액(예를 들어, 도 7의 식별부호 722)을 인쇄 다큐먼트에 포함시킨다.
또한, 인쇄 모듈은 결제 모듈(631)로부터 승인 내역 정보(또는, 취소 내역 정보)를 획득하고, 승인 내역 정보(예를 들어, 도 7의 식별부호 731)를 인쇄 다큐먼트에 포함시킨다. 또한, 본 발명의 몇몇 실시예에서, 인쇄 모듈은 결제 모듈(631)로부터 마스킹된 카드정보를 획득하고, 마스킹된 카드 정보(예를 들어, 도 7의 식별부호 732)를 인쇄 다큐먼트에 포함시킨다. 그러나, 이 경우에도, 결제 모듈(631)은 암호화된 카드정보을 인쇄 모듈에 제공하지 않는다.
또한, 인쇄 모듈은 생성된 인쇄 다큐먼트를 프린터 드라이버(650)에 전송한다. 프린터 드라이버(650)는 인쇄 다큐먼트를 프린터가 이해할 수 있는 포맷 및 명령어로 변환하여, 프린터(670)에서 출력가능한 형식의 인쇄 데이터를 생성할 수 있다. 프린터 드라이버(650)는 생성된 인쇄 데이터를 운영체제(640)를 통하여 프린터(670)에 전송하고, 프린터(670)는 인쇄 데이터에 따라 용지에 인쇄를 수행하여, 사용자에게 영수증을 제공할 수 있다.
도 8은 일 실시예에 따른 인쇄 모듈이 포스 어플리케이션에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 동작 흐름도이다.
도 8을 참조하면, 결제 어플리케이션의 결제 모듈은 서비스 서버로부터 결제를 승인한다는 결과(또는, 결제를 취소한다는 결과)를 획득할 수 있다(821). 이 경우, 결제 모듈은 서비스 서버로부터 승인 내역 정보를 함께 획득할 수 있다. 또한, 결제 모듈은 인쇄 다큐먼트 생성 명령과 함께, 마스킹된 카드정보 및 승인 내역 정보를 포스 어플리케이션의 인쇄 모듈에 전송한다. 다만, 결제 모듈은 암호화된 카드정보에 대해서는, 인쇄 모듈에 전송되지 못하도록 관리할 수 있다. 이에 따라, 인쇄 모듈에는 사용자의 신용정보와 관련없는 정보만이 제공될 수 있다.
인쇄 모듈은 미리 정해진 템플릿에 결제 항목, 결제 금액, 총 결제 금액을 포함시키고, 결제 어플리케이션으로부터 획득한 마스킹된 카드정보 및 승인 내역 정보를 획득하여 인쇄 다큐먼트를 생성한다(811). 일 실시예에서, 인쇄 모듈은 포스 서버로부터 미리 정해진 템플릿을 획득할 수도 있고, 외부로부터 획득할 수도 있다.
또한, 인쇄 모듈은 결제 어플리케이션에 인쇄 다큐먼트를 전송하고, 결제 어플리케이션은 인쇄 다큐먼트를 인쇄 데이터로 변환할 수 있다(822). 구체적으로, 프린터 드라이버는 결제 어플리케이션에 존재할 수 있고, 프린터 드라이버는 결제 어플리케이션이 인쇄 다큐먼트를 획득하는 경우, 인쇄 다큐먼트를 인쇄 데이터로 변환할 수 있다. 이후, 인쇄 모듈은 프린터가 인쇄 데이터에 따라 인쇄를 수행하도록 프린터에 인쇄 데이터를 제공할 수 있다(823).
또한, 프린터 드라이버는 결제 어플리케이션 내부에 포함되어 있지 않고, 독립된 어플리케이션으로 존재할 수 있다. 이 경우, 인쇄 모듈은 결제 어플리케이션으로부터 획득한 인쇄 다큐먼트를 인쇄 명령과 함께 프린터 드라이버에 제공할 수 있고, 프린터 드라이버는 인쇄 다큐먼트를 인쇄 데이터로 변환한다. 이후, 인쇄 명령에 따라, 프린터 드라이버는 프린터에 인쇄 데이터를 제공할 수 있다.
도 9는 일 실시예에 따른 인쇄 모듈이 결제 어플리케이션에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 동작 흐름도이다.
도 9를 참조하면, 결제 어플리케이션의 인쇄 모듈은 포스 어플리케이션으로부터, 인쇄 다큐먼트의 생성에 필요한 정보, 즉, 결제 항목, 결제 금액, 총 결제 금액에 대한 정보를 획득할 수 있다. 도 9의 실시예에서, 인쇄 다큐먼트의 생성에 필요한 정보는 서비스 서버로부터 승인 결과를 획득하기 전에 획득되는 것으로 표현되었지만, 이에 한정하지 않고, 인쇄 모듈은 서비스 서버로부터 승인 결과를 획득한 후 인쇄 다큐먼트의 생성에 필요한 정보를 획득할 수도 있다.
또한, 결제 어플리케이션의 결제 모듈은 서비스 서버로부터 결제를 승인한다는 결과(또는, 결제를 취소한다는 결과)를 획득할 수 있다(911). 이 경우, 결제 어플리케이션은 서비스 서버로부터 승인 내역 정보를 함께 획득할 수 있다.
또한, 인쇄 모듈은 결제 모듈로부터 승인 내역 정보를 획득하고, 결제 어플리케이션의 인쇄 모듈은 미리 정해진 템플릿을 이용하여 인쇄 다큐먼트를 생성할 수 있다(912). 일 실시예에서, 인쇄 모듈은 포스 어플리케이션으로부터 미리 정해진 템플릿을 획득할 수도 있고, 외부로부터 획득할 수도 있다.
또한, 인쇄 모듈은 미리 정해진 템플릿에, 포스 어플리케이션으로부터 획득한 결제 항목, 결제 금액, 총 결제 금액, 카드 리더기로부터 획득한 마스킹된 카드 정보 및 서비스 서버로부터 획득한 승인 내역 정보(또는, 취소 내역 정보)를 부가하여 인쇄 다큐먼트를 생성할 수 있다.
일 실시예에서, 인쇄 모듈은 서비스 서버로부터 승인 결과를 획득하기 전에, 미리 정해진 템플릿에 포스 어플리케이션으로부터 획득한 결제 항목, 결제 금액, 총 결제 금액 및/또는 카드 리더기로부터 획득한 마스킹된 카드 정보를 부가하여 부분 인쇄 다큐먼트를 생성하고, 서비스 서버로부터 승인 결과를 획득한 후, 부분 인쇄 다큐먼트에 서비스 서버로부터 획득한 승인 내역 정보(또는, 취소 내역 정보)를 부가하여 전체 인쇄 다큐먼트를 생성할 수 있다. 이와 같이, 서비스 서버로부터 승인 결과를 획득하기 전에 결제 어플리케이션이 가지고 있는 정보를 기초로 부분 인쇄 다큐먼트를 생성함으로써, 인쇄 다큐먼트의 생성 속도를 보다 빠르게 할 수 있고, 이에 따라, 전체적으로 인쇄 속도가 향상될 수 있다.
또한, 인쇄 모듈은 인쇄 다큐먼트를 인쇄 데이터로 변환할 수 있다(913). 프린터 드라이버가 인쇄 모듈에 포함될 경우, 프린터 드라이버가 인쇄 다큐먼트를 인쇄 데이터로 변환하고, 이후, 인쇄 모듈은 프린터가 인쇄 데이터에 따라 인쇄를 수행하도록 프린터에 인쇄 데이터를 제공할 수 있다(914).
또한, 프린터 드라이버가 인쇄 모듈 내부에 포함되어 있지 않고, 독립된 어플리케이션으로 존재하는 경우, 인쇄 모듈은 인쇄 다큐먼트를 인쇄 명령과 함께 프린터 드라이버에 제공할 수 있고, 프린터 드라이버는 인쇄 다큐먼트를 인쇄 데이터로 변환한다. 이후, 인쇄 명령에 따라, 프린터 드라이버는 프린터에 인쇄 데이터를 제공할 수 있다.
도 10은 일 실시예에 따른 제1 인쇄 모듈이 포스 어플리케이션에 포함되고, 제2 인쇄 모듈이 결제 어플리케이션에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 동작 흐름도이다.
도 10을 참조하면, 포스 어플리케이션에 포함된 제1 인쇄 모듈은 미리 정해진 템플릿에 결제 항목, 결제 금액, 총 결제 금액을 부가하여 부분 인쇄 다큐먼트를 생성한다(1011). 여기서, 부분 인쇄 다큐먼트는 전체 인쇄 다큐먼트 중 일부분에 해당하는 다큐먼트로 정의된다.
본 발명의 몇몇 실시예에서, 제1 인쇄 모듈은 결제 요청을 획득한 후, 부분 인쇄 다큐먼트를 생성할 수도 있다.
다른 실시예에서, 제1 인쇄 모듈은 결제 어플리케이션에 포함된 제2 인쇄 모듈로부터 부분 인쇄 다큐먼트 생성 명령을 획득한 후, 부분 인쇄 다큐먼트를 생성할 수 있다. 이 경우, 제2 인쇄 모듈은 서비스 서버로부터 결제를 승인한다는 결과(또는, 결제를 취소한다는 결과)를 획득한 후, 부분 인쇄 다큐먼트 생성 명령을 제1 인쇄 모듈에 전송할 수 있다.
또한, 부분 인쇄 다큐먼트를 생성한 후, 제1 인쇄 모듈은 결제 어플리케이션에 부분 인쇄 다큐먼트를 전송할 수 있다.
또한, 결제 어플리케이션의 결제 모듈은 서비스 서버로부터 결제를 승인한다는 결과(또는, 결제를 취소한다는 결과)를 획득할 수 있다(1021). 이 경우, 결제 모듈은 서비스 서버로부터 승인 내역 정보를 함께 획득할 수 있다.
또한, 제2 인쇄 모듈은 결제 모듈로부터 승인 내역 정보를 획득하고, 제2 인쇄 모듈은 부분 인쇄 다큐먼트를 기초로 전체 인쇄 다큐먼트를 생성할 수 있다(1022). 일 실시예에서, 제2 인쇄 모듈은 부분 인쇄 다큐먼트에 카드 리더기로부터 획득한 마스킹된 카드 정보 및 서비스 서버로부터 획득한 승인 내역 정보(또는, 취소 내역 정보)를 부가하여 인쇄 다큐먼트를 생성할 수 있다. 이와 같이, 제2 인쇄 모듈은 부분 인쇄 다큐먼트에 소정의 정보만을 부가하여 전체 인쇄 다큐먼트를 생성할 수 있으므로, 인쇄 다큐먼트의 생성 속도가 보다 빨라질 수 있고, 이에 따라, 전체적으로 인쇄 속도가 향상될 수 있다.
또한, 제2 인쇄 모듈은 인쇄 다큐먼트를 인쇄 데이터로 변환할 수 있다(1023). 일 실시예에서, 프린터 드라이버가 제2 인쇄 모듈에 포함될 경우, 프린터 드라이버가 인쇄 다큐먼트를 인쇄 데이터로 변환시키고, 이후, 제2 인쇄 모듈은 프린터가 인쇄 데이터에 따라 인쇄를 수행하도록 프린터에 인쇄 데이터를 제공할 수 있다(1024).
다른 일 실시예에서, 프린터 드라이버가 제2 인쇄 모듈 내부에 포함되어 있지 않고, 독립된 어플리케이션으로 존재하는 경우, 제2 인쇄 모듈은 인쇄 다큐먼트를 인쇄 명령과 함께 프린터 드라이버에 제공할 수 있고, 프린터 드라이버는 인쇄 다큐먼트를 인쇄 데이터로 변환한다. 이후, 인쇄 명령에 따라, 프린터 드라이버는 프린터에 인쇄 데이터를 제공할 수 있다.
도 11은 다른 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 인쇄 방법을 설명하기 위한 블록도이다.
도 11을 참조하면, 포스 단말기(1100)는 제어부(1110) 및 통신 인터페이스(1160)를 포함한다. 제어부(1110)는 통신 인터페이스(1160)를 통하여 프린터(1170), 카드 리더기(1180) 및 서비스 서버(1190) 와 통신을 수행한다.
포스 어플리케이션(1120)은 포스 기능을 수행하는 포스 모듈(1121)을 포함할 수 있고, 결제 어플리케이션(1130)은 결제 기능을 수행하는 결제 모듈(1131)을 포함할 수 있다.
또한, 제어부(1110)는 인쇄 모듈(미도시)을 포함할 수 있다. 인쇄 모듈은 포스 어플리케이션(1120)에 포함될 수도 있고, 결제 어플리케이션(1130)에 포함될 수도 있으며, 포스 어플리케이션(1120) 및 결제 어플리케이션(1130) 각각에 포함될 수도 있다. 도 11에서는 인쇄 모듈이 포스 어플리케이션(1120)에 포함된 것을 가정하여 설명한다.
결제 모듈(1131)이 서비스 서버(1190)로부터 결제를 승인한다는 결과를 획득하거나, 결제를 취소한다는 결과를 획득하는 경우, 결제 모듈(1131)은 운영체제를 통하여 포스 어플리케이션(1120)에 포함된 인쇄 모듈에 인쇄 다큐먼트 생성 명령을 전송한다. 또한, 본 발명의 몇몇 실시예에서, 포스 모듈(1121)이 결제 모듈(1131)에 결제 요청을 하는 경우, 포스 모듈(1121)은 인쇄 모듈에 인쇄 다큐먼트 생성 명령을 전송할 수 있다.
인쇄 다큐먼트 생성 명령에 따라, 인쇄 모듈은 인쇄 다큐먼트를 생성한다. 인쇄 다큐먼트의 생성에 대해서는 도 6 내지 도 10에 설명된 내용이 그대로 적용되므로, 자세한 설명은 생략한다.
또한, 인쇄 모듈은 프린터 드라이버(1151)에 인쇄 모듈을 전송한다. 도 11의 예에서, 프린터 드라이버(1151)는 포스 어플리케이션(1120)의 외부에 존재하여 포스 어플리케이션(1120)과 연동하는 것으로 표현되었지만, 이에 한정되지 않고, 프린터 드라이버(1151)는 포스 어플리케이션(1120)에 포함될 수도 있다.
프린터 드라이버(1151)는 인쇄 다큐먼트를 프린터가 이해할 수 있는 포맷 및 명령어로 변환하여 인쇄 데이터를 생성할 수 있다. 프린터 드라이버(1151)는 생성된 인쇄 데이터를 운영체제(1140)를 통하여 프린터(1170)에 전송하고, 프린터(1170)는 인쇄 데이터에 따라 용지에 인쇄를 수행하여, 사용자에게 영수증을 제공할 수 있다.
도 12는 일 실시예에 따른 결제 어플리케이션이 포스 단말기에 포함될 경우의 결제 어플리케이션의 주변기기 제어방법을 설명하기 위한 블록도이다.
도 12를 참조하면, 포스 단말기(1200)는 제어부(1210) 및 통신 인터페이스(1260)를 포함한다. 제어부(1210)는 통신 인터페이스(1260)를 통하여 카드 리더기(1270), 기타 주변기기(1280) 및 서비스 서버(690) 와 통신을 수행한다. 여기서, 기타 주변기기는 카드 리더기(1270) 외에 포스 단말기(1200)과 연결될 수 있는 다른 주변기기(예를 들어, 프린터, 바코드 리더기, 카드 결제 서명 패드, 캐시 드로워)등을 포함할 수 있다.
포스 어플리케이션(1220)은 포스 기능을 수행하는 포스 모듈(1221)을 포함할 수 있고, 결제 어플리케이션(1230)은 결제 기능을 수행하는 결제 모듈(1231) 및 주변기기를 제어하는 주변기기 제어모듈(1232)을 포함할 수 있다. 여기서, 주변기기 제어모듈(1232)은 결제모듈(1231)의 동작을 기초로 주변기기를 제어할 수 있다. 이 때, 주변기기 제어모듈(1232)는 제어 신호를 생성한 후, 운영 체제(1240)를 통하여 카드 리더기(1270) 또는 기타 주변기기(1280)에 제어 신호를 전송하고, 제어 신호를 수신한 카드 리더기(1270) 또는 기타 주변기기(1280)는 제어 신호에 따라 제어될 수 있다.
본 발명의 몇몇 실시예에서, 주변기기 제어모듈(1232)은 카드 리더기(1270)를 제어할 수 있다.
일 실시예에서, 결제 모듈(1231)은 포스 모듈(1221)로부터 결제 요청을 획득하고, 결제 요청을 주변기기 제어모듈(1232)에 전달한다. 주변기기 제어모듈(1232)은 카드 리더기(1270)이 카드 정보를 리딩할 수 있는 상태가 되도록, 카드 리더기 활성화 명령을 생성하고, 통신 인터페이스(1260)를 통하여, 카드 리더기(1270)(또는, 카드 리더기 펌웨어)에 카드 리더기 활성화 명령을 전송한다. 카드 리더기 활성화 명령에 따라, 카드 리더기(1270)는 미리 정해진 시간동안 활성화될 수 있다. 카드 리더기(1270)가 활성화 된 후, 카드 리더기(1450)는 결제자의 카드 정보를 획득하고, 획득한 카드 정보를 암호화하고, 암호화된 카드 정보를 통신 인터페이스(1260)를 통하여 결제 모듈(1231)에 전송한다.
또한, 다른 일 실시예에서, 주변기기 제어모듈(1232)은 카드 리더기(1270)의 마스킹 수행을 제어하기 위한 마스킹 설정 명령을 카드 리더기(1270)에 전송할 수 있다. 예를 들어, 마스킹 설정 명령은 마스킹된 카드정보의 전송 요청 또는 마스킹된 카드정보의 비전송 요청을 포함할 수 있다. 마스킹 설정 명령에 마스킹된 카드정보의 전송요청이 포함된 경우, 카드 리더기(1270)는 결제자의 카드 정보를 획득하고, 획득한 카드 정보를 마스킹하고, 마스킹된 카드 정보를 통신 인터페이스(1260)를 통하여 결제 모듈(1231)에 전송한다. 또한, 마스킹 설정 명령에 마스킹된 카드정보의 비전송요청이 포함된 경우, 카드 리더기(1270)는 결제자의 카드 정보를 획득하더라도, 카드 정보를 마스킹하지 않는다.
또한, 마스킹 설정 명령은 마스킹 범위 설정을 포함할 수 있다. 마스킹 범위 설정은 전체 카드 번호 중 몇번째 카드 번호를 몇번째 카드 번호를 마스킹할 것인지 설정하는 것이다. 예를 들어, 마스킹 범위 설정은 14자리 카드 번호 중 뒤의 8자리에 대해 마스킹을 수행하라는 명령을 포함할 수 있다. 주변기기 제어모듈(1232)은 마스킹 범위 설정을 자체적으로 생성할 수도 있고, 포스 모듈(1221)의 요청에 따라 생성할 수도 있다. 다만, 이 경우, 포스 모듈(1221)의 요청에 불구하고, 주변기기 제어 모듈(1232)는 카드 사용자의 정보 보호를 위해 노출되지 않아야 하는 카드 자리 (예를 들어, 14자리 카드 번호 중 뒤의 3자리)에 대해서는 마스킹을 수행하는 범위에 포함시킨다. 마스킹 설정 명령에 마스킹 범위 설정이 포함된 경우, 카드 리더기(1270)는 마스킹 범위 설정에 따라 지정된 자리의 번호만을 마스킹한다. 이와 같이, 마스킹 설정 명령에 따라, 카드 리더기(1270)는 필요한 경우에만 카드 정보를 마스킹할 수 있고, 결제 어플리케이션(1230) 또는 포스 어플리케이션(1220)에서 원하는 마스킹 범위로 마스킹을 수행할 수 있다.
또한, 본 발명의 몇몇 실시예에서, 주변기기 제어모듈(1232)은 기타 주변기기(1280)를 제어한다.
일 실시예에서, 주변기기 제어모듈(1232)은 서명패드의 상태를 제어할 수 있다. 예를 들어, 결제 모듈(1231)이 카드 리더기(1270)로부터 암호화된 카드 정보를 획득한 후, 주변기기 제어모듈(1232)은 서명패드가 결제자로부터 서명을 획득할 수 있는 상태가 되도록 서명패드 활성화 명령을 생성하고, 통신 인터페이스(1260)를 통하여, 서명패드 (또는, 서명패드 펌웨어)에 서명패드 활성화 명령을 전송한다. 서명패드 활성화 명령에 따라, 서명패드는 미리 정해진 시간동안 활성화될 수 있고, 서명패드가 활성화 된 후, 서명패드는 결제자로부터 서명을 획득하고, 획득한 서명을 통신 인터페이스(1260)를 통하여 결제 모듈(1231)에 전송한다.
다른 일 실시예에서, 주변기기 제어모듈(1232)은 바코드 리더기의 상태를 제어할 수 있다. 예를 들어, 결제 모듈(1231)이 결제 요청을 획득한 후, 주변기기 제어모듈(1232)은 바코드 리더기가 바코드 리딩을 할 수 없는 상태가 되도록 바코드 리더기 비활성화 명령을 생성하고, 통신 인터페이스(1260)를 통하여, 바코드 리더기(또는, 바코드 리더기 펌웨어)에 바코드 리더기 비활성화 명령을 전송한다. 바코드 리더기 비활성화 명령에 따라, 바코드 리더기는 미리 정해진 시간동안 비활성화되고, 미리 정해진 시간 후에 활성화될 수 있다. 또한, 일 실시예에서, 바코드 리더기는 바코드 리더기 비활성화 명령에 따라 미리 정해진 시간 후에도 활성화 되지 않을 수 있고, 이 경우, 주변기기 제어모듈(1232)는 바코드 리더기에 바코드 리더기 활성화 명령을 전송하여 바코드 리더기를 활성화시킬 수 있다. 예를 들어, 결제 모듈(1231)이 서비스 서버(1290)로부터 결제 승인 결과(또는, 결제 취소 결과)를 획득한 경우, 주변기기 제어모듈(1232)를 바코드 리더기 활성화 명령을 바코드 리더기에 전송할 수 있다.
또 다른 일 실시예에서, 주변기기 제어 모듈(1232)는 프린터의 상태를 제어할 수 있다. 예를 들어, 결제 모듈(1231)이 포스 모듈(1221)로부터 결제 요청을 획득하거나, 카드 리더기(1270)로부터 암호화된 카드 정보를 획득한 후, 주변기기 제어모듈(1232)은 프린터가 인쇄를 수행할 수 있는 상태가 되도록 프린터 활성화 명령을 생성하고, 통신 인터페이스(1260)를 통하여, 프린터(또는, 프린터 펌웨어)에 프린터 활성화 명령을 전송한다. 프린터 활성화 명령에 따라, 프린터는 미리 정해진 시간동안 활성화될 수 있고, 미리 정해진 시간동안 인쇄 데이터를 획득한 경우, 인쇄 데이터에 따라 인쇄를 수행할 수 있다. 또한, 인쇄를 수행한 후, 프린터는 다시 비활성화될 수 있다.
이와 같이, 주변기기 제어모듈(1232)이 주변기기의 활성화를 제어함에 따라, 주변기기는 필요한 경우에만 활성화됨으로써, 주변기기의 불필요한 전력소비가 감소될 수 있다.
<프린터에서의 결제 어플리케이션의 동작>
도 13은 일 실시예에 따른 결제 어플리케이션이 프린터에 포함될 경우의 결제 시스템을 설명하기 위한 블록도이다.
도 13을 참조하면, 결제 시스템은 포스 단말기(1310), 프린터(1320), 카드 리더기(1330), 서비스 서버(1340) 및 카드사 서버(1350)를 포함할 수 있다.
프린터(1320)는 적어도 하나의 포스 단말기(1310), 카드 리더기(1320) 및 서비스 서버(1340)와 통신을 수행할 수 있다. 다만, 도 13에서 도시되지는 않았지만, 프린터(1320)에는 서명 패드와 같은 주변기기도 프린터(1320)에 연결될 수 있다.
포스 단말기(1310)는 포스 어플리케이션을 포함할 수 있다. 포스 어플리케이션은 포스 기능을 수행하여 결제 항목 및 결제 금액을 기록한다.
프린터(1320)는 기본적으로 인쇄기능을 수행하지만, 인쇄 기능 외에 결제 기능을 수행할 수 있다. 이를 위해, 프린터(1320)는 결제 어플리케이션을 포함할 수 있다.
보다 구체적으로, 결제 어플리케이션은 포스 단말기(1310)의 포스 어플리케이션으로부터 결제 요청을 수신하고, 총 결제 금액을 획득한다. 또한, 결제 어플리케이션은 카드 리더기(1330)로부터 암호화된 카드 정보를 획득하고, 서비스 서버(1340)에 결제 승인 요청을 위하여 암호화된 카드 정보 및 결제 금액을 전송한다.
서비스 서버(1340)는 결제 어플리케이션 및 카드사 서버(1350) 사이에서 결제 승인을 중계하고, 카드사 서버(1350)로부터 결제 승인 결과를 획득한다. 또한, 서비스 서버(1340)는 결제 어플리케이션에 결제 승인 결과 및 승인 내역 정보를 전송하고, 결제 어플리케이션은 포스 단말기(1310)의 포스 어플리케이션에 결제 승인 결과를 제공한다. 일 실시예에서, 결제 어플리케이션은 포스 단말기(1310)의 포스 어플리케이션에 결제 승인 결과와 함께 카드 리더기(1330)로부터 수신한 마스킹된 카드 정보를 제공할 수 있다. 그러나, 결제 어플리케이션은 카드 정보 유출 방지를 위하여, 암호화된 카드 정보는 포스 어플리케이션에 제공하지 않는다.
또한, 결제 어플리케이션은 영수증의 인쇄를 위하여, 포스 어플리케이션으로부터 획득한 결제 항목, 결제 금액 및 총 결제 금액을 획득하고, 서비스 서버(1340)로부터 승인 내역 정보를 획득하고, 미리 정해진 템플릿에 상기 획득한 정보들을 부가하여 인쇄 데이터를 생성한다. 프린터(1320)는 생성된 인쇄 데이터에 따라 인쇄를 수행한다.
도 14는 일 실시예에 따른 결제 어플리케이션이 프린터에 포함될 경우의 결제 어플리케이션의 결제 방법, 인쇄 방법 및 주변기기 제어 방법을 설명하기 위한 블록도이다.
도 14를 참조하면, 프린터(1400)는 제어부(1410), 프린터부(1420) 및 통신 인터페이스(1430)를 포함한다.
제어부(1410)는 통신 인터페이스(1430)를 통하여 포스 단말기(1440), 카드 리더기(1450), 기타 주변기기(1460) 및 서비스 서버(1470)와 통신을 수행한다. 도 14에서는 도시되지 않았지만, 제어부(1410)에는 서비스 모듈(미도시)이 포함될 수 있고, 제어부(1410)는 서비스 모듈(미도시)을 통하여 서비스 서버(1470)와 데이터를 송수신할 수 있다.
또한, 제어부(1410)는 결제 어플리케이션(1411), 프린터 펌웨어(1412) 및 카드 리더기 드라이버(1413)를 포함할 수 있다. 여기서, 프린터 펌웨어(1412)는 프린터부(1420)를 제어하기 위한 일종의 응용프로그램으로, 제어부에 설치된다. 프린터부(1420)는 용지에 인쇄를 수행하는 것으로, 프린터부(1420)에는 도 1에서 설명된 프린터부(160)가 적용될 수 있다.
또한, 카드 리더기 드라이버(1413)은 카드 리더기(1450)의 동작과 카드 리더기(1450)와의 입출력 및/또는 통신을 제어하는데 사용되는 명령어의 집합이나 프로그램을 의미하는 것으로, 제어부(1411)에 설치된다.
이하에서는, 본 발명의 몇몇 실시예에 따른 결제 어플리케이션(1411)의 결제 방법에 대해 구체적으로 설명한다.
먼저, 결제 어플리케이션(1411)은 포스 단말기(1440)의 포스 어플리케이션으로부터 통신 인터페이스(1430)를 통하여, 결제 요청과 함께 총 결제 금액 정보를 획득할 수 있다. 결제 요청에 따라, 결제 어플리케이션(1411)은 카드 리더기 드라이버(1413)에 카드 리더기 활성화 명령을 전송하고, 카드 리더기 드라이버(1413)는 카드 리더기 활성화 명령을 통신 인터페이스(1430)를 통하여 카드 리더기(1450)에 전송할 수 있다. 카드 리더기(1450)는 카드 리더기 활성화 명령에 따라 미리 정해진 시간동안 활성화될 수 있다. 카드 리더기(1450)가 활성화 된 후, 카드 리더기(1450)는 결제자의 카드 정보를 획득하고, 획득한 카드 정보를 암호화한다. 이후, 결제 어플리케이션(1411)은 통신 인터페이스(1430) 및 카드 리더기 드라이버(1413)를 통하여 카드 리더기(1450)로부터 암호화된 카드 정보를 획득할 수 있다. 또한, 이에 한정되지 않고, 결제 어플리케이션(1411)은 카드 리더기 드라이버(1413)를 통하지 않고, 통신 인터페이스(1430)를 통하여, 카드 리더기(1450)에 카드 리더기 활성화 명령을 전달하거나, 카드 리더기(1450)로부터 암호화된 카드 정보를 획득할 수 있다. 이에 따라, 포스 단말기(1440)는 암호화된 카드정보에 전혀 접근할 수 없다. 따라서, 암호화된 카드 정보는 포스 단말기(1440)에 전송되지 않는다.
결제 어플리케이션(1411)은 서비스 서버(1470)에 결제를 요청하기 위하여, 통신 인터페이스(1430)를 통하여, 서비스 서버(1470)에 암호화된 카드 정보 및 총 결제 금액 정보를 전송하여 결제 승인을 요청할 수 있다. 서비스 서버(1470)는 승인 결과를 통신 인터페이스(1430) 결제 어플리케이션(1411)에 전송할 수 있다. 결제 어플리케이션(1411)은 승인 결과를 포스 단말기(1440)에 제공할 수 있다.
이와 같이, 본 발명의 실시예들에서는, 포스 단말기(1440)에서는 결제 요청만을 수행하고, 실제 결제 기능은 프린터(1400)에서 수행된다. 이에 따라, 포스 단말기(1440)에는 결제 항목, 결제 금액, 승인 결과만이 기록되고, 개인 정보 보호에 있어 중요한 정보(예를 들어, 암호화된 카드 정보)는 제공되지 않게 됨으로써, 보안성이 향상된다.
또한, 본 발명의 몇몇 실시예에 따른 결제 어플리케이션(1411)의 인쇄 방법에 대해 구체적으로 설명한다.
먼저, 결제를 수행하거나 취소하는 과정에서, 포스 단말기(1440)의 포스 어플리케이션은 결제자의 결제 항목, 결제 금액을 기록하고, 결제 요청을 수신하는 경우 결제 금액을 합산하여 총 결제 금액을 생성한다.
또한, 결제를 수행하거나 취소하는 과정에서, 결제 어플리케이션(1411)은 카드 리더기(1450)로부터 암호화된 카드 정보를 획득한다. 이 때, 본 발명의 몇몇 실시예에서, 결제 어플리케이션(1411)은 카드 리더기(1450)로부터 암호화된 카드 정보와 함께 마스킹된 카드 정보를 함께 획득할 수 있다.
또한, 결제를 수행하는 경우, 결제 어플리케이션(1411)은 서비스 서버(1470)로부터 승인 결과와 함께 승인 내역 정보를 획득할 수 있다. 또한, 결제를 취소하는 경우, 결제 어플리케이션(1411)은 서비스 서버(1470)로부터 취소 결과와 함께 취소 내역 정보를 획득할 수 있다.
또한, 제어부(1410)는 인쇄 모듈(미도시)를 포함할 수 있다. 인쇄 모듈은 결제 어플리케이션이 이해할 수 있는 포맷과 명령어로 구성되는 인쇄 다큐먼트를 생성한다.
결제 어플리케이션(1411)이 포스 단말기(1440)로부터 결제 요청을 받거나, 서비스 서버(1470)로부터 결제를 승인한다는 결과를 획득하거나, 결제를 취소한다는 결과를 획득하는 경우, 결제 어플리케이션(1411)은 인쇄 모듈에 인쇄 다큐먼트 생성 명령을 전송한다. 또한, 본 발명의 몇몇 실시예에서, 포스 단말기(1440)가 결제 어플리케이션(1411)에 결제 요청을 하는 경우, 포스 단말기(1440)은 인쇄 모듈에 인쇄 다큐먼트 생성 명령을 전송할 수 있다.
인쇄 다큐먼트 생성 명령에 따라, 인쇄 모듈은 인쇄 다큐먼트를 생성한다. 본 발명의 몇몇 실시예에서, 인쇄 모듈은 미리 정해진 템플릿을 기초로 인쇄 다큐먼트를 생성한다. 여기서, 미리 정해진 템플릿은 포스 단말기(1440)를 사용하는 가맹점 정보, 영수증의 각 항목을 포함한다.
또한, 인쇄 모듈은 포스 단말기(1440)로부터 결제 항목, 결제 금액, 총 결제 금액을 획득하고, 획득한 정보를 인쇄 다큐먼트에 포함시킨다.
또한, 인쇄 모듈은 결제 어플리케이션(1411)으로부터 승인 내역 정보(또는, 취소 내역 정보)를 획득하고, 승인 내역 정보를 인쇄 다큐먼트에 포함시킨다. 또한, 본 발명의 몇몇 실시예에서, 인쇄 모듈은 결제 어플리케이션(1411)로부터 마스킹된 카드정보를 획득하고, 마스킹된 카드 정보를 인쇄 다큐먼트에 포함시킨다.
또한, 본 발명의 몇몇 실시예에서, 인쇄 다큐먼트는 프린터 펌웨어(1412)에서 이해할 수 있는 포맷 및 명령어로 구성될 수 있다. 이 경우, 인쇄 모듈은 프린터 펌웨어(1412)로 인쇄 다큐먼트를 전송하고, 프린터 펌웨어(1412)는 인쇄 다큐먼트에 따라서 프린터부(1420)를 제어하여 인쇄를 수행한다.
또한, 본 발명의 몇몇 실시예에서, 인쇄 다큐먼트는 프린터 펌웨어(1412)에서 이해할 수 없는 포맷 및 명령어로 구성될 수 있다. 이 경우, 인쇄 모듈은 인쇄 다큐먼트를 프린터 펌웨어(1412)에서 이해할 수 있는 포맷 및 명령어로 구성된 인쇄 데이터로 변환하고, 변환된 인쇄 데이터를 프린터 펌웨어(1412)로 전송하며, 프린터 펌웨어(1412)는 인쇄 데이터에 따라서 프린터부(1420)를 제어하여 인쇄를 수행한다.
또한, 본 발명의 구체적인 실시예에서, 인쇄 모듈은 포스 단말기(1440)에 포함될 수도 있고, 결제 어플리케이션(1411)에 포함될 수도 있으며, 포스 단말기(1440) 및 결제 어플리케이션(1411) 각각에 포함될 수도 있다. 이에 대해서는, 도 8 내지 도 10에서 설명한 내용이 그대로 적용될 수 있으므로, 자세한 설명은 생략한다.
또한, 본 발명의 몇몇 실시예에 따른 결제 어플리케이션(1411)의 주변기기 제어 방법에 대해 구체적으로 설명한다.
결제 어플리케이션(1411)은 주변기기 제어모듈(미도시)를 포함한다. 주변기기 제어 모듈은 주변기기를 제어하기 위하여, 제어 신호를 생성한 후, 카드 리더기(1450) 또는 기타 주변기기(1460)에 제어 신호를 전송하고, 제어 신호를 수신한 카드 리더기(1450) 또는 기타 주변기기(1460)는 제어 신호에 따라 제어될 수 있다. 여기서, 기타 주변기기(1460)는 바코드 리더기, 카드 결제 서명 패드, 캐시 드로워 등을 포함할 수 있다.
구체적으로, 주변기기 제어 모듈은 카드 리더기 활성화 명령 및 마스킹 설정 명령 중 적어도 하나를 이용하여 카드 리더기(1450)를 제어할 수 있다. 일 실시예에서, 결제 어플리케이션(1411)은 포스 단말기(1440)로부터 결제 요청을 획득하고, 결제 요청을 주변기기 제어모듈에 전달한다. 주변기기 제어모듈은 카드 리더기(1450)이 카드 정보를 리딩할 수 있는 상태가 되도록, 카드 리더기 활성화 명령을 생성하고, 통신 인터페이스(1430)를 통하여, 카드 리더기(1450)(또는, 카드 리더기 펌웨어)에 카드 리더기 활성화 명령을 전송한다. 카드 리더기 활성화 명령에 따라, 카드 리더기(1450)는 미리 정해진 시간동안 활성화될 수 있다.
또한, 다른 일 실시예에서, 주변기기 제어모듈은 카드 리더기(1450)의 마스킹을 제어하기 위한 마스킹 설정 명령을 카드 리더기(1450)에 전송할 수 있다. 마스킹 설정 명령은 마스킹된 카드정보의 전송 요청 또는 마스킹된 카드정보의 비전송 요청을 포함할 수 있다. 마스킹 설정 명령에 마스킹된 카드정보의 전송요청이 포함된 경우, 카드 리더기(1450)는 카드정보를 마스킹하고, 마스킹 설정 명령에 마스킹된 카드정보의 비전송요청이 포함된 경우, 카드 리더기(1450)는 결제자의 카드 정보를 획득하더라도, 카드 정보를 마스킹하지 않는다.
또한, 마스킹 설정 명령은 마스킹 범위 설정 포함할 수 있다. 주변기기 제어모듈은 마스킹 범위 설정을 자체적으로 생성할 수도 있고, 포스 단말기(1440)의 요청에 따라 생성할 수도 있다. 다만, 이 경우, 포스 단말기(1440)의 요청에 불구하고, 주변기기 제어 모듈은 카드 사용자의 정보 보호를 위해 노출되지 않아야 하는 카드 자리에 대해서는 마스킹을 수행하는 범위에 포함시킨다. 마스킹 설정 명령에 마스킹 범위 설정이 포함된 경우, 카드 리더기(1450)는 마스킹 범위 설정에 따라 지정된 자리의 번호만을 마스킹한다. 이와 같이, 마스킹 설정 명령에 따라, 카드 리더기(1450)는 필요한 경우에만 카드 정보를 마스킹할 수 있고, 결제 어플리케이션(1411) 또는 포스 단말기(1440)에서 원하는 마스킹 범위로 마스킹을 수행할 수 있다.
일 실시예에서, 주변기기 제어모듈은 서명패드의 상태를 제어할 수 있다. 예를 들어, 결제 어플리케이션(1411)이 카드 리더기(1450)로부터 암호화된 카드 정보를 획득한 후, 주변기기 제어모듈은 서명패드가 결제자로부터 서명을 획득할 수 있는 상태가 되도록 서명패드 활성화 명령을 생성하고, 통신 인터페이스(1430)를 통하여, 서명패드 (또는, 서명패드 펌웨어)에 서명패드 활성화 명령을 전송한다. 서명패드 활성화 명령에 따라, 서명패드는 미리 정해진 시간동안 활성화될 수 있다.
다른 일 실시예에서, 주변기기 제어모듈은 바코드 리더기의 상태를 제어할 수 있다. 예를 들어, 결제 어플리케이션(1411)이 결제 요청을 획득한 후, 주변기기 제어모듈은 바코드 리더기가 바코드 리딩을 할 수 없는 상태가 되도록 바코드 리더기 비활성화 명령을 생성하고, 통신 인터페이스(1430)를 통하여, 바코드 리더기(또는, 바코드 리더기 펌웨어)에 바코드 리더기 비활성화 명령을 전송한다. 바코드 리더기 비활성화 명령에 따라, 바코드 리더기는 미리 정해진 시간동안 비활성화되고, 미리 정해진 시간 후에 활성화될 수 있다. 또한, 일 실시예에서, 바코드 리더기는 바코드 리더기 비활성화 명령에 따라 미리 정해진 시간 후에도 활성화 되지 않을 수 있고, 이 경우, 주변기기 제어모듈은 바코드 리더기에 바코드 리더기 활성화 명령을 전송하여 바코드 리더기를 활성화시킬 수 있다.
도 15는 일 실시예에 따른 결제 어플리케이션이 일체형 프린터에 포함될 경우의 결제 어플리케이션의 결제 방법을 설명하기 위한 블록도이다.
도 15를 참조하면, 프린터(1500)는 제어부(1410), 프린터부(1420), 카드 리더부(1530) 및 통신 인터페이스(1540)를 포함한다. 도 14의 프린터(1400)와 비교할 때, 프린터(1500)는 카드 리더부(1530)를 더 포함한다. 카드 리더부(1530)는 각종 카드에 기억된 정보를 리딩하고, 리딩된 정보를 제어부(1510)에 제공하는 것으로, 카드 리더부(1530)에는 도 1에서 설명된 카드 리더부(170)가 적용될 수 있다.
또한, 제어부(1510)는 결제 어플리케이션(1511), 프린터 펌웨어(1512) 및 카드 리더기 펌웨어(1513)를 포함할 수 있다. 카드 리더기 펌웨어(1513)은 카드 리더부(1530)을 제어하기 위한 일종의 응용프로그램을 나타낸다. 일 실시예에서, 카드 리더기 펌웨어(1513)는 카드 리더부(1530)를 통하여 카드 정보를 획득하고, 카드 정보를 암호화 및/또는 마스킹한다. 또한, 카드 리더기 펌웨어(1513)는 암호화된 카드 정보 및/또는 마스킹된 카드 정보를 결제 어플리케이션(1511)에 제공한다. 그러나, 카드 리더기 펌웨어(1513)는 암호화 또는 마스킹 되지않은 카드 정보에 대해서는 결제 어플리케이션(1511) 및 다른 구성요소에 제공하지 않으며, 암호화 및/또는 마스킹을 수행한 후 카드 정보를 즉시 삭제한다.
또한, 결제 어플리케이션(1511)은 결제를 수행하고, 영수증에 대한 인쇄를 수행하며, 기타 주변기기(1560)(예를들어, 바코드 리더기, 서명 패드)를 제어한다. 이에 대해서는 도 14에서 설명된 내용이 그대로 적용될 수 있으므로, 자세한 설명은 생략한다.
도 16은 일 실시예에 따른 결제 어플리케이션이 프린터에 포함되고, 복수의 포스 단말기의 결제 요청에 따라 결제를 수행할 경우의 결제 어플리케이션의 동작을 설명하기 위한 블록도이다.
도 16을 참조하면, 결제 시스템은 제1 포스 단말기(1610), 제2 포스 단말기(1620), 프린터(1630), 카드 리더기(1640), 서비스 서버(1650) 및 카드사 서버(1660)를 포함할 수 있다.
전술한 바와 같이, 프린터(1630)에는 결제 어플리케이션이 포함되어 있고, 결제 어플리케이션은 결제 기능을 수행할 수 있다. 또한, 제1 포스 단말기(1610)에는 제1 포스 어플리케이션이 포함되고, 제2 포스 단말기(1620)에는 제2 포스 어플리케이션이 포함된다. 제1 포스 어플리케이션 및 제2 포스 어플리케이션은 각각 포스 기능을 수행하여, 결제 항목 및 결제 금액을 기록할 수 있다.
프린터(1630)의 결제 어플리케이션은 제1 포스 단말기(1610) 및 제2 포스 단말기(1620) 각각으로부터 결제 요청을 수신하고, 각 결제 요청에 따라 결제를 수행한다. 이 때, 제1 포스 단말기(1610) 및 제2 포스 단말기(1620) 각각으로부터의 결제 요청에는 제1 포스 단말기(1610) 또는 제2 포스 단말기(1620)를 식별하기 위한 식별자가 포함될 수 있다. 결제 요청에 포함된 식별자에 따라, 결제 어플리케이션은 결제 요청이 어느 포스 단말기의 결제 요청인지를 인식하고, 해당 포스 단말기가 요청한 결제를 수행한다. 또한, 결제 요청이 수신된 순서에 따라, 결제 어플리케이션은 먼저 결제 요청을 한 포스 단말기의 결제를 우선적으로 수행한다.
예를 들어, 결제 어플리케이션은 제1 포스 어플리케이션으로부터 결제 요청을 수신하고, 총 결제 금액을 획득한다. 이 때, 결제 요청에는 제1 포스 단말기(1610)를 나타내는 제1 식별자가 포함된다. 또한, 결제 어플리케이션은 카드 리더기(1640)로부터 암호화된 카드 정보를 획득하고, 서비스 서버(1650)에 결제 승인 요청을 위하여 암호화된 카드 정보 및 결제 금액을 전송한다. 서비스 서버(1650)는 프린터(1630) 및 카드사 서버(1660) 사이에서 결제 승인을 중계하고, 카드사 서버(1660)로부터 결제 승인 결과를 획득한다. 또한, 서비스 서버(1650)는 결제 어플리케이션에 결제 승인 결과 및 승인 내역 정보를 전송하고, 결제 어플리케이션은 제1 식별자에 대응하는 제1 포스 단말기(1610)의 의 포스 어플리케이션에 결제 승인 결과를 제공할 수 있다.
이와 같이, 각 포스 단말기로부터의 결제 요청에 식별자가 포함되고, 식별자를 이용하여 포스 단말기를 식별함으로써, 프린터(1630)의 결제 어플리케이션은 복수의 포스 단말기에 대한 결제를 보다 쉽게 수행할 수 있다.
<카드 리더기에서의 결제 어플리케이션의 동작>
도 17은 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함될 경우의 결제 시스템을 설명하기 위한 블록도이다.
도 17을 참조하면, 결제 시스템은 포스 단말기(1710), 카드 리더기(1720), 프린터(1730), 서비스 서버(1740) 및 카드사 서버(1750)를 포함할 수 있다.
카드 리더기(1720)는 적어도 하나의 포스 단말기(1710), 프린터(1730) 및 서비스 서버(1740)와 통신을 수행할 수 있다. 다만, 도 17에서 도시되지는 않았지만, 카드 리더기(1720)에는 서명 패드와 같은 주변기기도 연결될 수 있다.
포스 단말기(1710)는 포스 어플리케이션을 포함할 수 있다. 포스 어플리케이션은 포스 기능을 수행하여 결제 항목 및 결제 금액을 기록한다.
카드 리더기(1720)는 각종 카드에 기억된 정보를 리딩하는 기능을 수행하지만, 카드 리딩 기능 외에 결제 기능을 수행할 수 있다. 이를 위해, 카드 리더기(1720)는 결제 어플리케이션을 포함할 수 있다.
보다 구체적으로, 결제 어플리케이션은 포스 단말기(1710)의 포스 어플리케이션으로부터 결제 요청을 수신하고, 총 결제 금액을 획득한다. 또한, 결제 어플리케이션은 결제자의 카드를 리딩하여 카드 정보를 획득하고, 카드 정보를 암호화한다. 또한, 결제 어플리케이션은 서비스 서버(1740)에 결제 승인 요청을 위하여 암호화된 카드 정보 및 결제 금액을 전송한다.
서비스 서버(1740)는 결제 어플리케이션 및 카드사 서버(1750) 사이에서 결제 승인을 중계하고, 카드사 서버(1750)로부터 결제 승인 결과를 획득한다. 또한, 서비스 서버(1740)는 결제 어플리케이션에 결제 승인 결과 및 승인 내역 정보를 전송하고, 결제 어플리케이션은 포스 단말기(1710)의 포스 어플리케이션에 결제 승인 결과를 제공한다.
일 실시예에서, 결제자의 카드를 리딩하고, 리딩된 카드 정보를 마스킹한 후, 마스킹된 카드 정보를 결제 승인 결과와 함께 포스 단말기(1710)의 포스 어플리케이션에 제공할 수 있다. 그러나, 결제 어플리케이션은 카드 정보 유출 방지를 위하여, 암호화된 카드 정보는 포스 어플리케이션 및 다른 장치에 제공하지 않는다. 즉, 결제자의 카드 정보는 카드 리더기(1720)에서만 접근이 가능하고, 다른 장치는 결제자의 카드 정보에 대해 접근하지 못한다. 이에 따라, 결제자의 카드 정보가 외부로 유출되지 않음에 따라, 사용자의 보안성이 향상될 수 있다.
또한, 결제 어플리케이션은 영수증의 인쇄를 위하여, 포스 어플리케이션으로부터 획득한 결제 항목, 결제 금액 및 총 결제 금액을 획득하고, 서비스 서버(1740)로부터 승인 내역 정보를 획득하고, 미리 정해진 템플릿에 상기 획득한 정보들을 부가하여 인쇄 다큐먼트를 생성한다. 또한 결제 어플리케이션은 인쇄 다큐먼트를 인쇄 데이터로 변환하여 프린터(1730)에 인쇄 데이터를 전송한다. 프린터(1720)는 생성된 인쇄 데이터에 따라 인쇄를 수행한다.
도 18은 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함될 경우의 결제 어플리케이션의 결제 방법을 설명하기 위한 블록도이다.
도 18을 참조하면, 카드 리더기(1800)는 제어부(1810), 카드 리더부(1820) 및 통신 인터페이스(1830)를 포함한다.
제어부(1810)는 통신 인터페이스(1830)를 통하여 포스 단말기(1840) 및 서비스 서버(1850)와 통신을 수행한다. 도 18에서는 도시되지 않았지만, 제어부(1810)에는 서비스 모듈(미도시)이 포함될 수 있고, 제어부(1810)는 서비스 모듈(미도시)을 통하여 서비스 서버(1850)와 데이터를 송수신할 수 있다.
또한, 제어부(1810)는 결제 어플리케이션(1811) 및 카드 리더기 펌웨어(1812) 를 포함할 수 있다. 여기서, 카드 리더기 펌웨어(1812)는 카드 리더부(1820)를 제어하기 위한 일종의 응용프로그램으로, 제어부에 설치된다. 카드 리더부(1820)는 각종 카드에 저장된 정보를 인식하는 것으로, 카드 리더부(1820)는 도 1에서 설명된 카드 리더부(170)가 적용될 수 있다.
본 발명의 실시예에 따른 결제 어플리케이션(1811)의 결제 방법에서, 결제 어플리케이션(1811)은 포스 단말기(1840)의 포스 어플리케이션으로부터 통신 인터페이스(1830)를 통하여, 결제 요청과 함께 총 결제 금액 정보를 획득할 수 있다. 결제 요청을 획득함에 따라, 결제 어플리케이션(1811)은 카드 리더부(1820)가 활성화되도록 카드 리더기 펌웨어(1812)를 제어하고, 카드 리더기 펌웨어(1812)는 카드 리더부(1820)를 활성화시키고, 카드 리더부(1820)로부터 결제자의 카드정보를 획득할 수 있다. 또한, 카드 리더기 펌웨어(1812)는 획득한 카드 정보를 암호화한다. 이후, 결제 어플리케이션(1811)은 카드 리더기 펌웨어(1812)로부터 암호화된 카드 정보를 획득할 수 있다.
결제 어플리케이션(1811)은 서비스 서버(1850)에 결제를 요청하기 위하여, 통신 인터페이스(1830)를 통하여, 서비스 서버(1850)에 암호화된 카드 정보 및 총 결제 금액 정보를 전송하여 결제 승인을 요청할 수 있다. 서비스 서버(1850)는 승인 결과를 통신 인터페이스(1830) 결제 어플리케이션(1811)에 전송할 수 있다. 결제 어플리케이션(1811)은 승인 결과를 포스 단말기(1840)에 제공할 수 있다. 또한, 결제 어플리케이션(1811)은 카드 리더부(1820)가 비활성화되도록 카드 리더기 펌웨어(1812)를 제어할 수 있다.
이와 같이, 본 발명의 실시예들에서는, 포스 단말기(1840)에서는 결제 요청만을 수행하고, 실제 결제 기능은 카드 리더기(1800)에서 수행된다. 이에 따라, 포스 단말기(1840)에는 결제 항목, 결제 금액, 승인 결과만이 기록되고, 결제자의 카드 정보는 획득할 수 없다. 따라서, 카드 정보의 유출 가능성이 매우 적어지므로, 보안성이 향상된다.
도 19는 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함될 경우의 결제 어플리케이션의 인쇄 방법 및 주변기기 제어 방법을 설명하기 위한 블록도이다.
도 19를 참조하면, 카드 리더기(1900)는 제어부(1910), 카드 리더부(1920) 및 통신 인터페이스(1930)를 포함한다.
제어부(1910)는 통신 인터페이스(1930)를 통하여 포스 단말기(1940), 프린터(1950), 기타 주변기기(1960) 및 서비스 서버(1970)와 통신을 수행한다.
또한, 제어부(1910)는 결제 어플리케이션(1911), 카드 리더기 펌웨어(1912) 및 프린터 드라이버(1913)를 포함할 수 있다. 프린터 드라이버(1913)은 프린터(1950)의 동작과 프린터(1950)와의 입출력 및/또는 통신을 제어하는데 사용되는 명령어의 집합이나 프로그램을 의미하는 것으로, 제어부(1911)에 설치된다.
카드 리더부(1920)는 각종 카드에 저장된 정보를 인식하는 것으로, 카드 리더부(1920)는 도 1에서 설명된 카드 리더부(170)가 적용될 수 있다.
본 발명의 실시예에 따른 결제 어플리케이션(1911)의 인쇄 방법에서, 결제를 수행하거나 취소하는 과정에서, 포스 단말기(1940)의 포스 어플리케이션은 결제자의 결제 항목, 결제 금액을 기록하고, 결제 요청을 수신하는 경우 결제 금액을 합산하여 총 결제 금액을 생성한다.
또한, 결제를 수행하거나 취소하는 과정에서, 카드 리더기 펌웨어(1912)는 카드 리더부(1920)를 활성화하여, 카드 리더부(1920)로부터 카드 정보를 획득하고, 카드 정보를 암호화한다. 또한, 카드 리더부(1920)는 카드 정보를 마스킹하고, 암호화된 카드 정보 및 마스킹된 카드 정보를 결제 어플리케이션(1911)에 제공한다. 카드 리더부(1920)는 카드 정보에 대해 암호화 및/또는 마스킹을 수행한 후 즉시 삭제한다.
또한, 결제를 수행하는 경우, 결제 어플리케이션(1911)은 서비스 서버(1970)로부터 승인 결과와 함께 승인 내역 정보를 획득할 수 있다. 또한, 결제를 취소하는 경우, 결제 어플리케이션(1911)은 서비스 서버(1970)로부터 취소 결과와 함께 취소 내역 정보를 획득할 수 있다.
또한, 제어부(1910)는 인쇄 모듈(미도시)를 포함할 수 있다. 인쇄 모듈은 결제 어플리케이션이 이해할 수 있는 포맷과 명령어로 구성되는 인쇄 다큐먼트를 생성한다.
결제 어플리케이션(1911)이 포스 단말기(1940)로부터 결제 요청을 받거나, 서비스 서버(1970)로부터 결제를 승인한다는 결과를 획득하거나, 결제를 취소한다는 결과를 획득하는 경우, 결제 어플리케이션(1911)은 인쇄 모듈에 인쇄 다큐먼트 생성 명령을 전송한다. 또한, 본 발명의 몇몇 실시예에서, 포스 단말기(1940)가 결제 어플리케이션(1911)에 결제 요청을 하는 경우, 포스 단말기(1940)은 인쇄 모듈에 인쇄 다큐먼트 생성 명령을 전송할 수 있다.
인쇄 다큐먼트 생성 명령에 따라, 인쇄 모듈은 인쇄 다큐먼트를 생성한다. 본 발명의 몇몇 실시예에서, 인쇄 모듈은 미리 정해진 템플릿을 기초로 인쇄 다큐먼트를 생성한다. 여기서, 미리 정해진 템플릿은 포스 단말기(1940)를 사용하는 가맹점 정보, 영수증의 각 항목을 포함한다.
또한, 인쇄 모듈은 포스 단말기(1940)로부터 결제 항목, 결제 금액, 총 결제 금액을 획득하고, 획득한 정보를 인쇄 다큐먼트에 포함시킨다.
또한, 인쇄 모듈은 결제 어플리케이션(1911)으로부터 승인 내역 정보(또는, 취소 내역 정보)를 획득하고, 승인 내역 정보를 인쇄 다큐먼트에 포함시킨다. 또한, 본 발명의 몇몇 실시예에서, 인쇄 모듈은 카드 리더기 펌웨어(1912)로부터 마스킹된 카드정보를 획득하고, 마스킹된 카드 정보를 인쇄 다큐먼트에 포함시킨다.
또한, 본 발명의 몇몇 실시예에서, 인쇄 다큐먼트는 프린터(1950)에서 이해할 수 없는 포맷 및 명령어로 구성될 수 있다. 이 경우, 인쇄 모듈은 인쇄 다큐먼트를 프린터 드라이버(1913)에 제공하고, 프린터 드라이버(1913)는 인쇄 다큐먼트를 프린터 펌웨어(1912)에서 이해할 수 있는 포맷 및 명령어로 구성된 인쇄 데이터로 변환하고, 변환된 인쇄 데이터를 통신 인터페이스(1930)를 통하여 프린터(1950)에 전송할 수 있다. 프린터(1950)는 인쇄 데이터에 따라서 인쇄를 수행한다.
또한, 본 발명의 구체적인 실시예에서, 인쇄 모듈은 포스 단말기(1940)에 포함될 수도 있고, 결제 어플리케이션(1911)에 포함될 수도 있으며, 포스 단말기(1940) 및 결제 어플리케이션(1911) 각각에 포함될 수도 있다. 이에 대해서는, 도 8 내지 도 10에서 설명한 내용이 그대로 적용될 수 있으므로, 자세한 설명은 생략한다.
또한, 본 발명의 실시예에 따른 결제 어플리케이션(1911)의 주변기기 제어 방법에서, 결제 어플리케이션(1911)은 주변기기 제어모듈(미도시)를 포함한다. 주변기기 제어 모듈은 주변기기를 제어하기 위하여, 제어 신호를 생성한 후, 카드 리더기(1950) 또는 기타 주변기기(1960)에 제어 신호를 전송하고, 제어 신호를 수신한 프린터(1950) 또는 기타 주변기기(1960)는 제어 신호에 따라 제어될 수 있다. 여기서, 기타 주변기기(1960)는 바코드 리더기, 카드 결제 서명 패드, 캐시 드로워 등을 포함할 수 있다.
구체적으로, 주변기기 제어 모듈은 프린터 활성화 명령을 이용하여 프린터(1950)를 제어할 수 있다. 예를 들어, 결제 어플리케이션(1911)이 포스 단말기(1940)로부터 결제 요청을 획득하거나, 카드 리더기 펌웨어(1912)로부터 암호화된 카드 정보를 획득한 후, 주변기기 제어모듈은 프린터(1950)가 인쇄를 수행할 수 있는 상태가 되도록 프린터 활성화 명령을 생성하고, 통신 인터페이스(1930)를 통하여, 프린터(1950)(또는, 프린터 펌웨어)에 프린터 활성화 명령을 전송한다. 프린터 활성화 명령에 따라, 프린터(1950)는 미리 정해진 시간동안 활성화될 수 있고, 미리 정해진 시간동안 인쇄 데이터를 획득한 경우, 인쇄 데이터에 따라 인쇄를 수행할 수 있다. 또한, 인쇄를 수행한 후, 프린터는 다시 비활성화될 수 있다.
또한, 일 실시예에서, 주변기기 제어모듈은 서명패드의 상태를 제어할 수 있다. 예를 들어, 결제 어플리케이션(1911)이 카드 리더기 펌웨어(1912)로부터 암호화된 카드 정보를 획득한 후, 주변기기 제어모듈은 서명패드가 결제자로부터 서명을 획득할 수 있는 상태가 되도록 서명패드 활성화 명령을 생성하고, 통신 인터페이스(1930)를 통하여, 서명패드(또는, 서명패드 펌웨어)에 서명패드 활성화 명령을 전송한다. 서명패드 활성화 명령에 따라, 서명패드는 미리 정해진 시간동안 활성화될 수 있다.
다른 일 실시예에서, 주변기기 제어모듈은 바코드 리더기의 상태를 제어할 수 있다. 예를 들어, 결제 어플리케이션(1911)이 결제 요청을 획득한 후, 주변기기 제어모듈은 바코드 리더기가 바코드 리딩을 할 수 없는 상태가 되도록 바코드 리더기 비활성화 명령을 생성하고, 통신 인터페이스(1930)를 통하여, 바코드 리더기(또는, 바코드 리더기 펌웨어)에 바코드 리더기 비활성화 명령을 전송한다. 바코드 리더기 비활성화 명령에 따라, 바코드 리더기는 미리 정해진 시간동안 비활성화되고, 미리 정해진 시간 후에 활성화될 수 있다. 또한, 일 실시예에서, 바코드 리더기는 바코드 리더기 비활성화 명령에 따라 미리 정해진 시간 후에도 활성화 되지 않을 수 있고, 이 경우, 주변기기 제어모듈은 바코드 리더기에 바코드 리더기 활성화 명령을 전송하여 바코드 리더기를 활성화시킬 수 있다.
이와 같이, 주변기기 제어모듈이 주변기기의 활성화를 제어함에 따라, 주변기기는 필요한 경우에만 활성화됨으로써, 주변기기의 불필요한 전력소비가 감소될 수 있다.
도 20은 일 실시예에 따른 결제 어플리케이션이 카드 리더기에 포함되고, 복수의 포스 단말기의 결제 요청에 따라 결제를 수행할 경우의 결제 어플리케이션의 동작을 설명하기 위한 블록도이다.
도 20을 참조하면, 결제 시스템은 제1 포스 단말기(2010), 제2 포스 단말기(2020), 카드 리더기(2030), 서비스 서버(2040) 및 카드사 서버(2050)를 포함할 수 있다.
전술한 바와 같이, 카드 리더기(2030)에는 결제 어플리케이션이 포함되어 있고, 결제 어플리케이션은 결제 기능을 수행할 수 있다. 또한, 제1 포스 단말기(2010)에는 제1 포스 어플리케이션이 포함되고, 제2 포스 단말기(2020)에는 제2 포스 어플리케이션이 포함된다. 제1 포스 어플리케이션 및 제2 포스 어플리케이션은 각각 포스 기능을 수행하여, 결제 항목 및 결제 금액을 기록할 수 있다.
카드 리더기(2030)의 결제 어플리케이션은 제1 포스 단말기(2010) 및 제2 포스 단말기(2020) 각각으로부터 결제 요청을 수신하고, 각 결제 요청에 따라 결제를 수행한다. 이 때, 제1 포스 단말기(2010) 및 제2 포스 단말기(2020) 각각으로부터의 결제 요청에는 제1 포스 단말기(2010) 또는 제2 포스 단말기(2020)를 식별하기 위한 식별자가 포함될 수 있다.
예를 들어, 결제 어플리케이션은 제2 포스 어플리케이션으로부터 결제 요청을 수신하고, 총 결제 금액을 획득한다. 이 때, 결제 요청에는 제2 포스 단말기(2020)를 나타내는 제2 식별자가 포함된다. 또한, 결제 어플리케이션은 카드 리더기(2030)에 포함된 카드 리더기 펌웨어로부터 암호화된 카드 정보를 획득하고, 서비스 서버(2040)에 결제 승인 요청을 위하여 암호화된 카드 정보 및 결제 금액을 전송한다. 서비스 서버(2040)는 카드 리더기(2030) 및 카드사 서버(2050) 사이에서 결제 승인을 중계하고, 카드사 서버(2050)로부터 결제 승인 결과를 획득한다. 또한, 서비스 서버(2040)는 결제 어플리케이션에 결제 승인 결과 및 승인 내역 정보를 전송하고, 결제 어플리케이션은 제2 식별자에 대응하는 제2 포스 단말기(2020)의 포스 어플리케이션에 결제 승인 결과를 제공할 수 있다.
이와 같이, 각 포스 단말기로부터의 결제 요청에 식별자가 포함되고, 식별자를 이용하여 포스 단말기를 식별함으로써, 카드 리더기(2030)의 결제 어플리케이션은 복수의 포스 단말기에 대한 결제를 보다 쉽게 수행할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (17)
- 운영체제;
포스(POS: Point of Sales) 어플리케이션; 및
상기 포스 어플리케이션과 상기 운영체제 사이에서 연결되고,
부가통신망(VAN: Value Add Network) 서비스를 제공하는 서비스 서버와 상기 포스 어플리케이션 사이에서 상기 포스 어플리케이션으로부터의 결제 요청에 따라 결제를 수행하는 결제 어플리케이션을 포함하는 포스 단말기에 있어서,
상기 결제 어플리케이션은,
상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 요청 및 상기 결제 요청에 대한 총 결제 금액을 획득하고,
카드 리더기로부터 제1 카드 정보 - 상기 제1 카드 정보는 결제에 이용되는 카드의 카드번호 전체가 암호화된 정보를 나타냄 - 를 획득하고,
상기 결제를 승인받기 위하여, 상기 제1 카드 정보 및 상기 총 결제 금액을 상기 서비스 서버에 제공하고,
상기 서비스 서버로부터 결제 결과와 함께 승인 관련 정보 - 상기 승인 관련 정보는 승인 번호를 포함함 - 를 획득하고,
상기 포스 어플리케이션에 상기 결제 결과를 제공하되, 상기 포스 어플리케이션이 상기 제1 카드 정보 및 상기 승인 번호를 획득하지 못하도록 관리하고,
상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 항목을 포함하는 인쇄 다큐먼트 - 상기 인쇄 다큐먼트는 상기 결제 어플리케이션에서 이해할 수 있는 포맷 및 명령어로 구성되고, 상기 포스 어플리케이션에서 생성됨 - 를 획득하고,
상기 카드 리더기로부터 제2 카드 정보 - 상기 제2 카드 정보는 상기 카드의 사용자의 정보 보호를 위하여, 상기 결제에 이용되는 카드의 전체 카드번호 중 일부의 카드번호가 마스킹된 정보를 나타냄 - 를 획득하고,
상기 획득된 인쇄 다큐먼트에 상기 승인 번호를 포함하는 상기 승인 관련 정보 및 상기 제2 카드 정보를 부가하고,
상기 승인 번호를 포함하는 상기 승인 관련 정보 및 상기 제2 카드 정보가 부가된 인쇄 다큐먼트를 상기 결제 어플리케이션과 연동하는 프린터에서 출력가능한 형식의 인쇄 데이터로 변환하는 것을 특징으로 하는,
포스 단말기.
- 삭제
- 제1항에 있어서,
상기 결제 어플리케이션은,
상기 운영 체제를 통하여 상기 포스 어플리케이션으로부터 상기 결제 요청을 획득하는 경우,
상기 카드 리더기를 활성화시키기 위한 제어 명령을 상기 카드 리더기에 전송하고,
상기 제어 명령에 따라 상기 카드 리더기가 활성화되는 미리 정해진 시간 동안 상기 카드 리더기로부터 상기 제1 카드 정보를 획득하는 것을 특징으로 하는,
포스 단말기.
- 제1항에 있어서,
상기 결제 어플리케이션은,
OS 커널층에서의 상기 운영체제의 관리에 따라, 상기 포스 어플리케이션으로부터 상기 결제 요청, 상기 총 결제 금액을 획득하고, 상기 포스 어플리케이션에 상기 결제 결과를 제공하는 것을 특징으로 하는,
포스 단말기.
- 제1항에 있어서,
상기 결제 어플리케이션은,
상기 획득된 제1 카드 정보가 가공되지 않고, 상기 서비스 서버에 전달되도록 상기 제1 카드 정보에 대한 상기 포스 어플리케이션의 접근을 차단시키는 것을 특징으로 하는,
포스 단말기.
- 제1항에 있어서,
상기 결제 어플리케이션은,
상기 운영체제를 통해 상기 제1 카드 정보가 상기 서비스 서버에 제공되도록, 상기 운영체제에 의해 상기 포스 어플리케이션이 접근하지 못하도록 설정된 메모리 영역에 상기 제1 카드 정보를 저장하는 것을 특징으로 하는,
포스 단말기.
- 삭제
- 제1항에 있어서,
상기 인쇄 다큐먼트는,
상기 총 결제 금액 또는 결제 승인 금액 중 적어도 하나를 포함하는 것을 특징으로 하는,
포스 단말기.
- 제1항에 있어서,
상기 결제 어플리케이션은,
상기 서비스 서버로부터 상기 결제 결과를 획득한 후,
상기 운영체제를 통하여, 상기 포스 어플리케이션으로부터 적어도 하나의 결제 항목, 상기 적어도 하나의 결제 항목 각각에 대응하는 결제 금액 또는 상기 총 결제 금액 중 적어도 하나가 포함된 상기 인쇄 다큐먼트를 획득하는 것을 특징으로 하는,
포스 단말기.
- 삭제
- 삭제
- 제1항에 있어서,
상기 결제 어플리케이션은,
상기 포스 단말기에 연결된 주변기기 - 상기 주변기기는 바코드 리더기 또는 서명 패드 중 적어도 하나를 포함함 - 의 상태를 제어하는 제어 명령을 생성하고,
상기 제어 명령에 따라 상기 주변기기의 상태가 제어되도록 상기 제어 명령을 상기 주변기기에 전송하는 것을 특징으로 하는,
포스 단말기.
- 제1항에 있어서,
상기 결제 어플리케이션은,
상기 카드 리더기의 마스킹을 제어하기 위한 마스킹 설정 명령 - 상기 마스킹 설정 명령은 상기 마스킹된 카드 정보의 전송 요청, 상기 마스킹된 카드 정보의 비전송 요청 또는 상기 마스킹이 수행되는 범위를 지시하는 마스킹 범위 설정 중 적어도 하나를 포함함 - 을 생성하고,
상기 마스킹 설정 명령에 따라 상기 카드 리더기가 상기 마스킹을 수행하도록 상기 카드 리더기에 상기 마스킹 설정 명령을 전송하는 것을 특징으로 하는,
포스 단말기.
- 포스 단말기에 포함되고, 포스 어플리케이션과 운영체제 사이에서 연결되고, 부가통신망 서비스를 제공하는 서비스 서버와 상기 포스 어플리케이션 사이에서 상기 포스 어플리케이션으로부터의 결제 요청에 따라 결제를 수행하는 결제 어플리케이션의 결제 방법에 있어서,
상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 요청 및 상기 결제 요청에 대한 총 결제 금액을 획득하는 단계;
카드 리더기로부터 제1 카드 정보 - 상기 제1 카드 정보는 결제에 이용되는 카드의 카드번호 전체가 암호화된 정보를 나타냄 - 를 획득하는 단계;
상기 결제를 승인받기 위하여, 상기 제1 카드 정보 및 상기 총 결제 금액을 상기 서비스 서버에 제공하는 단계; 및
상기 서비스 서버로부터 결제 결과와 함께 승인 관련 정보 - 상기 승인 관련 정보는 승인 번호를 포함함 - 를 획득하는 단계를 포함하되,
상기 포스 어플리케이션에 상기 결제 결과를 제공하되, 상기 포스 어플리케이션이 상기 제1 카드 정보 및 상기 승인 번호를 획득하지 못하도록 관리하고,
상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 항목을 포함하는 인쇄 다큐먼트 - 상기 인쇄 다큐먼트는 상기 결제 어플리케이션에서 이해할 수 있는 포맷 및 명령어로 구성되고, 상기 포스 어플리케이션에서 생성됨 - 를 획득하고,
상기 카드 리더기로부터 제2 카드 정보 - 상기 제2 카드 정보는 상기 카드의 사용자의 정보 보호를 위하여, 상기 결제에 이용되는 카드의 전체 카드번호 중 일부의 카드번호가 마스킹된 정보를 나타냄 - 를 획득하고,
상기 획득된 인쇄 다큐먼트에 상기 승인 번호를 포함하는 상기 승인 관련 정보 및 상기 제2 카드 정보를 부가하고,
상기 승인 번호를 포함하는 상기 승인 관련 정보 및 상기 제2 카드 정보가 부가된 인쇄 다큐먼트를 상기 결제 어플리케이션과 연동하는 프린터에서 출력가능한 형식의 인쇄 데이터로 변환하는 것을 특징으로 하는,
포스 단말기에서의 결제 어플리케이션의 결제 방법.
- 포스 단말기에 포함되고, 포스 어플리케이션과 운영체제 사이에서 연결되고, 부가통신망 서비스를 제공하는 서비스 서버와 상기 포스 어플리케이션 사이에서 상기 포스 어플리케이션으로부터의 결제 요청에 따라 결제를 수행하는 결제 어플리케이션의 인쇄 방법에 있어서,
상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 요청을 획득하는 단계;
카드 리더기로부터 암호화된 카드 정보를 획득하는 단계;
상기 결제를 승인받기 위하여, 상기 서비스 서버에 상기 결제를 요청하고, 상기 암호화된 카드 정보를 제공하는 단계;
상기 서비스 서버로부터 결제 결과와 함께 승인 관련 정보 - 상기 승인 관련 정보는 승인 번호를 포함함 - 를 획득하는 단계;
상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 항목을 포함하는 인쇄 다큐먼트 - 상기 인쇄 다큐먼트는 결제 어플리케이션에서 이해할 수 있는 포맷 및 명령어로 구성되고, 상기 포스 어플리케이션에서 생성됨 - 를 획득하는 단계;
상기 카드 리더기로부터 제2 카드 정보 - 상기 제2 카드 정보는 상기 카드의 사용자의 정보 보호를 위하여, 상기 결제에 이용되는 카드의 전체 카드번호 중 일부의 카드번호가 마스킹된 정보를 나타냄 - 를 획득하는 단계;
상기 획득된 인쇄 다큐먼트에 상기 승인 번호를 포함하는 상기 승인 관련 정보 및 상기 제2 카드 정보를 부가하는 단계; 및
상기 승인 번호를 포함하는 상기 승인 관련 정보 및 상기 제2 카드 정보가 부가된 인쇄 다큐먼트를 상기 결제 어플리케이션과 연동하는 프린터에서 출력가능한 형식의 인쇄 데이터로 변환하는 단계
를 포함하는,
포스 단말기에서의 상기 결제 어플리케이션의 인쇄 방법.
- 포스 단말기에 포함되고, 포스 어플리케이션과 운영체제 사이에서 연결되고, 부가통신망 서비스를 제공하는 서비스 서버와 상기 포스 어플리케이션 사이에서 상기 포스 어플리케이션으로부터의 결제 요청에 따라 결제를 수행하고, 상기 포스 단말기와 연결된 주변기기를 제어하는 결제 어플리케이션의 주변기기 제어 방법에 있어서,
상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 요청을 획득하는 단계;
상기 포스 단말기에 연결된 주변기기 - 상기 주변기기는 카드 리더기, 바코드 리더기 또는 서명패드 중 적어도 하나를 포함함 - 의 상태를 제어하는 제어 명령을 생성하는 단계;
상기 제어 명령에 따라 상기 주변기기의 상태가 제어되도록 상기 제어 명령을 상기 주변기기에 전송하는 단계;
상기 제어 명령에 의해 상기 카드 리더기가 활성화되는 경우, 상기 카드 리더기로부터 상기 운영체제를 통하여 암호화된 카드 정보를 획득하는 단계;
상기 결제를 승인받기 위하여, 상기 암호화된 카드 정보를 상기 서비스 서버에 제공하는 단계; 및
상기 서비스 서버로부터 결제 결과와 함께 승인 관련 정보 - 상기 승인 관련 정보는 승인 번호를 포함함 - 를 획득하는 단계
를 포함하고,
상기 결제 어플리케이션은,
상기 운영체제를 통하여 상기 포스 어플리케이션으로부터 결제 항목을 포함하는 인쇄 다큐먼트 - 상기 인쇄 다큐먼트는 상기 결제 어플리케이션에서 이해할 수 있는 포맷 및 명령어로 구성되고, 상기 포스 어플리케이션에서 생성됨 - 를 획득하고,
상기 카드 리더기로부터 제2 카드 정보 - 상기 제2 카드 정보는 상기 카드의 사용자의 정보 보호를 위하여, 상기 결제에 이용되는 카드의 전체 카드번호 중 일부의 카드번호가 마스킹된 정보를 나타냄 - 를 획득하고,
상기 획득된 인쇄 다큐먼트에 상기 승인 번호를 포함하는 상기 승인 관련 정보 및 상기 제2 카드 정보를 부가하고,
상기 승인 번호를 포함하는 상기 승인 관련 정보 및 상기 제2 카드 정보가 부가된 인쇄 다큐먼트를 상기 결제 어플리케이션과 연동하는 프린터에서 출력가능한 형식의 인쇄 데이터로 변환하는 것을 특징으로 하는,
포스 단말기에서의 결제 어플리케이션의 주변기기 제어 방법.
- 제14항 내지 제16항 중 어느 하나의 항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160027641A KR101687132B1 (ko) | 2016-03-08 | 2016-03-08 | 보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160027641A KR101687132B1 (ko) | 2016-03-08 | 2016-03-08 | 보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160167618A Division KR20170105398A (ko) | 2016-12-09 | 2016-12-09 | 보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101687132B1 true KR101687132B1 (ko) | 2016-12-16 |
Family
ID=57735651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160027641A KR101687132B1 (ko) | 2016-03-08 | 2016-03-08 | 보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101687132B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112613870A (zh) * | 2020-12-23 | 2021-04-06 | 网银在线(北京)科技有限公司 | 支付处理方法、装置、自助设备、支付终端、系统和介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130101778A (ko) * | 2012-03-06 | 2013-09-16 | 주식회사 알에프엑스소프트 | 스마트폰을 이용한 신용카드 결제 시스템 및 그 방법 |
KR20140124254A (ko) * | 2013-04-16 | 2014-10-24 | 삼성전자주식회사 | 단말장치, 보안서버 및 그 결제방법 |
KR20150103688A (ko) * | 2013-03-01 | 2015-09-11 | 윌리엄 더블유. 그레이린 | 모바일 월렛 시스템과 함께 동작하는 디바이스의 자기 스트라이프 데이터를 보안적으로 로딩, 저장 및 송신하기 위한 시스템 및 방법 |
-
2016
- 2016-03-08 KR KR1020160027641A patent/KR101687132B1/ko active IP Right Review Request
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130101778A (ko) * | 2012-03-06 | 2013-09-16 | 주식회사 알에프엑스소프트 | 스마트폰을 이용한 신용카드 결제 시스템 및 그 방법 |
KR20150103688A (ko) * | 2013-03-01 | 2015-09-11 | 윌리엄 더블유. 그레이린 | 모바일 월렛 시스템과 함께 동작하는 디바이스의 자기 스트라이프 데이터를 보안적으로 로딩, 저장 및 송신하기 위한 시스템 및 방법 |
KR20140124254A (ko) * | 2013-04-16 | 2014-10-24 | 삼성전자주식회사 | 단말장치, 보안서버 및 그 결제방법 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112613870A (zh) * | 2020-12-23 | 2021-04-06 | 网银在线(北京)科技有限公司 | 支付处理方法、装置、自助设备、支付终端、系统和介质 |
CN112613870B (zh) * | 2020-12-23 | 2024-04-16 | 网银在线(北京)科技有限公司 | 支付处理方法、装置、自助设备、支付终端、系统和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101757421B1 (ko) | 원-클릭 오프라인 구매 | |
US8740073B2 (en) | Methods, systems and computer readable media for storing and redeeming electronic certificates using a wireless smart card | |
US20130218778A1 (en) | System and method for processing payment transaction receipts | |
JP2016514300A (ja) | 支払認証情報を提供するためのシステムおよび方法 | |
KR101213135B1 (ko) | 일회용 엔에프씨 결제카드 발급 시스템 및 그 방법 | |
US10540656B2 (en) | Communication protocols for processing an authorization request in a distributed computing system | |
EP3022696B1 (en) | Systems, methods, and computer program products for reporting contactless transaction data | |
KR101883045B1 (ko) | 보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치 | |
KR101687132B1 (ko) | 보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치 | |
KR101883044B1 (ko) | 보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치 | |
US20220156719A1 (en) | Programmable card for token payment and systems and methods for using programmable card | |
KR101323655B1 (ko) | 쿠폰 운용 방법 | |
KR20170105398A (ko) | 보안성 향상을 위한 결제 어플리케이션의 제어 방법 및 상기 결제 어플리케이션을 포함하는 장치 | |
KR20140118251A (ko) | 카드 결제 시스템 및 방법 | |
US8990117B2 (en) | Smartcard to virtual media conversion | |
JP2024152855A (ja) | カードリーダ及び決済システム | |
KR101124309B1 (ko) | 고객 구매상품에 대응하는 알에프아이디 정보 이용 승인처리 시스템 | |
KR20180044600A (ko) | 웹기반 밴 결제시스템 및 이를 이용한 결제방법 | |
KR20180038298A (ko) | 결제 처리 시스템 및 그의 결제 처리 방법 | |
KR20060014108A (ko) | 고객 구매상품에 대응하는 알에프아이디 정보 이용승인처리 방법 및 시스템과 이를 위한 기록매체 및 정보저장매체 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
GRNT | Written decision to grant | ||
J204 | Invalidation trial for patent | ||
J206 | Request for trial to confirm the scope of a patent right | ||
J206 | Request for trial to confirm the scope of a patent right | ||
J301 | Trial decision |
Free format text: TRIAL NUMBER: 2017100001806; TRIAL DECISION FOR CONFIRMATION OF THE SCOPE OF RIGHT_DEFENSIVE REQUESTED 20170614 Effective date: 20181023 |
|
J121 | Written withdrawal of request for trial | ||
FPAY | Annual fee payment |
Payment date: 20190226 Year of fee payment: 4 |