KR20220030762A - Data loss protection method and apparatus for payment information - Google Patents

Data loss protection method and apparatus for payment information Download PDF

Info

Publication number
KR20220030762A
KR20220030762A KR1020200112472A KR20200112472A KR20220030762A KR 20220030762 A KR20220030762 A KR 20220030762A KR 1020200112472 A KR1020200112472 A KR 1020200112472A KR 20200112472 A KR20200112472 A KR 20200112472A KR 20220030762 A KR20220030762 A KR 20220030762A
Authority
KR
South Korea
Prior art keywords
payment
server
information
payment request
full
Prior art date
Application number
KR1020200112472A
Other languages
Korean (ko)
Other versions
KR102414428B1 (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 KR1020200112472A priority Critical patent/KR102414428B1/en
Publication of KR20220030762A publication Critical patent/KR20220030762A/en
Application granted granted Critical
Publication of KR102414428B1 publication Critical patent/KR102414428B1/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/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/02Reservations, e.g. for tickets, services or events
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • G06Q20/145Payments according to the detected use or quantity
    • 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

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Computer Security & Cryptography (AREA)
  • Tourism & Hospitality (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Operations Research (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Marketing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Cash Registers Or Receiving Machines (AREA)

Abstract

One aspect of the present invention discloses a method for preventing loss of payment information in a first server. The method for preventing loss of payment information in a first server includes: acquiring a payment request message related to payment; and receiving a payment completion response from a third server, in which the third server includes a server related to payment or a mediation device connected to the server related to payment wired or wirelessly, by requesting the payment request message to the third server, wherein the receiving of the payment completion response includes repeatedly attempting to transmit the payment request message to a memory in a state where the payment request message is stored in at least one area while creating a new thread for the payment request message in response to an absence of the payment completion response, by applying a timeout rule to prevent loss of the payment request message. According to the present invention, it is possible to prevent damages due to payment to customers and service providers.

Description

결제 정보 유실 방지 방법 및 장치{DATA LOSS PROTECTION METHOD AND APPARATUS FOR PAYMENT INFORMATION}Method and device for preventing loss of payment information

본 발명은 결제 정보 유실 방지 방법에 관한 것으로, 보다 상세하게는, 주유와 관련된 결제 전문의 정보를 잃지 않고 보유하는 방법에 관한 것이다. The present invention relates to a method for preventing loss of payment information, and more particularly, to a method of retaining information related to refueling without losing payment information.

최근 신용카드 결제, 쿠폰을 통한 결제, 포인트를 통한 결제 및 현금 결제 등 사용자 입장에서 다양한 결제 방식이 도입되면서, 결제 정보의 관리가 매우 중요해졌다. 특히, 인터넷을 통한 예약 주문 후, 실제 매장을 방문하여 예약했던 주문을 처리함에 있어서, 결제 금액이 변경되는 등의 상황에서 결제 정보가 유실되어 고객, 카드사 또는 다른 서비스 업체가 그 손해를 흡수해야 한다면, 부당하게 손해를 입게되는 것이기에 문제가 될 수 있다. Recently, as various payment methods such as credit card payment, payment through coupon, payment through points, and cash payment have been introduced from the user's point of view, management of payment information has become very important. In particular, if payment information is lost in a situation such as a change in the payment amount in the process of visiting an actual store after a reservation order through the Internet, and the customer, credit card company, or other service company must absorb the damage , which can be problematic because it is unfairly damaged.

특히, 신용카드를 통한 결제 절차 중, 결제 전문 요청 및 결제 승인이 이루어지고 있는 상황에서 일시적 통신 장애 등의 이유로 전송이 제대로 이루어지지 않으면, 고객은 결제를 하였으나, 상점 또는 서비스 업체 입장에서는 그 결과를 알 수 없는 경우가 발생한다. 이러한 경우, 상품 또는 서비스를 구매한 고객으로부터 강력한 민원이 발생하게 되는 문제점이 있다. In particular, during the payment process through a credit card, if the transmission is not performed properly due to a temporary communication failure, etc. in a situation where a specialized payment request and payment approval are being made, the customer made the payment, but the store or service provider does not know the result Unknown cases occur. In this case, there is a problem in that strong complaints arise from customers who have purchased the product or service.

상술한 문제점을 해결하기 위한 본 발명의 일 양태에 따른 목적은 결제와 관련된 데이터를 타임아웃 룰(timeout rule)에 기반하여 이중화하여 관리함으로써 유실에 강인한 결제 정보 유실 방지 방법을 제공하는 것이다. An object of the present invention for solving the above problems is to provide a method for preventing loss of payment information that is robust against loss by duplicating and managing payment-related data based on a timeout rule.

상기한 목적을 달성하기 위한 본 발명의 일 양태에 따른, 제 1 서버에서의 결제 정보 유실 방지 방법은, 결제와 관련된 결제 요청 전문을 획득하는 단계 및 상기 결제 요청 전문을 제 3 서버 - 상기 제 3 서버는 결제와 관련된 서버 또는 상기 결제와 관련된 서버와 무선 또는 유선으로 연결된 매개 장치를 포함함 - 로 요청하여 상기 제 3 서버로부터 결제 완료 응답을 수신하는 단계를 포함하되, 상기 결제 완료 응답을 수신하는 단계는, 상기 결제 요청 전문의 유실 방지를 위해, 타임아웃 룰(timeout rule)을 적용함에 의해, 상기 결제 완료 응답이 없음에 대응하여 상기 결제 요청 전문을 위한 신규 쓰레드(thread)를 생성하면서 메모리에 적어도 일 영역에 상기 결제 요청 전문이 저장된 상태로 상기 결제 요청 전문의 전송을 반복 시도하는 단계를 포함할 수 있다.According to an aspect of the present invention for achieving the above object, a method for preventing loss of payment information in a first server includes the steps of obtaining a payment request related to payment and transferring the payment request message to a third server - the third The server includes a server related to payment or an intermediary device connected wirelessly or wired to a server related to the payment, including the step of receiving a payment completion response from the third server by requesting, receiving the payment completion response In the step, in order to prevent the loss of the full text of the payment request, by applying a timeout rule, a new thread for the full payment request message is created in response to no response to the payment completion in the memory. The method may include repeatedly attempting to transmit the payment request message while the payment request message is stored in at least one area.

상기 결제 완료 응답을 수신하는 단계는, 제 1 스레드를 생성함에 의해 메모리의 제 1 영역에 상기 결제 요청 전문을 저장하고 제 3 서버로 결제 요청 전문을 전송하는 단계를 포함하고, 상기 결제 요청 전문의 전송시 타임아웃 룰이 적용되면, 제 2 스레드를 생성하면서 상기 메모리의 제 2 영역에 상기 결제 요청 전문을 저장할 수 있다.Receiving the payment completion response includes storing the payment request full text in a first area of a memory by creating a first thread and transmitting the payment request full text to a third server, If the timeout rule is applied during transmission, the full payment request may be stored in the second area of the memory while creating a second thread.

상기 타임아웃 룰은 상기 결제 요청 전문을 적어도 1회 전송한 이후 기준 시간동안 상기 결제 완료 응답이 수신되지 않음에 대응하여 적용되며, 상기 제 2 쓰레드를 생성하면서 상기 타임아웃 룰이 리셋(reset)되어 적용될 수 있다.The timeout rule is applied in response to not receiving the payment completion response for a reference time after transmitting the full payment request at least once, and the timeout rule is reset while creating the second thread can be applied.

상기 타임아웃 룰의 적용에 응답하여, 상기 제 2 스레드의 생성과 상기 메모리의 제 2 영역으로 기저장된 결제 요청 전문 정보를 이동함과 동시에, 상기 제 1 스레드 및 상기 메모리의 제 1 영역의 상기 기저장된 결제 요청 전문 정보를 삭제할 수 있다.In response to the application of the timeout rule, the second thread is created and the pre-stored payment request full text information is moved to the second area of the memory, and the first thread and the group of the first area of the memory are simultaneously moved. You can delete the stored full payment request information.

상기 결제 요청 전문은 예약 주문과 관련된 제 1 결제 요청 전문 및 상기 예약 주문에 대응하여 발생된 실제 액션의 완료에 의해 생성되는 제 2 결제 요청 전문 중 적어도 하나를 포함할 수 있다.The full payment request may include at least one of a first full payment request related to the reservation order and a second payment request full text generated by completing an actual action generated in response to the reservation order.

상기 방법은, 제 2 서버로부터 클라이언트로부터의 주문 정보를 수신하는 단계(상기 주문 정보는 주문 정보에 따른 제 1 결제 요청 전문을 포함함) 및 상기 제 3 서버로 상기 주문 정보에 대한 승인을 요청하는 단계를 더 포함하되, 상기 주문 정보의 유실을 방지하기 위해, 상기 주문 정보에 대해 타임아웃 룰이 적용될 수 있다.The method includes the steps of receiving order information from a client from a second server (the order information includes a full first payment request according to the order information) and requesting approval for the order information from the third server The method may further include, but in order to prevent loss of the order information, a timeout rule may be applied to the order information.

상기 방법은, 상기 주문 정보에 대한 승인에 응답하여, 액션 완료 정보를 획득하는 단계(상기 액션 완료 정보는 상기 주문 정보에 대응하는 실제 액션의 완료에 의해 생성되는 정보임), 상기 액션 완료 정보에 대응하는 액션 완료 전문을 제 3 서버로부터 획득하는 단계, 상기 액션 완료 전문을 기반으로 제 2 결제 요청 전문을 상기 제 2 서버로 요청하여 획득하는 단계 및 상기 제 2 결제 요청 전문의 승인을 상기 제 3 서버로 요청하는 단계를 더 포함하되, 상기 제 2 결제 요청 전문의 승인시 타임아웃 룰이 적용될 수 있다.The method includes, in response to approval of the order information, obtaining action completion information (the action completion information is information generated by the completion of an actual action corresponding to the order information), in the action completion information Obtaining a corresponding action completion message from a third server, requesting and obtaining a second payment request full text from the second server based on the action completion message, and obtaining approval of the second payment request full text from the third The method may further include a request to the server, but a timeout rule may be applied upon approval of the second payment request full text.

상기 주문 정보는 주유와 관련된 예약 주문 정보를 포함하며, 상기 액션 완료 정보는 예약 주문에 따른 실제 주유 액션의 완료에 의해 생성된 주유 완료 정보를 포함할 수 있다.The order information may include reservation order information related to refueling, and the action completion information may include refueling completion information generated by completion of an actual refueling action according to the reservation order.

상기 제 2 결제 요청 전문은 전표번호, 상기 주문 정보에 대응하는 실제 액션이 이루어지는 제 1 장치의 식별 정보, 상기 주문 정보에 대응하는 상품 번호, 결제 금액 및 매장 코드, 단말기 코드, 거래 일련 번호 및 할인 혜택에 관한 정보 중 적어도 둘을 포함할 수 있다.The full text of the second payment request includes a slip number, identification information of the first device in which an actual action corresponding to the order information is performed, a product number corresponding to the order information, payment amount and store code, terminal code, transaction serial number, and discount It may include at least two of the information about the benefit.

상기 방법은, 상기 주문 정보에 대한 승인에 응답하여 제 1 장치로 상기 주문 정보의 적어도 일부를 제공하는 단계(상기 제 1 장치는 상기 주문 정보에 대응하는 실제 액션이 이루어지는 대상 장치임) 및 상기 제 1 장치에서 상기 주문 정보에 대응하는 실제 액션이 이루어지도록 허여하는 단계를 더 포함하며, 상기 제 1 장치는 주유 장치일 수 있다.The method includes providing at least a portion of the order information to a first device in response to approval of the order information, wherein the first device is a target device on which an actual action corresponding to the order information is made; and The method further includes allowing a first device to perform an actual action corresponding to the order information, wherein the first device may be a refueling device.

상기한 목적을 달성하기 위한 본 발명의 다른 양태에 따른, 결제 정보 유실 방지를 위한 서버 장치는, 결제와 관련된 결제 요청 전문을 획득하고, 상기 결제 요청 전문을 제 3 서버 - 상기 제 3 서버는 결제와 관련된 서버 또는 상기 결제와 관련된 서버와 무선 또는 유선으로 연결된 매개 장치를 포함함 - 로 요청하여 상기 제 3 서버로부터 결제 완료 응답을 수신하는 프로세서 및 상기 프로세서의 동작과 관련된 명령어를 저장하는 메모리를 포함하되, 상기 프로세서는, 상기 결제 요청 전문의 유실 방지를 위해, 타임아웃 룰(timeout rule)을 적용함에 의해, 상기 결제 완료 응답이 없음에 대응하여 상기 결제 요청 전문을 위한 신규 쓰레드(thread)를 생성하면서 상기 메모리에 적어도 일 영역에 상기 결제 요청 전문이 저장된 상태로 상기 결제 요청 전문의 전송을 반복 시도할 수 있다.According to another aspect of the present invention for achieving the above object, a server device for preventing loss of payment information obtains a payment request full text related to payment, and a third server - the third server pays the payment request full text Including a server related to or an intermediate device connected to the server related to the payment by wire or wirelessly - including a processor for receiving a payment completion response from the third server by requesting to and a memory for storing instructions related to the operation of the processor However, in order to prevent the loss of the full text of the payment request, the processor creates a new thread for the full payment request in response to no response to the payment completion by applying a timeout rule While the payment request message is stored in at least one area in the memory, it is possible to repeatedly attempt to transmit the payment request message.

상기한 목적을 달성하기 위한 본 발명의 또 다른 양태에 따른, 결제 정보 유실 방지를 위한 시스템은, 결제와 관련된 결제 요청 전문을 제 2 서버로부터 획득하여, 상기 결제 요청 전문을 제 3 서버 - 상기 제 3 서버는 결제와 관련된 서버 또는 상기 결제와 관련된 서버와 무선 또는 유선으로 연결된 매개 장치를 포함함 - 로 요청하고 상기 제 3 서버로부터 결제 완료 응답을 수신하는 프록시 서버 및 상기 프록시 서버로 결제 요청 전문을 전송하는 제 2 서버를 포함하되, 상기 프록시 서버는, 상기 결제 요청 전문의 유실 방지를 위해, 타임아웃 룰(timeout rule)을 적용함에 의해, 상기 결제 완료 응답이 없음에 대응하여 상기 결제 요청 전문을 위한 신규 쓰레드(thread)를 생성하면서 메모리에 적어도 일 영역에 상기 결제 요청 전문이 저장된 상태로 상기 결제 요청 전문의 전송을 반복 시도할 수 있다.According to another aspect of the present invention for achieving the above object, a system for preventing loss of payment information obtains a payment request related to payment from a second server, and transmits the payment request message to a third server - the third server 3 server includes a payment-related server or an intermediate device connected to the payment-related server wirelessly or by wire - a proxy server for requesting and receiving a payment completion response from the third server and the proxy server a second server that transmits, wherein the proxy server transmits the full payment request in response to no payment completion response by applying a timeout rule to prevent loss of the full payment request message While creating a new thread for the payment request, transmission of the payment request message may be repeatedly attempted while the payment request message is stored in at least one area in the memory.

본 발명의 결제 정보 유실 방지 방법에 따르면, 결제 처리 중에 통신 등의 장애로 네트워크가 끊어지더라도 결제 정보를 안전하게 보유할 수 있어, 고객 및 서비스 업체에 결제에 따른 피해를 방지하는 효과가 있다. According to the payment information loss prevention method of the present invention, even if the network is cut off due to a communication failure during payment processing, payment information can be safely retained, thereby preventing damage to customers and service providers due to payment.

도 1a는 본 발명의 일 실시예에 따른 결제 정보 유실 방지 방법이 적용되는 시스템의 일부를 나타낸 개념도,
도 1b는 본 발명의 일 실시예에 따른 결제 정보 유실 방지 방법이 적용되는 시스템의 다른 일부를 나타낸 개념도,
도 2는 프록시 서버(proxy server)가 결제 정보를 외부 서버 측으로 전송하는 상황을 설명하기 위한 개념도,
도 3은 도 2의 상황에서 프록시 서버가 타임아웃 룰을 적용하여 결제 정보 유실을 방지하는 과정을 구체적으로 나타낸 상세흐름도,
도 4는 주유 완료 전문을 나타낸 도면,
도 5는 결제 요청 전문을 나타낸 도면,
도 6은 본 발명의 일 실시예에 따른 프록시 서버 장치의 구성을 나타낸 블록도이다.
1A is a conceptual diagram showing a part of a system to which a method for preventing loss of payment information according to an embodiment of the present invention is applied;
1b is a conceptual diagram showing another part of a system to which a method for preventing loss of payment information according to an embodiment of the present invention is applied;
2 is a conceptual diagram for explaining a situation in which a proxy server transmits payment information to an external server side;
3 is a detailed flowchart specifically illustrating a process in which a proxy server prevents loss of payment information by applying a timeout rule in the situation of FIG. 2;
4 is a view showing a full refueling completion message;
5 is a view showing a full payment request;
6 is a block diagram illustrating a configuration of a proxy server apparatus according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.Since the present invention can have various changes and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.However, this is not intended to limit the present invention to specific embodiments, and it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention.

제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first, second, etc. may be used to describe various elements, but the elements should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, a second component may also be referred to as a first component. and/or includes a combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When an element is referred to as being “connected” or “connected” to another element, it is understood that it may be directly connected or connected to the other element, but other elements may exist in between. it should be On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that the other element does not exist in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the accompanying drawings. In describing the present invention, in order to facilitate the overall understanding, the same reference numerals are used for the same components in the drawings, and duplicate descriptions of the same components are omitted.

본 명세서에서, 결제 정보 유실 방법이 주유소에서의 서비스를 기준으로 설명되어 있다고 하더라도, 다른 서비스(예를 들어, 인터넷 쇼핑몰, 드라이브 쓰루(DT: Drive Through) 등의 주문형 결제 서비스)에도 적용될 수 있음은 본 발명의 기술분야의 통상의 기술자에게는 자명한 것일 것이다. In this specification, even though the method of loss of payment information is described based on the service at the gas station, it can be applied to other services (eg, Internet shopping mall, on-demand payment service such as Drive Through (DT)). It will be apparent to those skilled in the art of the present invention.

본 명세서에 있어서, 예약 주유 서비스는 사용자가 주유를 하기 전에, 주유소와 주유량을 특정하여 예약 주문을 한 뒤, 사용자가 실제 주유소 매장 방문시 예약 주문과 관련된 정보(예를 들어, 주유소 내의 특정 주유기 번호)를 입력하면 주문된 내용에 따라 주유가 실행되는 서비스를 의미한다. 이때, 신용카드를 꺼내서 주유소 직원에게 제시하는 등의 별도의 결제를 위한 액션 없이 주유가 진행된다. 결제는 예약 주유 서비스에 미리 저장된 신용카드 정보를 기반으로 자동 처리가 되도록 한다. 해당 서비스는 애플리케이션(application)을 기반으로 사용자 단말과 통신함에 의해 수행된다. In the present specification, the reservation refueling service provides information related to a reservation order (eg, a specific gas station number in a gas station) when the user makes a reservation order by specifying a gas station and gas quantity before the user refuels, and then when the user actually visits a gas station store ) indicates a service that refuels according to the ordered contents. At this time, fueling is performed without an action for separate payment, such as taking out a credit card and presenting it to the gas station staff. Payment is automatically processed based on the credit card information stored in advance in the reservation gas service. The corresponding service is performed by communicating with a user terminal based on an application.

도 1a는 본 발명의 일 실시예에 따른 결제 정보 유실 방지 방법이 적용되는 시스템의 일부를 나타낸 개념도이다. 도 1a에 도시된 바와 같이, 본 발명의 일 실시예에 따른 결제 정보 유실 방지 시스템은 사용자 단말(110), 예약 주유 서비스 제공 서버 클러스터(110), 프록시 서버(120: proxy server), 주유소 장비(130), 주유 장치(140-1~140-3) 및 정유사 서버(150)를 포함할 수 있다. 이때, 주유소 현장에는 프록시 서버(120), 주유소 장비(130) 및 주유 장치(140-1~140-3)가 배치될 수 있다. 1A is a conceptual diagram illustrating a part of a system to which a method for preventing loss of payment information according to an embodiment of the present invention is applied. 1A, the payment information loss prevention system according to an embodiment of the present invention includes a user terminal 110, a reserved refueling service providing server cluster 110, a proxy server 120 (proxy server), and gas station equipment ( 130), refueling devices 140-1 to 140-3, and a refinery server 150 may be included. In this case, the proxy server 120 , the gas station equipment 130 , and the fueling devices 140 - 1 to 140 - 3 may be disposed at the gas station site.

도 1a를 참조하면, 사용자 단말(110)이 예약 주문을 해놓고 예약 주문했던 주유소에 방문하여, 예약 주유 서버스와 관련된 애플리케이션을 실행하면, 애플리케이션은 예약 주문했던 내용과 주유소 내의 주유 기기를 선택 입력하라는 사용자 인터페이스 화면이 표시된다. 사용자가 주유 장치(140-1)를 하나 특정하여 입력하면 예약 주유 서비스 제공 서버 클러스터(110)가 이와 관련된 결제 및 주유 실행을 위한 절차를 처리한다. Referring to FIG. 1A , when the user terminal 110 places a reservation order and visits a gas station that has placed a reservation order, and executes an application related to the reservation fueling server, the application is a user who asks to select and input the reservation order and the gas station in the gas station The interface screen is displayed. When the user specifies and inputs one refueling device 140 - 1 , the reserved refueling service providing server cluster 110 processes related payment and refueling procedures.

예약 주유 서비스 제공 서버 클러스터(110)는 예약 주유 서비스 제공 서버(112) 및 애플리케이션 서버(114)를 포함한다. 예약 주유 서비스 제공 서버(112)는 다수의 사용자들을 상대로 예약 주유 서비스를 제공하는 서버로, 해당 서비스에 가입되어 있는 개인 회원들의 개인 정보, 결제 정보, 관련 할인 정보(쿠폰, 포인트, 그밖의 회원 혜택 관련 정보) 뿐만 이니라, 주유소 회원사들의 매장 정보, 회사 정보, 결제 라인 정보 등을 데이터베이스에 저장하고 있다. 애플리케이션 서버(114)는 예약 주유 서비스와 관련된 애플리케이션을 유지, 보수 및 관리하는 서버이다. The reservation refueling service providing server cluster 110 includes a reservation refueling service providing server 112 and an application server 114 . The reservation refueling service providing server 112 is a server that provides a reservation refueling service to a plurality of users, and includes personal information, payment information, and related discount information (coupons, points, and other member benefits of individual members subscribed to the service). related information) as well as store information, company information, and payment line information of gas station member companies are stored in the database. The application server 114 is a server that maintains, repairs and manages applications related to the reservation refueling service.

사용자 단말(110)에 주유장치(140-1)의 번호(주유장치에는 스티커가 붙어 있어 대응하는 번호가 표시되어 있음)를 입력하면, 애플리케이션 서버(114)는 이를 수신하여 서버 통신을 통해 예약 주유 서비스 제공 서버(112)의 아크 서버(Ark server)로 제공한다. 예약 주유 서비스 제공 서버(112)의 아크 서버는 외부 인터페이스를 통해 주문 정보를 프록시 서버(120)로 전달한다. 이때, 주문 정보에는 주유소 매장 코드, 주유장치 노즐 번호, 상품정보(유종, 단가, 주유 리터 등) 및 결제 금액 정보 등이 포함될 수 있다. 주문 정보는 예약 주문 내용과 관련된, 결제 요청 전문 내용을 포함할 수 있다. When the user terminal 110 enters the number of the fueling device 140-1 (the fueling device has a sticker attached to it and a corresponding number is displayed), the application server 114 receives it and reserves fueling through server communication. It is provided as an Ark server of the service providing server 112 . The arc server of the reservation refueling service providing server 112 transmits order information to the proxy server 120 through an external interface. In this case, the order information may include a gas station store code, a fueling device nozzle number, product information (oil type, unit price, gas liter, etc.) and payment amount information. The order information may include a full payment request related to the pre-order content.

프록시 서버(120)는 주유소 현장에 배치된 서버이다. 이는 주유소에 배치된 컴퓨팅 장치에 데몬 툴(daemon tool)이 에뮬레이팅된(emulated) 형태로 존재할 수 있다. 해당 서버는 예약 주유 서비스 제공 서버(112)와 연동한다. 이는 예약 주유소 서비스 제공자가 회원 주유사에 설치하는 서버 또는 프로그램일 수 있다. The proxy server 120 is a server disposed at a gas station site. This may exist in a form in which a daemon tool is emulated in a computing device disposed at a gas station. The server interworks with the reservation refueling service providing server 112 . This may be a server or program that the reserved gas station service provider installs at the member gas companies.

프록시 서버(120)는 내부 통신을 위한 프록시 M 모듈과 외부 통신을 위한 베이스 프록시 모듈(base proxy module)을 포함할 수 있다. 프록시 M 모듈은 상기 외부 통신을 위한 베이스 프록시 모듈과 내부적으로 통신하여 정보를 송수신한다. 주문 정보가 프록시 서버(120)의 프록시 M 모듈에 전달되면, 프록시 M 모듈은 이를 베이스 프록시 모듈로 제공하고, 베이스 프록시 모듈은 이를 주유소 장비(130) 내의 허브 장치(134)를 매개로 정유사 서버(150)로 전달한다. The proxy server 120 may include a proxy M module for internal communication and a base proxy module for external communication. The proxy M module internally communicates with the base proxy module for the external communication to transmit and receive information. When the order information is transmitted to the proxy M module of the proxy server 120, the proxy M module provides it to the base proxy module, and the base proxy module sends it to the refinery server ( 150).

주유소 장비(130)는 POS 장치(132)와 허브 장치(134)를 포함한다. POS 장치(132)는 Point-Of-Sale 단말 장치로, 상품의 판매 정보를 입력하면 이를 처리하는 결제 관련 서버들로 전송하도록 되어 있는 단말 장치이다. 즉, 매장 전용 단말 장치이다. The gas station equipment 130 includes a POS device 132 and a hub device 134 . The POS device 132 is a point-of-sale terminal device, and is a terminal device configured to transmit product sales information to payment-related servers that process the input. That is, it is a store-only terminal device.

허브 장치(134)는 주유소 내부 및/또는 외부로의 통신을 위한 허브 장치로 공인망(public network)을 사용한다. 허브 장치(134)는 프록시 서버(120)와 정유사 서버(150)를 연결하는 역할을 수행한다. 다만, 허브 장치(134)가 공인망을 사용하기에 불시에 네트워크 장애가 발생하는 일이 가끔 일어나곤 한다. 결제 정보는 매우 중요한 정보이기에, 가끔씩 발생하는 장애에도 그 피해가 클 수 있다. 따라서, 사후에 네트워크 장애로 인해 발생된 결제 절차 상의 에러(error)를 복구하기 위해, 프록시 서버(120)는 결제와 관련된 정보를 유실되지 않게 보관할 필요가 있다. The hub device 134 uses a public network as a hub device for communication inside and/or outside the gas station. The hub device 134 serves to connect the proxy server 120 and the refinery server 150 . However, because the hub device 134 uses the public network, an unexpected network failure sometimes occurs. Since payment information is very important information, even occasional failures can cause great damage. Therefore, in order to recover an error in the payment procedure caused by a network failure afterward, the proxy server 120 needs to store payment-related information so that it is not lost.

결제 전문을 포함하는 주문 정보의 승인 과정에서, 프록시 서버(120)로부터 허브 장치(134)로 주문 정보가 전달되면, 허브 장치(134)는 이를 정유사 서버(150)로 제공하고, 정유사 서버(134)는 이에 대한 승인 처리를 수행한다. 도 2와 관련된 설명 부분에도 언급되지만, 주문 정보도 결제 요청 전문을 포함하는 중요한 정보이기에 타임아웃 룰에 따른 데이터 유실 방지 알고리즘이 적용된다. 즉, 프록시 서버(120)는 주문 정보를 메모리의 일 영역에 저장하고 나서, 허브 장치(134)로 전송하지만, 허브 장치(134)로부터 그에 대응하는 승인 정보를 수신하지 못하면, 타임아웃 룰에 입각하여 새로운 쓰레드를 생성하고, 이에 따라 메모리의 다른 영역으로 상기 주문 정보의 내용을 변경 저장하면서 해당 정보가 유실되지 않도록 제어한다.When order information is transmitted from the proxy server 120 to the hub device 134 during the approval process of order information including the full payment, the hub device 134 provides it to the refinery server 150 and the refinery server 134 . ) performs the approval process for this. Although it is also mentioned in the description related to FIG. 2 , the order information is also important information including the full payment request, so the data loss prevention algorithm according to the timeout rule is applied. That is, the proxy server 120 stores the order information in an area of the memory and then transmits it to the hub device 134 , but if it does not receive approval information corresponding thereto from the hub device 134 , the timeout rule is followed. Thus, a new thread is created, and accordingly, the contents of the order information are changed and stored in another area of the memory, and the corresponding information is controlled not to be lost.

결제 전문에 대한 정보 승인 절차가 완료되면, 정유사 서버(150)는 주문 확인 정보를 허브 장치(134)로 제공하고, 허브 장치(134)는 이를 프록시 서버(120)로 전달한다. 여기서, 정유사 서버(150)와 외부 결제 승인 절차에 대한 상세는 도 1b에 대한 설명에서 자세히 다루도록 한다. When the information approval procedure for the full payment is completed, the refinery server 150 provides order confirmation information to the hub device 134 , and the hub device 134 transmits it to the proxy server 120 . Here, the details of the refinery server 150 and the external payment approval procedure will be dealt with in detail in the description of FIG. 1B .

프록시 서버(120)는 주문 확인 정보를 프록시 M 모듈의 내부 통신을 통해 주유 장치(140-1~140-3)(주유 장치는 사용자 단말의 번호 입력시 입력된 번호의 주유장치에 대응되는 것이 바람직함)의 디스플레이 장비(DP)에 표시되도록 한다. 이때, 허브 장치(134)가 직접 (또는 프록시 서버(120)의 제어에 의해) 주유 장치(140-1~140-3)의 노즐로 정유소 서버(150)와의 통신 결과(프리셋 승인 결과)를 전송하여 노즐에서 주유를 위한 프리셋 세팅이 이루어지도록 할 수도 있다. 즉, 예약 주문에 따른 주유가 실행될 준비가 되도록 한다. The proxy server 120 transmits the order confirmation information to the refueling devices 140-1 to 140-3 (the refueling device preferably corresponds to the refueling device of the number entered when the user terminal number is input) through the internal communication of the proxy M module. ) to be displayed on the display device (DP). At this time, the hub device 134 directly (or under the control of the proxy server 120 ) transmits the communication result (preset approval result) with the refinery server 150 to the nozzles of the fueling devices 140-1 to 140-3. In this way, preset settings for refueling may be made in the nozzle. That is, the refueling according to the pre-order is ready to be executed.

한편, 주유 장치(140-1~140-3)는 디스플레이 장비 및/또는 스티커를 가지고 있어, 자신의 식별 정보 및 제어 정보를 표시할 수 있다. 주유 장치(140-1~140-3)는 (i) 허브 장치(134)와 직접, 및/또는 (ii) 허브 장치(134)를 경유하여 프록시 서버(120)와, 노즐 상태, 장치 제어 신호, 및 예약 주문 관련 프리셋 세팅 신호 등을 실시간으로 주고받을 수 있다.Meanwhile, the refueling devices 140-1 to 140-3 have display equipment and/or stickers, so that their identification information and control information can be displayed. The refueling devices 140-1 to 140-3 communicate with the proxy server 120 via (i) directly with the hub device 134, and/or (ii) via the hub device 134, nozzle status, and device control signals. , and a preset setting signal related to a reservation order can be exchanged in real time.

프리셋 세팅에 따라 주유 실행 준비가 되면, 주유소 직원 또는 셀프 주유의 경우 사용자가 직접, 주유소의 디스플레이 장치 또는 다른 기설정된 통신장비의 표시를 보고, 주유를 개시한다. 그리고는, 주유가 완료되면, 주유 완료에 따른 결제가 이루어지도록 처리한다. 주유 완료 후의 결제 처리는 도 1b를 통해 보다 상세히 설명한다. When refueling is ready according to the preset setting, a gas station employee or a user directly in the case of self refueling sees the display of the gas station display device or other preset communication equipment and starts refueling. Then, when refueling is completed, payment is processed according to the refueling completion. Payment processing after refueling will be described in more detail with reference to FIG. 1B .

도 1b는 본 발명의 일 실시예에 따른 결제 정보 유실 방지 방법이 적용되는 시스템의 다른 일부를 나타낸 개념도이다. 1B is a conceptual diagram illustrating another part of a system to which a method for preventing loss of payment information according to an embodiment of the present invention is applied.

도 1b를 참조하면, 정유사 서버(150)는 휘발유, 경유를 제조하고 판매하는 회사의 주유 관리 서버일 수 있다. 정유사 서버(150)는 주유소 회원과 주유 고객 회원을 관리한다. 정유사 서버(150)는 주유와 관련된 결제, 쿠폰, 포인트 등에 대한 정보를 취급하며, 허브 장치(134)를 통해 프록시 서버(130)와 통신하고, VAN 서버(160) 및 예약 주유 서비스 제공 서버(112)와도 직접 통신할 수 있다. 정유사 서버(150)와 예약 주유 서비스 제공 서버(112)는 전용선을 연결되어 주기적으로 더미전문을 송수신한다. 이를 통해 결제 전문을 예약 주유 서비스 제공 서버(112)로부터 직접 수신할 수도 있다. 프록시 서버(120)를 통한 수신과 예약 주유 서비스 제공 서버(112)를 통한 수신을 포함하는 이중 수신도 가능하다. 이는 결제 정보를 보다 정확하게 맞춰보기 위함이다. 서버(110)와 정유사 서버(150) 간의 주기적인 정보 송수신을 통해 둘 간의 연결상태 정상 여부도 주기적으로 모니터링할 수 있다. 이는 기설정된 정책 기반으로 수행된다. Referring to FIG. 1B , the refinery server 150 may be a fueling management server of a company that manufactures and sells gasoline and diesel. The refinery server 150 manages gas station members and fueling customer members. The refinery server 150 handles information on payment, coupons, points, etc. related to refueling, communicates with the proxy server 130 through the hub device 134 , and the VAN server 160 and reservation refueling service providing server 112 . ) can also be communicated directly with The refinery server 150 and the reserved refueling service providing server 112 are connected through a dedicated line to periodically transmit and receive dummy messages. Through this, the payment message may be directly received from the reservation refueling service providing server 112 . Dual reception including reception through the proxy server 120 and reception through the reserved refueling service providing server 112 is also possible. This is to match payment information more accurately. Through periodic information transmission/reception between the server 110 and the refinery server 150, it is also possible to periodically monitor whether the connection state between the two is normal. This is performed based on a preset policy.

앞서 도 1a의 실시예 중 프록시 서버(120)로부터 전달되는 주문 정보의 승인 과정에서, 정유사 서버(150)는 허브 장치(134)를 통해 프록시 서버(120)로부터 주문 정보를 수신한다. 앞서 설명한 바와 같이, 상기 주문 정보에는 결제 요청 전문이 포함되어 있을 수 있다. In the process of approval of order information transmitted from the proxy server 120 in the embodiment of FIG. 1A , the refinery server 150 receives the order information from the proxy server 120 through the hub device 134 . As described above, the order information may include a full payment request.

정유사 서버(150)가 결제 요청 전문이 포함된 주문 정보를 수신하면, VAN 서버(160)로 해당 결제 전문 내용을 전송하고, 이에 대한 승인을 받을 수 있다. When the refinery server 150 receives the order information including the full payment request, it may transmit the corresponding payment full text to the VAN server 160 and receive approval.

VAN 서버(160)는 카트 가맹점과 카드사를 연계해주는 회사의 결제 관리 서버이다. VAN 서버(160)는 제휴하고 있는 카드사의 서버와 통신하여 주문 정보와 연관된 신용카드의 결제를 승인받을 수 있다. 그리고는, 승인 정보를 다시 정유사 서버(150)로 제공함으로써 예약 주문에 대한 승인이 이루어질 수 있다. 이후 주유 완료까지의 과정은 다시 도 1a의 실시예를 참고하면 된다.The VAN server 160 is a payment management server of the company that links the cart merchant and the card company. The VAN server 160 may communicate with a server of an affiliated card company to receive approval for payment of a credit card related to order information. Then, the reservation order may be approved by providing the approval information to the refinery server 150 again. Thereafter, the process up to the completion of refueling may refer to the embodiment of FIG. 1A again.

그리고, 주유 완료 후의 결제 절차를 살펴보면, 다음과 같은 처리 과정으로 진행된다. 주유 장치(140-1~140-3)에서 주유 액션의 완료를 확인하면, 주유 완료에 따른 기본 정보를 프록시 서버(120)로 제공한다. 여기에는, 예약 주문 식별 정보, 주유 장치(140-1~140-3)의 식별 정보, 주유 금액 정보 중 적어도 하나가 포함될 수 있다. And, looking at the payment procedure after refueling is completed, the following processing is performed. When the refueling devices 140 - 1 to 140 - 3 confirm the completion of the refueling action, basic information according to the refueling completion is provided to the proxy server 120 . This may include at least one of reservation order identification information, identification information of the fueling devices 140-1 to 140-3, and fueling amount information.

프록시 서버(120)는 해당 정보를 허브 장치(134)를 거쳐 정유사 서버(150)로 제공하고, 정유사 서버(150)는 이를 주유 완료 전문 형태로 생성하여 VAN 서버(160)로 제공한다. 그리고는, 주유 완료 전문에 대한 승인을 받는다. 주유 완료 전문에 포함되는 내용은 도 4를 통해 보다 상세히 설명한다. The proxy server 120 provides the corresponding information to the refinery server 150 via the hub device 134 , and the refinery server 150 generates it in the form of a complete refueling message and provides it to the VAN server 160 . Then, approval is obtained for the complete refueling. The content included in the full refueling will be described in more detail with reference to FIG. 4 .

정유사 서버(150)가 주유 완료 전문에 대한 승인을 받고 나면, 이를 프록시 서버(150)로 제공하고 프록시 서버(150)는 이를 기반으로 주유 완료에 따른 결제 요청 전문을 예약 주유 서비스 제공 서버(112)와 연동하여 처리한다. 결제 요청 전문의 처리 과정은 도 2를 통해 보다 상세히 설명한다. After the refiner server 150 receives approval for the complete refueling message, it is provided to the proxy server 150, and the proxy server 150 reserves the full payment request according to the refueling completion server 112 based on this. processed in conjunction with The processing process of the full payment request will be described in more detail with reference to FIG. 2 .

도 2는 프록시 서버(proxy server)가 결제 정보를 외부 서버 측으로 전송하는 상황을 설명하기 위한 개념도이다. 2 is a conceptual diagram for explaining a situation in which a proxy server transmits payment information to an external server.

도 2를 참조하면, 정유사 서버(150)로부터 쥬유 완료 전문의 승인을 받고 나면, 프록시 서버(120)는 이를 허브 장치(134)를 통해 수신한다. 프록시 서버(120)는 주유 완료 전문을 기반으로 결제 요청 전문의 작성을 예약 주유 서비스 제공 서버(112)로 요청한다. 예약 주유 서비스 제공 서버(112)는 요청에 대응하여, 주유 완료 전문을 기반으로 단말기 코드, 쿠폰 및 보너스 카드 할인 사용 여부 등의 예약 주유 서비스와 관련된 부가 정보를 추가하여 결제 요청 전문을 생성한 후, 이를 다시 프록시 서버(120)로 제공한다. Referring to FIG. 2 , after receiving the approval of the refueling completion message from the refinery server 150 , the proxy server 120 receives it through the hub device 134 . The proxy server 120 requests the reservation refueling service providing server 112 to write a payment request full text based on the refueling completion message. In response to the request, the reservation refueling service providing server 112 generates a full payment request by adding additional information related to the reservation refueling service, such as whether to use a terminal code, coupon, and bonus card discount, based on the full refueling completion message, This is provided back to the proxy server 120 .

프록시 서버(120)는 예약 주유 서비스 제공 서버(112)로부터 수신되는 결제 요청 전문을 기반으로, 단일 또는 멀티 프로세서 시스템에서, 쓰레드(thread)를 생성하여 휘발성 메모리의 일 영역에 저장한다. 상기 휘발성 메모리는 프로세서의 프로세스(process) 메모리 공간일 수 있다. 이는 캐시 메모리(cache memory)일 수 있다. 그리고는, 프록시 서버(120)는 생성된 쓰레드를 이용하여 결제 요청 전문을 허브 장치(134)를 거쳐 정유사 서버(150)로 제공한다. 그리고, 결제 완료 응답을 기다린다. 프록시 서버(120)가 결제 완료 응답을 수신하면, 예약 주유부터 주유 완료까지의 결제 과정이 완료된다. The proxy server 120 creates a thread in a single or multi-processor system based on the full payment request received from the reservation refueling service providing server 112 and stores it in one area of the volatile memory. The volatile memory may be a process memory space of a processor. This may be cache memory. Then, the proxy server 120 provides the full payment request to the refinery server 150 through the hub device 134 using the generated thread. Then, it waits for a payment completion response. When the proxy server 120 receives the payment completion response, the payment process from reserved refueling to refueling is completed.

다만, 앞서 설명한 바와 같이, 결제 요청 전문 전송 과정에서 네트워크 장애 등으로 인해 통신이 두절된다면, 결제 정보의 유실 방지를 위한 알고리즘이 요구될 수 있다. 이를 위해, 결제 요청 전문의 유실 방지를 위한 타임아웃 룰 기반의 알고리즘이 적용될 수 있다. 이는 도 3을 통해 보다 상세히 설명한다. However, as described above, if communication is interrupted due to a network failure or the like in the process of transmitting the full payment request, an algorithm for preventing the loss of payment information may be required. To this end, an algorithm based on a timeout rule for preventing the loss of the full text of the payment request may be applied. This will be described in more detail with reference to FIG. 3 .

도 3은 도 2의 상황에서 프록시 서버가 타임아웃 룰을 적용하여 결제 정보 유실을 방지하는 과정을 구체적으로 나타낸 상세흐름도이다. 3 is a detailed flowchart illustrating a process in which a proxy server prevents loss of payment information by applying a timeout rule in the situation of FIG. 2 .

도 3을 참조하면, 프록시 서버가 정유사 서버로부터의 주유 완료 전문의 승인 이후 예약 주유 서비스 제공 서버로부터 결제 요청 전문을 수신하면, 수신된 결제 요청 전문을 허브 장치를 매개로 다시 정유사 서버로 전송한다(S310). 이는 결제 요청 전문의 승인을 요청하는 것을 목적으로 한다. 이때, 네트워크 상의 문제가 없으면, 수초 내로 이에 대한 승인 완료 응답이 올 것이다. 이때, 타임아웃 룰(Timeout Rule)을 적용하기 위해, 결제 요청 전문의 전송과 함께 시간을 리셋한다. Referring to FIG. 3 , when the proxy server receives a payment request message from the reserved refueling service providing server after approval of the refueling completion message from the refinery server, it transmits the received payment request message back to the refinery server via the hub device ( S310). The purpose of this is to request approval of the full payment request. At this time, if there is no problem on the network, an approval completion response will come within a few seconds. At this time, in order to apply the timeout rule, the time is reset together with the transmission of the payment request full text.

만약, 리셋된 시간을 기준으로 기설정된 시간 동안 결제 응답이 수신되지 않는다면(S320), 프록시 서버는 해당 시간동안 대기하거나 또는 결제 요청 전문을 재전송 하는 등의 동작을 취할 수 있다. 예를 들어, 타임아웃 기준 시간이 30초라면, 30초 동안 1번만 전문을 전송할 수도 있지만, 2번 내지 5번 반복하여 결제 요청 전문을 정유사 서버로 전송할 수도 있다. 이는 사용자 설정을 통해 임의로 결정할 수 있는 부분이다. 최초 결제 전문 요청을 전송하고 나서, 결제 완료 응답을 수신하거나 타임아웃 룰에 적용될 때까지 시간이 지체되었다면, 단계(S330)로 넘어간다. If a payment response is not received for a preset time based on the reset time (S320), the proxy server may take an action such as waiting for the corresponding time or retransmitting the full payment request. For example, if the timeout reference time is 30 seconds, the full text may be transmitted only once during 30 seconds, but the payment request message may be transmitted to the refinery server by repeating 2 to 5 times. This is a part that can be arbitrarily determined through user settings. After transmitting the initial payment request, if there is a delay until a payment completion response is received or the timeout rule is applied, the flow advances to step S330.

타임아웃 룰은, 결제 요청 전문을 전송했음에도 기설정된 시간 동안 결제 완료 응답을 받지 못할 경우, 해당 쓰레드를 통한 결제 요청 전문의 처리 시간이 만기되었음을 정의하는 룰이다. 다만, 이로써 결제 절차가 끝나는 것이 아니라, 결제 요청 전문 정보의 유실 방지를 위해, 다른 신규 쓰레드를 생성하여 결제 요청 전문의 전송을 이어나가는 것을 전제로 한다. 즉, 이는 신규 쓰레드 생성에 따른 재전송 알고리즘을 포함한다. 타임아웃 룰에 따르면, 일정 횟수 및/또는 일정 기간 동안 결제 요청 전문을 전송했음에도 응답을 받지 못했다고 하여, 해당 정보를 삭제하고 무시하는 것이 아니라, 다른 쓰레드를 새롭게 생성함으로써, 계속하여 결제 요청 전문의 전송을 시도하고, 이를 통해 정유사 서버로부터 응답이 올 때까지 데이터의 유실을 방지하는 것이다. The timeout rule is a rule that defines that the processing time of the full payment request through the thread has expired when a payment completion response is not received for a preset time even after transmitting the full payment request. However, this does not end the payment process, but it is assumed that another new thread is created to continue the transmission of the payment request message in order to prevent the loss of the payment request full text information. That is, it includes a retransmission algorithm according to the creation of a new thread. According to the timeout rule, even if a full payment request is sent a certain number of times and/or for a certain period of time, even if a response is not received, the information is not deleted and ignored, but a new thread is created to continue sending the full payment request message to prevent data loss until a response is received from the refinery server.

일 예에서, 상기 기설정된 시간은 30초일 수 있다. 다만, 반드시 이에 한정되는 것은 아니고, 5초, 10초, 15초, 20초, 45초, 1분, 2분 등의 다른 시간 값으로 설정될 수도 있다. 또한, 기설정된 시간 동안 결제 요청 전문을 전송하는 횟수도 미리 설정되어 있을 수 있다. 해당 시간 동안의 전송 횟수는 1회, 2회 또는 3회로 설정될 수 있다. 예를 들어, 30초 동안 3회 결제 요청 전문을 전송했음에도, 최초 전송 후로 30초 동안 응답이 없으면, 타임아웃 룰이 적용되어 신규 쓰레드를 만들어 다시 결제 요청 전문의 전송 절차를 이어나가도록 제어한다. 다른 예에서, 상기 기설정된 횟수는, 5회 또는 5회 내지 10회일 수 있다. In one example, the preset time may be 30 seconds. However, the present invention is not necessarily limited thereto, and other time values such as 5 seconds, 10 seconds, 15 seconds, 20 seconds, 45 seconds, 1 minute, and 2 minutes may be set. In addition, the number of times to transmit the full payment request for a preset time may also be preset. The number of transmissions during the corresponding time may be set to once, twice, or three times. For example, if there is no response for 30 seconds after the first transmission even after sending the full payment request 3 times for 30 seconds, a timeout rule is applied to create a new thread and control the transmission of the payment request message again. In another example, the preset number of times may be 5 times or 5 to 10 times.

