KR102664041B1 - Api based payment system - Google Patents

Api based payment system Download PDF

Info

Publication number
KR102664041B1
KR102664041B1 KR1020210026142A KR20210026142A KR102664041B1 KR 102664041 B1 KR102664041 B1 KR 102664041B1 KR 1020210026142 A KR1020210026142 A KR 1020210026142A KR 20210026142 A KR20210026142 A KR 20210026142A KR 102664041 B1 KR102664041 B1 KR 102664041B1
Authority
KR
South Korea
Prior art keywords
kernel
server
payment
api
payment device
Prior art date
Application number
KR1020210026142A
Other languages
Korean (ko)
Other versions
KR20220122029A (en
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 (주) 듀얼아이
Priority to KR1020210026142A priority Critical patent/KR102664041B1/en
Publication of KR20220122029A publication Critical patent/KR20220122029A/en
Application granted granted Critical
Publication of KR102664041B1 publication Critical patent/KR102664041B1/en

Links

Images

Classifications

    • 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/326Payment applications installed on the mobile 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/08Payment architectures
    • G06Q20/16Payments settled via telecommunication systems
    • 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/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • 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/401Transaction verification

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Security & Cryptography (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Automatic Disk Changers (AREA)

Abstract

본 발명의 API 기반 지불결제 시스템은 네트워크를 통해 접속된 결제장치로부터 수신된 커널 API 호출 명령에 따라 EMV L2 규격의 어플리케이션 커널 기능을 제공하고, 결제장치가 제공하는 인터페이스 모듈 API 호출 명령을 통해 접속된 결제장치에 의해 결제에 사용할 카드의 카드정보를 획득하는 커널 서버와, 서버로부터 수신된 인터페이스 모듈 API 호출 명령에 따라 EMV L1 규격의 인터페이스 모듈 기능을 통해 결제에 사용할 카드의 카드정보를 전달하는 결제장치를 포함한다.The API-based payment system of the present invention provides application kernel functions of the EMV L2 standard according to a kernel API call command received from a payment device connected through a network, and connects through an interface module API call command provided by the payment device. A kernel server that obtains the card information of the card to be used for payment by the payment device, and a payment device that transmits the card information of the card to be used for payment through the interface module function of the EMV L1 standard according to the interface module API call command received from the server. Includes.

Description

API 기반 지불결제 시스템 {API BASED PAYMENT SYSTEM}API-based payment system {API BASED PAYMENT SYSTEM}

지불결제 시스템에 관한 것으로, 보다 상세하게는 결제장치가 신용카드 정보를 읽고 검증하는 소프트웨어 모듈을 제공하는 서버와의 통신을 통해 지불결제를 처리하는 시스템에 관한 것이다.It relates to a payment system, and more specifically, to a system in which a payment device processes payments through communication with a server that provides a software module that reads and verifies credit card information.

전자기적인 방법으로 카드정보를 저장하는 마그네틱 카드는 위조가 용이한 문제가 있다. 유로페이, 마스터카드, 비자카드 글로벌 신용카드 3사가 EMV 카드를 제안하였다. EMV 카드는 IC 카드라고도 하며 IC 칩 안에 암호화된 형태로 결제나 현금인출 등에 필요한 카드정보를 저장하는 방식의 카드이다. EMV는 IC 카드의 국제 표준의 하나이다. EMV는 EMV 규격을 관리하기 위하여 EMVCo를 설립하였으며 신용카드 미디어의 기술적인 사양을 확정하고 배포하며, 신용카드 및 카드 리더기의 호환성을 인증하고 관리한다.Magnetic cards, which store card information using an electromagnetic method, have the problem of being easily counterfeited. Three global credit card companies, Europay, Mastercard, and Visacard, proposed the EMV card. EMV cards, also called IC cards, are cards that store card information needed for payments or cash withdrawals in an encrypted form within the IC chip. EMV is one of the international standards for IC cards. EMV established EMVCo to manage EMV specifications, confirms and distributes technical specifications of credit card media, and certifies and manages compatibility of credit cards and card readers.

EMV 인증은 Level 1과 2로 구분된다. EMVCo는 EMV 제품이 표준에서 정한 규격을 준수하고 있는지 여부를 테스트하는 인증절차를 마련하고, EMVCo가 승인한 인증센터에서 인증테스트를 수행한다.EMV certification is divided into Level 1 and 2. EMVCo establishes a certification procedure to test whether EMV products comply with the standards set forth in the standard, and performs certification tests at a certification center approved by EMVCo.

일반적으로 카드 단말기는 EMV Level 1 IFM(Interface Module) 인증과 EMV Level 2 어플리케이션 커널 인증을 모두 받아야 한다. 이때 카드 단말기 제조사들은 제조하는 단말기별로 즉, 하드웨어 별로 EMV 커널을 개발하고, 커널 인증을 받아야 한다. 또한, 한번 인증을 받은 카드 단말기라 하더라도 커널이 리비전되면 하드웨어 별로 커널 인증을 다시 받아야 한다.In general, card terminals must receive both EMV Level 1 IFM (Interface Module) certification and EMV Level 2 application kernel certification. At this time, card terminal manufacturers must develop an EMV kernel for each terminal they manufacture, that is, for each hardware, and obtain kernel certification. In addition, even if the card terminal has been certified once, if the kernel is revised, kernel certification must be obtained again for each hardware.

다양한 결제 미디어(새로운 신용카드 폼팩터, QR, NFC, 음성, 얼굴인식, 홍채인식 등)의 등장과 결제 프로세스의 변화(간편결제, P2P 송금, user side 결제 등)로 인하여 기 설치된 카드 단말기의 빈번한 업데이트가 요구되고 있다. 이러한 업데이트에 드는 시간과 비용은 카드 단말기 제조사들에 많은 부담이 되고 있다.Due to the emergence of various payment media (new credit card form factors, QR, NFC, voice, face recognition, iris recognition, etc.) and changes in payment processes (simple payment, P2P transfer, user side payment, etc.), frequent updates of already installed card terminals are required. is being requested. The time and cost required for these updates is placing a heavy burden on card terminal manufacturers.

또한, 동일한 카드 단말기 임에도 불구하고 저장된 EMV 커널 버전과 키 버전이 상이하여 많은 문제가 현장에서 발생하고 있다.In addition, even though it is the same card terminal, the stored EMV kernel version and key version are different, causing many problems in the field.

본 발명은 EMV 어플리케이션 커널을 서버에 저장하여 카드 리더기와 같은 결제장치가 서버와의 통신을 통해 EMV 어플리케이션 커널의 기능을 사용하여 결제 서비스를 할 수 있는 지불결제 시스템을 제공하는 것을 목적으로 한다.The purpose of the present invention is to provide a payment system that stores the EMV application kernel on a server and allows payment devices such as card readers to provide payment services using the functions of the EMV application kernel through communication with the server.

또한, 본 발명은 EMV 어플리케이션 커널이 리비전 되더라도 하드웨어 별로 결제장치를 다시 인증 받을 필요가 없는 지불결제 시스템을 제공하는 것을 또 다른 목적으로 한다.Another purpose of the present invention is to provide a payment system that does not require re-authentication of payment devices for each hardware even if the EMV application kernel is revised.

본 발명의 일 양상에 따르면, API 기반 지불결제 시스템은 커널 서버와, 결제장치를 포함한다.According to one aspect of the present invention, the API-based payment system includes a kernel server and a payment device.

커널 서버는 네트워크를 통해 접속된 결제장치로부터 수신된 커널 API 호출 명령에 따라 EMV L2 규격의 어플리케이션 커널 기능을 제공하고, 결제장치가 제공하는 인터페이스 모듈 API 호출 명령을 통해 접속된 결제장치에 의해 결제에 사용할 카드의 카드정보를 획득한다.The kernel server provides EMV L2 standard application kernel functions according to the kernel API call command received from the payment device connected through the network, and processes the payment by the connected payment device through the interface module API call command provided by the payment device. Obtain card information for the card to be used.

결제장치는 서버로부터 수신된 인터페이스 모듈 API 호출 명령에 따라 EMV L1 규격의 인터페이스 모듈 기능을 통해 결제에 사용할 카드의 카드정보를 전달한다.The payment device transmits card information of the card to be used for payment through the interface module function of the EMV L1 standard according to the interface module API call command received from the server.

API 기반 지불결제 시스템의 커널 서버는 EMV L2 규격의 어플리케이션 커널을 실행하고 커널 API 제공하는 커널부와, 네트워크를 통해 접속된 결제장치로부터 커널 API 호출 명령을 수신하고 결제장치로 인터페이스 모듈 API를 호출하는 장치 연동부와, 실행할 어플리케이션 커널을 결정하고 결정된 커널에 따라 인터페이스 모듈 API 호출 명령을 구성하는 로직 제어부를 포함할 수 있다.The kernel server of the API-based payment system has a kernel unit that runs an application kernel of the EMV L2 standard and provides a kernel API, and receives kernel API call commands from payment devices connected through the network and calls the interface module API to the payment device. It may include a device interlocking unit and a logic control unit that determines the application kernel to be executed and configures an interface module API call command according to the determined kernel.

API 기반 지불결제 시스템의 결제장치는 커널 서버에 접속하여 커널 API 호출 명령을 전송하고 커널 서버로부터 인터페이스 모듈 API 호출 명령을 수신하는 서버 연동부와, 결제에 사용할 카드로부터 정보를 읽는 카드 리더부와, EMV L1 규격의 인터페이스 기능의 인터페이스 모듈 API를 제공하는 모듈 API부를 포함할 수 있다.The payment device of the API-based payment system includes a server linking unit that connects to the kernel server, transmits a kernel API call command, and receives an interface module API call command from the kernel server; a card reader unit that reads information from the card to be used for payment; It may include a module API unit that provides an interface module API of the interface function of the EMV L1 standard.

발명의 추가적 양상에 따르면, 커널 서버가 VAN 서버로 거래에 대한 승인요청 정보를 전달하여 획득한 승인번호를 결제장치로 전송하는 승인 처리부를 더 포함하거나 결제장치가 커널 서버로부터 카드정보를 수신하여 승인요청 정보를 생성하고, 생성된 승인요청 정보를 VAN 서버로 전달하여 승인번호를 획득하는 승인 처리부를 더 포함할 수 있다.According to an additional aspect of the invention, the kernel server further includes an approval processing unit that transmits the approval request information for the transaction to the VAN server and transmits the obtained approval number to the payment device, or the payment device receives card information from the kernel server and approves it. It may further include an approval processing unit that generates request information and transmits the generated approval request information to the VAN server to obtain an approval number.

발명의 추가적 양상에 따르면 API 기반 지불결제 시스템은 결제장치들의 인터페이스 모듈 API 버전을 관리하고, 모니터링하는 단말관리 서버를 더 포함할 수 있다.According to an additional aspect of the invention, the API-based payment system may further include a terminal management server that manages and monitors the interface module API version of the payment devices.

본 발명의 지불결제 시스템에 의하면 카드 리더기와 같은 결제장치에 EMV 어플리케이션을 저장하지 않아도 커널 서버와의 통신을 통해 EMV 어플리케이션 커널의 기능을 사용하여 결제 서비스를 제공할 수 있다.According to the payment system of the present invention, payment services can be provided using the functions of the EMV application kernel through communication with the kernel server even without storing the EMV application in a payment device such as a card reader.

또한, 본 발명의 지불결제 시스템은 EMV 어플리케이션 커널이 리비전 되는 경우 커널 서버만 재인증하면 하드웨어 별로 결제장치를 다시 인증 받을 필요 없는 효과가 발생된다.In addition, the payment system of the present invention has the effect of eliminating the need to re-authenticate payment devices for each hardware by only re-authenticating the kernel server when the EMV application kernel is revised.

또한, 본 발명의 지불결제 시스템은 커널 서버의 EMV 어플리케이션 커널을 리비전하면 설치된 결제장치들은 바로 리비전된 커널 기능을 사용하여 결제 서비스를 제공할 수 있다.Additionally, in the payment system of the present invention, if the EMV application kernel of the kernel server is revised, the installed payment devices can immediately provide payment services using the revised kernel function.

또한, 본 발명에 의하면 결제장치 제조 비용을 절감할 수 있다.Additionally, according to the present invention, the manufacturing cost of the payment device can be reduced.

도 1은 일 실시 예에 따른 본 발명의 지불결제 시스템의 구성을 도시한 것이다.
도 2는 또 다른 실시 예에 따른 본 발명의 지불결제 시스템의 구성을 도시한 것이다.
도 3은 본 발명의 커널 서버의 블록도이다.
도 4는 본 발명의 결제장치의 블록도이다.
도 5는 일 실시 예에 따른 본 발명의 커널 서버와 결제장치간 API 호출 절차를 도시한 절차도이다.
도 6은 또 다른 실시 예에 따른 본 발명의 커널 서버와 결제장치간 API 호출 절차를 도시한 절차도이다.
Figure 1 shows the configuration of a payment system of the present invention according to an embodiment.
Figure 2 shows the configuration of a payment system of the present invention according to another embodiment.
Figure 3 is a block diagram of the kernel server of the present invention.
Figure 4 is a block diagram of the payment device of the present invention.
Figure 5 is a procedure diagram illustrating an API call procedure between the kernel server and the payment device of the present invention according to an embodiment.
Figure 6 is a procedure diagram showing an API call procedure between the kernel server and the payment device of the present invention according to another embodiment.

전술한, 그리고 추가적인 양상들은 첨부된 도면을 참조하여 설명하는 실시 예들을 통해 구체화된다. 각 실시 예들의 구성 요소들은 다른 언급이나 상호간에 모순이 없는 한 실시 예 내에서 다양한 조합이 가능한 것으로 이해된다. 블록도의 각 블록은 어느 경우에 있어서 물리적인 부품을 표현할 수 있으나 또 다른 경우에 있어서 하나의 물리적인 부품의 기능의 일부 혹은 복수의 물리적인 부품에 걸친 기능의 논리적인 표현일 수 있다. 때로는 블록 혹은 그 일부의 실체는 프로그램 명령어들의 집합(set)일 수 있다. 이러한 블록들은 전부 혹은 일부가 하드웨어, 소프트웨어 혹은 이들의 결합에 의해 구현될 수 있다.The foregoing and additional aspects are embodied through embodiments described with reference to the accompanying drawings. It is understood that various combinations of the components of each embodiment are possible within the embodiment as long as there is no other mention or contradiction between them. In some cases, each block in a block diagram may represent a physical part, but in other cases, it may be a logical expression of a part of the function of one physical part or a function across multiple physical parts. Sometimes the entity of a block or part of it may be a set of program instructions. These blocks can be implemented in whole or in part by hardware, software, or a combination of these.

도 1 및 도 2는 본 발명의 지불결제 시스템의 구성을 도시한 것이다. 도 1 또는 도 2에 도시된 바와 같이, 본 발명의 API 기반 지불결제 시스템(10)은 커널 서버(100)와, 가맹점에 설치되는 결제장치(120)를 포함한다.Figures 1 and 2 show the configuration of the payment system of the present invention. As shown in Figure 1 or Figure 2, the API-based payment system 10 of the present invention includes a kernel server 100 and a payment device 120 installed in an affiliated store.

커널 서버(100)는 종래의 결제장치에 탑재되어 신용카드(30)로부터 카드정보를 읽고 신용카드(30)의 유효성을 검증하는 기능 등을 포함하는 소프트웨어 모듈인 EMV 어플리케이션 커널을 탑재하여 커널 기능을 제공한다. 커널 서버(100)는 EMV 카드의 접촉방식, 결제 프로세스 등에 따라 복수 개의 EMV 어플리케이션 커널을 탑재할 수 있다.The kernel server 100 is installed in a conventional payment device and is equipped with an EMV application kernel, which is a software module that includes a function to read card information from the credit card 30 and verify the validity of the credit card 30, and performs kernel functions. to provide. The kernel server 100 can be equipped with a plurality of EMV application kernels depending on the EMV card contact method, payment process, etc.

커널 서버(100)는 결제장치(120)들이 커널 기능을 이용할 수 있는 커널 API를 제공한다. 결제장치(120)는 IP 네트워크를 통해 서버와 통신하여 커널 API 호출 명령을 커널 서버(100)로 전송하여 커널 서버(100)의 커널 기능을 이용할 수 있다. 발명의 양상에 따라서는, 결제장치(120)가 커널 서버(100)에 대하여 인증을 받아야 할 수도 있다.The kernel server 100 provides a kernel API through which payment devices 120 can use kernel functions. The payment device 120 can use the kernel function of the kernel server 100 by communicating with the server through an IP network and transmitting a kernel API call command to the kernel server 100. Depending on the aspect of the invention, the payment device 120 may need to be authenticated with the kernel server 100.

커널 서버(100)는 IP 네트워크를 통해 접속된 결제장치(120)로부터 수신된 커널 API 호출 명령에 따라 EMV L2 규격의 어플리케이션 커널 기능을 제공한다. 커널 서버(100)와 결제장치(120)는 TCP/IP 프로토콜을 이용하여 접속할 수 있으며, 웹 소켓(Websocket) 프로토콜을 이용한 접속일 수 있다. 다만, 이에 제한되는 것은 아니며 IP 네트워크 상에서 동작하는 다양한 접속 프로토콜을 사용할 수 있다.The kernel server 100 provides application kernel functions of the EMV L2 standard according to a kernel API call command received from the payment device 120 connected through an IP network. The kernel server 100 and the payment device 120 can be connected using the TCP/IP protocol, and may be connected using the Websocket protocol. However, it is not limited to this and various connection protocols operating on an IP network can be used.

추가적으로, 커널 서버(100)와 결제장치(120) 사이에 주고 받는 모든 데이터를 암호화할 수 있다. 커널 서버(100)와 결제장치(120)는 결제 거래마다 공개키 암호화 방식으로 암복호화 키를 교환하거나 암복호화 키 생성 데이터를 교환할 수 있다.Additionally, all data exchanged between the kernel server 100 and the payment device 120 can be encrypted. The kernel server 100 and the payment device 120 may exchange encryption and decryption keys or exchange encryption and decryption key generation data using public key encryption for each payment transaction.

커널 서버(100)는 결제에 사용할 카드의 종류 및 카드가 지원하는 어플리케이션에 따라 서버에 저장된 EMV 어플리케이션 커널 중에서 거래에 사용할 커널을 선택한다. 이 선택을 위하여 커널 서버(100)는 카드(30)로부터 특정한 정보를 획득하여야 한다. 커널 서버(100)는 카드(30)로부터 정보를 획득하기 위하여 결제장치(120)의 인터페이스 모듈 API를 호출한다. 커널 서버(100)는 거래에 사용할 어플리케이션 커널을 선택한 후에도 카드(30)로부터 결제 승인에 필요한 정보를 가져와야 하므로 이러한 정보를 획득하기 위하여 결제장치(120)의 인터페이스 모듈 API를 호출한다. 즉, 커널 서버(100)는 결제장치(120)가 제공하는 인터페이스 모듈 API 호출 명령을 통해 접속된 결제장치(120)에 의해 결제에 사용될 카드(30)의 카드정보를 획득한다.The kernel server 100 selects a kernel to be used for the transaction from among the EMV application kernels stored in the server according to the type of card to be used for payment and the application supported by the card. For this selection, the kernel server 100 must obtain specific information from the card 30. The kernel server 100 calls the interface module API of the payment device 120 to obtain information from the card 30. Since the kernel server 100 must retrieve the information required for payment approval from the card 30 even after selecting the application kernel to be used for the transaction, it calls the interface module API of the payment device 120 to obtain such information. That is, the kernel server 100 obtains card information of the card 30 to be used for payment by the connected payment device 120 through an interface module API call command provided by the payment device 120.

어플리케이션 커널 기능은 거래 가능한 커널을 선택하는 기능과, 선택된 커널을 이용하여 거래를 진행하는 기능으로 구분할 수 있다. 발명의 양상에 따라서는 두 가지 기능 모두 커널 서버(100)에서 실행되도록 구성하거나, 거래 가능한 커널을 선택하는 기능은 결제장치(120)에서 실행되도록 구성할 수 있다.The application kernel function can be divided into a function to select a kernel that can be traded, and a function to proceed with a transaction using the selected kernel. Depending on the aspect of the invention, both functions may be configured to be executed in the kernel server 100, or the function for selecting a tradable kernel may be configured to be executed in the payment device 120.

커널 서버(100)의 서버는 프로세서와, 메모리와, 네트워크 장치 등의 하드웨어를 포함하는 컴퓨팅 장치와 메모리에 로드되어 프로세서에서 실행되는 소프트웨어를 포함한다. 커널 서버(100)는 단일 또는 복수의 컴퓨팅 장치로 구성될 수 있다.The server of the kernel server 100 includes a computing device including hardware such as a processor, memory, and a network device, and software loaded into the memory and executed on the processor. The kernel server 100 may be comprised of a single or multiple computing devices.

결제장치(120)는 가맹점에서 사용하는 신용카드(30)와 같은 결제 미디어를 사용하여 결제 거래를 처리하는 장치로 카드 리더기를 포함한다. 이러한 결제장치(120)의 예로 카드 리더기를 포함하는 키오스크와, CAT(credit Card Acceptance Terminal) 단말, POS(Point of Sales) 장치가 있으며, 이들 장치들은 공통적으로 EMV L1 인증을 받은 인터페이스 모듈을 포함하고 있다. 종래기술과 달리 본 발명의 결제장치(120)는 EMV L2 어플리케이션 커널을 포함하고 있지 않으며, 커널 서버(100)가 제공하는 커널 API를 호출하여 커널 기능을 이용하여 결제 처리를 수행한다.The payment device 120 is a device that processes payment transactions using payment media such as the credit card 30 used by affiliated stores and includes a card reader. Examples of such payment devices 120 include kiosks including card readers, credit card acceptance terminals (CAT) terminals, and point of sales (POS) devices, and these devices commonly include an interface module that is EMV L1 certified. there is. Unlike the prior art, the payment device 120 of the present invention does not include an EMV L2 application kernel, and performs payment processing using kernel functions by calling the kernel API provided by the kernel server 100.

결제장치(120)는 커널 서버(100)와 IP 네트워크를 통해 통신하므로 네트워크 장치를 포함하고 있다. 결제장치(120)가 POS 장치인 경우 카드 리더기와 POS 장치 사이에 시리얼(예, RS232, USB) 통신을 통해 데이터를 교환할 수 있다.The payment device 120 communicates with the kernel server 100 through an IP network and thus includes a network device. If the payment device 120 is a POS device, data can be exchanged between the card reader and the POS device through serial (eg, RS232, USB) communication.

또한, 결제장치(120)는 커널 서버(100)가 EMV L1 인터페이스 모듈 기능을 이용하여 결제카드(30)로부터 정보를 획득할 수 있도록 인터페이스 모듈 API를 제공한다. 따라서, 결제장치(120)는 커널 서버(100)로부터 수신된 인터페이스 모듈 API 호출 명령에 따라 EMV L1 규격의 인터페이스 모듈 기능을 통해 결제에 사용될 카드(30)의 카드정보를 전달한다.Additionally, the payment device 120 provides an interface module API so that the kernel server 100 can obtain information from the payment card 30 using the EMV L1 interface module function. Accordingly, the payment device 120 transmits card information of the card 30 to be used for payment through the interface module function of the EMV L1 standard according to the interface module API call command received from the kernel server 100.

발명의 양상에 따라서는 결제장치(120)가 커널 기능 중 거래 가능한 커널을 선택하는 기능을 실행할 수 있다Depending on the aspect of the invention, the payment device 120 may execute a function of selecting a tradable kernel among kernel functions.

도 3은 본 발명의 커널 서버의 블록도이다. 도 3에 도시된 바와 같이, 커널 서버(100)는 커널부(101)와, 장치 연동부(103)와, 로직 제어부(105)를 포함할 수 있다.Figure 3 is a block diagram of the kernel server of the present invention. As shown in FIG. 3, the kernel server 100 may include a kernel unit 101, a device interlocking unit 103, and a logic control unit 105.

커널부(101)는 EMV 규격(EMV Specification)의 Part II, Part III, Part IV에 대응되는 기능이 구현되어 신용카드로부터 카드정보를 읽고 신용카드의 유효성을 검증하는 기능 등을 포함하는 소프트웨어 모듈인 어플리케이션 커널을 실행하여 커널 기능을 제공한다. 커널부(101)는 EMV 카드의 접촉방식, 결제 프로세스 등에 따라 복수 개의 EMV 어플리케이션 커널 기능을 제공할 수 있다.The kernel unit 101 is a software module that implements functions corresponding to Part II, Part III, and Part IV of the EMV Specification and includes functions to read card information from a credit card and verify the validity of the credit card. It runs the application kernel and provides kernel functions. The kernel unit 101 may provide a plurality of EMV application kernel functions according to the EMV card contact method, payment process, etc.

또한, 커널부(101)는 결제장치(120)가 커널 기능을 이용할 수 있도록 커널 API를 제공한다. Additionally, the kernel unit 101 provides a kernel API so that the payment device 120 can use kernel functions.

장치 연동부(103)는 네트워크 장치를 포함하여 네트워크 특히 IP 네트워크를 통해 결제장치(120)와 통신한다. 장치 연동부(103)는 접속된 결제장치(120)로부터 커널 API 호출 명령을 수신하여 커널부(101)로 전달한다.The device interconnection unit 103 communicates with the payment device 120 through a network, particularly an IP network, including a network device. The device interlocking unit 103 receives a kernel API call command from the connected payment device 120 and transmits it to the kernel unit 101.

접속된 결제장치(120)가 결제 처리를 위하여 호출한 커널 API에 의해 시작된 어플리케이션 커널 서비스가 결제장치(120)에 의해 결제에 사용될 카드로부터 정보를 획득하기 위하여 결제장치(120)로 전달하여야 하는 일련의 명령어(APDU 명령)들을 장치 연동부(103)가 결제장치(120)가 제공하는 인터페이스 모듈 API를 통해 호출한다.The application kernel service started by the kernel API called by the connected payment device 120 for payment processing is a series that must be transmitted to the payment device 120 in order to obtain information from the card to be used for payment by the payment device 120. The device interlocking unit 103 calls the commands (APDU commands) through the interface module API provided by the payment device 120.

장치 연동부(103)와 결제장치(120)는 TCP/IP 프로토콜을 이용하여 접속할 수 있으며, 웹 소켓(Websocket) 프로토콜을 이용한 접속일 수 있다. 다만, 이에 제한되는 것은 아니며 IP 네트워크 상에서 동작하는 다양한 접속 프로토콜을 사용할 수 있다.The device interconnection unit 103 and the payment device 120 may be connected using the TCP/IP protocol, or may be connected using the Websocket protocol. However, it is not limited to this and various connection protocols operating on an IP network can be used.

추가적으로, 장치 연동부(103)는 커널 서버(100)와 결제장치(120) 사이에 주고 받는 모든 데이터를 암호화할 수 있다. 커널 서버(100)와 결제장치(120)는 결제 거래마다 공개키 암호화 방식으로 암복호화 키를 교환하거나 암복호화 키 생성 데이터를 교환할 수 있다.Additionally, the device interlocking unit 103 can encrypt all data exchanged between the kernel server 100 and the payment device 120. The kernel server 100 and the payment device 120 may exchange encryption and decryption keys or exchange encryption and decryption key generation data using public key encryption for each payment transaction.

로직 제어부(105)는 어플리케이션 커널의 실행을 제어하고, 인터페이스 모듈 API 호출을 결제 처리 로직에 따라 제어한다. 로직 제어부(105)는 결제장치(120)로부터 결제 처리의 시작에 대한 커널 API가 호출되면, 결제에 사용될 카드가 지원하는 어플리케이션 커널의 리스트를 획득하여 거래 가능한 어플리케이션 커널을 결정한 후 해당 어플리케이션 커널을 실행한다. 따라서, 로직 제어부(105)는 실행할 어플리케이션 커널을 결정하기 위하여 인터페이스 모듈 API 호출 명령을 호출하여 결제장치(120)를 통해 결제에 사용될 카드로부터 정보를 획득한다. 로직 제어부(105)는 또한 어플리케이션 커널이 결정되면 결정된 커널에 따라 결제 처리 로직에 필요한 인터페이스 모듈 API 호출 명령을 구성하여 장치 연동부(103)를 통해 결제장치(120)로 전송하고 그 응답을 수신한다. 로직 제어부(105)는 수신된 응답에 따라 커널의 실행을 제어한다.The logic control unit 105 controls execution of the application kernel and controls interface module API calls according to payment processing logic. When the kernel API for the start of payment processing is called from the payment device 120, the logic control unit 105 obtains a list of application kernels supported by the card to be used for payment, determines an application kernel that can be traded, and then executes the corresponding application kernel. do. Accordingly, the logic control unit 105 obtains information from the card to be used for payment through the payment device 120 by calling an interface module API call command to determine the application kernel to be executed. When the application kernel is determined, the logic control unit 105 also configures the interface module API call command required for the payment processing logic according to the determined kernel, transmits it to the payment device 120 through the device interlocking unit 103, and receives the response. . The logic control unit 105 controls execution of the kernel according to the received response.

즉, 로직 제어부(105)는 결제에 사용될 카드의 종류 및 카드가 지원하는 어플리케이션에 따라 서버에 저장된 EMV 어플리케이션 커널 중에서 거래에 사용할 커널을 선택한다. 이 선택을 위하여 로직 제어부(105)는 카드로부터 특정한 정보를 획득하여야 하고, 이를 위하여 결제장치(120)의 인터페이스 모듈 API를 호출한다. 로직 제어부(105)는 거래에 사용할 어플리케이션 커널을 선택한 후에도 카드로부터 결제 승인에 필요한 정보를 가져와야 하므로 이러한 정보를 획득하기 위하여 결제장치(120)의 인터페이스 모듈 API를 호출한다. 즉, 로직 제어부(105)는 결제장치(120)가 제공하는 인터페이스 모듈 API 호출 명령을 결제 로직에 따라 구성하고 전달하여 접속된 결제장치(120)로부터 결제에 사용될 카드의 카드정보를 획득하여 어플리케이션 커널의 실행을 제어한다.That is, the logic control unit 105 selects the kernel to be used for the transaction from among the EMV application kernels stored in the server according to the type of card to be used for payment and the application supported by the card. For this selection, the logic control unit 105 must obtain specific information from the card, and for this purpose, it calls the interface module API of the payment device 120. Since the logic control unit 105 must retrieve information necessary for payment approval from the card even after selecting the application kernel to be used for the transaction, it calls the interface module API of the payment device 120 to obtain such information. That is, the logic control unit 105 configures and transmits the interface module API call command provided by the payment device 120 according to the payment logic, obtains card information of the card to be used for payment from the connected payment device 120, and sends it to the application kernel. Controls the execution of

도 4는 본 발명의 결제장치의 블록도이다. 도 4에 도시된 바와 같이, 결제장치(120)는 서버 연동부(123)와, 카드 리더부(125)와, 모듈 API부(121)를 포함할 수 있다.Figure 4 is a block diagram of the payment device of the present invention. As shown in FIG. 4, the payment device 120 may include a server interlocking unit 123, a card reader unit 125, and a module API unit 121.

서버 연동부(123)는 네트워크 장치를 포함하여 네트워크 특히 IP 네트워크를 통해 커널 서버(100)와 통신한다. 서버 연동부(123)와 커널 서버(100)는 TCP/IP 프로토콜을 이용하여 접속할 수 있으며, 웹 소켓 프로토콜을 이용한 접속일 수 있다. 다만, 이에 제한되는 것은 아니며 IP 네트워크 상에서 동작하는 다양한 접속 프로토콜을 사용할 수 있다. 서버 연동부(123)는 커널 서버(100)에 접속하여 커널 API 호출 명령을 전송한다. 추가적으로, 서버 연동부(123)는 커널 서버(100)와 주고 받는 모든 데이터를 암호화할 수 있다. 커널 서버(100)와 결제장치(120)는 결제 거래마다 공개키 암호화 방식으로 암복호화 키를 교환하거나 암복호화 키 생성 데이터를 교환할 수 있다.The server interlocking unit 123 includes network devices and communicates with the kernel server 100 through a network, particularly an IP network. The server interlocking unit 123 and the kernel server 100 may be connected using the TCP/IP protocol, or may be connected using the web socket protocol. However, it is not limited to this and various connection protocols operating on an IP network can be used. The server interlocking unit 123 connects to the kernel server 100 and transmits a kernel API call command. Additionally, the server interlocking unit 123 can encrypt all data exchanged with the kernel server 100. The kernel server 100 and the payment device 120 may exchange encryption and decryption keys or exchange encryption and decryption key generation data using public key encryption for each payment transaction.

서버 연동부(123)는 커널 서버(100)로부터 수신된 인터페이스 모듈 API 호출 명령에 따라 EMV L1 규격의 인터페이스 모듈 기능을 통해 결제에 사용될 카드의 카드정보를 전달한다.The server interlocking unit 123 transmits card information of the card to be used for payment through the interface module function of the EMV L1 standard according to the interface module API call command received from the kernel server 100.

서버 연동부(123)는 커널 서버(100)로부터 인터페이스 모듈 API 호출 명령을 수신하고 모듈 API부(121)를 통해 APDU 명령어 형태로 변환하여 카드 리더부(125)에 전달한다. 또한, 서버 연동부(123)는 카드 리더부(125)로부터 수신한 APDU 명령어에 대한 응답을 인터페이스 모듈 API 호출의 결과로 커널 서버(100)로 전달한다. 결제장치(120)의 종류 또는 구현 방식에 따라서는 서버 연동부(123)와 카드 리더부(125)는 시리얼 라인을 통해 통신(RS232, USB 등)할 수 있다. 이에 제한되는 것은 아니며 다른 예로 내부 버스를 통해 통신할 수도 있다.The server interlocking unit 123 receives an interface module API call command from the kernel server 100, converts it into an APDU command form through the module API unit 121, and transmits it to the card reader unit 125. Additionally, the server interlocking unit 123 transmits a response to the APDU command received from the card reader unit 125 to the kernel server 100 as a result of an interface module API call. Depending on the type or implementation method of the payment device 120, the server interlocking unit 123 and the card reader unit 125 may communicate through a serial line (RS232, USB, etc.). It is not limited to this, and as another example, communication may be performed through an internal bus.

카드 리더부(125)는 결제에 사용될 카드로부터 정보를 읽는다. 결제 미디어의 종류에 따라 카드 리더부(125)는 접촉식 또는 비접촉식으로 카드 정보를 읽을 수 있다.The card reader unit 125 reads information from the card to be used for payment. Depending on the type of payment media, the card reader unit 125 can read card information in a contact or non-contact manner.

모듈 API부(121)는 EMV L1 규격의 인터페이스 기능의 인터페이스 모듈 API를 제공한다. 즉, 모듈 API부(121) 커널 서버(100)가 EMV L1 인터페이스 모듈 기능을 이용하여 결제카드로부터 정보를 획득할 수 있도록 인터페이스 모듈 API를 제공한다. The module API unit 121 provides an interface module API with an interface function of the EMV L1 standard. That is, the module API unit 121 provides an interface module API so that the kernel server 100 can obtain information from the payment card using the EMV L1 interface module function.

발명의 추가적 양상에 따르면, 커널 서버(100)는 승인 처리부(107)를 더 포함할 수 있다.According to a further aspect of the invention, the kernel server 100 may further include an authorization processing unit 107.

종래의 결제장치에서 수행하던 승인요청을 어플리케이션 커널이 탑재된 커널 서버(100)의 승인 처리부(107)에서 요청한다. 커널 서버(100)의 승인 처리부(107)는 VAN 서버(20)로 거래에 대한 승인요청 정보를 전달하고 승인번호를 획득한다. 커널 서버(100)의 승인 처리부(107)는 획득한 승인번호를 결제장치(120)로 전송하여 결제 처리가 완료될 수 있도록 한다.The approval request performed by the conventional payment device is requested from the approval processing unit 107 of the kernel server 100 equipped with the application kernel. The approval processing unit 107 of the kernel server 100 transmits approval request information for the transaction to the VAN server 20 and obtains an approval number. The approval processing unit 107 of the kernel server 100 transmits the obtained approval number to the payment device 120 so that payment processing can be completed.

이 양상에서는 국내 KTC 보안기준을 준수하기 위한 신용카드 정보의 암호화를 커널 서버(100)에서 수행할 수 있다. 이 경우 커널 서버(100)는 보안 모듈을 추가적으로 포함한다.In this aspect, encryption of credit card information to comply with domestic KTC security standards can be performed in the kernel server 100. In this case, the kernel server 100 additionally includes a security module.

발명의 추가적 양상에 따르면, 결제장치(120)는 승인 처리부(127)를 더 포함할 수 있다.According to a further aspect of the invention, the payment device 120 may further include an approval processing unit 127.

종래와 같이 결제장치에서 승인요청을 수행하는 것이며, 단지 어플리케이션 커널이 탑재된 커널 서버(100)로부터 카드정보를 수신하여야 한다. 결제장치(120)의 승인 처리부(127)는 VAN 서버(20)로 거래에 대한 승인요청 정보를 전달하고 승인번호를 획득한다. 결제장치(120)의 승인 처리부(127)는 획득한 승인번호에 따라 결제 처리가 완료될 수 있도록 한다.As in the past, the approval request is performed by the payment device, and card information must only be received from the kernel server 100 on which the application kernel is mounted. The approval processing unit 127 of the payment device 120 transmits approval request information for the transaction to the VAN server 20 and obtains an approval number. The approval processing unit 127 of the payment device 120 allows payment processing to be completed according to the obtained approval number.

이 양상에서는 국내 KTC 보안기준을 준수하기 위한 신용카드 정보의 암호화를 카드 리더부(125)에서 수행할 수 있다. 이 경우 카드 리더부(125)는 보안 모듈을 추가적으로 포함한다.In this aspect, encryption of credit card information to comply with domestic KTC security standards can be performed in the card reader unit 125. In this case, the card reader unit 125 additionally includes a security module.

본 발명의 추가적 양상에 따르면, API 기반 지불결제 시스템(10)은 단말관리 서버(140)를 더 포함할 수 있다.According to an additional aspect of the present invention, the API-based payment system 10 may further include a terminal management server 140.

단말관리 서버(140)는 결제장치(120)들의 인터페이스 모듈 API의 버전을 관리할 수 있고, 이들 장치들의 상태를 모니터링할 수 있다.The terminal management server 140 can manage the version of the interface module API of the payment devices 120 and monitor the status of these devices.

도 5는 일 실시 예에 따른 본 발명의 커널 서버와 결제장치간 API 호출 절차를 도시한 절차도이다. 도 5에 도시된 절차도는 커널 서버(100)에서 인터페이스 모듈 API를 호출하여 전달하는 명령어의 흐름을 도시한 것으로 명령과 그에 대한 응답이 도시되어 있다. 커널 실행을 요청하는 API 호출 명령을 받은 커널 서버(100)는 결제 시스템 환경 선택(Select PSE) 명령을 결제장치(120)로 전송(S1000)한다. 결제 시스템 환경 선택 명령은 거래를 하기 위하여 우선적으로 카드의 정보 및 거래 환경을 획득하기 위한 명령으로 카드에 있는 정보를 가지고 결제를 진행하는지 결제장치(120)에 있는 정보를 가지고 진행하는지에 따라 구조가 바뀔 수도 있다. 결제장치(120)는 카드가 지원하는 어플리케이션 커널 리스트를 포함하는 응답을 전달(S1020)할 수 있다. 커널 서버(100)는 첫번째 리드 레코드(Read Record) 명령을 결제 장치로 전송(S1040)하여 결제 시스템 환경 선택 명령으로 획득하지 못한 카드가 지원하는 어플리케이션 커널 리스트 정보를 요청하고, 그 응답을 수신(S1060)한다. 커널 서버(100)는 결제 시스템 환경 선택 및 첫번째 리드 레코드 명령으로 획득한 정보를 이용하여 거래에 사용할 특정 어플리케이션 커널을 선택하는 명령인 AID 선택 명령을 결제장치(120)에 전송(S1080)하고 응답을 수신(S1100)한다. 커널 서버(100)는 거래 시작 명령(Get Processing Options, GPO)을 전송(S1120)하고, 결제장치(120)는 카드로부터 거래에 관련된 정보들을 읽어 응답으로 전송(S1140)한다. 커널 서버(100)는 이 응답을 분석하여 리드 레코드를 반복할 회수를 결정할 수 있다. 커널 서버(100)는 분석된 GPO 응답에 따라 적절한 수의 리드 레코드를 수행(S1160)하여 응답을 수신(S1180)하고, 제1 AC 생성 명령을 전송(S1200)하여 응답으로 카드사의 승인을 받기 위한 암호화 데이터를 가져온다(S1220). 이때 거래를 온라인으로 수행할 지 오프라인으로 수행할 지 결정하며, 응답으로 가져오는 암호화 데이터는 Track 정보, 개인정보, 발급정보를 포함한다. 커널 서버(100)는 제2 AC 생성 명령을 전송(S1240)하여 카드사 승인 완료 정보를 전달하고 응답을 수신(S1260)한다.Figure 5 is a procedure diagram illustrating an API call procedure between the kernel server and the payment device of the present invention according to an embodiment. The procedure diagram shown in FIG. 5 shows the flow of commands transmitted by calling the interface module API from the kernel server 100, and shows commands and responses. The kernel server 100, which has received an API call command requesting kernel execution, transmits a payment system environment selection (Select PSE) command to the payment device 120 (S1000). The payment system environment selection command is a command to first obtain card information and transaction environment in order to conduct a transaction, and has a structure depending on whether payment is made using the information in the card or the information in the payment device 120. It may change. The payment device 120 may transmit a response including a list of application kernels supported by the card (S1020). The kernel server 100 transmits the first Read Record command to the payment device (S1040), requests information on the application kernel list supported by the card that was not obtained with the payment system environment selection command, and receives the response (S1060) )do. The kernel server 100 uses the information obtained by selecting the payment system environment and the first lead record command to transmit an AID selection command, which is a command for selecting a specific application kernel to be used for a transaction, to the payment device 120 (S1080) and sends a response. Receive (S1100). The kernel server 100 transmits a transaction start command (Get Processing Options, GPO) (S1120), and the payment device 120 reads information related to the transaction from the card and transmits it in response (S1140). Kernel server 100 may analyze this response to determine the number of times to repeat the read record. The kernel server 100 performs an appropriate number of read records according to the analyzed GPO response (S1160), receives a response (S1180), and transmits a first AC creation command (S1200) to receive approval from the card company in response. Get encrypted data (S1220). At this time, it is decided whether to perform the transaction online or offline, and the encrypted data received in response includes track information, personal information, and issuance information. The kernel server 100 transmits a second AC creation command (S1240), delivers card company approval completion information, and receives a response (S1260).

도 5에 도시된 예는 어플리케이션 커널 기능이 전부 커널 서버(100)에 저장된 예이다.The example shown in FIG. 5 is an example in which all application kernel functions are stored in the kernel server 100.

도 6은 또 다른 실시 예에 따른 본 발명의 커널 서버와 결제장치간 API 호출 절차를 도시한 절차도이다. 도 6에 도시된 절차도는 어플리케이션 커널의 일부 기능이 결제장치(120)에서 실행되는 예에 대한 것으로, 어플리케이션 커널을 선택하는 커널 기능이 결제장치(120)에서 실행되고, 커널이 선택된 이후의 절차가 커널 서버(100)에서 실행된다. 커널 서버(100)는 커널 실행을 요청하는 API 호출 명령을 받으며, 결제장치(120)로 결제에 사용할 카드 커널 선택 요청 명령을 전송(S2000)한다. 결제장치(120)는 결제 시스템 환경 선택(Select PSE) 명령과 리드 레코드 명령과 AID 선택 명령과 관련한 커널 기능을 수행하여 카드가 지원하는 어플리케이션 커널들 중 결제장치(120)에서 거래가능한 커널을 선택(S2020)하고, 선택 결과를 커널 서버(100)에 응답으로 전송(S2040)한다. 커널 서버(100)는 거래 시작 명령(GPO)(S2060)과 리드 레코드 명령(S2100)과 제1 AC 생성 명령(S2140)과 제2 AC 생성 명령(S2180)을 결제 장치에 전송하여 각각의 응답(S2080, S2120, S2160, S2200)으로 카드 승인을 받기 위하여 필요한 데이터(암호화 데이터)를 가져온다.Figure 6 is a procedure diagram showing an API call procedure between the kernel server and the payment device of the present invention according to another embodiment. The procedure diagram shown in FIG. 6 is for an example in which some functions of the application kernel are executed in the payment device 120. The kernel function for selecting the application kernel is executed in the payment device 120, and the procedure after the kernel is selected. is executed in the kernel server 100. The kernel server 100 receives an API call command requesting execution of the kernel, and transmits a request command to select a card kernel to be used for payment to the payment device 120 (S2000). The payment device 120 performs kernel functions related to the payment system environment selection (Select PSE) command, read record command, and AID selection command to select a kernel that can be traded in the payment device 120 among the application kernels supported by the card ( S2020), and the selection result is transmitted to the kernel server 100 as a response (S2040). The kernel server 100 transmits a transaction start command (GPO) (S2060), a read record command (S2100), a first AC creation command (S2140), and a second AC creation command (S2180) to the payment device, and each response ( S2080, S2120, S2160, S2200) to retrieve the data (encrypted data) required to receive card approval.

본 발명에 의하면 결제장치(120)는 EMV L1 인증만 받으면 되고, EMV L2 인증은 커널 서버(100)만 받으면 되므로 커널 리비전으로 인하여 모든 결제장치(120)를 다시 인증받을 필요가 없어지게 된다.According to the present invention, the payment device 120 only needs to receive EMV L1 authentication, and only the kernel server 100 needs to receive EMV L2 authentication, so there is no need to re-authenticate all payment devices 120 due to kernel revision.

이상에서 본 발명을 첨부된 도면을 참조하는 실시 예들을 통해 설명하였지만 이에 한정되는 것은 아니며, 이들로부터 당업자라면 자명하게 도출할 수 있는 다양한 변형 예들을 포괄하도록 해석되어야 한다. 특허청구범위는 이러한 변형 예들을 포괄하도록 의도되었다.In the above, the present invention has been described through embodiments with reference to the accompanying drawings, but it is not limited thereto, and should be interpreted to encompass various modifications that can be easily derived by those skilled in the art. The claims are intended to cover these variations.

10 : 지불결제 시스템
100 : 커널 서버
101 : 커널부 103 : 장치 연동부
105 : 로직 제어부 107 : 승인 처리부
120 : 결제장치
121 : 모듈 API부 123 : 서버 연동부
125 : 카드 리더부 127 : 승인 처리부
140 : 단말관리 서버
20 : VAN 서버
30 : 카드
10: Payment system
100: Kernel server
101: Kernel unit 103: Device linkage unit
105: logic control unit 107: approval processing unit
120: Payment device
121: Module API unit 123: Server linkage unit
125: card reader unit 127: approval processing unit
140: terminal management server
20: VAN server
30: card

Claims (10)

네트워크를 통해 접속된 결제장치로부터 수신된 커널 API 호출 명령에 따라 EMV L2 규격의 어플리케이션 커널 기능을 제공하고, 결제장치가 제공하는 인터페이스 모듈 API 호출 명령을 통해 접속된 결제장치로부터 카드정보를 획득하는 커널 서버; 및
커널 서버로부터 수신된 인터페이스 모듈 API 호출 명령에 따라 EMV L1 규격의 인터페이스 모듈 기능을 통해 카드정보를 전달하는 결제장치;
를 포함하되,
커널 서버는 결제장치가 제공하는 EMV L1 규격의 인터페이스 모듈을 통해 결제에 사용될 카드가 지원하는 어플리케이션 커널의 리스트를 획득하여 거래할 어플리케이션 커널을 결정하고,
결제장치는 EMV L2 어플리케이션 커널을 포함하지 않아 커널 서버가 제공한 EMV L2 규격의 어플리케이션 커널 기능을 통해서 결제 처리를 수행하는 API 기반 지불결제 시스템.
A kernel that provides EMV L2 standard application kernel functions according to the kernel API call command received from the payment device connected through the network, and obtains card information from the connected payment device through the interface module API call command provided by the payment device. server; and
A payment device that transmits card information through the interface module function of the EMV L1 standard according to an interface module API call command received from the kernel server;
Including,
The kernel server obtains a list of application kernels supported by the card to be used for payment through the EMV L1 standard interface module provided by the payment device, and determines the application kernel to transact with.
The payment device does not include an EMV L2 application kernel, so it is an API-based payment system that performs payment processing through the application kernel function of the EMV L2 standard provided by the kernel server.
제 1 항에 있어서, 커널 서버는 :
EMV L2 규격의 어플리케이션 커널을 실행하고 커널 API를 제공하는 커널부와, 네트워크를 통해 접속된 결제장치로부터 커널 API 호출 명령을 수신하고 결제장치로 인터페이스 모듈 API를 호출하는 장치 연동부와, 실행할 어플리케이션 커널을 결정하고 결정된 커널에 따라 인터페이스 모듈 API 호출 명령을 구성하는 로직 제어부를 포함하는 API 기반 지불결제 시스템.
The method of claim 1, wherein the kernel server:
A kernel unit that runs an application kernel of the EMV L2 standard and provides a kernel API, a device linkage unit that receives a kernel API call command from a payment device connected through the network and calls the interface module API to the payment device, and an application kernel to be executed. An API-based payment system including a logic control unit that determines and configures an interface module API call command according to the determined kernel.
제 1 항에 있어서, 결제장치는 :
커널 서버에 접속하여 커널 API 호출 명령을 전송하고 커널 서버로부터 인터페이스 모듈 API 호출 명령을 수신하는 서버 연동부와, 카드로부터 정보를 읽는 카드 리더부와, EMV L1 규격의 인터페이스 기능의 인터페이스 모듈 API를 제공하는 모듈 API부를 포함하는 API 기반 지불결제 시스템.
According to claim 1, the payment device is:
Provides a server linkage unit that connects to the kernel server, transmits a kernel API call command, and receives an interface module API call command from the kernel server, a card reader unit that reads information from the card, and an interface module API with an interface function of the EMV L1 standard. An API-based payment system that includes a module API unit.
제 2 항에 있어서,
커널 서버는 VAN 서버로 거래에 대한 승인요청 정보를 전달하여 획득한 승인번호를 결제장치로 전송하는 승인 처리부를 더 포함하는 API 기반 지불결제 시스템.
According to claim 2,
The kernel server is an API-based payment system that further includes an approval processing unit that transmits the approval request information for the transaction to the VAN server and transmits the obtained approval number to the payment device.
제 3 항에 있어서,
결제장치는 커널 서버로부터 카드정보를 수신하여 승인요청 정보를 생성하고, 생성된 승인요청 정보를 VAN 서버로 전달하여 승인번호를 획득하는 승인 처리부를 더 포함하는 API 기반 지불결제 시스템.
According to claim 3,
The payment device is an API-based payment system that further includes an approval processing unit that receives card information from the kernel server, generates approval request information, and transmits the generated approval request information to the VAN server to obtain an approval number.
제 1 항에 있어서, 상기 시스템은 :
결제장치들의 인터페이스 모듈 API 버전을 관리하고, 모니터링하는 단말관리 서버;
를 더 포함하는 API 기반 지불결제 시스템.
2. The system of claim 1, wherein:
A terminal management server that manages and monitors the interface module API version of payment devices;
An API-based payment system that further includes.
삭제delete 삭제delete 커널 서버에 접속하여 커널 API 호출 명령을 전송하고 커널 서버로부터 인터페이스 모듈 API 호출 명령을 수신하는 서버 연동부;
카드로부터 정보를 읽는 카드리더부;
EMV L1 규격의 인터페이스 기능의 인터페이스 모듈 API를 제공하는 모듈 API부;
를 포함하되,
자체 EMV L2 어플리케이션을 포함하지 않아 커널 서버가 제공한 EMV L2 규격의 어플리케이션 커널 기능을 통해서 결제 처리를 수행하는 결제장치.
a server linkage unit that connects to the kernel server, transmits a kernel API call command, and receives an interface module API call command from the kernel server;
a card reader unit that reads information from the card;
A module API unit that provides an interface module API for the interface function of the EMV L1 standard;
Including,
A payment device that does not include its own EMV L2 application and performs payment processing through the application kernel function of the EMV L2 standard provided by the kernel server.
제 9 항에 있어서,
커널 서버로부터 카드정보를 수신하여 승인요청 정보를 생성하고, 생성된 승인요청 정보를 VAN 서버로 전달하여 승인번호를 획득하는 승인 처리부;
를 더 포함하는 결제장치.
According to clause 9,
An approval processing unit that receives card information from the kernel server, generates approval request information, and transmits the generated approval request information to the VAN server to obtain an approval number;
A payment device further comprising:
KR1020210026142A 2021-02-26 2021-02-26 Api based payment system KR102664041B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210026142A KR102664041B1 (en) 2021-02-26 2021-02-26 Api based payment system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210026142A KR102664041B1 (en) 2021-02-26 2021-02-26 Api based payment system

Publications (2)

Publication Number Publication Date
KR20220122029A KR20220122029A (en) 2022-09-02
KR102664041B1 true KR102664041B1 (en) 2024-05-08

Family

ID=83281005

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210026142A KR102664041B1 (en) 2021-02-26 2021-02-26 Api based payment system

Country Status (1)

Country Link
KR (1) KR102664041B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200201985A1 (en) * 2018-12-21 2020-06-25 Square, Inc. Point of sale (pos) systems and methods with dynamic kernel selection

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10535066B2 (en) * 2013-06-17 2020-01-14 Paypal, Inc. Systems and methods for securing pins during EMV chip and pin payments
KR20180085134A (en) * 2017-01-18 2018-07-26 엔에이치엔페이코 주식회사 Cloud pos payment system and method using the same
US11651369B2 (en) * 2018-07-12 2023-05-16 American Express Travel Related Services Company, Inc. Remote EMV payment applications

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200201985A1 (en) * 2018-12-21 2020-06-25 Square, Inc. Point of sale (pos) systems and methods with dynamic kernel selection

Also Published As

Publication number Publication date
KR20220122029A (en) 2022-09-02

Similar Documents

Publication Publication Date Title
US8548924B2 (en) Self-authorizing token
US11687755B2 (en) System and apparatus for encrypted data collection using RFID cards
US20130024383A1 (en) Mobile Device With Secure Element
AU2017204649A1 (en) Systems and methods for authorizing a transaction with an unexpected cryptogram
CN109564659B (en) Sharing data with a card issuer via a wallet application in a payment-enabled mobile device
JP2005525831A (en) System and method for secure entry and authentication of consumer-centric information
US20210406869A1 (en) Methods, systems and computer program products for modifying contactless payment card configurations
CN111476574A (en) Novel security IC card and authentication system and method
CN106910070A (en) Exempt from close offline electronic payment method with what visible light communication and barcode scanning were recognized
WO2019125634A1 (en) Authentication of goods
WO2011082078A2 (en) Configuration of issued dynamic device
EP3935595A1 (en) User verification for credential device
KR102664041B1 (en) Api based payment system
CN1845184B (en) Intelligent key apparatus with electronic purse function
JP7318042B2 (en) Terminal type identification in interaction processing
KR101103189B1 (en) System and Method for Issueing Public Certificate of Attestation using USIM Information and Recording Medium
US20220318797A1 (en) System and method for secure and contactless fund transfer in open and closed loop transactions
US20230298019A1 (en) Systems, Methods and Computer Program Products for Secure Contactless Payment Transactions
KR20090073063A (en) System for non-face banking process using affiliated ic card
KR20090002006A (en) Method and system for non-face banking process using affiliated ic card and program recording medium
KR20200020442A (en) Card settlement system, server and method that allows to set the payment amount
KR20060027890A (en) The electronic settlement system using electronic money and method thereof
KR20100103253A (en) Method for providing financial service by using ic card program recording medium and financial terminal
KR20090002005A (en) System and method for non faced financial transaction by using ic card and program recording medium

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant