KR102189658B1 - Auditing system with historic sale deviation database - Google Patents

Auditing system with historic sale deviation database Download PDF

Info

Publication number
KR102189658B1
KR102189658B1 KR1020150113384A KR20150113384A KR102189658B1 KR 102189658 B1 KR102189658 B1 KR 102189658B1 KR 1020150113384 A KR1020150113384 A KR 1020150113384A KR 20150113384 A KR20150113384 A KR 20150113384A KR 102189658 B1 KR102189658 B1 KR 102189658B1
Authority
KR
South Korea
Prior art keywords
transaction
price
determining
transactions
database
Prior art date
Application number
KR1020150113384A
Other languages
Korean (ko)
Other versions
KR20160019874A (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
Priority claimed from US14/457,462 external-priority patent/US10032230B2/en
Priority claimed from EP14290243.6A external-priority patent/EP2985722A1/en
Application filed by 아마데우스 에스.에이.에스. filed Critical 아마데우스 에스.에이.에스.
Publication of KR20160019874A publication Critical patent/KR20160019874A/en
Application granted granted Critical
Publication of KR102189658B1 publication Critical patent/KR102189658B1/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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0278Product appraisal
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0283Price estimation or determination
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/14Travel agencies

Landscapes

  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

간접 판매자에 의한 여행 서비스들의 판매를 수반하는 거래들의 감사(auditing)를 위한 방법, 시스템 및 컴퓨터 프로그램 제품이 제공된다. 감사 모듈은 간접 판매자의 의해 제안된 거래를 정의하는 데이터를 수신한다. 감사 모듈은 거래에 대한 견적 가격(quoted price)을 거래에 대한 수정 가격(correct price)과 비교하여 가격 차이가 있는지를 결정한다. 가격 차이가 존재하면, 감사 모듈은 해당 거래를 분류하고, 상기 분류와 관련한 사업 규칙들에 대하여, 여행 서비스 제공자에 의해 유지된 사업 규칙 데이터베이스를 검색한다. 감사 모듈은 또한 이력적 판매 편차 데이터베이스에 문의하여 판매자 이력 데이터를 인출해오고, 판매자 이력 데이터에 대한 최상의 매칭을 갖는 관련 사업 규칙을 선택한다. 그런 후, 감사 모듈은 최상의 매칭을 갖는 사업 규칙에 의해 정의된 액션에 기초하여 거래를 허용하거나 또는 차단할지, 경고를 발행하거나, 또는 ADM(Agency Debit Memo)을 제안할지를 결정한다.A method, system and computer program product are provided for auditing transactions involving the sale of travel services by an indirect seller. The audit module receives data defining the transaction proposed by the indirect seller. The audit module compares the quoted price for the transaction with the correct price for the transaction to determine if there is a price difference. If there is a price difference, the audit module classifies the transaction and searches a business rule database maintained by the travel service provider for business rules related to the classification. The audit module also queries the historical sales deviation database to fetch the seller history data, and selects the relevant business rules with the best match for the seller history data. The audit module then decides whether to allow or block the transaction, issue an alert, or propose an Agency Debit Memo (ADM) based on the action defined by the business rule with the best match.

Description

이력적 판매 편차 데이터베이스를 갖춘 감사 시스템{AUDITING SYSTEM WITH HISTORIC SALE DEVIATION DATABASE}Audit system with historical sales deviation database {AUDITING SYSTEM WITH HISTORIC SALE DEVIATION DATABASE}

본 발명은 일반적으로, 컴퓨터들 및 컴퓨터 소프트웨어에 관한 것이고, 특히, 여행 서비스들의 판매와 연관된 거래(transaction)들을 감사(auditing)하기 위한, 방법들, 시스템들, 및 컴퓨터 프로그램 제품들에 관한 것이다.FIELD OF THE INVENTION The present invention relates generally to computers and computer software, and more particularly to methods, systems, and computer program products for auditing transactions associated with the sale of travel services.

여행 산업에서, 에어라인 티켓들은 종종, 발권 항공사(validating carrier) 또는 온라인 여행 에이전시와 같은 간접 판매자를 통해 판매된다. 간접 판매자는 전형적으로, 여행자의 여정을 만족시키는 이용가능한 항공편들에 대해 체크할 것이고, 매칭하는 항공편들이 발견되면, 여행자를 위해 항공편들을 예약할 것이다. 이러한 예약 프로세스의 부분으로서, 간접 판매자는 티켓들에 대한 여행자로부터의 지불을 수집할 수 있다. 운송 서비스들을 제공하는 것에 대한 운항 항공사(operating carrier)의 요금들을 부담하기 위해, 간접 판매자는 수집된 지불의 일부분을 운항 항공사에게 제공한다.In the travel industry, airline tickets are often sold through indirect sellers such as a validating carrier or online travel agency. Indirect sellers will typically check for available flights that satisfy the traveler's itinerary, and if matching flights are found, they will book flights for the traveler. As part of this booking process, the indirect seller can collect payments from travelers for tickets. In order to bear the operating carrier's charges for providing transportation services, the indirect seller provides a portion of the collected payments to the operating carrier.

간접 판매자들이, 티켓의 가격책정(pricing)과 관련된 규칙들 및 제약(restriction)들에 따라 티켓들을 판매하는 것을 보장하기 위해, 이들 거래들은 때때로 감사될 수 있다. 감사는, 요금, 세금들, 및 수수료의 양들이, 판매된 티켓의 세부사항들에 관하여 적절한 규칙들 및 제약들과 매칭하는지를 검증할 수 있다. 에어라인 산업에 의해 생성되는 연간 세계적인 수익의 규모로 인해, 심지어, 판매되는 모든 티켓들에 걸친 작은 차이들을 수정하는 것도, 그렇지 않으면 잃게 되는 수익을 상당히 복구할 수 있다.To ensure that indirect sellers sell tickets in accordance with the rules and restrictions related to the pricing of the ticket, these transactions may be audited from time to time. The audit can verify that the amounts of fees, taxes, and fees match appropriate rules and constraints with respect to the details of the ticket sold. Due to the size of the annual global revenue generated by the airline industry, even correcting the small differences across all tickets sold can significantly recover the revenue otherwise lost.

간접 판매자가 티켓에 대해 적절하게 청구되지 않았다고 감사가 표시하는 경우에, 감사 항공사는, ADM(Agency Debit Memo)을 발행함으로써, 차이를 복구하도록 시도할 수 있다. 그러나, ADM을 생성하고 발행하는 것은 거래에 상당한 관리 비용들을 부가할 수 있다. 이러한 이유로, 항공사들은, 차이를 복구하기 위해 ADM을 발행하기 보다는 가격책정에서의 작은 에러들을 수용할 수 있다. 따라서, ADM을 발행하는 비용은, 간접 판매자들이, 페널티를 받지 않고, 지속적으로, 정확한 가격보다 약간 아래로 티켓들을 가격책정할 수 있는 기회를 제공할 수 있다. 다른 경우들에서, 간접 판매자들이, 정직하게 티켓에 대해 행해진 변경들로 인해, 항공사의 가격책정 규칙을 모르고 위반하여, 항공사가 ADM을 발행하게 할 수 있고, 이는 그렇지 않으면 방지될 수 있었다.In cases where the auditor indicates that the indirect seller was not properly charged for the ticket, the auditing airline may attempt to repair the difference by issuing an Agency Debit Memo (ADM). However, creating and issuing an ADM can add significant administrative costs to the transaction. For this reason, airlines can tolerate small errors in pricing rather than issuing ADM to repair the gap. Thus, the cost of issuing an ADM can provide an opportunity for indirect sellers to price tickets, consistently, slightly below the correct price, without penalty. In other cases, indirect sellers could honestly violate the airline's pricing rules due to changes made to the ticket, causing the airline to issue an ADM, which could otherwise be avoided.

따라서, 항공사들 및 간접 판매자들은, 거래들을 감사하고, ADM들의 수를 감소시키고, 여행 서비스들의 부정확한 가격책정과 연관된 비용들을 감소시키기 위해 차이들을 복구하기 위한, 개선된 시스템들, 방법들, 및 컴퓨터 프로그램 제품들에 대한 필요성을 갖는다.Accordingly, airlines and indirect sellers have improved systems, methods, and methods to audit transactions, reduce the number of ADMs, and repair differences to reduce costs associated with incorrect pricing of travel services. Have a need for computer program products.

본 발명의 실시예에서, 여행 서비스의 판매자에 의한 거래를 관리하는 방법이 제공된다. 방법은, 거래를 특징화하고 서비스 제공자에 의해 제공될 여행 서비스에 대한 제 1 가격을 포함하는 데이터를 수신하는 단계를 포함한다. 방법은, 서비스 제공자의 가격책정 규칙에 기초하여, 여행 서비스에 대한 제 2 가격을 결정하는 단계, 및 제 1 가격이 제 2 가격과 매칭하는지를 결정하는 단계를 더 포함한다. 제 1 가격이 제 2 가격과 매칭하는 것에 응답하여, 방법은 거래를 허용하고, 제 1 가격이 제 2 가격과 매칭하지 않는 것에 응답하여, 방법은, 거래 이전에 발생하였던 거래들의 세트에 기초하여, 액션을 결정한다.In an embodiment of the present invention, a method of managing a transaction by a seller of a travel service is provided. The method includes receiving data that characterizes the transaction and includes a first price for a travel service to be provided by the service provider. The method further includes determining, based on the service provider's pricing rules, a second price for the travel service, and determining whether the first price matches the second price. In response to the first price matching the second price, the method permits the transaction, and in response to the first price not matching the second price, the method is based on the set of transactions that occurred prior to the transaction. , Decide the action.

본 발명의 다른 실시예에서, 프로세서 및 메모리를 포함하는 장치가 제공된다. 메모리는 프로그램 코드를 포함하고, 그 프로그램 코드는, 프로세서에 의해 실행되는 경우에, 장치로 하여금, 거래를 특징화하고 서비스 제공자에 의해 제공될 여행 서비스에 대한 제 1 가격을 포함하는 데이터를 수신하게 한다. 프로그램 코드는 추가로, 장치로 하여금, 서비스 제공자의 가격책정 규칙에 기초하여, 여행 서비스에 대한 제 2 가격을 결정하게 하고, 제 1 가격이 제 2 가격과 매칭하는지를 결정하게 한다. 제 1 가격이 제 2 가격과 매칭하는 것에 응답하여, 프로그램 코드는, 장치로 하여금, 거래를 허용하게 하고, 제 1 가격이 제 2 가격과 매칭하지 않는 것에 응답하여, 프로그램 코드는, 장치로 하여금, 거래 이전에 발생하였던 거래들의 세트에 기초하여, 액션을 결정하게 한다.In another embodiment of the present invention, an apparatus including a processor and a memory is provided. The memory includes program code, which, when executed by the processor, causes the device to receive data that characterizes the transaction and includes a first price for a travel service to be provided by the service provider. do. The program code further causes the device to determine a second price for the travel service based on the service provider's pricing rules, and to determine if the first price matches the second price. In response to the first price matching the second price, the program code causes the device to accept the transaction, and in response to the first price not matching the second price, the program code causes the device to , Based on the set of transactions that occurred prior to the transaction, an action is determined.

본 발명의 다른 실시예에서, 프로그램 코드를 포함하는 비일시적인 컴퓨터 판독가능 저장 매체를 포함하는 컴퓨터 프로그램 제품이 제공된다. 프로그램 코드는, 프로세서에 의해 실행되는 경우에, 프로세서로 하여금, 거래를 특징화하고 서비스 제공자에 의해 제공될 여행 서비스에 대한 제 1 가격을 포함하는 데이터를 수신하게 하도록 구성된다. 프로그램 코드는 추가로, 프로세서로 하여금, 서비스 제공자의 가격책정 규칙에 기초하여, 여행 서비스에 대한 제 2 가격을 결정하게 하고, 제 1 가격이 제 2 가격과 매칭하는지를 결정하게 한다. 제 1 가격이 제 2 가격과 매칭하는 것에 응답하여, 프로그램 코드는, 프로세서로 하여금, 거래를 허용하게 하고, 제 1 가격이 제 2 가격과 매칭하지 않는 것에 응답하여, 프로그램 코드는, 프로세서로 하여금, 거래 이전에 발생하였던 거래들의 세트에 기초하여, 액션을 결정하게 한다.In another embodiment of the present invention, a computer program product is provided that includes a non-transitory computer-readable storage medium containing program code. The program code, when executed by the processor, is configured to cause the processor to receive data that characterizes the transaction and includes a first price for a travel service to be provided by the service provider. The program code further causes the processor to determine, based on the service provider's pricing rules, a second price for the travel service, and determine if the first price matches the second price. In response to the first price matching the second price, the program code causes the processor to accept the transaction, and in response to the first price not matching the second price, the program code causes the processor to , Based on the set of transactions that occurred prior to the transaction, an action is determined.

본 명세서의 부분을 구성하고 본 명세서에 포함되는 첨부 도면들은 본 발명의 다양한 실시예들을 예시하고, 위에서 주어진 본 발명의 일반적인 설명, 및 아래에서 주어지는 실시예들의 상세한 설명과 함께, 본 발명의 실시예들을 설명하는 역할을 한다.
도 1은, 네트워크를 통해 통신하는 복수의 컴퓨터 시스템들을 포함하는 예시적인 동작 환경의 선도(diagrammatic view).
도 2는, 도 1의 예시적인 컴퓨터 시스템의 선도.
도 3은, 도 1에서의 컴퓨터 시스템들 중 하나 또는 그 초과에 의해 제공될 수 있는, 감사 모듈, 이력적 판매 편차(HSD) 데이터베이스, 및 사업 규칙 데이터베이스를 포함하는 동작 환경을 나타내는 블록도의 선도.
도 4는, 도 3의 HSD 데이터베이스에 의해 유지될 수 있는 거래 테이블의 선도.
도 5는, 도 3의 사업 규칙 데이터베이스에 의해 유지될 수 있는 사업 규칙 테이블의 선도.
도 6은, 본 발명의 실시예들을 구현하기 위해, 도 3의 감사 모듈에 의해 실행될 수 있는 프로세스를 나타내는 흐름도.
BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings that form a part of this specification and are incorporated herein illustrate various embodiments of the invention, and together with the general description of the invention given above, and the detailed description of the embodiments given below, embodiments of the invention Serves to explain them.
1 is a diagrammatic view of an exemplary operating environment including a plurality of computer systems communicating over a network.
Fig. 2 is a diagram of the exemplary computer system of Fig. 1;
FIG. 3 is a diagram of a block diagram representing an operating environment including an audit module, a historical sales deviation (HSD) database, and a business rules database, which may be provided by one or more of the computer systems in FIG. 1 .
Figure 4 is a diagram of a transaction table that can be maintained by the HSD database of Figure 3;
5 is a diagram of a business rule table that may be maintained by the business rule database of FIG. 3;
6 is a flow diagram illustrating a process that may be executed by the audit module of FIG. 3 to implement embodiments of the present invention.

본 발명의 실시예들은 GDS(Global Distribution System)와 같은 프로세싱 및 데이터베이스 시스템에 의해 구현될 수 있다. 프로세싱 및 데이터베이스 시스템은, 여행 서비스 제공자와 각각 연관된 복수의 컴퓨터 예약 시스템들과 에어라인 티켓들의 간접 판매자들 사이의 상호연결들을 용이하게 할 수 있다. 비행기 여행의 상황에서, 프로세싱 및 데이터베이스 시스템은, 여행자들이 간접 판매 채널들을 통해 에어라인 티켓들 및 다른 여행 서비스들을 예약하게 허용하도록 구성될 수 있다. 이러한 간접 판매 채널들은, 운항 항공사에 의해 제공될 여행 서비스들에 대한 티켓들을 판매하는 발권 항공사들 및 온라인 여행 에이전시들을 포함할 수 있다. 간접 판매자들은 예약된 티켓들에 대해 여행자들로부터 지불을 수신할 수 있고, 그 후에, 제공되는 여행 서비스의 비용에 대해 운항 항공사에게 보상할 수 있다.Embodiments of the present invention may be implemented by a processing and database system such as a Global Distribution System (GDS). The processing and database system may facilitate interconnections between indirect sellers of airline tickets and a plurality of computer reservation systems each associated with a travel service provider. In the context of air travel, the processing and database system may be configured to allow travelers to book airline tickets and other travel services through indirect sales channels. These indirect sales channels may include issuing airlines and online travel agencies that sell tickets for travel services to be provided by the operating airline. Indirect sellers may receive payment from travelers for reserved tickets, and then compensate the operating airline for the cost of the travel services provided.

프로세싱 및 데이터베이스 시스템은, 간접 판매자들 중 하나 또는 그 초과에 의해 행해진 이전의 거래들과 관련된 데이터를 포함하는 데이터베이스, 거래들을 핸들링하기 위한 항공사 특정 사업 규칙들의 데이터베이스, 및 거래에 대한 최상의 매칭을 갖는 사업 규칙을 결정하기 위해 데이터베이스들 각각 및 가격책정 엔진과 상호작용하는 감사 모듈을 포함할 수 있다. 티켓을 발행하기 위한 요청을 수신하는 것에 응답하여, 감사 모듈은, 계류 중인 거래가 발권 항공사의 임의의 가격책정 규칙들을 위반하는지를 결정할 수 있다. 거래가 적절하게 가격책정되는지의 결정은, 거래가 계류 중인 동안에 행해질 수 있거나, 또는 티켓을 예약하기 전에 가격책정을 체크하기 위한 간접 판매자에 의한 요청에 응답하여 행해질 수 있다. 거래가 적절하게 가격책정되지 않은 경우에, 감사 모듈은 발권 항공사에 대해 특정한 사업 규칙들을 포함하는 사업 규칙들의 데이터베이스에 액세스할 수 있다. 평가되는 거래와 관련된 사업 규칙들은 거래의 분류에 따라 변화할 수 있다.The processing and database system includes a database containing data related to previous transactions made by one or more of the indirect sellers, a database of airline specific business rules to handle transactions, and a business with the best match for the transaction. It may include an audit module that interacts with each of the databases and the pricing engine to determine rules. In response to receiving a request to issue a ticket, the audit module may determine if the pending transaction violates any pricing rules of the issuing airline. The determination of whether a transaction is properly priced may be made while the transaction is pending, or in response to a request by an indirect seller to check the pricing prior to booking a ticket. In case the transaction is not properly priced, the audit module can access a database of business rules, including business rules specific to the issuing airline. Business rules related to the transaction being evaluated may change depending on the classification of the transaction.

하나 초과의 사업 규칙이 거래와 관련되는 경우들에서, 감사 모듈은, 부적절하게 가격책정되었던 이전의 거래들과 관련된 데이터를 인출(retrieve)하기 위해, 이력적 정보의 데이터베이스에 액세스할 수 있다. 이러한 데이터는 결국, 관련된 사업 규칙들 중 어느 것이 계류 중인 거래에 대해 적용되어야 하는지를 결정하기 위해 사용될 수 있다. 그 후에, 감사 모듈은, 거래를 거부하기 위해; 거래가 부적절하게 가격책정되었다고 판매자에게 경고함으로써, 판매자가 수정 액션을 취하게 허용하기 위해; 티켓이 발행되게 허용하고, 발권 항공사의 어카운팅 시스템에 플래그를 세팅하여, ADM이 발행되어야 한다고 발권 항공사에게 통지하기 위해; 또는 부적절한 가격책정을 무시하고, 임의의 부가적인 액션을 취하지 않으면서 티켓 발행을 허용하기 위해, 선택된 사업 규칙을 적용할 수 있다. 감사 모듈은 또한, 간접 판매자가, 티켓의 발행을 요청하기 전에, 가격책정된 티켓의 변경들이 발권 항공사의 가격책정 규칙들에 따르는지를 검증할 수 있게 할 수 있다.In cases where more than one business rule is related to a transaction, the audit module may access a database of historical information to retrieve data related to previous transactions that have been improperly priced. This data can eventually be used to determine which of the relevant business rules should be applied for pending transactions. After that, the audit module, to reject the transaction; To allow the seller to take corrective action by warning the seller that the transaction was improperly priced; To allow the ticket to be issued, set a flag in the issuing airline's accounting system, to notify the issuing airline that an ADM should be issued; Alternatively, selected business rules can be applied to ignore improper pricing and allow ticket issuance without taking any additional action. The audit module may also enable the indirect seller to verify that changes to the priced ticket comply with the issuing airline's pricing rules before requesting issuance of the ticket.

이제 도 1을 참조하면, 본 발명의 실시예에 따른 동작 환경(10)은, 네트워크(18)를 통해 통신하는, GDS(Global Distribution System)(12), 하나 또는 그 초과의 항공사 시스템들(14), 및 하나 또는 그 초과의 여행 에이전시 시스템들(16)을 포함할 수 있다. 항공사 시스템들(14)은 각각, GDS(12) 또는 여행 에이전시 시스템들(16)이 에어라인 타켓들을 예약하고 에어라인 티켓들에 대해 지불할 수 있게 하는, 각각의 항공사에 대한 CRS(Computer Reservation System) 또는 다른 빌링(billing) 시스템을 포함할 수 있다. 항공사 시스템들(14)은 또한, 발권 항공사가 운항 항공사에 의해 제공되는 시트들에 대한 티켓들을 판매할 수 있게 하기 위해, 직접적으로, 또는 GDS(12)를 통해 서로 상호작용할 수 있다. 그 후에, 운항 항공사는 제공되는 서비스들에 대해 발권 항공사에게 빌링할 수 있다. 몇몇 경우들에서, 발권 항공사가 서비스를 제공할 수 있고, 그 경우에, 발권 항공사가 또한 운항 항공사일 것이다. 네트워크(18)는 데이터의 교환을 가능하게 하는 하나 또는 그 초과의 개인 또는 공중 네트워크들(예컨대, 인터넷)을 포함할 수 있다.Referring now to FIG. 1, an operating environment 10 according to an embodiment of the present invention includes a Global Distribution System (GDS) 12, one or more airline systems 14, which communicate via a network 18. ), and one or more travel agency systems 16. The airline systems 14, respectively, are a Computer Reservation System (CRS) for each airline that allows the GDS 12 or travel agency systems 16 to book airline targets and pay for airline tickets. ) Or other billing systems. The airline systems 14 may also interact with each other directly or through the GDS 12 to enable the issuing airline to sell tickets for seats provided by the operating airline. Thereafter, the operating airline may bill the issuing airline for the services provided. In some cases, the issuing airline may provide the service, in which case the issuing airline will also be the operating airline. Network 18 may include one or more private or public networks (eg, the Internet) that enable the exchange of data.

GDS(12)는, 여행 에이전트들, 발권 항공사들, 또는 다른 간접 판매자들이 GDS(12)를 통해 하나 또는 그 초과의 항공사 시스템들(14) 상에서의 예약들을 예약할 수 있게 함으로써, 여행 에이전시 시스템들(16)과 항공사 시스템들(14) 사이의 통신을 용이하게 하도록 구성될 수 있다. 이를 위해, GDS(12)는 네트워크(18)를 통해 항공사 시스템들(14) 각각에 대한 링크들을 유지할 수 있다. 이러한 링크들은, GDS(12)가, 여행 에이전시 시스템들(16) 또는 발권 항공사의 항공사 시스템들(14)로부터의 예약 및 예약 요청들을 운항 항공사의 대응하는 항공사 시스템들(14)로 라우팅하게 허용할 수 있다. 그에 의해, 항공사 시스템들(14) 및 여행 에이전시 시스템들(16)은 GDS(12)에 대한 단일 연결을 통해 다수의 에어라인들에 대한 항공편들을 예약할 수 있다.GDS 12 enables travel agents, issuing airlines, or other indirect sellers to book reservations on one or more airline systems 14 through GDS 12, thereby allowing travel agency systems to It may be configured to facilitate communication between 16 and the airline systems 14. To this end, the GDS 12 can maintain links to each of the airline systems 14 via the network 18. These links will allow the GDS 12 to route reservations and reservation requests from the travel agency systems 16 or the airline systems 14 of the issuing airline to the corresponding airline systems 14 of the operating airline. I can. Thereby, airline systems 14 and travel agency systems 16 can book flights for multiple airlines via a single connection to GDS 12.

이제 도 2를 참조하면, 동작 환경(10)의 GDS(12), 항공사 시스템들(14), 및 여행 에이전시 시스템들(16)이, 예시적인 컴퓨터(20)와 같은 하나 또는 그 초과의 컴퓨팅 디바이스들 또는 시스템들 상에서 구현될 수 있다. 컴퓨터(20)는 프로세서(22), 메모리(24), 대용량 저장 메모리 디바이스(26), 입력/출력(I/O) 인터페이스(28), 및 HMI(Human Machine Interface)(30)를 포함할 수 있다. 컴퓨터(20)는 또한, I/O 인터페이스(28) 또는 네트워크(18)를 통해 하나 또는 그 초과의 외부 리소스들(32)에 동작적으로(operatively) 커플링될 수 있다. 외부 리소스들은, 컴퓨터들, 서버들, 데이터베이스들, 대용량 저장 디바이스들, 주변 디바이스들, 클라우드 기반 네트워크 서비스들, 또는 컴퓨터(20)에 의해 사용될 수 있는 임의의 다른 적합한 컴퓨터 리소스를 포함할 수 있지만, 이에 제한되지는 않는다.Referring now to FIG. 2, the GDS 12, airline systems 14, and travel agency systems 16 of the operating environment 10 are one or more computing devices, such as the exemplary computer 20. Or systems. The computer 20 may include a processor 22, a memory 24, a mass storage memory device 26, an input/output (I/O) interface 28, and a human machine interface (HMI) 30. have. Computer 20 may also be operatively coupled to one or more external resources 32 via I/O interface 28 or network 18. External resources may include computers, servers, databases, mass storage devices, peripheral devices, cloud-based network services, or any other suitable computer resource that may be used by computer 20, but It is not limited thereto.

프로세서(22)는, 마이크로프로세서들, 마이크로제어기들, 디지털 신호 프로세서들, 마이크로컴퓨터들, 중앙 프로세싱 유닛들, 필드 프로그래머블 게이트 어레이들, 프로그머블 로직 디바이스들, 상태 머신들, 로직 회로들, 아날로그 회로들, 디지털 회로들, 또는 메모리(24)에 저장된 동작 명령들에 기초하여 신호들(아날로그 또는 디지털)을 조작하는 임의의 다른 디바이스들로부터 선택되는 하나 또는 그 초과의 디바이스들을 포함할 수 있다. 메모리(24)는, 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 휘발성 메모리, 비휘발성 메모리, 정적 랜덤 액세스 메모리(SRAM), 동적 랜덤 액세스 메모리(DRAM), 플래시 메모리, 캐시 메모리, 또는 정보를 저장할 수 있는 임의의 다른 디바이스를 포함하지만 이에 제한되지는 않는 복수의 메모리 디바이스들 또는 단일 메모리 디바이스를 포함할 수 있다. 대용량 저장 메모리 디바이스(26)는, 하드 드라이브, 광학 드라이브, 테이프 드라이브, 비휘발성 고체 상태 디바이스, 또는 정보를 저장할 수 있는 임의의 다른 디바이스와 같은 데이터 저장 디바이스들을 포함할 수 있다.The processor 22 includes microprocessors, microcontrollers, digital signal processors, microcomputers, central processing units, field programmable gate arrays, programmable logic devices, state machines, logic circuits, analog circuitry. Devices, digital circuits, or any other devices that manipulate signals (analog or digital) based on operational instructions stored in memory 24. The memory 24 is a read-only memory (ROM), random access memory (RAM), volatile memory, nonvolatile memory, static random access memory (SRAM), dynamic random access memory (DRAM), flash memory, cache memory, or It may include a single memory device or multiple memory devices including, but not limited to, any other device capable of storing information. Mass storage memory device 26 may include data storage devices, such as a hard drive, an optical drive, a tape drive, a non-volatile solid state device, or any other device capable of storing information.

프로세서(22)는 메모리(24)에 상주하는 운영 시스템(34)의 제어 하에서 동작할 수 있다. 운영 시스템(34)은, 메모리(24)에 상주하는 애플리케이션(36)과 같은 하나 또는 그 초과의 컴퓨터 소프트웨어 애플리케이션들로서 구현되는 컴퓨터 프로그램 코드가 프로세서(22)에 의해 실행되는 명령들을 가질 수 있도록, 컴퓨터 리소스들을 관리할 수 있다. 대안적인 실시예에서, 프로세서(22)는 애플리케이션(36)을 직접적으로 실행시킬 수 있고, 그 경우에, 운영 시스템(34)이 생략될 수 있다. 하나 또는 그 초과의 데이터 구조들(38)이 또한 메모리(24)에 상주할 수 있고, 데이터를 저장 또는 조작하기 위해, 프로세서(22), 운영 시스템(34), 또는 애플리케이션(36)에 의해 사용될 수 있다.The processor 22 can operate under the control of the operating system 34 residing in the memory 24. The operating system 34 allows the computer program code implemented as one or more computer software applications, such as the application 36 residing in the memory 24, to have instructions executed by the processor 22. You can manage your resources. In an alternative embodiment, processor 22 may directly execute application 36, in which case, operating system 34 may be omitted. One or more data structures 38 may also reside in memory 24 and may be used by processor 22, operating system 34, or application 36 to store or manipulate data. I can.

I/O 인터페이스(28)는, 프로세서(22)를 외부 리소스(32) 또는 네트워크(18)와 같은 다른 디바이스들 및 시스템들에 동작적으로 커플링시키는 머신 인터페이스를 제공할 수 있다. 그에 의해, 애플리케이션(36)은, 본 발명의 실시예들을 포함하는 다양한 피처(feature)들, 기능들, 애플리케이션들, 프로세스들, 또는 모듈들을 제공하기 위해, I/O 인터페이스(28)를 통해 통신함으로써, 외부 리소스(32) 또는 네트워크(18)와 협력하여 작업할 수 있다. 애플리케이션(36)은 또한, 하나 또는 그 초과의 외부 리소스들(32)에 의해 실행되는 프로그램 코드를 가질 수 있거나, 또는 그렇지 않으면, 컴퓨터(20) 외부의 다른 시스템 또는 네트워크 컴포넌트들에 의해 제공되는 신호들 또는 기능들에 의존할 수 있다. 실제로, 가능한 거의 무한한 하드웨어 및 소프트웨어 구성들이 주어진다면, 당업자는, 본 발명의 실시예들이, 컴퓨터(20) 외부에 위치된, 다수의 컴퓨터들 또는 다른 외부 리소스들 사이에서 분배된, 또는 클라우드 컴퓨팅 서비스와 같은, 네트워크(18)를 통해 서비스로서 제공되는 컴퓨팅 리소스들(하드웨어 및 소프트웨어)에 의해 제공되는 애플리케이션들을 포함할 수 있다는 것을 이해할 것이다.The I/O interface 28 may provide a machine interface that operatively couples the processor 22 to an external resource 32 or other devices and systems such as a network 18. Thereby, the application 36 communicates via the I/O interface 28 to provide various features, functions, applications, processes, or modules, including embodiments of the present invention. By doing so, it is possible to work in cooperation with the external resource 32 or the network 18. Application 36 may also have program code executed by one or more external resources 32, or otherwise, signals provided by other systems or network components external to computer 20 Can depend on the s or functions. Indeed, given the nearly limitless possible hardware and software configurations, those skilled in the art will appreciate that embodiments of the present invention are distributed among multiple computers or other external resources, located outside the computer 20, or cloud computing services. It will be appreciated that applications provided by computing resources (hardware and software) provided as a service over the network 18, such as may be included.

HMI(30)는, 사용자가 컴퓨터(20)와 직접적으로 상호작용하게 허용하기 위해 알려진 방식으로 컴퓨터(20)의 프로세서(22)에 동작적으로 커플링될 수 있다. HMI(30)는, 비디오 또는 알파뉴메릭(alphanumeric) 디스플레이들, 터치 스크린, 스피커, 및 사용자에게 데이터를 제공할 수 있는 임의의 다른 적합한 음성 및 시각적 인디케이터(indicator)들을 포함할 수 있다. HMI(30)는 또한, 사용자로부터 입력 또는 커맨드들을 수용할 수 있고 입력된 입력을 프로세서(22)로 송신할 수 있는, 알파뉴메릭 키보드, 포인팅 디바이스, 키패드들, 푸시버튼들, 제어 노브들, 마이크로폰들 등과 같은 입력 디바이스들 및 제어 수단들을 포함할 수 있다.The HMI 30 may be operatively coupled to the processor 22 of the computer 20 in a known manner to allow a user to interact directly with the computer 20. HMI 30 may include video or alphanumeric displays, a touch screen, a speaker, and any other suitable audio and visual indicators that may provide data to a user. HMI 30 also accepts input or commands from a user and can transmit input input to processor 22, an alphanumeric keyboard, pointing device, keypads, pushbuttons, control knobs, Input devices and control means such as microphones and the like may be included.

데이터베이스(40)는 대용량 저장 메모리 디바이스(26) 상에 상주할 수 있고, 본원에서 설명되는 다양한 시스템들 및 모듈들에 의해 사용되는 데이터를 수집 및 구성하기 위해 사용될 수 있다. 데이터베이스(40)는 데이터, 및 데이터를 저장 및 구성하는 지원 데이터 구조들을 포함할 수 있다. 특히, 데이터베이스(40)는, 관계 데이터베이스, 계층 데이터베이스, 네트워크 데이터베이스, 또는 이들의 조합들을 포함하지만 이에 제한되지는 않는 임의의 데이터베이스 구성 또는 구조로 배열될 수 있다. 데이터베이스 관리 시스템은 프로세서(22) 상에서 명령들로서 실행하는 컴퓨터 소프트웨어 애플리케이션에 의해 제공될 수 있다. 이러한 데이터베이스 관리 시스템은, 문의에 응답하여, 데이터베이스 기록들에 저장된 정보 또는 데이터에 액세스하기 위해 사용될 수 있다. 문의는, 운영 시스템(34), 다른 애플리케이션들(36), 또는 하나 또는 그 초과의 모듈들에 의해, 동적으로 결정 및 실행될 수 있다.Database 40 may reside on mass storage memory device 26 and may be used to collect and organize data used by the various systems and modules described herein. The database 40 may include data and supporting data structures that store and organize data. In particular, the database 40 may be arranged in any database configuration or structure including, but not limited to, a relational database, a hierarchical database, a network database, or combinations thereof. The database management system may be provided by a computer software application executing as instructions on the processor 22. Such a database management system may be used to access information or data stored in database records in response to an inquiry. The query may be determined and executed dynamically, by the operating system 34, other applications 36, or one or more modules.

이제 도 3을 참조하면, 본 발명의 실시예에 따른 예시적인 동작 환경(50)은, 감사 모듈(52), 이력적 판매 편차(HSD) 데이터베이스(54), 예약 모듈(56), 요금 엔진(58), CRS(60), 사업 규칙 데이터베이스(62), 및 티케팅 모듈(64)을 포함할 수 있고, 이들 각각은 적합한 컴퓨팅 시스템에 의해 제공될 수 있다. 예컨대, 감사 모듈(52), HSD 데이터베이스(54), 예약 모듈(56), 및 요금 엔진(58)은 GDS(12)에 의해 제공될 수 있고, CRS(60) 및 사업 규칙 데이터베이스(62)는 항공사 시스템들(14) 중 하나에 의해 제공될 수 있고, 티케팅 모듈(64)은 여행 에이전시 시스템들(16) 중 하나에 의해 제공될 수 있다.Referring now to FIG. 3, an exemplary operating environment 50 according to an embodiment of the present invention includes an audit module 52, a historical sales deviation (HSD) database 54, a reservation module 56, a rate engine ( 58), a CRS 60, a business rules database 62, and a ticketing module 64, each of which may be provided by a suitable computing system. For example, the audit module 52, the HSD database 54, the reservation module 56, and the rate engine 58 may be provided by the GDS 12, and the CRS 60 and the business rules database 62 It may be provided by one of the airline systems 14, and the ticketing module 64 may be provided by one of the travel agency systems 16.

에어라인 티켓 또는 다른 여행 서비스를 구매하는 것은 여행 서비스를 가격책정하고, 예약하고, 티켓팅하는 것을 수반할 수 있다. 예컨대, 여행자가 여정에 대해 만족하면, 여행 에이전트는, 티케팅 모듈(64)에 의해 제공되는 사용자 인터페이스와 상호작용함으로써, 여정을 포함하는 하나 또는 그 초과의 티켓들을 가격책정할 수 있다. 이러한 상호작용에 응답하여, 티케팅 모듈(64)은 요금 엔진(58)에 가격책정 요청을 전송할 수 있고, 그 요금 엔진(58)은 차례로, 하나 또는 그 초과의 티켓들에 대한 가격들을 결정하고, 타케팅 모듈(64)에 응답한다.Purchasing an airline ticket or other travel service may involve pricing, booking, and ticketing the travel service. For example, if the traveler is satisfied with the itinerary, the travel agent may price one or more tickets including the itinerary by interacting with the user interface provided by the ticketing module 64. In response to this interaction, the ticketing module 64 can send a pricing request to the fare engine 58, which, in turn, determines prices for one or more tickets, and Respond to the targeting module 64.

여행 에이전트는, 요금 엔진(58)으로부터 수신된 가격에 기초하여, 티켓이 자동적으로 가격책정되게 허용할 수 있다. 여행 에이전트는 또한 티켓에 대한 가격을 수동적으로 입력할 수 있고, 이는, 여행 에이전트가 요금 엔진(58)에 의해 리터닝된 가격으로부터 가격을 조정하게 허용할 수 있다. 어느 경우에서도, 여행 에이전트는, 티케팅 모듈(64)이 예약 모듈(56)에 예약 요청을 전송하게 함으로써, 티켓을 예약할 수 있다. 그 후에, 예약 모듈(56)은, 예약 요청에서 식별된 하나 또는 그 초과의 항공편들의 이용가능성을 결정하기 위해 CRS(60)와 통신할 수 있다. 요청된 항공편들에 대해 시트가 이용가능한 경우에, 예약 모듈(56)은 항공편을 예약할 수 있고, CRS(60)는 예약을 반영하기 위해 대응하는 운항 항공사의 재고를 감소시킬 수 있다. 그 후에, 예약 모듈(56)은 티케팅 모듈(64)로 예약 확인을 송신할 수 있고, 그 티케팅 모듈(64)은 차례로, 여행자에게 티켓을 발행할 수 있다. 여행자의 어카운트(예컨대, 크레디트 카드)는 티켓의 발행 시에 빌링될 수 있다.The travel agent may allow tickets to be automatically priced based on the price received from the fare engine 58. The travel agent may also manually enter a price for the ticket, which may allow the travel agent to adjust the price from the price returned by the fare engine 58. In either case, the travel agent can reserve a ticket by having the ticketing module 64 send a reservation request to the reservation module 56. Thereafter, the reservation module 56 may communicate with the CRS 60 to determine the availability of one or more flights identified in the reservation request. If seats are available for the requested flights, the reservation module 56 can book the flight, and the CRS 60 can reduce the inventory of the corresponding operating carrier to reflect the reservation. Thereafter, the reservation module 56 may send a reservation confirmation to the ticketing module 64, and the ticketing module 64, in turn, may issue a ticket to the traveler. The traveler's account (eg, credit card) can be billed at the time of ticket issuance.

거래 동안에, 감사 모듈(52)은, 티켓에 대해 청구되어야 하는 정확한 가격(PC)을 표현하는 감사 양, 및 티켓에 대한 견적 가격(PQ)과 같은, 거래의 하나 또는 그 초과의 특성들을 정의하는 데이터를 수신할 수 있다. 이러한 데이터는 예약 모듈(56) 또는 요금 엔진(58)으로부터 직접적으로 수신될 수 있다. 데이터는 또한, GDS(12), 항공사 시스템들(14), 및 여행 에이전시 시스템(16) 사이의 통신들을 모니터링하는 감사 모듈(52)에 의해 수신될 수 있다. 티켓에 대한 가격책정은, 예컨대, 예약 모듈(56)이 예약 요청을 수신하는 것에 응답하여 결정될 수 있다. 정확한 가격(PC)은, 예약 코드, 서비스의 클래스, 출발지-목적지 도시 쌍, 여행의 날짜, 또는 티켓을 특징화하는 임의의 다른 적합한 데이터와 같은, 티켓과 관련된 데이터에 기초할 수 있다. 이러한 데이터는, 티켓에 대한 견적 가격(PQ)을 결정하기 위해, 간접 판매자에 의해, 요금 관세들, 가격책정 규칙들, 라우팅 맵들, 서비스 테이블들의 클래스, 세금 정보 등이 적절하게 구현되었었는지를 결정하기 위해 사용될 수 있다. 가격책정 규칙들은 최소 체류 또는 사전 구매와 같은 예약 조건들을 포함할 수 있고, 서비스의 클래스 또는 도시 쌍에 대해 특정될 수 있다.During the transaction, the audit module 52 identifies one or more characteristics of the transaction, such as an audit amount representing the exact price P C that should be charged for the ticket, and the quoted price for the ticket P Q. You can receive the data you define. Such data may be received directly from the reservation module 56 or the rate engine 58. Data may also be received by an audit module 52 that monitors communications between the GDS 12, airline systems 14, and travel agency system 16. Pricing for the ticket may be determined, for example, in response to the reservation module 56 receiving the reservation request. The exact price P C may be based on data associated with the ticket, such as a booking code, class of service, origin-destination city pair, date of travel, or any other suitable data characterizing the ticket. This data is based on whether tariffs, pricing rules, routing maps, class of service tables, tax information, etc., were properly implemented by indirect sellers to determine the quoted price (P Q ) for the ticket. Can be used to determine. Pricing rules may include reservation conditions such as minimum stay or advance purchase, and may be specific for a class or city pair of service.

이제 도 4를 참조하면, HSD 데이터베이스(54)는 예시적인 거래 테이블(70)과 같은 하나 또는 그 초과의 거래 테이블들에 복수의 이전의 거래들을 유지하도록 구성될 수 있다. 거래 테이블(70)은 사기성 거래(72a 내지 72n)를 각각 표현하는 복수의 행들을 포함할 수 있다. 사기성 거래들은 발권 항공사의 하나 또는 그 초과의 가격책정 규칙들을 위반하였던 이전의 거래들을 포함할 수 있다. 거래 테이블(70)은 또한, 사기성 거래(72a 내지 72n)와 연관된 거래 특성(74a 내지 74m)을 각각 정의하는 복수의 열들을 포함할 수 있다. 거래 특성들(74a 내지 74m)은, 예컨대, 거래의 시간 또는 날짜(74a), 거래를 발생시켰던 에이전트의 아이덴티티(74b), 거래가 발생하였던 오피스의 아이덴티티(74c), 거래와 연관된 차이(V)(74d), 위반된 요금 카테고리(74e), 및 세금 위반이 있었는지 여부(74m)를 포함할 수 있다.Referring now to FIG. 4, the HSD database 54 may be configured to maintain a plurality of previous transactions in one or more transaction tables, such as the exemplary transaction table 70. The transaction table 70 may include a plurality of rows each representing fraudulent transactions 72a to 72n. Fraudulent transactions may include previous transactions that violate one or more of the issuing airline's pricing rules. The transaction table 70 may also include a plurality of columns each defining transaction characteristics 74a-74m associated with fraudulent transactions 72a-72n. Transaction characteristics 74a to 74m are, for example, the time or date 74a of the transaction, the identity 74b of the agent that caused the transaction, the identity 74c of the office where the transaction occurred, and the difference V associated with the transaction ( 74d), the fare category 74e violated, and whether there was a tax violation (74m).

각각의 사기성 거래(72a 내지 72n)는, 가격책정 규칙 위반 또는 다른 사기성 행위의 존재에도 불구하고 티켓이 발행되게 허용되었던 거래를 표현할 수 있다. 거래 테이블(70)은, 2개의 부분들: 예컨대, 여행 에이전트의 아이덴티티, 티케팅 오피스의 아이덴티티, 및 거래의 날짜를 포함하는 간접 판매자 프로파일; 및 차이(V)의 원인(예컨대, 페널티, 부적절하게 가격책정된 요금, 세금들의 부가 실패, 부정확한 수수료 등), 차이(V)의 범위 또는 양, 실제 수집 양, 이론적인 수집 양, 위반된 요금 카테고리(cat 31 등), 세금 위반이 있었는지의 여부, 거래의 타입(발행, 리펀드(refund), 재발행 등), 또는 임의의 다른 적합한 데이터와 같은, 사기를 설명하는 데이터로 구성될 수 있다.Each fraudulent transaction 72a-72n may represent a transaction in which a ticket was allowed to be issued despite the presence of a pricing rule violation or other fraudulent activity. The transaction table 70 includes two parts: an indirect seller profile including, for example, the identity of the travel agent, the identity of the ticketing office, and the date of the transaction; And the cause of the difference (V) (e.g., penalty, improperly priced fee, failure to add taxes, incorrect fees, etc.), the extent or amount of the difference (V), actual collection amount, theoretical collection amount, violated It may consist of data describing the scam, such as rate category (cat 31, etc.), whether there was a tax violation, the type of transaction (issue, refund, reissue, etc.), or any other suitable data. have.

HSD 데이터베이스(54)는 데이터베이스로부터 오래된(stale) 데이터를 제거(purge)하도록 구성될 수 있다. 예컨대, HSD 데이터베이스(54)는, 거래들이 특정한 연령(age)을 초과하는 경우에(예컨대, 일년보다 더 오래된 날짜를 갖는 거래들), 거래 테이블(70)로부터 사기성 거래들(72a 내지 72n)을 삭제할 수 있다. HSD 데이터베이스(54)는 또한, 복수의 사기성 거래들(72a 내지 72n)로부터의 거래 특성들(74a 내지 74m)에 기초하여, 하나 또는 그 초과의 사기 통계들을 결정할 수 있다. 예컨대, HSD 데이터베이스는, 사기의 빈도; 요금 카테고리, 거래 타입, 또는 세금 위반 중 하나 또는 그 초과에 대한 가장 위반된 규칙; 및 누적 차이를 결정할 수 있다. 사기의 빈도는, 정의된 차이 범위를 초과하는 차이(V), 및 정의된 체크 기간 내에 속하는 날짜를 갖는, HSD 데이터베이스(54)에 저장된 사기성 거래들의 수와 동등할 수 있다. 누적 차이는, 거래 분류 또는 거래 특성들(74a 내지 74m)의 정의된 조합에 대한 정의된 체크 기간에서의 모든 차이들(V)의 합과 동등할 수 있다. 이러한 통계들은 필요에 따라 결정될 수 있거나, 미리결정될 수 있고 메모리에 저장될 수 있거나, 또는 동적으로 결정될 수 있고 캐시에 저장될 수 있다.The HSD database 54 may be configured to purge stale data from the database. For example, HSD database 54 retrieves fraudulent transactions 72a-72n from transaction table 70 when transactions exceed a certain age (e.g., transactions with dates older than one year). Can be deleted. HSD database 54 may also determine one or more fraud statistics based on transaction characteristics 74a-74m from a plurality of fraudulent transactions 72a-72n. For example, the HSD database includes: frequency of fraud; The most violated rule for one or more of a rate category, transaction type, or tax violation; And the cumulative difference can be determined. The frequency of fraud may be equal to the number of fraudulent transactions stored in the HSD database 54 with a difference (V) exceeding a defined difference range, and a date falling within a defined check period. The cumulative difference may be equal to the sum of all differences V in a defined check period for a defined combination of transaction classification or transaction characteristics 74a-74m. These statistics can be determined as needed, can be predetermined and stored in memory, or can be determined dynamically and stored in a cache.

이제 도 5를 참조하면, 사업 규칙 데이터베이스(62)는 예시적인 사업 규칙 테이블(80)과 같은 하나 또는 그 초과의 사업 규칙 테이블들을 포함할 수 있다. 사업 규칙 테이블(80)은, 사업 규칙을 각각 정의하는 복수의 행들(82a 내지 82n), 및 규칙 파라미터를 각각 표현하는 복수의 열들(84a 내지 84m)을 포함할 수 있다. 예시적인 규칙 파라미터들은, 차이 범위(84a)(예컨대, V ≥ $ 10), 거래의 타입(84b)(예컨대, 최초 발행, 리펀드, 재발행), 위반된 요금 카테고리(84c)(예컨대, cat 31 - 임의적인(voluntary) 변화들), 세금 위반 인디케이터(84d)(예컨대, 예 또는 아니오), 차이들이 체크되고 누적될 사용자 레벨을 제공하는 체크 레벨(84e)(예컨대, 에이전트, 기업, 또는 오피스), 차이들이 체크되고 누적될 시간 기간을 정의하는 체크 기간(84f)(예컨대, 지난달, 지난주), 누적 사기 범위(84g), 체크 기간 동안의 사기의 사건들의 범위 또는 수를 정의하는 사기의 빈도(84h)(예컨대, 차이(V)가 차이 범위(84a)를 초과하는 거래들의 수), 및 사업 규칙(82a 내지 82n)이 시행되는 경우에 취해질 액션(84m)을 포함할 수 있다.Referring now to FIG. 5, the business rule database 62 may include one or more business rule tables, such as the exemplary business rule table 80. The business rule table 80 may include a plurality of rows 82a to 82n each defining a business rule, and a plurality of columns 84a to 84m each representing a rule parameter. Exemplary rule parameters include difference range 84a (e.g., V ≥ $ 10), type of transaction 84b (e.g., first issue, refund, reissue), violated rate category 84c (e.g., cat 31 Voluntary changes), tax violation indicator 84d (e.g., yes or no), check level 84e (e.g., agent, enterprise, or office) providing the user level at which differences will be checked and accumulated , Check period 84f (e.g., last month, last week), which defines the time period over which differences will be checked and accumulated, cumulative fraud range (84g), frequency of fraud defining the range or number of events of fraud during the check period ( 84h) (eg, the number of transactions for which the difference V exceeds the difference range 84a), and an action 84m to be taken if the business rules 82a-82n are enforced.

사업 규칙의 적용가능성을 결정하는 것에서, 특정한 파라미터가 고려되지 않거나 또는 무시되는 경우에, 대응하는 테이블 엔트리는 이를 표시하는 심볼(예컨대, *)을 포함할 수 있다. 사업 규칙 파라미터들(84a 내지 84m)은 발권 항공사에 의해 정의될 수 있고, 차이의 원인(예컨대, 페널티 요금, 세금, 부정확한 요금 등), 여행 에이전트에 의해 수집된 실제 양, 여행 에이전트에 의해 수집된 이론적인 양, 또는 임의의 다른 적합한 사업 규칙 파라미터와 같은, 사업 규칙 테이블(80)에 도시되지 않은 다른 파라미터들을 포함할 수 있다. 각각의 항공사가 이들의 고유의 사업 규칙 데이터베이스(62)를 정의 및 관리하게 허용함으로써, 각각의 항공사는 이들의 사업 요구들에 대해 특정된 사업 규칙들의 세트를 정의할 수 있다. 그에 의해, 본 발명의 실시예들은, 항공사들이, 사기 및 이력에 기초하여, 계류 중인 거래를 취급하기 위한 이들의 고유의 사업 규칙들 및 액션들을 정의할 수 있게 한다.In determining the applicability of the business rule, if a particular parameter is not considered or is ignored, the corresponding table entry may include a symbol (eg, *) indicating this. Business rule parameters 84a to 84m can be defined by the issuing airline, the cause of the difference (e.g., penalty fee, tax, incorrect fee, etc.), the actual amount collected by the travel agent, and collected by the travel agent. Other parameters not shown in the business rules table 80, such as a theoretical quantity, or any other suitable business rule parameter. By allowing each airline to define and manage their own business rules database 62, each airline can define a set of business rules that are specific to their business needs. Thereby, embodiments of the present invention allow airlines to define their own business rules and actions for handling pending transactions, based on fraud and history.

사업 규칙 파라미터들은, 거래 기준들, HSD 기준들, HSD 결과들, 또는 판정들로서 분류될 수 있다. 거래 기준들은, 차이 범위(84a), 거래의 타입(84b), 위반된 요금 카테고리(84c), 세금 위반 인디케이터(84d), 날짜(미도시), 에이전트 아이덴티티(미도시), 오피스 아이덴티티(미도시), 또는 거래 그 자체와 연관된 임의의 다른 사업 규칙 파라미터와 같은, 개별적인 거래들과 관련된 파라미터들을 포함할 수 있다. HSD 기준들은, 거래 기준들, 뿐만 아니라, 체크 레벨(84e) 및 체크 기간(84f) 파라미터들을 포함할 수 있다. HSD 결과들은, 누적 사기, 사기의 빈도, 또는 HSD 데이터베이스(54)에 저장된 거래 특성들에 대해 거래 기준들을 적용함으로써 결정된 임의의 다른 결과들을 포함할 수 있다. 판정들은, 계류 중인 거래에 대해 사업 규칙(82a 내지 82n)을 적용하는 것에 응답하여 취해질 액션들(84m)을 포함할 수 있다.Business rule parameters may be classified as transaction criteria, HSD criteria, HSD results, or decisions. Transaction criteria are: variance range 84a, transaction type 84b, violated rate category 84c, tax violation indicator 84d, date (not shown), agent identity (not shown), office identity (not shown). ), or any other business rule parameter associated with the transaction itself. The HSD criteria may include transaction criteria, as well as check level 84e and check period 84f parameters. HSD results may include cumulative fraud, frequency of fraud, or any other results determined by applying transaction criteria to transaction characteristics stored in HSD database 54. The decisions may include actions 84m to be taken in response to applying the business rules 82a-82n to the pending transaction.

티켓을 발행하기 위한 요청을 수신하는 것에 응답하여, 감사 모듈(52)은 사업 규칙 데이터베이스(62)에 문의할 수 있다. 문의는 거래의 감사의 결과와 같은, 계류 중인 거래와 관련된 정보를 포함할 수 있다. 문의에 응답하여, 사업 규칙 데이터베이스(62)는 하나 또는 그 초과의 관련된 사업 규칙들을 리터닝할 수 있다. 관련된 사업 규칙들 각각에 대해, 그 후에, 감사 모듈(52)은 관련된 사업 규칙과 매칭하는 HSD 기준들에 대해 HSD 데이터베이스(54)에 문의할 수 있다. 그 후에, 감사 모듈(52) 또는 HSD 데이터베이스(54)는, 평가되는 관련된 사업 규칙의 HSD 기준들을 만족시키는 거래들에 기초하여, 사기의 빈도 및 누적 양을 결정할 수 있다. 그 후에, 감사 모듈은, 관련된 사업 규칙들 중 어느 것이 거래에 대해 적용되어야 하는지를 결정하고, 대응하는 액션을 취하기 위해, 새로운 기준들로서 HSD 결과들을 재적용할 수 있다. 거래가 수용되는 경우에, 감사 모듈(52)은 새로운 거래 데이터로 HSD 데이터베이스(54)를 업데이팅할 수 있다.In response to receiving a request to issue a ticket, the audit module 52 may query the business rules database 62. The inquiry may contain information related to a pending transaction, such as the result of an audit of the transaction. In response to the query, the business rules database 62 may retrieve one or more related business rules. For each of the relevant business rules, then, the audit module 52 may query the HSD database 54 for HSD criteria that match the relevant business rule. Thereafter, the audit module 52 or the HSD database 54 may determine the frequency and cumulative amount of fraud based on transactions that satisfy the HSD criteria of the relevant business rule being evaluated. Thereafter, the audit module can reapply the HSD results as new criteria to determine which of the relevant business rules should be applied for the transaction and to take the corresponding action. If the transaction is accepted, the audit module 52 may update the HSD database 54 with the new transaction data.

이제 도 6을 참조하면, 본 발명의 실시예에 따라 감사 모듈(52)에 의해 수행될 수 있는 프로세스(90)를 나타내는 흐름도가 제시된다. 블록(92)에서, 프로세스(90)는 항공편과 같은 여행 서비스를 예약하기 위한 요청을 수신할 수 있다. 요청을 수신하는 것에 응답하여, 프로세스(90)는 판정 블록(94)으로 진행할 수 있고, 티켓에 대한 견적 가격(PQ)이 발권 항공사의 가격책정 규칙들과 일치하는지를 결정한다. 이러한 결정은 견적 가격(PQ)이 정확한 가격(PC)과 매칭하는지에 기초할 수 있다. 가격책정 규칙들은 요금 기반 코드에 의해 식별될 수 있고, 거래의 특성들, 예컨대, 예약 클래스, 티켓 구매 요건들(예컨대, 사전 구매 요구, 리펀드 가능, 리펀드 불가능, 웹 온리(web-only) 요금 등), 체류 요건들, 왕복 요건들, 항공편 출발지 요건들, 연결 요건들, 계절적인(seasonal) 요건들, 요일 요건들을 정의하는 하나 또는 그 초과의 요금 카테고리들, 항공편 제약들, 또는 요금에 대해 적합하도록 만족되어야만 하는 임의의 다른 규칙 또는 항공사 정책에 따를 수 있다. 각각의 마켓에서 사용될 수 있는 복수의 요금 기준이 있을 수 있고, 각각의 요금 기준은 복수의 가능한 요금들을 커버한다. 가격책정 규칙들은 또한, 항공사들 사이에서 변화할 수 있다.Referring now to FIG. 6, a flow diagram is presented illustrating a process 90 that may be performed by the audit module 52 in accordance with an embodiment of the present invention. At block 92, process 90 may receive a request to reserve a travel service, such as a flight. In response to receiving the request, process 90 may proceed to decision block 94 and determine if the quoted price for the ticket (P Q ) matches the issuing airline's pricing rules. This determination may be based on whether the quoted price (P Q ) matches the exact price (P C ). Pricing rules can be identified by a rate-based code, and characteristics of the transaction, such as booking class, ticket purchase requirements (e.g., pre-purchase request, refundable, non-refundable, web-only). Rates, etc.), stay requirements, round trip requirements, flight origin requirements, connection requirements, seasonal requirements, day of the week requirements, one or more fare categories, flight restrictions, or fares. It may be subject to any other rules or airline policy that must be satisfied to be appropriate for it. There may be multiple rate criteria that can be used in each market, and each rate criterion covers multiple possible rates. Pricing rules can also vary between airlines.

견적 가격(PQ)이 항공사 가격책정 규칙들과 일치하는 경우에(판정 블록(94)의 "예" 분기), 프로세스(90)는 블록(96)으로 진행할 수 있고, 추가적인 액션 없이 티켓이 발행되게 허용할 수 있다. 견적 가격(PQ)이 항공사 가격책정 규칙들과 일치하지 않는 경우에(판정 블록(94)의 "아니오" 분기), 프로세스(90)는 블록(98)으로 진행할 수 있다. 본 발명의 실시예에서, 견적 가격(PQ)은, 차이(V = PQ - PC)가 미리 결정된 최소 임계치(threshold)와 동등하거나 또는 그 초과(예컨대, V ≥ 0)인 한, 정확한 가격(PC)과 매칭하는 것으로 고려될 수 있다.If the quoted price (P Q ) matches the airline pricing rules (“Yes” branch of decision block 94), then process 90 can proceed to block 96 and the ticket is issued without further action. Can be allowed. If the quoted price P Q does not match the airline pricing rules (the “no” branch of decision block 94), the process 90 may proceed to block 98. In an embodiment of the present invention, the quoted price (P Q ) is accurate, as long as the difference (V = P Q -P C ) is equal to or greater than a predetermined minimum threshold (e.g., V ≥ 0). It can be considered to match the price P C.

블록(98)에서, 프로세스(90)는 계류 중인 거래를 분류할 수 있다. 분류는, 예컨대, 거래 특성들의 특정된 세트가 사업 규칙 파라미터들(84a 내지 84m)의 특정된 세트와 매칭하는지에 기초할 수 있다. 본 발명의 실시예에서, 분류는, 차이 범위(84a), 거래의 타입(84b), 위반된 요금 카테고리(84c), 및 세금 위반 인디케이터(84d)의 값에 의해 정의될 수 있다. 당업자는, 다른 거래 특성들이 계류 중인 거래를 분류하기 위해 사용될 수 있고, 본 발명의 실시예들이 거래 특성들의 임의의 특정 세트에 기초하여 계류 중인 거래를 분류하는 것에 제한되지 않는다는 것을 인식할 것이다. 계류 중인 거래를 분류하는 것에 응답하여, 프로세스(90)는 블록(100)으로 진행할 수 있다.At block 98, process 90 can classify pending transactions. The classification may be based, for example, on whether the specified set of transaction characteristics matches the specified set of business rule parameters 84a-84m. In an embodiment of the present invention, the classification may be defined by the difference range 84a, the type of transaction 84b, the violated rate category 84c, and the value of the tax violation indicator 84d. Those of skill in the art will appreciate that other transaction characteristics may be used to classify pending transactions, and that embodiments of the invention are not limited to classifying pending transactions based on any particular set of transaction characteristics. In response to classifying the pending transaction, the process 90 may proceed to block 100.

블록(100)에서, 프로세스(90)는, 분류에 기초하여, 계류 중인 거래에 관련된 규칙들을 인출할 수 있다. 이를 위해, 프로세스(90)는 발권 항공사의 사업 규칙 데이터베이스(62)로 문의(102)를 송신할 수 있다. 문의(102)는 사업 규칙 데이터베이스(62)가 계류 중인 거래의 분류에 관련된 사업 규칙들을 식별하는 것을 요청할 수 있다. 문의를 수신하는 것에 응답하여, 사업 규칙 데이터베이스(62)는 복수의 사업 규칙들(82a 내지 82n)로부터 분류와 매칭하는 사업 규칙들을 선택할 수 있다. 즉, 사업 규칙 데이터베이스(62)는, 계류 중인 거래를 분류하기 위해 사용된 특성들과 매칭하는 파라미터들(예컨대, 84a 내지 84d)(예컨대, 차이 범위, 거래의 타입, 위반된 요금 카테고리, 또는 세금 위반의 존재)을 갖는 각각의 사업 규칙(82a 내지 82n)을 선택할 수 있다. 그 후에, 사업 규칙 데이터베이스(62)는 관련된 사업 규칙들을 포함하는 응답(104)을 프로세스(90)로 송신할 수 있다. 그 후에, 프로세스(90)는 블록(106)으로 진행할 수 있다.At block 100, process 90 may fetch rules related to a pending transaction based on the classification. To this end, process 90 may send an inquiry 102 to the issuing airline's business rules database 62. Query 102 may request business rules database 62 to identify business rules related to the classification of pending transactions. In response to receiving the inquiry, the business rules database 62 may select business rules matching the classification from the plurality of business rules 82a-82n. That is, the business rules database 62 includes parameters (e.g., 84a to 84d) that match the characteristics used to classify pending transactions (e.g., difference range, type of transaction, violated rate category, or tax). Each of the business rules 82a-82n with the presence of violation) can be selected. Thereafter, the business rules database 62 may send a response 104 to the process 90 including the relevant business rules. Thereafter, the process 90 may proceed to block 106.

블록(106)에서, 프로세스(90)는, HSD 데이터베이스(54)에 하나 또는 그 초과의 문의들(108)을 송신함으로써, HSD 데이터베이스(54)로부터 판매자 이력 데이터를 인출할 수 있다. 문의들(108)은, 검색 기준들을 만족시키는 사기성 거래들만이 고려되도록, HSD 데이터베이스(54)가 데이터베이스 검색 결과들을 필터링하게 하는 검색 기준들을 정의할 수 있다. 그에 의해, 검색 기준들은, 사업 규칙 데이터베이스(62)로부터 인출된 사업 규칙들 중 적어도 하나에 관련된, HSD 데이터베이스(54)에 저장된 사기성 거래들 중 하나 또는 그 초과를 포함하는 거래들의 세트를 정의할 수 있다. 예컨대, 하나 또는 그 초과의 문의들(108)은, HSD 데이터베이스(54)가, 계류 중인 거래를 발생시키는 오피스와 관련된 모든 사기성 거래들에 대한 데이터를, 계류 중인 거래를 발생시키는 에이전트를 수반하는 사기성 거래들에 대한 데이터만을, 또는 특정한 기업 엔티티를 수반하는 데이터만을 리턴하는 것을 요청할 수 있다. 검색 기준들은 적용되는 사업 규칙들에 의해 정의될 수 있고, 데이터가 리터닝되어야 하는 체크 기간(예컨대, 지난달) 및 체크 레벨(예컨대, 여행 에이전시, 티케팅 오피스, 여행 에이전트, 또는 기업 엔티티)을 포함할 수 있다. 그에 의해, HSD 데이터베이스(54)의 출력은, 데이터가 발권 항공사에 관련된 데이터를 포함하도록 구성가능할 수 있다. HSD 데이터베이스(54)에 의해 리터닝되는 데이터의 예들은, 하나 또는 그 초과의 문의들(108)을 트리거링하는 사업 규칙에 의해 정의되는 체크 기간에서의 사기의 빈도 및 누적 사기를 포함할 수 있다.At block 106, process 90 may fetch merchant history data from HSD database 54 by sending one or more queries 108 to HSD database 54. Queries 108 may define search criteria that cause HSD database 54 to filter database search results so that only fraudulent transactions that satisfy the search criteria are considered. Thereby, the search criteria may define a set of transactions including one or more of the fraudulent transactions stored in the HSD database 54, related to at least one of the business rules withdrawn from the business rules database 62. have. For example, one or more inquiries 108 may include data on all fraudulent transactions related to the office causing the HSD database 54 to generate the pending transaction, and the fraudulent process involving the agent generating the pending transaction. You can request to return only data about transactions, or only data involving a specific corporate entity. Search criteria can be defined by the business rules that apply, and will include the check period (e.g., last month) and check level (e.g., travel agency, ticketing office, travel agent, or corporate entity) for which data should be returned I can. Thereby, the output of the HSD database 54 may be configurable such that the data includes data related to the issuing airline. Examples of data returned by HSD database 54 may include the frequency of fraud and cumulative fraud in the check period defined by the business rule triggering one or more queries 108.

본 발명의 실시예에서, 프로세스(90)는 블록(100)에서 리터닝된 각각의 사업 규칙에 대한 문의(108)를 송신할 수 있다. 문의들(108)을 수신하는 것에 응답하여, HSD 데이터베이스(54)는 각각의 문의(108)에 의해 식별된 사업 규칙(82a 내지 82n)과 매칭하는 모든 사기성 거래들(72a 내지 72n)을 결정할 수 있다. 예컨대, 사업 규칙은, 차이 범위 "> $ 10", "발행"의 거래 타입, "CAT 31"의 요금 카테고리, "에이전트"의 체크 레벨, 및 "1 달"의 체크 기간을 정의할 수 있다. 이러한 예시적인 사업 규칙을 수신하는 것에 응답하여, HSD 데이터베이스(54)는, 계류 중인 거래를 발생시켰던 에이전트에 대한 CAT 31 위반 및 차이 > $ 10을 갖는 지난 달 동안의 모든 티켓 발행들을 리턴할 수 있다. HSD 데이터베이스(54)는, 매칭 거래들로부터 결정된 데이터, 또는 매칭 거래들을 포함하는 응답(110)을 프로세스(90)로 송신함으로써, 이러한 데이터를 제공할 수 있다. HSD 데이터베이스(54)는 또한, 발권 에어라인에 대한 사기성 거래들만이 프로세스(90)에 의해 고려되도록, 발권 항공사의 아이덴티티에 기초하여, 데이터를 필터링할 수 있다.In an embodiment of the present invention, process 90 may send an inquiry 108 for each business rule returned at block 100. In response to receiving the queries 108, the HSD database 54 may determine all fraudulent transactions 72a through 72n that match the business rules 82a through 82n identified by each query 108. have. For example, the business rule may define a difference range "> $ 10", a transaction type of "Issue", a rate category of "CAT 31", a check level of "Agent", and a check period of "1 month". In response to receiving this exemplary business rule, the HSD database 54 may return all ticket issuances for the last month with a CAT 31 violation and a difference> $10 for the agent that caused the pending transaction. . The HSD database 54 may provide such data by sending data determined from matching transactions, or a response 110 containing matching transactions, to the process 90. The HSD database 54 may also filter the data, based on the identity of the issuing airline, so that only fraudulent transactions for the issuing airline are considered by the process 90.

HSD 데이터베이스(54)로부터 사기성 거래 데이터를 수신하는 것에 응답하여, 프로세스(90)는 블록(112)으로 진행할 수 있고, 계류 중인 거래에 대해 적용하기 위한 단일 사업 규칙을 식별하기 위해, 사기성 거래 데이터를 새로운 기준들로서 적용할 수 있다. 이를 위해, 프로세스(90)는 판매자 데이터와 매칭하는 것을 실패한 파라미터들을 갖는, 블록(100)에서 수신된 사업 규칙들을 제거할 수 있다. 예컨대, 프로세스(90)는, 대응하는 사업에 대해 인출된 사기성 거래 데이터에 기초하여, 각각의 사업 규칙에 대한 사기 메트릭을 결정할 수 있다. 사기 메트릭은, 예컨대, 평가되는 사업 규칙에 대한 사기의 빈도 및 누적 사기 중 하나 또는 양자 모두를 포함할 수 있다. 이러한 결정들은 HSD 데이터베이스(54)에서 행해질 수 있고, 감사 모듈(52)로 송신될 수 있거나, 또는 HSD 데이터베이스(54)로부터 수신된 데이터에 기초하여, 감사 모듈(52)에 의해 결정될 수 있다. 결정된 누적 사기 또는 사기의 빈도가 사업 규칙의 대응하는 파라미터들과 매칭하지 않는 경우에, 사업 규칙은 프로세스(90)에 의한 고려로부터 제거될 수 있다.In response to receiving the fraudulent transaction data from the HSD database 54, the process 90 may proceed to block 112, where the fraudulent transaction data is retrieved to identify a single business rule to apply for the pending transaction. It can be applied as new standards. To this end, process 90 may remove business rules received at block 100 with parameters that fail to match vendor data. For example, process 90 may determine a fraud metric for each business rule based on fraudulent transaction data withdrawn for a corresponding business. The fraud metric may include, for example, one or both of the frequency of fraud and the cumulative fraud for the business rule being evaluated. These decisions may be made in the HSD database 54, may be transmitted to the audit module 52, or may be determined by the audit module 52, based on data received from the HSD database 54. If the determined cumulative fraud or frequency of fraud does not match the corresponding parameters of the business rule, the business rule may be removed from consideration by process 90.

사기성 거래 데이터를 적용한 후에, 가능한 사기와 매칭하는 하나 초과의 사업 규칙이 있는 경우에, 프로세스(90)는 "최상의 매칭"을 갖는 사업 규칙을 선택할 수 있다. 최상의 매칭은, 사업 규칙의 제한성(restrictiveness), 및 사업 규칙에 의해 어떤 사업 규칙 파라미터들(84a 내지 84m)이 고려되는지에 기초하여 결정될 수 있다. 이를 위해, 프로세스(90)는 평가되는 규칙들의 각각의 파라미터에 가중치를 할당할 수 있고, 규칙에 의해 고려되는 각각의 파라미터의 가중치(weight)를 합산함으로써 각각의 사업 규칙에 대한 최상의 매칭 스코어를 결정할 수 있다. 가중치들은, 2개의 별개의 사업 규칙들(82a 내지 82n)에 대한 동일한 가중화된 스코어를 생성하는 것을 방지하기 위해, 그리고 사기를 감소시키기 위해, 파라미터들의 관련성에 기초하여 정의될 수 있다.After applying the fraudulent transaction data, if there is more than one business rule matching the possible fraud, the process 90 may select the business rule with the “best match”. The best match may be determined based on the restrictiveness of the business rule, and which business rule parameters 84a-84m are considered by the business rule. To this end, the process 90 may assign a weight to each parameter of the rules being evaluated, and determine the best matching score for each business rule by summing the weights of each parameter considered by the rule. I can. Weights can be defined based on the relevance of the parameters to avoid generating the same weighted score for two separate business rules 82a-82n, and to reduce fraud.

예컨대, 차이 범위(84a)가, 사기의 빈도(84h)보다, 거래가 수용되어야 하는지를 결정하는 것에 더 관련되고, 사기의 빈도(84h)가, 위반된 요금 카테고리(84c)보다 더 관련된다고 결정될 수 있다. 이러한 예시적인 시나리오 하에서, 차이 범위(84a)에는 비교적 높은 값(예컨대, 4)을 갖는 가중치가 할당될 수 있고, 사기의 빈도(84h)에는 중간 값(예컨대, 2)을 갖는 가중치가 할당될 수 있고, 거래(84b)에는 비교적 낮은 값(예컨대, 1)을 갖는 가중치가 할당될 수 있다. 사기와 매칭하고 이러한 3개의 파라미터들 각각을 고려하는 사업 규칙들은 4 + 2 + 1 = 7의 가중화된 스코어를 수신할 것이다. 대조적으로, 사기와 매칭하지만 처음 2개의 파라미터들만을 고려하는 (차이 범위(84a) 및 사기의 빈도(84h)가 고려되고, 거래의 타입(84b)는 무시되는) 사업 규칙들은, 4 + 2 = 6의 가중화된 스코어를 가질 것이다.For example, it may be determined that the difference range 84a is more relevant to determining whether a transaction should be accepted, than the frequency of fraud 84h, and that the frequency of fraud 84h is more relevant than the violated rate category 84c. . Under this exemplary scenario, the difference range 84a may be assigned a weight with a relatively high value (e.g. 4), and the fraud frequency 84h may be assigned a weight with an intermediate value (e.g. 2). In addition, the transaction 84b may be assigned a weight having a relatively low value (eg, 1). Business rules matching fraud and taking each of these three parameters into account will receive a weighted score of 4 + 2 + 1 = 7. In contrast, business rules that match fraud but consider only the first two parameters (differential range 84a and frequency of fraud 84h are considered, and the type of transaction 84b is ignored), 4 + 2 = It will have a weighted score of 6.

2개 또는 그 초과의 사업 규칙들이 동일한 최상의 매칭 스코어를 갖는 경우에, 프로세스(90)는 추가로, 남은 사업 규칙들 중 가장 제한적인 것을 선택함으로써, 단일 사업 규칙으로 결과들을 좁힐 수 있다. 이를 위해, 프로세스(90)는, 가장 높은 가중화된 파라미터로 시작하고 하향으로 작업하여, 개별적인 파라미터들의 값에 기초하여, 남은 사업 규칙들을 비교할 수 있다. 위의 예로 돌아가면, 프로세스(90)는 남은 사업 규칙들 각각의 차이 범위(84a)를 비교할 수 있다. 하나의 사업 규칙이, 다른 남은 사업 규칙들 중 임의의 것보다 더 제한적인 차이 범위를 갖는(예컨대, 사업 규칙이 V의 더 높은 값을 요구하는) 경우에, 그 사업 규칙이, 수신된 예약 요청을 평가하기 위해 선택될 수 있다. 제한성의 다른 예들은, 수개의 에이전트들을 포함할 수 있는 "오피스"와 비교되는 "에이전트"의 체크 레벨(84e)을 포함한다. 따라서, 더 제한적인 파라미터가 더 적은 거래들에 적용되는 것으로 인해, 하나의 파라미터가 다른 파라미터보다 더 제한적인 것으로 고려될 수 있다.In the case where two or more business rules have the same best match score, process 90 may further narrow the results to a single business rule by selecting the most restrictive of the remaining business rules. To this end, process 90 can start with the highest weighted parameter and work downwards, comparing the remaining business rules, based on the values of the individual parameters. Returning to the example above, the process 90 can compare the difference range 84a of each of the remaining business rules. If one business rule has a more restrictive range of difference than any of the other remaining business rules (e.g., the business rule requires a higher value of V), the business rule is Can be selected to evaluate Other examples of limitations include a check level 84e of "agent" compared to "office", which may include several agents. Thus, one parameter can be considered more restrictive than the other, as the more restrictive parameter applies to fewer transactions.

더 높은 가중화된 파라미터(예컨대, 차이 범위(84a))를 비교한 후에, 2개 또는 그 초과의 사업 규칙들이 여전히 비긴 경우에, 프로세스(90)는 남은 규칙들에 대해 다음으로 가장 높게 가중화된 파라미터(예컨대, 사기의 빈도(84h))를 비교할 수 있다. 이러한 방식으로, 프로세스(90)는, 판매자 이력에 대한 최상의 매칭을 제공하는 하나의 사업 규칙이 선택될 때까지, 사업 규칙들을 순차적으로 제거할 수 있다. 그 후에, 프로세스(90)는 판정 블록(114)으로 진행할 수 있고, 계류 중인 거래를 어떻게 취급할지를 결정하는 프로세스를 시작한다.After comparing the higher weighted parameter (e.g., difference range 84a), if two or more business rules are still emptied, then process 90 weights the next highest weighted to the remaining rules. Parameters (eg, frequency of fraud 84h). In this way, the process 90 may remove the business rules sequentially until one business rule that provides the best match for the seller's history is selected. Thereafter, process 90 may proceed to decision block 114 and begin the process of determining how to treat the pending transaction.

판정 블록(114)에서, 프로세스(90)는, 선택된 사업 규칙의 액션 파라미터(84m)가 "거부"인지를 결정할 수 있다. 액션 파라미터(84m)가 "거부"인 경우에, 프로세서(90)는 거래를 거부할 수 있고(판정 블록(114)의 "예" 분기), 블록(116)으로 진행할 수 있다. 블록(116)에서, 프로세스(90)는 예약 모듈(56)이 제안된 거래의 발행을 거부하게 할 수 있고, 그 경우에, 발권 항공사는 여행 서비스에 대한 티켓을 발행하지 않을 것이다. 선택된 사업 규칙의 액션 파라미터(84m)가 "거부"가 아닌 경우에(판정 블록(114)의 "아니오" 분기), 프로세스(90)는 판정 블록(118)으로 진행할 수 있다.At decision block 114, the process 90 may determine whether the action parameter 84m of the selected business rule is “reject”. If the action parameter 84m is "Reject", the processor 90 may reject the transaction (the "Yes" branch of the decision block 114) and may proceed to block 116. At block 116, the process 90 may cause the reservation module 56 to reject issuing the proposed transaction, in which case the issuing airline will not issue a ticket for the travel service. If the action parameter 84m of the selected business rule is not "reject" (the "no" branch of decision block 114), the process 90 may proceed to decision block 118.

판정 블록(118)에서, 프로세스(90)는 여행 에이전트에게 경고를 발행할지를 결정할 수 있다. 선택된 사업 규칙의 액션 파라미터(84m)가 "경고"가 아닌 경우에(판정 블록(118)의 "아니오" 분기), 프로세스(90)는 경고를 발행하지 않고 판정 블록(120)으로 진행할 수 있다. 선택된 사업 규칙의 액션 파라미터(84m)가 "경고"인 경우에(판정 블록(118)의 "예" 분기), 프로세스(90)는 여행 에이전트에게 경고를 발행할 수 있고, 블록(122)으로 진행할 수 있다. 프로세스(90)가 경고를 발행하는 것에 응답하여, 경고가, 티케팅 모듈(64)의 사용자 인터페이스 상에 디스플레이될 수 있고, 견적 가격(PQ)가 잘못된 것을 표시할 수 있다. 경고는 또한, 견적 가격(PQ)가 잘못된 이유의 표시를 여행 에이전트에게 제공할 수 있다. 그 후에, 여행 에이전트는 견적 가격(PQ)을 수정할지를 판정할 수 있거나, 또는 견적 가격(PQ)이 부정확한 것을 알면서 발행을 확인할 수 있고, ADM이 결과로서 수신될 수 있다.In decision block 118, process 90 may determine whether to issue an alert to the travel agent. If the action parameter 84m of the selected business rule is not "warning" (the "no" branch of decision block 118), then process 90 may proceed to decision block 120 without issuing a warning. If the action parameter 84m of the selected business rule is “warning” (“Yes” branch of decision block 118), then process 90 may issue a warning to the travel agent and proceed to block 122. I can. In response to process 90 issuing an alert, an alert may be displayed on the user interface of ticketing module 64 and may indicate that the quoted price P Q is incorrect. The warning may also provide the travel agent an indication of why the quoted price P Q is wrong. After that, the travel agent can check the estimated price (P Q), or whether modifications can be determined or estimated prices (P Q) issued by knowing that one is incorrect, the ADM can be received as a result.

블록(122)에서, 프로세스(90)는 여행 에이전트가, 경고를 수신하는 것에 응답하여, 견적 가격(PQ)을 수정하는지를 결정할 수 있다. 여행 에이전트가 견적 가격(PQ)을 수정하는 경우에(판정 블록(120)의 "예" 분기), 프로세스(90)는 판정 블록(94)으로 리터닝할 수 있고, 수정된 가격이 항공사 가격책정 규칙들과 일치하는지를 결정할 수 있다. 여행 에이전트가 견적 가격(PQ)을 수정하지 않고 발행을 확인한 경우에(판정 블록(120)의 "아니오" 분기), 프로세스(90)는 판정 블록(120)으로 진행할 수 있다.At block 122, process 90 may determine whether the travel agent modifies the quoted price P Q in response to receiving the alert. If the travel agent modifies the quoted price (P Q ) (the "Yes" branch of decision block 120), the process 90 can return to decision block 94, and the modified price is the airline price You can decide if it matches the rules of your choice. If the travel agent confirms the issuance without modifying the quoted price P Q (the “no” branch of decision block 120), the process 90 may proceed to decision block 120.

판정 블록(120)에서, 프로세스(90)는 ADM이 발권 항공사에게 제안되어야 하는지를 결정할 수 있다. 프로세스(90)가 ADM이 제안되어야 한다고 결정하는 경우에(판정 블록(120)의 "예" 분기), 프로세스(90)는 블록(122)으로 진행할 수 있고, 블록(124)으로 진행하기 전에, 발권 항공사의 어카운팅 시스템에 ADM 플래그를 세팅할 수 있다. 프로세스(90)는, 예컨대, GDS(12)가 발권 항공사의 항공사 시스템(14)에 메시지를 송신하게 함으로써, ADM 플래그를 세팅할 수 있다. ADM 플래그는, 어카운팅 시스템이, 계류 중인 거래에 대한 세틀먼트(settlement)를 수신하는 것에 응답하여, ADM이 생성되어야 하는 것을 오퍼레이터에게 통지하게 할 수 있다. 프로세스(90)가 ADM이 제안되지 않아야 한다고 결정하는 경우에(판정 블록(120)의 "아니오" 분기), 프로세스(90)는 블록(124)으로 진행할 수 있다.At decision block 120, the process 90 may determine whether the ADM should be offered to the issuing airline. If process 90 determines that an ADM should be proposed (the "Yes" branch of decision block 120), then process 90 may proceed to block 122 and before proceeding to block 124, ADM flags can be set in the issuing airline's accounting system. Process 90 may set the ADM flag, for example, by having GDS 12 send a message to airline system 14 of the issuing airline. The ADM flag may cause the accounting system to notify the operator that an ADM should be generated in response to receiving a settlement for a pending transaction. If process 90 determines that an ADM should not be proposed (the “no” branch of decision block 120), then process 90 may proceed to block 124.

블록(124)에서, 프로세스(90)는, 블록(96)으로 진행하고 타켓이 발행되게 허용하기 전에, HSD 데이터베이스(54)를 업데이팅할 수 있다. HSD 데이터베이스(54)를 업데이팅하는 것은, 예컨대, HSD 데이터베이스(54)로 하여금, 계류 중인 거래에 대한 거래 특성들(74a 내지 74m)을 포함하는 거래 테이블(70)에 사기성 거래(72a 내지 72n)를 부가하게 하는 메시지를 감사 모듈(52)로부터 HSD 데이터베이스(54)로 송신하는 것을 포함할 수 있다. 이러한 방식으로, 프로세스(90)는, 차이(V)를 갖는 티켓이 발행되게 허용될 때마다, HSD 데이터베이스(54)를 업데이팅할 수 있다.At block 124, process 90 may update HSD database 54 before proceeding to block 96 and allowing the target to be issued. Updating the HSD database 54, for example, causes the HSD database 54 to add fraudulent transactions 72a-72n to a transaction table 70 that contains transaction characteristics 74a-74m for pending transactions. It may include sending a message from the audit module 52 to the HSD database 54 to add a. In this way, the process 90 may update the HSD database 54 whenever a ticket with a difference V is allowed to be issued.

여행 에이전트가 거래 저장된 티켓을 변경하였거나, 수동적으로 티켓을 가격책정하였거나, 또는 티켓을 리펀딩하는 경우들에서, 여행 에이전트는, 거래를 제출하기 전에, 티켓에 대한 견적 가격(PQ)이 발권 항공사의 가격책정 규칙들과 일치하는지를 결정하기를 원할 수 있다. 거래를 제출하기 전에 가격 체크를 용이하게 하기 위해, 본 발명의 실시예들은 가격 체크 피처를 포함할 수 있다. 가격 체크 피처는, 티케팅 모듈(64)이 티케팅 모듈(64)의 사용자 인터페이스 상에 가격 체크 버튼 또는 다른 적합한 오브젝트를 제공하게 할 수 있다. 가격 체크 버튼은, 여행 에이전트가 가격 체크 버튼을 활성화시킴으로써 가격 체크를 개시할 수 있게 할 수 있다. 가격 체크 버튼이 활성화되는 것에 응답하여, 감사 모듈(52)은 요금 엔진(58)에 액세스할 수 있고, 티켓에 대한 견적 가격(PQ)이 발권 항공사의 가격책정 규칙들과 일치하는지를 결정할 수 있다. 그 후에, 감사 모듈(52)은 티케팅 모듈(64)이 가격 체크의 결과들을 표시하는 메시지를 디스플레이하게 할 수 있다. 그에 의해, 본 발명의 실시예들은, 여행 에이전트가, 발행, 리펀드, 또는 임의의 다른 적합한 거래를 요청하기 전에 언제나 가격 체크를 수행하게 허용할 수 있다. 그 후에, 시스템은, 제안된 가격이 발권 항공사의 가격책정 규칙들을 위반하는 경우에, 여행 에이전트에게 경고를 제공할 것이고, 그에 의해, 여행 에이전트가 거래를 수정하고 ADM을 수신하는 것을 피할 수 있게 할 것이다.In cases where the travel agent has changed the transactional stored ticket, has manually priced the ticket, or is re-funding the ticket, the travel agent will, before submitting the transaction, the quoted price for the ticket (P Q ) is You may want to decide if it matches the pricing rules of To facilitate a price check prior to submitting a transaction, embodiments of the present invention may include a price check feature. The price check feature may cause the ticketing module 64 to provide a price check button or other suitable object on the user interface of the ticketing module 64. The price check button may enable the travel agent to initiate a price check by activating the price check button. In response to the price check button being activated, the audit module 52 can access the fare engine 58 and determine if the quoted price for the ticket (P Q ) matches the issuing airline's pricing rules. . Thereafter, the audit module 52 may cause the ticketing module 64 to display a message indicating the results of the price check. Thereby, embodiments of the present invention may allow the travel agent to perform a price check at any time before requesting an issue, refund, or any other suitable transaction. Thereafter, the system will provide a warning to the travel agent if the proposed price violates the issuing airline's pricing rules, thereby allowing the travel agent to modify the transaction and avoid receiving the ADM. will be.

일반적으로, 본 발명의 실시예들을 구현하기 위해 실행되는 루틴들은, 운영 시스템의 부분으로서 구현되든지, 또는 특정 애플리케이션, 컴포넌트, 프로그램, 오브젝트, 모듈, 또는 명령들의 시퀀스, 또는 심지어 이들의 서브세트로서 구현되든지, 본원에서, "컴퓨터 프로그램 코드" 또는 단순히 "프로그램 코드"라고 지칭될 수 있다. 프로그램 코드는 전형적으로, 컴퓨터에서의 저장 디바이스들 및 다양한 메모리에 다양한 시간들에 상주하고, 컴퓨터에서의 하나 또는 그 초과의 프로세서들에 의해 판독 및 실행되는 경우에, 컴퓨터로 하여금, 본 발명의 실시예들의 다양한 양상들을 구현하는 엘리먼트들 및/또는 동작들을 실행하기 위해 필요한 동작들을 수행하게 하는 컴퓨터 판독가능 명령들을 포함한다. 본 발명의 실시예들의 동작들을 수행하기 위한 컴퓨터 판독가능 프로그램 명령들은, 예컨대, 어셈블리 언어, 또는 하나 또는 그 초과의 프로그래밍 언어들의 임의의 조합으로 기록된 오브젝트 코드 또는 소스 코드일 수 있다.In general, routines executed to implement embodiments of the present invention, whether implemented as part of an operating system, or as a specific application, component, program, object, module, or sequence of instructions, or even a subset thereof. However, it may be referred to herein as “computer program code” or simply “program code”. The program code typically resides at various times in storage devices and in various memories in the computer, and when read and executed by one or more processors in the computer, causes the computer to implement the invention. Elements implementing various aspects of the examples and/or computer readable instructions that cause them to perform the operations necessary to perform the operations. Computer-readable program instructions for performing the operations of embodiments of the present invention may be, for example, object code or source code written in assembly language, or any combination of one or more programming languages.

본원에서 설명되는 다양한 프로그램 코드는, 그것이 본 발명의 특정 실시예들에서 구현되는 애플리케이션에 기초하여 식별될 수 있다. 그러나, 뒤따르는 임의의 특정한 프로그램 명명법이 단지 편의를 위해 사용되고, 따라서, 본 발명이, 그러한 명명법에 의해 식별 및/또는 암시되는 임의의 특정 애플리케이션에서만 사용하도록 제한되지 않아야 한다는 것이 인식되어야 한다. 게다가, 컴퓨터 프로그램들이 루틴들, 프로시저들, 방법들, 모듈들, 오브젝트들 등으로 구성될 수 있는 일반적으로 무한한 수의 방식들, 뿐만 아니라, 프로그램 기능이 전형적인 컴퓨터 내에 상주하는 다양한 소프트웨어 계층들(예컨대, 운영 시스템들, 라이브러리들, API들, 애플리케이션들, 애플릿들 등) 사이에서 할당될 수 있는 다양한 방식들이 주어지면, 본 발명의 실시예들은, 본원에서 설명되는 프로그램 기능의 특정 구성 및 할당에 제한되지 않는다는 것이 인식되어야 한다.The various program codes described herein can be identified based on the application it is implemented in certain embodiments of the present invention. However, it should be appreciated that any particular program nomenclature that follows is used for convenience only, and therefore, the invention should not be limited to use only in any particular application identified and/or implied by such nomenclature. In addition, there are generally an infinite number of ways in which computer programs can be organized into routines, procedures, methods, modules, objects, etc., as well as various software layers where program functions reside within a typical computer ( For example, given various ways that can be allocated between operating systems, libraries, APIs, applications, applets, etc.), embodiments of the present invention can be applied to the specific configuration and assignment of program functions described herein. It should be recognized that it is not limited.

본원에서 설명되는 애플리케이션들/모듈들 중 임의의 것에서 구현되는 프로그램 코드는, 다양한 상이한 형태들의 프로그램 제품으로서 개별적으로 또는 일괄적으로 분배될 수 있다. 특히, 프로그램 코드는, 프로세서로 하여금, 본 발명의 실시예들의 양상들을 수행하게 하기 위한 컴퓨터 판독가능 프로그램 명령들을 갖는 컴퓨터 판독가능 저장 매체를 사용하여 분배될 수 있다.Program code implemented in any of the applications/modules described herein may be distributed individually or collectively as a variety of different types of program product. In particular, the program code may be distributed using a computer-readable storage medium having computer-readable program instructions for causing a processor to perform aspects of the embodiments of the present invention.

본질적으로 비일시적인 컴퓨터 판독가능 저장 매체들은, 컴퓨터 판독가능 명령들, 데이터 구조들, 프로그램 모듈들, 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된, 휘발성 및 비휘발성, 그리고 제거가능한 및 제거가능하지 않은 유형의(tangible) 매체들을 포함할 수 있다. 컴퓨터 판독가능 저장 매체들은, RAM, ROM, EPROM(erasable programmable read-only memory), EEPROM(electrically erasable programmable read-only memory), 플래시 메모리 또는 다른 고체 상태 메모리 기술, 포터블 CD-ROM(compact disc read-only memory) 또는 다른 광학 스토리지, 자성 카세트들, 자성 테이프, 자성 디스크 스토리지 또는 다른 자성 저장 디바이스들, 또는 원하는 정보를 저장하기 위해 사용될 수 있고 컴퓨터에 의해 판독될 수 있는 임의의 다른 매체를 더 포함할 수 있다. 컴퓨터 판독가능 저장 매체는 본질적으로 일시적인 신호들(예컨대, 라디오파(radio wave)들 또는 다른 전파 전자기파들, 도파관과 같은 전송 매체들을 통해 전파하는 전자기파들, 또는 와이어를 통해 송신되는 전기 신호들)로 해석되지 않아야 한다. 컴퓨터 판독가능 프로그램 명령들은, 컴퓨터 판독가능 저장 매체로부터, 컴퓨터, 다른 타입의 프로그래머블 데이터 프로세싱 장치, 또는 다른 디바이스로 다운로딩될 수 있거나, 또는 네트워크를 통해 외부 컴퓨터 또는 외부 저장 디바이스로 다운로딩될 수 있다.Computer-readable storage media, which are non-transitory in nature, are volatile and non-volatile, implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data, and Removable and non-removable tangible media may be included. Computer-readable storage media include RAM, ROM, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other solid state memory technology, portable compact disc read-only memory (CD-ROM). only memory) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and that can be read by a computer. I can. Computer-readable storage media are essentially transient signals (e.g., radio waves or other radio wave electromagnetic waves, electromagnetic waves propagating through transmission media such as a waveguide, or electrical signals transmitted over a wire). Should not be interpreted. Computer-readable program instructions can be downloaded from a computer-readable storage medium to a computer, other type of programmable data processing apparatus, or other device, or can be downloaded to an external computer or external storage device over a network. .

컴퓨터 판독가능 매체에 저장된 컴퓨터 판독가능 프로그램 명령들은, 컴퓨터 판독가능 매체에 저장된 명령들이, 흐름도들, 순서도들, 및/또는 블록도들에서 특정된 기능들, 행위(act)들, 및/또는 동작들을 구현하는 명령들을 포함하는 제조품(article of manufacture)을 생성하도록, 컴퓨터, 다른 타입들의 프로그래머블 데이터 프로세싱 장치, 또는 다른 디바이스들이 특정한 방식으로 기능하도록 지시하기 위해 사용될 수 있다. 컴퓨터 프로그램 명령들은, 머신을 생성하기 위해, 범용 컴퓨터, 특수 목적 컴퓨터, 또는 다른 프로그래머블 데이터 프로세싱 장치의 하나 또는 그 초과의 프로세서들에 제공될 수 있고, 그에 따라, 하나 또는 그 초과의 프로세서들을 통해 실행하는 명령들은, 일련의 계산들이, 흐름도들, 순서도들, 및/또는 블록도들에서 특정된 기능들, 행위들, 및/또는 동작들을 구현하기 위해 수행되게 한다.Computer-readable program instructions stored in a computer-readable medium include the instructions stored in the computer-readable medium, functions, acts, and/or operations specified in flowcharts, flowcharts, and/or block diagrams. A computer, other types of programmable data processing apparatus, or other devices may be used to instruct them to function in a particular way to create an article of manufacture containing instructions that implement them. Computer program instructions may be provided to one or more processors of a general purpose computer, special purpose computer, or other programmable data processing device to create a machine, and thus executed through one or more processors. The instructions to perform cause a series of calculations to be performed to implement the functions, actions, and/or actions specified in flowcharts, flowcharts, and/or block diagrams.

특정 대안적인 실시에들에서, 흐름도들, 순서도들, 및/또는 블록도들에서 특정된 기능들, 행위들, 및/또는 동작들은, 본 발명의 실시예들과 일치하여, 재순서화될 수 있고, 연속적으로 프로세싱될 수 있고, 그리고/또는 동시에 프로세싱될 수 있다. 더욱이, 흐름도들, 순서도들, 및/또는 블록도들 중 임의의 것은, 본 발명의 실시에들과 일치하여, 예시된 것들보다 더 많은 또는 더 적은 블록들을 포함할 수 있다.In certain alternative embodiments, functions, actions, and/or actions specified in flowcharts, flow charts, and/or block diagrams may be reordered, consistent with embodiments of the present invention. , May be processed sequentially, and/or may be processed simultaneously. Moreover, any of the flow charts, flow charts, and/or block diagrams may include more or fewer blocks than those illustrated, consistent with embodiments of the present invention.

본원에서 사용되는 용어는 특정한 실시예들을 설명하는 목적만을 위한 것이고, 본 발명의 실시예들을 제한하는 것으로 의도되지 않는다. 본원에서 사용되는 바와 같이, 단수 형태들("a", "an" 및 "the")은, 문맥 상 분명히 다르게 표시되지 않는 한, 복수 형태들을 또한 포함하도록 의도된다. "포함한다(comprises)" 및/또는 "포함하는(comprising)"이라는 용어들은, 본 명세서에서 사용되는 경우에, 언급된 피처들, 정수(integer)들, 단계들, 동작들, 엘리먼트들, 및/또는 컴포넌트들의 존재를 특정하지만, 하나 또는 그 초과의 다른 피처들, 정수들, 단계들, 동작들, 엘리먼트들, 컴포넌트들, 및/또는 이들의 그룹들의 존재 또는 부가를 배제하지는 않는다는 것이 추가로 이해될 것이다. 게다가, "포함하다(includes)", "가지는(having)", "갖는다(has)", "갖는(with)", "로 구성된(comprised of)"이라는 용어들, 또는 이들의 변형들이 상세한 설명 또는 청구항들에서 사용되는 범위에서, 그러한 용어들은 "포함하는(comprising)"이라는 용어와 유사한 방식으로 포함하는 것으로 의도된다.The terms used herein are for the purpose of describing specific embodiments only, and are not intended to limit the embodiments of the present invention. As used herein, the singular forms "a", "an" and "the" are intended to also include the plural forms unless the context clearly indicates otherwise. The terms “comprises” and/or “comprising”, as used herein, refer to the mentioned features, integers, steps, actions, elements, and It is further noted that/or specifies the existence of components, but does not preclude the presence or addition of one or more other features, integers, steps, actions, elements, components, and/or groups thereof. Will make sense. In addition, the terms "includes", "having", "has", "with", "comprised of", or variations thereof are described in detail. Or in the scope used in the claims, such terms are intended to be included in a manner analogous to the term "comprising".

본 발명의 전부가 다양한 실시예들의 설명에 의해 예시되었고, 이들 실시예들이 상당히 상세하게 설명되었지만, 출원인은, 첨부된 청구항들의 범위를 그러한 세부사항으로 한정하거나 또는 어떠한 방식으로도 제한하는 것을 의도하지 않는다. 부가적인 이점들 및 변경들은 당업자에게 쉽게 나타날 것이다. 따라서, 본 발명의 더 넓은 양상들에서의 본 발명은, 도시되고 설명된, 특정 세부사항들, 전형적인 장치 및 방법, 및 예시적인 예들에 제한되지 않는다. 따라서, 출원인의 일반적인 발명의 개념의 범위 또는 사상으로부터 벗어나지 않으면서, 그러한 세부사항들로부터의 일탈들이 행해질 수 있다.The whole of the invention has been illustrated by the description of various embodiments, and although these embodiments have been described in considerable detail, Applicants do not intend to limit the scope of the appended claims to such details or in any way. Does not. Additional advantages and modifications will readily appear to those skilled in the art. Accordingly, the invention in its broader aspects is not limited to the specific details, typical apparatus and method, and illustrative examples, shown and described. Accordingly, deviations from such details may be made without departing from the scope or spirit of the applicant's general inventive concept.

Claims (20)

하드웨어를 통해 구현되는 거래를 감사(auditing)하는 방법으로서,
프로세서에서, 상기 거래를 특성분석한(characterizing) 데이터를 수신하는 단계 - 상기 데이터는 서비스 제공자에 의해 제공될 여행 서비스에 대한 제1 가격을 포함함 -;
상기 프로세서에 의해, 상기 서비스 제공자의 가격책정 규칙(pricing rule)에 기초하여, 상기 여행 서비스에 대한 제2 가격을 결정하는 단계;
상기 프로세서에 의해, 상기 제1 가격이 상기 제2 가격과 매칭(match)되는지를 결정하는 단계;
상기 제1 가격이 상기 제2 가격과 매칭되는 것에 응답하여, 상기 프로세서에 의해, 상기 거래를 허용하는 단계;
상기 제1 가격이 상기 제2 가격과 매칭되지 않은 것에 응답하여, 상기 프로세서에 의해, 상기 제1 가격과 상기 제2 가격 간의 차이의 적어도 하나의 원인을 결정하는 단계;
상기 프로세서에 의해, 상기 차이의 적어도 하나의 원인에 대한 적어도 하나의 가중화 차이 파라미터를 결정하는 단계;
상기 프로세서에 의해, 상기 차이의 적어도 하나의 원인, 상기 적어도 하나의 가중화 차이 파라미터, 및 상기 거래 이전에 발생하였던 거래들의 세트에 기초하여 적어도 하나의 액션(action) 파라미터를 결정하는 단계; 및
상기 프로세서에 의해, 상기 적어도 하나의 액션 파라미터에 기초하여 액션을 결정하는 단계
를 포함하는 거래를 감사하는 방법.
As a method of auditing transactions implemented through hardware,
Receiving, at a processor, data characterizing the transaction, the data including a first price for a travel service to be provided by a service provider;
Determining, by the processor, a second price for the travel service based on a pricing rule of the service provider;
Determining, by the processor, whether the first price matches the second price;
In response to the first price matching the second price, allowing, by the processor, the transaction;
In response to the first price not matching the second price, determining, by the processor, at least one cause of a difference between the first price and the second price;
Determining, by the processor, at least one weighted difference parameter for at least one cause of the difference;
Determining, by the processor, at least one action parameter based on at least one cause of the difference, the at least one weighted difference parameter, and a set of transactions that occurred prior to the transaction; And
Determining, by the processor, an action based on the at least one action parameter
How to audit a transaction that includes.
제1항에 있어서,
상기 적어도 하나의 가중화 차이 파라미터를 결정하는 단계는 상기 거래들의 세트에 기초하여 사기 메트릭(fraud metric)을 결정하는 단계를 포함하고,
상기 적어도 하나의 액션 파라미터를 결정하는 단계는 상기 사기 메트릭과 매칭되는 사업 규칙을 결정하는 단계를 포함하며,
상기 적어도 하나의 액션 파라미터는 상기 사업 규칙에 기초한 것인 거래를 감사하는 방법.
The method of claim 1,
Determining the at least one weighted difference parameter comprises determining a fraud metric based on the set of transactions,
Determining the at least one action parameter includes determining a business rule matching the fraud metric,
Wherein the at least one action parameter is based on the business rule.
제2항에 있어서,
상기 적어도 하나의 액션 파라미터는, 상기 거래를 허용하는 것, 상기 거래를 허용하고 상기 여행 서비스의 판매자에게 경고 메시지를 디스플레이하는 것, 상기 거래를 허용하고 ADM(Agency Debit Memo)을 제안하는 것, 또는 상기 거래를 거부하는 것인 거래를 감사하는 방법.
The method of claim 2,
The at least one action parameter is to allow the transaction, to allow the transaction and to display a warning message to the seller of the travel service, to allow the transaction and to propose an Agency Debit Memo (ADM), or A method of auditing a transaction by refusing the transaction.
제2항에 있어서,
상기 거래들의 세트를 포함하는 데이터베이스에 상기 사기 메트릭에 대한 요청을 송신하는 단계;
상기 거래들의 세트에 기초하여 상기 데이터베이스에서 상기 사기 메트릭을 결정하는 단계; 및
상기 데이터베이스로부터 상기 사기 메트릭을 수신하는 단계
를 더 포함하는 거래를 감사하는 방법.
The method of claim 2,
Sending a request for the fraud metric to a database containing the set of transactions;
Determining the fraud metric in the database based on the set of transactions; And
Receiving the fraud metric from the database
How to audit a transaction that includes more.
제2항에 있어서,
상기 거래들의 세트는 복수의 이전의 거래들을 포함하고,
상기 사기 메트릭은, 사기의 빈도, 누적 차이(cumulative discrepancy), 또는 상기 복수의 이전의 거래들의 가장 많이 위반된 규칙인 것인 거래를 감사하는 방법.
The method of claim 2,
The set of transactions includes a plurality of previous transactions,
The fraud metric is the frequency of fraud, cumulative discrepancy, or the most violated rule of the plurality of previous transactions.
제5항에 있어서,
상기 거래들의 세트는, 상기 여행 서비스의 판매자의 아이덴티티(identity), 상기 거래와 연관된 사무소(office)의 아이덴티티, 상기 거래들의 세트가 수행되었던 체크 기간(check period), 또는 이들의 조합에 의해 정의되는 것인 거래를 감사하는 방법.
The method of claim 5,
The set of transactions is defined by the identity of the seller of the travel service, the identity of the office associated with the transaction, a check period in which the set of transactions was performed, or a combination thereof. How to appreciate the deal that would be.
제1항에 있어서,
상기 거래들의 세트는 데이터베이스에 저장되고,
상기 방법은,
상기 거래들의 세트에 상기 거래를 추가함으로써 상기 데이터베이스를 업데이트하는 단계
를 더 포함한 것인 거래를 감사하는 방법.
The method of claim 1,
The set of transactions is stored in a database,
The above method,
Updating the database by adding the transaction to the set of transactions.
How to audit a transaction that would include more.
제7항에 있어서,
상기 거래는 상기 거래가 허용되는 것에 응답하여 상기 거래들의 세트에 추가되는 것인 거래를 감사하는 방법.
The method of claim 7,
Wherein the transaction is added to the set of transactions in response to the transaction being allowed.
제1항에 있어서,
상기 적어도 하나의 가중화 차이 파라미터를 결정하는 단계는, 상기 거래와 관련된 제1 복수의 사업 규칙들을 결정하는 단계와, 상기 거래들의 세트에 기초하여 상기 제1 복수의 사업 규칙들 각각에 대한 사기 메트릭을 결정하는 단계를 포함하며,
상기 적어도 하나의 액션 파라미터를 결정하는 단계는, 각각의 사업 규칙의 사기 메트릭에 기초하여 상기 제1 복수의 사업 규칙들 중 하나의 사업 규칙을 선택하는 단계와, 상기 선택된 사업 규칙에 기초하여 상기 적어도 하나의 액션 파라미터를 정의하는 단계를 포함한 것인 거래를 감사하는 방법.
The method of claim 1,
The determining of the at least one weighted difference parameter includes determining a first plurality of business rules related to the transaction, and a fraud metric for each of the first plurality of business rules based on the set of transactions. Including the step of determining,
The determining of the at least one action parameter may include selecting one of the first plurality of business rules based on the fraud metric of each business rule, and the at least one based on the selected business rule. A method of auditing a transaction comprising the step of defining one action parameter.
제9항에 있어서,
상기 제1 복수의 사업 규칙들을 결정하는 단계는,
상기 거래의 특성에 기초하여 상기 거래의 분류를 결정하는 단계; 및
상기 분류에 기초하여 제2 복수의 사업 규칙들로부터 상기 제1 복수의 사업 규칙들을 선택하는 단계
를 포함한 것인 거래를 감사하는 방법.
The method of claim 9,
The step of determining the first plurality of business rules,
Determining a classification of the transaction based on the characteristics of the transaction; And
Selecting the first plurality of business rules from a second plurality of business rules based on the classification
How to audit transactions that would include.
제10항에 있어서,
상기 거래의 분류를 결정하기 위해 사용되는 특성은, 상기 제1 가격과 상기 제2 가격 간의 차이의 값, 상기 거래의 타입, 상기 거래에 의해 위반된 요금 카테고리(fare category), 또는 상기 거래에 의해 위반된 세금(tax)을 포함한 것인 거래를 감사하는 방법.
The method of claim 10,
The characteristic used to determine the classification of the transaction is the value of the difference between the first price and the second price, the type of the transaction, the fare category violated by the transaction, or by the transaction. How to audit a transaction that includes a violated tax.
제9항에 있어서,
상기 적어도 하나의 가중화 차이 파라미터를 결정하는 단계는, 상기 거래들의 세트에 대한 사업 규칙의 적용에 기초하여 차이 범위를 결정하는 단계, 또는 상기 거래들의 세트에 대한 사업 규칙의 적용에 기초하여 위반된 요금 카테고리를 결정하는 단계를 포함한 것인 거래를 감사하는 방법.
The method of claim 9,
Determining the at least one weighted difference parameter may include determining a difference range based on application of a business rule to the set of transactions, or violated based on application of a business rule to the set of transactions. How to audit a transaction involving determining a rate category.
제1항에 있어서,
상기 거래들의 세트는 제1 데이터베이스에 저장되어 있는 복수의 이전의 거래들을 포함하고,
상기 적어도 하나의 액션 파라미터를 결정하는 단계는,
상기 거래의 특성에 기초하여 상기 거래의 분류를 결정하는 단계;
상기 분류와 관련된 사업 규칙들에 대해 제2 데이터베이스에 문의하는 단계;
상기 제2 데이터베이스에 의해 반환된 각각의 사업 규칙에 대해, 검색 기준들을 결정하고, 상기 검색 기준들에 기초하여, 제1 사기 메트릭에 대해 상기 제1 데이터베이스에 문의하는 단계;
각각의 사업 규칙에 의해 정의된 제2 사기 메트릭과 상기 제1 사기 메트릭 간의 매칭을 결정하는 단계; 및
상기 제1 사기 메트릭과 상기 제2 사기 메트릭 간의 최상의 매칭을 갖는 사업 규칙을 결정하는 단계
를 포함하고,
상기 적어도 하나의 액션 파라미터는 상기 최상의 매칭을 갖는 사업 규칙에 의해 정의된 것인 거래를 감사하는 방법.
The method of claim 1,
The set of transactions includes a plurality of previous transactions stored in a first database,
The step of determining the at least one action parameter,
Determining a classification of the transaction based on the characteristics of the transaction;
Querying a second database for business rules related to the classification;
For each business rule returned by the second database, determining search criteria, and based on the search criteria, querying the first database for a first fraud metric;
Determining a match between the second fraud metric and the first fraud metric defined by each business rule; And
Determining a business rule with the best match between the first fraud metric and the second fraud metric.
Including,
The method of auditing a transaction wherein the at least one action parameter is defined by the business rule with the best match.
거래를 감사하기 위한 장치로서,
프로세서; 및
프로그램 코드를 포함하는 메모리
를 포함하고,
상기 프로그램 코드는, 상기 프로세서에 의해 실행될 때, 상기 장치로 하여금,
상기 거래를 특성분석한 데이터를 수신하고 - 상기 데이터는 서비스 제공자에 의해 제공될 여행 서비스에 대한 제1 가격을 포함함 -;
상기 서비스 제공자의 가격책정 규칙에 기초하여, 상기 여행 서비스에 대한 제2 가격을 결정하고;
상기 제1 가격이 상기 제2 가격과 매칭되는지를 결정하고;
상기 제1 가격이 상기 제2 가격과 매칭되는 것에 응답하여, 상기 거래를 허용하고;
상기 제1 가격이 상기 제2 가격과 매칭되지 않은 것에 응답하여, 상기 제1 가격과 상기 제2 가격 간의 차이의 적어도 하나의 원인을 결정하고;
상기 차이의 적어도 하나의 원인에 대한 적어도 하나의 가중화 차이 파라미터를 결정하고;
상기 차이의 적어도 하나의 원인, 상기 적어도 하나의 가중화 차이 파라미터, 및 상기 거래 이전에 발생하였던 거래들의 세트에 기초하여 적어도 하나의 액션 파라미터를 결정하며;
상기 적어도 하나의 액션 파라미터에 기초하여 액션을 결정하게 하는 것인 거래를 감사하기 위한 장치.
As a device for auditing transactions,
Processor; And
Memory containing program code
Including,
The program code, when executed by the processor, causes the device to:
Receiving data characterizing the transaction, the data including a first price for a travel service to be provided by a service provider;
Determine a second price for the travel service based on the service provider's pricing rules;
Determine whether the first price matches the second price;
In response to the first price matching the second price, allowing the transaction;
In response to the first price not matching the second price, determining at least one cause of a difference between the first price and the second price;
Determine at least one weighted difference parameter for at least one cause of the difference;
Determine at least one action parameter based on at least one cause of the difference, the at least one weighted difference parameter, and a set of transactions that occurred prior to the transaction;
And determining an action based on the at least one action parameter.
프로그램 코드를 저장한 컴퓨터 판독가능 비일시적 저장 매체에 있어서,
상기 프로그램 코드는, 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
거래를 특성분석한 데이터를 수신하고 - 상기 데이터는 서비스 제공자에 의해 제공될 여행 서비스에 대한 제1 가격을 포함함 -;
상기 서비스 제공자의 가격책정 규칙에 기초하여, 상기 여행 서비스에 대한 제2 가격을 결정하고;
상기 제1 가격이 상기 제2 가격과 매칭되는지를 결정하고;
상기 제1 가격이 상기 제2 가격과 매칭되는 것에 응답하여, 상기 거래를 허용하고;
상기 제1 가격이 상기 제2 가격과 매칭되지 않은 것에 응답하여, 상기 제1 가격과 상기 제2 가격 간의 차이의 적어도 하나의 원인을 결정하고;
상기 차이의 적어도 하나의 원인에 대한 적어도 하나의 가중화 차이 파라미터를 결정하고;
상기 차이의 적어도 하나의 원인, 상기 적어도 하나의 가중화 차이 파라미터, 및 상기 거래 이전에 발생하였던 거래들의 세트에 기초하여 적어도 하나의 액션 파라미터를 결정하며;
상기 적어도 하나의 액션 파라미터에 기초하여 액션을 결정하게 하는 것인 컴퓨터 판독가능 비일시적 저장 매체.
In the computer-readable non-transitory storage medium storing the program code,
The program code, when executed by a processor, causes the processor to:
Receiving data characterizing the transaction, the data including a first price for a travel service to be provided by the service provider;
Determine a second price for the travel service based on the service provider's pricing rules;
Determine whether the first price matches the second price;
In response to the first price matching the second price, allowing the transaction;
In response to the first price not matching the second price, determining at least one cause of a difference between the first price and the second price;
Determine at least one weighted difference parameter for at least one cause of the difference;
Determine at least one action parameter based on at least one cause of the difference, the at least one weighted difference parameter, and a set of transactions that occurred prior to the transaction;
Computer-readable non-transitory storage medium for determining an action based on the at least one action parameter.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020150113384A 2014-08-12 2015-08-11 Auditing system with historic sale deviation database KR102189658B1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US14/457,462 US10032230B2 (en) 2014-08-12 2014-08-12 Auditing system with historic sale deviation database
US14/457,462 2014-08-12
EP14290243.6 2014-08-12
EP14290243.6A EP2985722A1 (en) 2014-08-12 2014-08-12 Auditing system with historic sale deviation database

Publications (2)

Publication Number Publication Date
KR20160019874A KR20160019874A (en) 2016-02-22
KR102189658B1 true KR102189658B1 (en) 2020-12-14

Family

ID=55299864

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150113384A KR102189658B1 (en) 2014-08-12 2015-08-11 Auditing system with historic sale deviation database

Country Status (3)

Country Link
KR (1) KR102189658B1 (en)
AU (3) AU2015213275A1 (en)
CA (1) CA2899640C (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090106170A1 (en) 2007-10-18 2009-04-23 Thurlow Stephen H Method and system for air fare verification auditing

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2500849A1 (en) * 2011-03-18 2012-09-19 Amadeus S.A.S. A method for auditing the value of a partial ticket change transaction

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090106170A1 (en) 2007-10-18 2009-04-23 Thurlow Stephen H Method and system for air fare verification auditing

Also Published As

Publication number Publication date
KR20160019874A (en) 2016-02-22
AU2019200799A1 (en) 2019-02-21
AU2015213275A1 (en) 2016-03-03
CA2899640C (en) 2023-06-27
AU2017202139A1 (en) 2017-04-20
CA2899640A1 (en) 2016-02-12

Similar Documents

Publication Publication Date Title
US20160098681A1 (en) Automated task handling
WO2018024844A1 (en) Interactive platform for the exchange of commoditized products
US10803459B2 (en) Online transaction processing system for multi-product transactions
US20160232532A1 (en) Using revenue management to improve payment fraud screening
AU2015210358A1 (en) Predictive fraud screening
WO2008123748A1 (en) System and method for differential payment
EP2985722A1 (en) Auditing system with historic sale deviation database
US20170177575A1 (en) Processing transactions involving an exchange of an electronic document
US10032230B2 (en) Auditing system with historic sale deviation database
AU2015210357A1 (en) Predictive fraud screening
KR102189658B1 (en) Auditing system with historic sale deviation database
US20160012502A1 (en) Preventive auditing
US20180040066A1 (en) Interactive platform for the exchange of commoditized products
US20170278019A1 (en) Online transaction processing system for multi-product transactions
US11227237B2 (en) Exchanges with automatic consideration of factors associated with the exchanges
US20180075497A1 (en) Database management system
US20170278163A1 (en) Online transaction processing system for multi-product transactions
US20170278158A1 (en) Online transaction processing system for multi-product transactions
EP2911103A1 (en) Auditing system with increased accuracy
US20150242960A1 (en) Auditing system with increased accuracy
US20160260099A1 (en) Prioritizing transactions in a transaction queue
US11113635B2 (en) Systems and methods for re-issuing travel reservations based on a specific travel category
US10402877B2 (en) Online transaction processing system for multi-product transactions
EP2966609A1 (en) Preventive auditing
AU2015203788A1 (en) Preventive auditing

Legal Events

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