다시 도 3의 단계(S330)으로 돌아가서, 단계(S330)에서 타임아웃 룰에 적용되는 경우가 아니라면, 이는 결제 응답을 수신한 것으로 볼 수 있으므로, 모든 결제 과정을 완료한다. Returning to step S330 of FIG. 3 again, if it is not applied to the timeout rule in step S330, it can be considered that a payment response has been received, and thus all payment processes are completed.

만약, 단계(S330)에서, 타임아웃 룰에 해당한다면, 프록시 서버는 새로운 쓰레드를 생성하여(S340), 기존에 저장된 메모리 영역의 정보를 다른 메모리 영역으로 이전하고(S350), 기존 쓰레드 및/또는 관련 메모리 영역을 파괴한 채(S360), 다시 결제 요청 전문의 전송을 개시한다(S310). If, in step S330, it corresponds to the timeout rule, the proxy server creates a new thread (S340), transfers the information of the previously stored memory area to another memory area (S350), and the existing thread and/or While the related memory area is destroyed (S360), the transmission of the payment request message is started again (S310).

이때로부터 다시 타임아웃 룰이 리셋되어 적용된다. 일 예에서, 상기 메모리는 휘발성 메모리일 수 있기 때문에, 타임아웃 룰의 기준 시간은 휘발성 메모리의 기본적인 저장 시간에 대응되는 시간으로 설정되는 것이 바람직하다. From this point on, the timeout rule is reset and applied again. In one example, since the memory may be a volatile memory, the reference time of the timeout rule is preferably set to a time corresponding to the basic storage time of the volatile memory.

본 발명의 실시예에 따르면, 타임아웃 룰이 반드시 주유 완료에 따른 결제 요청 전문의 경우에만 적용되어야 하는 것은 아니다. 다른 예에서, 예약 주문 확인을 위한 주문 정보의 승인 과정에서도 적용될 수 있다. 상기 주문 정보에도 예약 주문과 관련된 결제 전문 정보가 포함되어 있기에, 해당 정보의 전송 및 승인 과정에도, 위와 동일 또는 유사한 방식으로, 타임아웃 룰이 적용될 수 있다. According to an embodiment of the present invention, the timeout rule does not necessarily have to be applied only to the case of the full payment request according to the completion of refueling. In another example, the approval process of order information for reservation order confirmation may also be applied. Since the order information also includes payment information related to the pre-order, the time-out rule may be applied to the transmission and approval process of the corresponding information in the same or similar manner as above.

추가적으로, 주유 장치에서의 주유 완료 후, 프록시 서버가 이와 관련된 결제 정보를 수신하여 정유사 서버로 제공한 후, 주유 완료 전문의 승인 및 그에 대한 정보를 수신함에 있어서도 타임아웃 룰이 적용될 수 있다. 예를 들어, 프록시 서버의 주유 완료 정보 전송 후, 정유사 서버로부터의 승인이 일정 기간 및/또는 일정 횟수 동안 없을 때, 타임아웃 룰을 적용하여 해당 주유 완료 정보가 유실되지 않도록 할 수 있다.Additionally, after refueling in the refueling device is completed, the proxy server receives payment information related thereto and provides it to the refinery server, and then the timeout rule may also be applied to approval of the refueling completion telegram and information about it. For example, after the proxy server transmits refueling completion information, when there is no approval from the oil refinery server for a predetermined period and/or a predetermined number of times, a timeout rule may be applied to prevent the corresponding refueling completion information from being lost.

도 4는 주유 완료 전문을 나타낸 도면이다.Figure 4 is a view showing the complete refueling message.

도 4를 참조하면, 주유 완료 전문은 전표 번호, 노즐번호, 상품 정보, 결제금액 및 매장코드 정보를 포함한다. 전표 번호는 신용카드 전표 번호일 수 있다. 이는 승인번호일 수 있다. 노즐번호는 실제 주유가 일어난 주유기의 식별번호를 나타낸다. 상품 정보는 주유 유종(일반 휘발유, 경유, 고급 휘발유 등), 주유 단가(리터 당 단가) 및 주유량(몇 리터인지)과 같은 주유 액션과 관련된 정보를 포함한다. 결제금액은 주유 완료에 따라 사용자가 실제 결제할 최종 금액을 나타내며, 매장 코드는 회원 주유소의 식별 코드를 포함한다. 상기 정보들 중에서 적어도 둘 이상은 포함하는 것이 바람직하다. 즉, 결제 금액과 관련된 정보와 매장코드, 노즐번호와 같은 주유로 인한 매출이 발생된 주체를 식별할 수 있는 정보가 포함되는 것이 바람직하다. 주유 완료 전문은 반드시 위 5가지 정보만 포함되는 것이 아니고, 다른 정보가 포함되어도 무방하다.Referring to FIG. 4 , the full refueling message includes a slip number, nozzle number, product information, payment amount, and store code information. The slip number may be a credit card slip number. This may be an authorization number. The nozzle number indicates the identification number of the lubricator where actual lubrication occurred. The product information includes information related to a refueling action, such as the type of refueling oil (normal gasoline, diesel, premium gasoline, etc.), refueling unit price (unit price per liter), and refueling volume (how many liters). The payment amount indicates the final amount to be actually paid by the user according to the completion of refueling, and the store code includes the identification code of the member gas station. It is preferable to include at least two or more of the information. That is, it is desirable to include information related to the payment amount and information that can identify the subject of sales generated by refueling, such as a store code and a nozzle number. The complete refueling message does not necessarily include only the above five pieces of information, and may include other information.

도 5는 결제 요청 전문을 나타낸 도면이다. 5 is a diagram illustrating a full payment request.

도 5를 참조하면, 결제 요청 전문은 주유 완료 전문에 포함된 정보들에 추가로 단말기 코드, 할인 사용 여부와 관련된 정보 및 거래일련번호 정보를 더 포함한다. 단말기 코드 정보는 사용자 단말과 관련된 식별 코드를 의미할 수 있다. 할인 사용 여부 관련 정보는 예약 주유 서비스 개인 회원이 쿠폰 및 보너스 카드 할인을 사용했는지 여부 및 사용 액수에 대한 정보를 포함한다. 거래일련번호는 예약 주유 서비스를 통해 발생되는 거래들에 순차적으로 부여되는 인덱스 번호(식별 번호)를 포함한다. Referring to FIG. 5 , the full payment request message further includes a terminal code, information related to whether to use a discount, and transaction serial number information in addition to the information included in the refueling completion message. The terminal code information may mean an identification code related to a user terminal. The information on whether to use the discount includes information on whether the reservation gas service individual member used coupons and bonus card discounts, and information on the amount used. The transaction serial number includes an index number (identification number) sequentially assigned to transactions generated through the reservation refueling service.

일 예에서, 도 4와 도 5의 상기 주유 완료 전문 및 결제 요청 전문은 주유소 현장 구간에서 생성되어 전송되는 전문 정보들이다. In one example, the refueling completion telegram and payment request telegram of FIGS. 4 and 5 are specialized information generated and transmitted in the field section of a gas station.

한편, 주유소 현장 구간을 떠나 서버간 통신 구간으로 들어오면, 결제 요청 전문의 내용을 받아 아래 내용을 추가하여 실제 결제가 진행될 수 있다. 이는 정유사 서버 및/또는 예약 주유 서비스 제공 서버에서 수행된다. 추가되는 정보는 암호화된 신용카드 정보, 보너스 카드 번호 및 쿠폰 번호 정보 중 적어도 하나를 포함한다. 암호화된 신용카드 정보는 빌키(bill key) 및/또는 OTP(one-time password) 값을 포함할 수 있다. 상기한 다수의 정보들로 상황에 맞게 쿠폰 결제 또는 보너스 할인 및 신용 결제를 진행한다. On the other hand, when leaving the field section of the gas station and entering the communication section between the servers, the actual payment can proceed by receiving the full text of the payment request and adding the following contents. This is performed on the refiner server and/or the reserved refueling service providing server. The added information includes at least one of encrypted credit card information, bonus card number, and coupon number information. The encrypted credit card information may include a bill key and/or a one-time password (OTP) value. With the above-mentioned plurality of information, coupon payment or bonus discount and credit payment are processed according to the situation.

도 6은 본 발명의 일 실시예에 따른 프록시 서버 장치의 구성을 나타낸 블록도이다. 도 6에 도시된 바와 같이, 서버 장치는, 통신부(610), 프로세서(620), 메모리(630) 및 입출력 모듈(640)을 포함할 수 있다.6 is a block diagram illustrating a configuration of a proxy server apparatus according to an embodiment of the present invention. As shown in FIG. 6 , the server device may include a communication unit 610 , a processor 620 , a memory 630 , and an input/output module 640 .

도 6을 참조하면, 통신부(610)는 유선 및/또는 무선 네트워크를 통해 외부 장치와 통신을 수행하는 구성요소이다. 통신부(610)는 안테나 및/또는 통신 프로세서를 포함할 수 있다. Referring to FIG. 6 , the communication unit 610 is a component that communicates with an external device through a wired and/or wireless network. The communication unit 610 may include an antenna and/or a communication processor.

프로세서(620)는 통신부(610)를 통해 획득된 정보를 기반으로 결제 관련 처리를 위한 절차를 제어하는 구성요소이다. 프로세서(620)는 결제와 관련된 결제 요청 전문을 정유사 서버로 전송하고 그에 대한 승인을 요청하며, 이때, 일정 시간 동안 결제 완료 응답이 없음에 대응하여 타임아웃 룰을 적용한다. 프로세서(620)는 결제 요청 전문 수신하면 그에 대응하는 쓰레드를 생성하고 메모리(630)의 일 영역에 해당 정보를 저장한다. 그리고, 생성된 쓰레드를 이용하여 결제 요청 전문을 전송한다. 전송된 결제 요청 전문에 대한 응답이 임계시간동안 없으면, 타임아웃 룰을 적용하고, 이에 따라 신규 쓰레드를 생성하여 메모리(630)의 다른 영역으로 관련 정보를 이동시키고, 기생성된 쓰레드 및 메모리 영역을 파괴하는 등의 절차를 수행한다. 프로세서(620)는 메모리(630)와 신호선을 통해 연결되어 있으며, 메모리(630)에 저장된 프로그램을 실행한다. The processor 620 is a component that controls a procedure for payment-related processing based on information obtained through the communication unit 610 . The processor 620 transmits a full payment request related to payment to the refinery server and requests approval thereof, and at this time, applies a timeout rule in response to no payment completion response for a predetermined time. When the full payment request is received, the processor 620 creates a thread corresponding thereto and stores the corresponding information in one area of the memory 630 . Then, a full payment request is transmitted using the created thread. If there is no response to the transmitted payment request message for a critical period, a timeout rule is applied, a new thread is created according to this, and related information is moved to another area of the memory 630, and the pre-created thread and memory area are removed. destruction, etc. The processor 620 is connected to the memory 630 through a signal line, and executes a program stored in the memory 630 .

메모리(630)는 프로세서(620)에서 수행해야 할 프로그램들과 연관된 명령어들을 저장하고 있으며, 프로세서(620)에서 처리되는 데이터를 저장하고 있는 저장장치이다. The memory 630 is a storage device that stores instructions related to programs to be executed by the processor 620 , and stores data processed by the processor 620 .

입출력 모듈(640)은 키보드, 마우스와 같은 정보 입력 수단 및 모니터, TV, 터치스크린과 같은 정보 출력 수단을 포함한다. 입출력 모듈(640)은 타임아웃 룰의 적용과 관련된 각종 설정값들(기준 시간, 기준 횟수 등)을 변경하고 관련된 내용을 표시하는데 사용된다.The input/output module 640 includes information input means such as a keyboard and mouse, and information output means such as a monitor, TV, and touch screen. The input/output module 640 is used to change various set values (reference time, reference number, etc.) related to application of the timeout rule and display related contents.

이상에서 설명된 시스템 또는 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 시스템, 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The system or apparatus described above may be implemented as a hardware component, a software component, and/or a combination of the hardware component and the software component. For example, systems, devices, and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA). ), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose or special purpose computers. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that can include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may comprise a computer program, code, instructions, or a combination of one or more thereof, which configures a processing device to operate as desired or is independently or collectively processed You can command the device. The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or apparatus, to be interpreted by or to provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.

실시예들에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiments may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited embodiments and drawings, various modifications and variations are possible from the above description by those skilled in the art. For example, the described techniques are performed in an order different from the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (12)

제 1 서버에서의 결제 정보 유실 방지 방법에 있어서,
결제와 관련된 결제 요청 전문을 획득하는 단계; 및
상기 결제 요청 전문을 제 3 서버 - 상기 제 3 서버는 결제와 관련된 서버 또는 상기 결제와 관련된 서버와 무선 또는 유선으로 연결된 매개 장치를 포함함 - 로 요청하여 상기 제 3 서버로부터 결제 완료 응답을 수신하는 단계를 포함하되,
상기 결제 완료 응답을 수신하는 단계는, 상기 결제 요청 전문의 유실 방지를 위해, 타임아웃 룰(timeout rule)을 적용함에 의해, 상기 결제 완료 응답이 없음에 대응하여 상기 결제 요청 전문을 위한 신규 쓰레드(thread)를 생성하면서 메모리에 적어도 일 영역에 상기 결제 요청 전문이 저장된 상태로 상기 결제 요청 전문의 전송을 반복 시도하는 단계를 포함하는, 제 1 서버에서의 결제 정보 유실 방지 방법.
In the method for preventing loss of payment information in the first server,
obtaining a full payment request related to payment; and
To receive the payment completion response from the third server by requesting the full payment request to a third server, wherein the third server includes a server related to payment or an intermediate device connected wirelessly or wired to a server related to payment comprising steps,
The receiving of the payment completion response includes applying a timeout rule to prevent the loss of the full payment request message, so that a new thread ( thread) and repeatedly attempting to transmit the payment request message while the payment request message is stored in at least one area in a memory.
제 1 항에 있어서, 상기 결제 완료 응답을 수신하는 단계는,
제 1 스레드를 생성함에 의해 메모리의 제 1 영역에 상기 결제 요청 전문을 저장하고 제 3 서버로 결제 요청 전문을 전송하는 단계를 포함하고,
상기 결제 요청 전문의 전송시 타임아웃 룰이 적용되면, 제 2 스레드를 생성하면서 상기 메모리의 제 2 영역에 상기 결제 요청 전문을 저장하는, 제 1 서버에서의 결제 정보 유실 방지 방법.
The method of claim 1, wherein receiving the payment completion response comprises:
storing the payment request message in a first area of a memory by creating a first thread and transmitting the payment request message to a third server;
When a timeout rule is applied when transmitting the payment request message, the first server generates a second thread and stores the payment request message in a second area of the memory.
제 2 항에 있어서,
상기 타임아웃 룰은 상기 결제 요청 전문을 적어도 1회 전송한 이후 기준 시간동안 상기 결제 완료 응답이 수신되지 않음에 대응하여 적용되며,
상기 제 2 쓰레드를 생성하면서 상기 타임아웃 룰이 리셋(reset)되어 적용되는, 제 1 서버에서의 결제 정보 유실 방지 방법.
3. The method of claim 2,
The timeout rule is applied in response to not receiving the payment completion response for a reference time after transmitting the full payment request at least once,
The method for preventing loss of payment information in the first server, wherein the timeout rule is reset and applied while creating the second thread.
제 3 항에 있어서,
상기 타임아웃 룰의 적용에 응답하여, 상기 제 2 스레드의 생성과 상기 메모리의 제 2 영역으로 기저장된 결제 요청 전문 정보를 이동함과 동시에, 상기 제 1 스레드 및 상기 메모리의 제 1 영역의 상기 기저장된 결제 요청 전문 정보를 삭제하는, 제 1 서버에서의 결제 정보 유실 방지 방법.
4. The method of claim 3,
In response to the application of the timeout rule, the second thread is created and the pre-stored payment request full text information is moved to the second area of the memory, while the first thread and the group in the first area of the memory are simultaneously moved. A method for preventing loss of payment information in the first server, which deletes the stored payment request full text information.
제 1 항에 있어서,
상기 결제 요청 전문은 예약 주문과 관련된 제 1 결제 요청 전문 및 상기 예약 주문에 대응하여 발생된 실제 액션의 완료에 의해 생성되는 제 2 결제 요청 전문 중 적어도 하나를 포함하는, 제 1 서버에서의 결제 정보 유실 방지 방법.
The method of claim 1,
The payment request information in the first server, including at least one of a first full payment request related to the reservation order and a second payment request full text generated by the completion of an actual action generated in response to the reservation order How to prevent loss.
제 5 항에 있어서,
제 2 서버로부터 클라이언트로부터의 주문 정보를 수신하는 단계, 상기 주문 정보는 주문 정보에 따른 제 1 결제 요청 전문을 포함함; 및
상기 제 3 서버로 상기 주문 정보에 대한 승인을 요청하는 단계를 더 포함하되,
상기 주문 정보의 유실을 방지하기 위해, 상기 주문 정보에 대해 타임아웃 룰이 적용되는, 제 1 서버에서의 결제 정보 유실 방지 방법.
6. The method of claim 5,
receiving order information from a client from a second server, wherein the order information includes a first full payment request according to the order information; and
Further comprising the step of requesting approval for the order information to the third server,
In order to prevent the loss of the order information, a timeout rule is applied to the order information, the payment information loss prevention method in the first server.
제 6 항에 있어서,
상기 주문 정보에 대한 승인에 응답하여, 액션 완료 정보를 획득하는 단계, 상기 액션 완료 정보는 상기 주문 정보에 대응하는 실제 액션의 완료에 의해 생성되는 정보임;
상기 액션 완료 정보에 대응하는 액션 완료 전문을 제 3 서버로부터 획득하는 단계;
상기 액션 완료 전문을 기반으로 제 2 결제 요청 전문을 상기 제 2 서버로 요청하여 획득하는 단계; 및
상기 제 2 결제 요청 전문의 승인을 상기 제 3 서버로 요청하는 단계를 더 포함하되,
상기 제 2 결제 요청 전문의 승인시 타임아웃 룰이 적용되는, 제 1 서버에서의 결제 정보 유실 방지 방법.
7. The method of claim 6,
obtaining action completion information in response to approval of the order information, wherein the action completion information is information generated by completion of an actual action corresponding to the order information;
obtaining an action completion message corresponding to the action completion information from a third server;
requesting and obtaining a second payment request message from the second server based on the action completion message; and
The method further comprising the step of requesting approval of the full text of the second payment request to the third server,
A method for preventing loss of payment information in the first server, wherein a timeout rule is applied when the second payment request full text is approved.
제 7 항에 있어서,
상기 주문 정보는 주유와 관련된 예약 주문 정보를 포함하며,
상기 액션 완료 정보는 예약 주문에 따른 실제 주유 액션의 완료에 의해 생성된 주유 완료 정보를 포함하는, 제 1 서버에서의 결제 정보 유실 방지 방법.
8. The method of claim 7,
The order information includes reservation order information related to refueling,
The method for preventing loss of payment information in the first server, wherein the action completion information includes refueling completion information generated by the completion of an actual refueling action according to a reservation order.
제 7 항에 있어서,
상기 제 2 결제 요청 전문은 전표번호, 상기 주문 정보에 대응하는 실제 액션이 이루어지는 제 1 장치의 식별 정보, 상기 주문 정보에 대응하는 상품 번호, 결제 금액 및 매장 코드, 단말기 코드, 거래 일련 번호 및 할인 혜택에 관한 정보 중 적어도 둘을 포함하는, 제 1 서버에서의 결제 정보 유실 방지 방법.
8. The method of claim 7,
The full text of the second payment request includes a slip number, identification information of the first device in which an actual action corresponding to the order information is performed, a product number corresponding to the order information, payment amount and store code, terminal code, transaction serial number, and discount A method for preventing loss of payment information in the first server, comprising at least two of information about benefits.
제 6 항에 있어서,
상기 주문 정보에 대한 승인에 응답하여 제 1 장치로 상기 주문 정보의 적어도 일부를 제공하는 단계, 상기 제 1 장치는 상기 주문 정보에 대응하는 실제 액션이 이루어지는 대상 장치임; 및
상기 제 1 장치에서 상기 주문 정보에 대응하는 실제 액션이 이루어지도록 허여하는 단계를 더 포함하며,
상기 제 1 장치는 주유 장치인, 제 1 서버에서의 결제 정보 유실 방지 방법.
7. The method of claim 6,
providing at least a portion of the order information to a first device in response to approval of the order information, wherein the first device is a target device on which an actual action corresponding to the order information is performed; and
further comprising allowing an actual action corresponding to the order information to be performed in the first device,
The first device is a refueling device, the method for preventing loss of payment information in the first server.
결제 정보 유실 방지를 위한 서버 장치에 있어서,
결제와 관련된 결제 요청 전문을 획득하고, 상기 결제 요청 전문을 제 3 서버 - 상기 제 3 서버는 결제와 관련된 서버 또는 상기 결제와 관련된 서버와 무선 또는 유선으로 연결된 매개 장치를 포함함 - 로 요청하여 상기 제 3 서버로부터 결제 완료 응답을 수신하는 프로세서; 및
상기 프로세서의 동작과 관련된 명령어를 저장하는 메모리를 포함하되,
상기 프로세서는, 상기 결제 요청 전문의 유실 방지를 위해, 타임아웃 룰(timeout rule)을 적용함에 의해, 상기 결제 완료 응답이 없음에 대응하여 상기 결제 요청 전문을 위한 신규 쓰레드(thread)를 생성하면서 상기 메모리에 적어도 일 영역에 상기 결제 요청 전문이 저장된 상태로 상기 결제 요청 전문의 전송을 반복 시도하는, 결제 정보 유실 방지를 위한 서버 장치.
In the server device for preventing payment information loss,
Obtaining a full payment request related to payment, and requesting the full payment request to a third server, wherein the third server includes a server related to payment or an intermediate device connected wirelessly or wired to a server related to the payment. a processor for receiving a payment completion response from a third server; and
Including a memory for storing instructions related to the operation of the processor,
The processor generates a new thread for the full payment request message in response to no payment completion response by applying a timeout rule to prevent loss of the full payment request message. A server device for preventing loss of payment information that repeatedly attempts to transmit the payment request message while the payment request message is stored in at least one area in a memory.
결제 정보 유실 방지를 위한 시스템에 있어서,
결제와 관련된 결제 요청 전문을 제 2 서버로부터 획득하여, 상기 결제 요청 전문을 제 3 서버 - 상기 제 3 서버는 결제와 관련된 서버 또는 상기 결제와 관련된 서버와 무선 또는 유선으로 연결된 매개 장치를 포함함 - 로 요청하고 상기 제 3 서버로부터 결제 완료 응답을 수신하는 프록시 서버; 및
상기 프록시 서버로 결제 요청 전문을 전송하는 제 2 서버를 포함하되,
상기 프록시 서버는, 상기 결제 요청 전문의 유실 방지를 위해, 타임아웃 룰(timeout rule)을 적용함에 의해, 상기 결제 완료 응답이 없음에 대응하여 상기 결제 요청 전문을 위한 신규 쓰레드(thread)를 생성하면서 메모리에 적어도 일 영역에 상기 결제 요청 전문이 저장된 상태로 상기 결제 요청 전문의 전송을 반복 시도하는, 결제 정보 유실 방지를 위한 시스템.
In the system for preventing payment information loss,
Obtaining a full payment request related to payment from a second server, and sending the full payment request message to a third server, wherein the third server includes a payment related server or an intermediate device connected to the payment related server wirelessly or by wire - a proxy server for requesting to and receiving a payment completion response from the third server; and
A second server for transmitting a full payment request to the proxy server,
The proxy server applies a timeout rule to prevent loss of the full text of the payment request, thereby creating a new thread for the full payment request message in response to no payment completion response. A system for preventing loss of payment information that repeatedly attempts to transmit the payment request message while the payment request message is stored in at least one area in a memory.
KR1020200112472A 2020-09-03 2020-09-03 Data loss protection method and apparatus for payment information KR102414428B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200112472A KR102414428B1 (en) 2020-09-03 2020-09-03 Data loss protection method and apparatus for payment information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200112472A KR102414428B1 (en) 2020-09-03 2020-09-03 Data loss protection method and apparatus for payment information

Publications (2)

Publication Number Publication Date
KR20220030762A true KR20220030762A (en) 2022-03-11
KR102414428B1 KR102414428B1 (en) 2022-06-30

Family

ID=80815016

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200112472A KR102414428B1 (en) 2020-09-03 2020-09-03 Data loss protection method and apparatus for payment information

Country Status (1)

Country Link
KR (1) KR102414428B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023210852A1 (en) * 2022-04-29 2023-11-02 쿠팡 주식회사 Payment service provision method and device therefor

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060006148A (en) * 2004-07-15 2006-01-19 (주)엔텔스 Method and system for handling wcdma packet cdr
JP2009237789A (en) * 2008-03-26 2009-10-15 Mizuho Information & Research Institute Inc Data transfer system, data transfer method, and data transfer program
KR20110090709A (en) * 2010-02-04 2011-08-10 한국정보통신주식회사 Method and apparatus for informing troubleshooting in a credit settlement system
KR101201183B1 (en) * 2004-06-30 2012-11-13 마이크로소프트 코포레이션 When-free messaging
KR20170054993A (en) * 2015-11-10 2017-05-18 에스케이네트웍스 주식회사 Method for prepaid refueling reservation using refueling history

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101201183B1 (en) * 2004-06-30 2012-11-13 마이크로소프트 코포레이션 When-free messaging
KR20060006148A (en) * 2004-07-15 2006-01-19 (주)엔텔스 Method and system for handling wcdma packet cdr
JP2009237789A (en) * 2008-03-26 2009-10-15 Mizuho Information & Research Institute Inc Data transfer system, data transfer method, and data transfer program
KR20110090709A (en) * 2010-02-04 2011-08-10 한국정보통신주식회사 Method and apparatus for informing troubleshooting in a credit settlement system
KR20170054993A (en) * 2015-11-10 2017-05-18 에스케이네트웍스 주식회사 Method for prepaid refueling reservation using refueling history

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023210852A1 (en) * 2022-04-29 2023-11-02 쿠팡 주식회사 Payment service provision method and device therefor

Also Published As

Publication number Publication date
KR102414428B1 (en) 2022-06-30

Similar Documents

Publication Publication Date Title
US7810723B2 (en) System and method to purchase applications by a point of sale terminal
US7849020B2 (en) Method and apparatus for network transactions
CN108701307A (en) Method and system for verifying token requester
US20080027874A1 (en) System and method for facilitating secure transactions over communication networks
CN103503010A (en) Integration of payment capability into secure elements of computers
CN105359452A (en) Systems and methods for cryptographic security as a service
US20130339231A1 (en) Prepaid wallet for merchants
US20220417575A1 (en) Platform for appliance based resource catalog
WO2017015007A1 (en) Systems and methods for establishing message routing paths through a computer network
US20220222631A1 (en) Extensible interface for synchronous and asynchronous payment
US7699223B2 (en) Retail information collection
AU2020292204A1 (en) System and method for tracking earned rewards for online transaction
KR102414428B1 (en) Data loss protection method and apparatus for payment information
JP7156889B2 (en) Payment processing method
KR20140106012A (en) System and method for substitute payment in mobile shopping
US9785959B2 (en) Transaction connection mediator method and apparatus
JP2008152338A (en) System and method for credit card settlement using personal digital assistance
CN111105224A (en) Payment feedback information processing method and device, electronic equipment and storage medium
US20090049109A1 (en) Distribution Fabric
CN111105304B (en) Data processing method and device, storage medium and electronic terminal
KR20000037038A (en) Online Download System and Redownload Security System for Software Online Selling Via Internet
KR102044674B1 (en) Server and method for performing issuance and processing of coupon
KR102664269B1 (en) Platform for appliance based resource catalog
JP2005107993A (en) Virtual store credit settlement system and its method
US20090144835A1 (en) System, method and computer-readable medium for providing a unifed computer-mediated purchasing experience

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right