Skip to main content
저장된 PNR에 결제 수단(Form of Payment)을 등록하는 API 용어집입니다. 발권 전 반드시 FOP가 PNR에 연결되어야 하며, 신용카드 결제 시 FortKnox 토큰화와 3DS 인증을 처리합니다.
이 API는 WBS Integration Flow예약 생성 단계 Step 9에 해당합니다.

1. 개요

FOP_CreateFormOfPayment

Amadeus GDS에서 PNR에 결제 수단(Form of Payment)을 생성하는 API. 신용카드, 현금, 수표 등 다양한 결제 수단을 등록하고, 신용카드의 경우 FortKnox 토큰화를 통해 카드 정보를 안전하게 저장한다. 최대 127개의 FOP를 하나의 PNR에 등록할 수 있다.
[Query: FOP 등록 요청]
  결제 수단 유형, 카드 정보, 승객 연결, OB Fee 옵션
       |
       v
  Amadeus FOP Engine
  +-- FortKnox 토큰화 (CC인 경우)
  +-- 3DS 인증 (필요 시)
  +-- 사기 방지 스크리닝 (선택)
       |
       v
[Reply: FOP 등록 결과]
  fopDescription x N개
  +-- fopReference: FP/SFP 타투 번호
  +-- mopDescription: 결제 수단 상세
  |   +-- fopPNRDetails: FOP 코드, 빌링 코드
  |   +-- mopDetails: 신용카드/현금 등 상세
  +-- pnrSupplementaryData: FOP 스위치/데이터
  +-- paymentModule: 결제 트랜잭션 전체 데이터

Query / Reply 구조

구분메시지설명
QueryFOP_CreateFormOfPayment 19.2.1APNR에 결제 수단 생성 (요청)
ReplyFOP_CreateFormOfPaymentReply 19.2.1AFOP 데이터 읽기 (응답)
항목내용
API 명FOP_CreateFormOfPayment
플로우 단계Step 9 — 예약 생성
목적신용카드 등 결제 수단 등록 및 FortKnox 토큰 발급
이전 단계PNR_AddMultiElements
다음 단계Fare_PricePNRWithBookingClass

2. Query 주요 구조 (FOP 등록 요청)

transactionContext (Transaction Information for Ticketing)

발권 트랜잭션 정보를 전달하는 구조.
필드형식설명
transactionDetails.codean..4트랜잭션 코드 (TKTA, RFND 등)
transactionDetails.issueIndicatoran1발권 유형 (F=최초 발행, R=재발행 등)

Transaction Code (트랜잭션 코드)

코드설명
CANRCancellation Refund, 취소 환불
MCOAMCO Automatic, MCO 자동 발행
MCOMMCO Manual, MCO 수동 발행
MDnnManual Document, 수동 문서 (nn=번호)
PTAMPTA Manual, PTA 수동 발행
ARVMAgent Receipt Voucher Manual, 에이전트 수령 바우처
TKTATicket Automatic, 자동 발권
TKTBTicket Bulk, 대량 발권
TKTMTicket Manual, 수동 발권
TKTTTicket Transitional, 전환 발권
TORMTour Order Manual, 투어 오더 수동
XSBAExchange Super Bulk Automatic, 대량 교환 자동
XSBMExchange Super Bulk Manual, 대량 교환 수동
ACMRAgency Credit Memo Refund, 대리점 크레딧 메모 환불
RENAReissue Non-Automatic, 비자동 재발행
RENMReissue Non-Manual, 비수동 재발행
RFNDRefund, 환불
ACMAAgency Credit Memo Automatic, 대리점 크레딧 메모 자동
SSACSelf-Service Automatic Check-in, 셀프서비스 자동 체크인
TAADTicket Agent Automatic Document, 에이전트 자동 문서
BPASBoarding Pass, 탑승권
CANNCancellation, 취소
TIDTransaction Identifier, 트랜잭션 식별자

Issue Indicator (발권 유형)

코드설명
FFirst Issue, 최초 발행
RReissue, 재발행
IFirst Issue of IT (Inclusive Tour), IT 최초 발행
YReissue of IT, IT 재발행
BFirst Issue of BT (Bulk Ticket), BT 최초 발행
WReissue of BT, BT 재발행
OBOB Fee Calculation, OB 수수료 계산

bestEffort (Status Details)

Best Effort 처리 상태를 전달하는 세그먼트. 이 세그먼트가 미지정되면 Best Effort가 불가능한 것으로 간주한다.
필드형식설명
indicatoran..3Best Effort 지시자
actionan..3액션 요청 코드 (KK=확인, UU=거부)

reservationControlInformation

예약 통제 정보를 전달하는 구조.
필드형식설명
reservation.companyIdan..35항공사 코드
reservation.controlNumberan..20PNR Record Locator
reservation.controlTypean1예약 통제 유형
reservation.datean..35날짜

fopGroup

FOP 그룹 — 최대 127개의 서로 다른 FOP를 포함할 수 있는 핵심 구조.
fopGroup (M, 최대 127개)
+-- fopReference: FP/SFP 타투 번호
+-- passengerAssociation: 승객 연결 (최대 99)
+-- pnrElementAssociation: PNR 요소 연결 (최대 99)
+-- pricingTicketingDetails: 가격/발권 상세
+-- feeTypeInfo: OB Fee 유형
+-- feeDetailsInfoGroup: OB Fee 상세 (최대 99)
+-- fpProcessingOptions: FP 레벨 옵션
+-- mopDescription: 결제 수단 상세 (최대 99)
|   +-- fopSequenceNumber: FOP 시퀀스 번호
|   +-- fopMasterElementReference: 마스터 FOP 참조
|   +-- stakeholderPayerReference: 결제자 참조
|   +-- mopDetails: 결제 수단 일반 정보
|   |   +-- fopPNRDetails: PNR FOP 코드
|   |   +-- oldFopFreeflow: 이전 FOP 프리플로우
|   +-- pnrSupplementaryData: FOP 스위치/데이터
|   +-- paymentModule: 결제 모듈
필드구조StRep설명
fopReferenceElement management segmentM1FP/SFP 타투 번호
passengerAssociationReference informationC99FOP에 연결된 승객 목록
pnrElementAssociationReference informationC99FOP의 PNR 요소 링크 (MCO, Segment 등)
pricingTicketingDetailsPricing/ticketing detailsC1가격/발권 날짜 오버라이드
feeTypeInfoSelection detailsC1OB Fee 유형 (EX=전체 OB Fee 면제)
mopDescriptionGroupC99결제 수단(Mean of Payment) 정보 그룹

fopSequenceNumber (Sequence Details)

FOP 라인 내 결제 수단의 시퀀스 번호를 전달하는 구조.
필드형식설명
numberan..10MOP 시퀀스 번호. FOP 라인에 1개만 있으면 1로 설정. 최대 3개의 신규 MOP와 1개의 구 MOP 가능
identificationCodean..17다른 시퀀스의 하위 요소인 경우 설정 (SUB)

feeTypeInfo / feeProcessingInfo (OB Fee 관리)

OB Fee(Optionally Billable Fee) 관리를 위한 구조.
필드형식설명
feeTypeInfo.optionan..3OB Fee 유형 코드
feeTypeInfo.optionInformationan..35OB Fee 옵션 (EX=전체 면제)
feeProcessingInfo.optionan..3OB Fee 하위 유형 코드
feeProcessingInfo.optionInformationan..35FEX=하위 유형 제외, FIN=하위 유형 포함

3. 결제 수단 유형 (FOP Types)

FOP 유형 코드

PNR에 등록할 수 있는 결제 수단의 유형. fopPNRDetails.fopCode에 설정된다.
코드설명비고
CCCredit Card, 신용카드가장 일반적인 결제 수단, CCVI/CCCA/CCAX 등으로 표기
CACash, 현금현금 결제
CHCheque, 수표수표 결제
SWISwipe Card, 스와이프 카드카드 리더기 사용
WAWeb Account, 웹 계정PayPal 등 온라인 결제 서비스
WBWeb Bank / Fund Transfer, 웹 뱅킹온라인 은행 이체 (iDEAL 등)
WWWeb, 웹 결제기타 웹 기반 결제

fopPNRDetails (Ticketing Form of Payment)

PNR 내 FOP 코드 및 관련 정보를 전달하는 핵심 구조.
필드형식설명
fopCodean..20FOP를 식별하는 포맷 키 (CCVI, CA 등)
fopMapTablean..20FOP 검증에 사용되는 FOP Map Table 이름
fopBillingCodean..10빌링 코드 (CASH CA / Credit CC). MS 리포팅용
fopStatusan..3FOP 신규/구 여부
fopEdiCodean..10EDIFACT 코드. 구조화된 FOP 추가 시 유형 식별
fopReportingCodean..10리포팅 코드 (@FPXXxx 값)
fopPrintedCodean..20FOP 인쇄 코드 (@PR 값)
fopElecTicketingCodean..10전자 발권 코드. 항공사 전송 분류 및 발권 허용 여부 결정

oldFopFreeflow (Free Text Information)

이전(Old) FOP 프리플로우 텍스트. 기존 FOP를 프리플로우 텍스트로 전달한다. 여러 개의 Old FOP도 하나의 프리플로우 텍스트로 간주된다. 예: FP O/CA+CCVI+/CH CA and CCVI
필드형식설명
freeTextan..199Old FOP 프리플로우 텍스트
textSubjectQualifieran..3ZZZ (상호 합의 값)
sourcean..3M (Manual)
encodingan..3ZZZ (상호 합의 인코딩)

4. 신용카드 데이터 (Credit Card Data)

CREDITCARDDATAGROUPTYPE

신용카드 결제 시 전달되는 카드 데이터 그룹의 전체 구조.
CREDITCARDDATAGROUPTYPE
+-- creditCardDetails: 신용카드 상세 (M)
|   +-- vendorCode: 카드사 코드 (VI, CA, AX)
|   +-- cardNumber: 카드 번호
|   +-- securityId: CVV/CVV2
|   +-- expiryDate: 만료일 (MMYY)
|   +-- ccHolderName: 카드 소유자명
|   +-- tierLevel: 등급 (gold, platinum 등)
+-- fortknoxIds: FortKnox 토큰 ID (C, 최대 2)
+-- cardHolderAddress: 카드 소유자 주소 (C)
+-- virtualCreditCardData: 가상 카드 데이터 (C)
    +-- virtualCreditCardParameters: 가상 카드 파라미터
    +-- validityDate: 가상 카드 유효 기간

creditCardDetails (Credit Card Data)

신용카드 상세 정보를 전달하는 구조.
필드형식설명
vendorCodean2카드사 코드 (VI=Visa, CA=MasterCard, AX=Amex)
vendorCodeSubTypean..25카드 하위 유형 (Maestro, Solo 등)
cardNumberan..19카드 번호
securityIdan..4CVV/CVV2 보안 코드 (카드 뒷면 3~4자리)
expiryDatean4만료일 (MMYY 형식)
startDatean4카드 발급일 (UK Maestro 카드용)
endDatean4카드 종료일 (UK Maestro 카드용, 만료일과 다를 수 있음)
ccHolderNamean..99카드 소유자 이름 (카드 표면 인쇄명)
issuingBankNamean2..3발급 은행 코드
cardCountryOfIssuancean..3카드 발급 국가
issueNumbern..3카드 발급 번호 (Maestro 카드, 분실/재발급 시 증가)
issuingBankLongNamean..64발급 기관 정식 명칭
track1an..108CC Track 1 데이터 (base64 인코딩)
track2an..56CC Track 2 데이터 (base64 인코딩)
track3an..144CC Track 3 데이터 (base64 인코딩)
pinCodean..100PIN 코드
rawTrackDataan..400스와이프 카드의 전체 트랙 데이터
tierLevelan..20카드 등급 (gold, platinum 등). 사기 방지/승인에 활용

Vendor Code (카드사 코드)

코드카드사
VIVisa
CAMasterCard
AXAmerican Express
DCDiners Club
DSDiscover
JCJCB
TPUATP (Universal Air Travel Plan)

cardHolderAddress (Address)

카드 소유자 주소 정보. AVS(Address Verification Service) 검증에 사용된다.
필드형식설명
formatan..3주소 형식 코드 (5=비구조화)
line1 ~ line6an..70주소 텍스트 (각 줄)
cityan..35도시명
zipCodean..17우편번호
countryCodean..3국가 코드 (ISO 3166)

5. FortKnox 토큰화

fortknoxIds (Reference Information)

Amadeus FortKnox 데이터베이스에 저장된 CVV와 신용카드 번호의 토큰 ID를 전달하는 구조. 카드 원본 데이터 대신 토큰을 사용하여 PCI DSS 보안 요구사항을 충족한다.
FortKnox 토큰화 흐름:

[신용카드 원본 데이터]
  카드 번호: 4111-1111-1111-1111
  CVV: 123
       |
       v
[FortKnox 토큰화 엔진]
  +-- 카드 번호 -> 토큰 ID (NOX)
  +-- CVV -> 토큰 ID (CVV)
       |
       v
[PNR에 저장되는 데이터]
  fortknoxIds[0]: type=NOX, value=FK_TOKEN_001  (카드 번호 토큰)
  fortknoxIds[1]: type=CVV, value=FK_TOKEN_002  (CVV 토큰)
  * 원본 카드 번호/CVV는 저장되지 않음
필드형식설명
referenceDetails.typean..10토큰 유형 (NOX=카드 번호, CVV=보안 코드)
referenceDetails.valuean..60FortKnox 토큰 ID 값

FortKnox 토큰 유형

유형설명
NOX신용카드 번호 FortKnox 토큰 ID
CVVCVV/CVV2 보안 코드 FortKnox 토큰 ID

6. CVV 처리 (보안 코드 검증)

securityId

신용카드의 CVV/CVV2 보안 코드. 카드 뒷면(또는 Amex의 경우 앞면)에 인쇄된 3~4자리 숫자. creditCardDetails.securityId 필드(an..4)에 설정된다.

CVV 검증 결과 코드

카드사/발급사에서 반환하는 CVV 검증 결과. transactionStatus 그룹 내에서 CVV 관련 상태로 전달된다.
코드설명
ACVV Security ID Approved, 승인됨
ICVV Cardholder Stated Security ID is Illegible, 판독 불가
MCVV Cardholder Stated Security ID is Not on the Card (Missing), 카드에 없음
NCVV Security ID Not Processed, 처리되지 않음
SCVV Security ID Should Be on the Card but Merchant Indicates It Is Not, 카드에 있어야 하나 가맹점이 없다고 표시
UCVV Issuer Not Certified, or User Unregistered, 발급사 미인증/미등록
XCVV Security ID Rejected, 거부됨

transactionStatus

신용카드 결제에 관련된 다양한 하위 상태를 전달하는 구조 (최대 7개 반복).
코드설명
CVVCVV Return Code, CVV 검증 결과
AVSAddress Verification Return Code, 주소 검증 결과
AUTAuthorization Return Code, 승인 결과
ATNAuthentication Return Code, 인증 결과
PNRPNR Update Return Code, PNR 업데이트 결과
SETSettlement Return Code, 정산 결과

7. 3DS 인증 (3-D Secure)

THREEDOMAINSECUREGROUPTYPE

3-D Secure(3DS) 인증 데이터를 전달하는 그룹 구조. Visa의 Verified by Visa, MasterCard의 SecureCode 등 카드사 3DS 프로토콜을 지원한다.
3DS 인증 흐름:

[1] 고객 -> 가맹점: 결제 요청
[2] 가맹점 -> Amadeus: FOP_CreateFormOfPayment (3DS 데이터 포함)
       |
       v
[3] Amadeus -> ACS (Access Control Server)
    +-- acsURL: 카드사 인증 서버 URL (최대 2048자)
    +-- authenticationData: 인증 데이터
    +-- tdsBlobData: 암호화된 3DS 데이터
       |
       v
[4] ACS -> 고객: 비밀번호 입력 요청 (리다이렉트)
[5] 고객 -> ACS: 비밀번호 입력
[6] ACS -> Amadeus: 인증 결과
       |
       v
[7] Reply: Payment Status = W (Web Redirection) 또는 V (Validated)
필드설명
authenticationData3DS 인증 데이터
acsURLAccess Control Server URL (최대 2048자). 카드 소유자 인증 페이지
tdsBlobData3DS 암호화 데이터 블롭

tdsInformation

CREDITCARDSTATUSGROUPTYPE 내에서 3DS 관련 데이터를 전달하는 그룹.

schemeAuthenticationData

카드 스킴별 인증 데이터를 전달하는 그룹. IATA 및 ARC의 RET/SPRF 리포팅에 필요한 데이터를 포함한다.
필드설명
schemeCompany카드 스킴 회사 (VIS, MAS, AMX, DIN, DIS)
schemeDataElement결제 승인 시 카드 스킴에서 생성된 데이터 요소 (최대 99개)

Card Scheme Company (카드 스킴 회사)

코드카드사
VISVISA
MASMasterCard
AMXAmerican Express
DINDiners Club
DISDiscover

8. 결제 모듈 (Payment Module)

paymentModule

결제 트랜잭션과 관련된 모든 데이터를 포함하는 최상위 결제 구조.
paymentModule
+-- PAYMENTDATAGROUPTYPE
|   +-- merchantInformation: 가맹점 정보 (항공사, 보험사 등)
|   +-- monetaryInformation: 금액 정보 (최대 999)
|   +-- currenciesRatesGroup: 환율 정보 (최대 9)
|   +-- paymentId: Payment Record ID (최대 99)
|   +-- extendedPaymentInfo: 할부 결제 정보
|   +-- transactionDateTime: 트랜잭션 일시
|   +-- expirationPeriod: 결제 유효 기간 (초 단위)
|   +-- distributionChannelInformation: 유통 채널 정보
|   +-- purchaseDescription: 구매 설명
|   +-- association: Pricing Context 연결 (최대 99)
|   +-- fraudScreeningData: 사기 방지 데이터
|   +-- paymentDataMap: 결제 부가 정보 (최대 99)
+-- PAYMENTSTATUSGROUPTYPE
|   +-- paymentStatusInformation: 결제 상태
|   +-- paymentStatusHistory: 상태 이력 (최대 9)
|   +-- paymentStatusError: 결제 오류
|   +-- fraudScreeningResult: 사기 스크리닝 결과
+-- PNRSUPPLEMENTARYDATATYPE
    +-- dataAndSwitchMap: FOP 스위치 및 데이터 맵

merchantInformation (Company Information)

가맹점(Merchant) 정보. 결제를 요청하는 주체(항공사, 보험사 등)를 식별한다.

monetaryInformation (Monetary Information)

결제 관련 금액 정보. 최대 999개 반복.
필드설명
amount결제 금액
currency통화 코드 (ISO 4217)

distributionChannelInformation

유통 채널 및 트랜잭션 컨텍스트 정보.
필드형식설명
distributionChannelFieldan..3유통 채널 코드
subGroupan..3하위 그룹
accessTypean..3접근 유형
originatorTypea1발신자 유형
transactionConditionan..25트랜잭션 조건 요약
identityVerifiedByan..25본인 확인 수행 주체
remoteCommerceIndicatorsan..25원격 상거래 지표
authorCharacteristicInda1승인 특성 지표 (Y=참여, R=반복, I=상향, P=우대)
authorLifecycleLimitn..15승인 수명 제한 (일 단위)

Distribution Channel (유통 채널 코드)

코드설명
05API
0MOTO (Mail Order / Telephone Order)
1e-Commerce (Internet)

9. 사기 방지 스크리닝 (Fraud Screening)

FRAUDSCREENINGGROUPTYPE

사기 방지(Fraud Screening) 데이터를 전달하는 그룹 구조. 온라인 결제 시 위험 평가를 위한 다양한 정보를 포함한다.
fraudScreeningData
+-- pointOfService: 판매 시점 정보
|   +-- saleIndicator: 판매 유형 (S=스와이프, I=인터넷, A=콜센터)
|   +-- cardPresence: 카드 제시 여부 (CP/CNP)
|   +-- cardCapture: 카드 캡처 가능 여부
+-- posOperations: POS 운영 정보
|   +-- connectivityCapacity: 연결 용량 (Able/Unable/Unknown)
+-- paymentTerminal: 결제 단말기 정보
|   +-- terminalID: ATID 번호 (an8)
+-- ipAdress: 고객 IP 주소
+-- merchantURL: 가맹점 URL
+-- payerPhoneOrEmail: 결제자 전화번호/이메일
+-- browserInformation: 브라우저 정보
+-- shopperSession: 쇼퍼 세션 정보
|   +-- securityCode: Device Finger Print (기기 지문)

Sale Indicator (판매 유형)

코드설명
SSwipe, 스와이프 (카드 리더기)
IInternet/Online, 인터넷/온라인
ACall Center/IVR, 콜센터/자동응답
PKiosk, 키오스크
EOffline Travel Agency, 오프라인 여행사
TTelephone, 전화

Card Presence (카드 제시 여부)

코드설명
CPCard Present, 카드 제시 (대면 거래)
CNPCard Not Present, 카드 미제시 (비대면 거래)
NoContactContactless, 비접촉

fraudScreeningResult (Measurements)

사기 스크리닝 결과 정보.
필드형식설명
measurementQualifieran..3측정 유형 (FRA=사기 방지)
significancean..3스크리닝 결과
unitan..3단위 (P=포인트)
valuen..18리스크 관리 점수 (예: 300 Points)
surfaceLayerIndicatoran..3PSP/은행의 스크리닝 처리 결과

Fraud Screening 결과 코드

코드설명
OKFraud Screening Result Approved, 승인
KOFraud Screening Result Declined, 거부
WRNFraud Screening Result Warning, 경고

10. 가상 신용카드 (Virtual Credit Card)

virtualCreditCardParameters (Virtual Card Parameters)

가상 신용카드 생성 파라미터를 전달하는 구조.
필드형식설명
vendorCodean2카드사 코드 (VI, CA, AX). CA 입력 시 MasterCard 가상 카드 생성
maximumAuthorizationsn..4가상 카드에 허용되는 최대 승인 횟수
currencyan..3통화 제한 (최대 5개, ISO 4217)

virtualCreditCardStatusGroup

응답에서 반환되는 가상 신용카드 상태 그룹.
필드설명
virtualCreditCardParameters가상 카드 파라미터
virtualCreditCardData가상 카드 번호, 만료일, CVV, 카드사, 소유자명
fortknoxIdsFortKnox 토큰 ID (카드 번호 + CVV)
vCCAssociatedAdress가상 카드의 AVS 검증용 주소

11. Reply 주요 구조 (FOP 등록 결과)

fopDescription

응답에서 반환되는 FOP 데이터 구조 (최대 127개).
필드구조StRep설명
fopReferenceElement management segmentM1FP/SFP 타투 번호
passengerAssociationReference informationC99FOP에 연결된 승객
pnrElementAssociationReference informationC99PNR 요소 링크 (MCO, Segment 등)
additionalMonetaryDataCoded attributeC1추가 금액 데이터
freeFlowFopFree text informationC1PNR에 표시되는 FOP 전체 텍스트
fpElementErrorGroupC1FOP 읽기 중 발생한 오류
mopDescriptionGroupC99결제 수단 상세 정보
mopElementErrorGroupC1MOP 읽기 중 발생한 오류
paymentModuleGroupC1결제 트랜잭션 전체 데이터

transmissionError

전송 중 발생한 오류 정보 그룹.

paymentStatusInformation (Response Analysis Details)

결제 상태를 전달하는 구조.
필드형식설명
responseTypea1결제 상태 유형 코드
statusCodea..6처리 상태 (OK 또는 NOK)

Payment Status responseType (결제 상태 유형)

코드설명
CPayment Created, 결제 생성됨
GPayment Got/Captured, 결제 캡처됨
DPayment Deleted, 결제 삭제됨
UPayment Updated, 결제 업데이트됨
VPayment Validated, 결제 검증됨
RPayment Refund, 결제 환불
SPayment Reversed, 결제 취소(반전)
WPayment with Web Redirection, 웹 리다이렉트 결제

12. 승인 및 검증 (Authorization)

CREDITCARDSTATUSGROUPTYPE

신용카드 승인 상태 그룹. ISO8583 표준에 따른 승인 데이터를 전달한다.
필드구조설명
authorisationSupplementaryDataSpecific visa link credit card informationISO8583 표준 링크 데이터
approvalDetailsGeneric authorisation result승인 코드/소스
localDateTimeStructured date time information일시 (GMT, UTC, Local). 최대 3개
authorisationInformationTransaction information for ticketing승인 메시지 유형 (bulk, superbulk 등), STAN 번호
browserDataGroup고객 브라우저 정보
tdsInformationGroup3DS 관련 데이터
cardSupplementaryDataAttribute신용카드 추가 데이터 전송 (최대 99)
transactionStatusGroupCVV, AVS, AUT, ATN 등 하위 상태 (최대 7)
schemeAuthenticationDataGroup카드 스킴 인증 데이터

approvalDetails (Generic Authorisation Result)

승인 결과 정보.
필드형식설명
approvalCodean..20결제 승인 코드 값
sourceOfApprovalan..3승인 출처 (A=자동, M=수동 입력)
ISO8583 표준 기반의 카드 승인 보충 데이터.
필드형식설명
retrievalReferenceNumberan..12Retrieval Reference Number (Field 37). 카드 소유자 트랜잭션 추적용
authorCharacteristicIndicatora1승인 특성 지표 (Field 62.1). A/C/E/F/K/M/S/U/V/W/R/I/P/N/T
authorResponseCodean2승인 응답 코드 (Field 39)
cardLevelResultan2Card Level Result (Field 62.23). 제품 식별
terminalTypean1POS 추가 정보 (Field 60.1). CAT 또는 UAT
transacIdentifieran..15트랜잭션 식별자 (Field 62.2). Visa 고유 ID
validationCodean..4검증 코드 (Field 62.3)
banknetRefNumberan6..9Banknet 참조 번호 (Field 62.17, Position 8-13)
banknetDatean4Banknet 날짜 (Field 62.17, mmdd 형식)

13. 비동기 결제 (Asynchronous Payment)

ASYNCHPAYMENTSTATUSGROUPTYPE

비동기 결제 상태 그룹. 은행/PSP에서 비동기적으로 처리되는 결제의 상태를 전달한다.
필드설명
approvalReferenceNumber비동기 결제 승인 참조 번호
asyncPaymentUrl은행/PSP 제공 비동기 결제 URL

ASYNCHPAYMENTGROUPTYPE

비동기 결제 그룹.
필드설명
asunchronousPaymentDetails계좌 번호 및 만료일 저장

14. AMOP (Alternative Method of Payment)

AMOP 구조

대안 결제 수단(Alternative Method of Payment) 처리를 위한 구조. PayPal, iDEAL 등 전통적 카드 결제가 아닌 방식을 지원한다.
paymentModule
+-- amopDetailedData: AMOP 상세 데이터
|   +-- stepDefinition: 생성(BUILD) 또는 위임(DELEG) 단계
|   +-- messageVersion: 메시지 버전
|   +-- paymentDataMap: 결제 정보 (최대 99)
|   +-- groupAmopProcess: AMOP 처리 데이터
|   +-- groupAmopParameters: AMOP 파라미터
|   +-- amopGroupUrl: AMOP URL (최대 2)
|   +-- amopPayload: AMOP 페이로드 (최대 99)
+-- groupAmopContext: AMOP 컨텍스트
|   +-- clientTokenId: 클라이언트 토큰 ID
|   +-- amopContextData: 컨텍스트 데이터 (최대 99)
|   +-- communication: 통신 정보 (최대 99)
+-- transactionResult: 트랜잭션 결과
+-- errorGroup: 오류 그룹 (최대 9)

stepDefinition

AMOP 처리의 단계 정의.
코드설명
BUILDCreation Step, 생성 단계
DELEGDelegation Step, 위임 단계
FECBRFrontend Callback Response, 프런트엔드 콜백 응답
WEBRDWeb Redirection Data, 웹 리다이렉트 데이터
PROCCAMOP Process Details, AMOP 처리 상세
PARAMAMOP Parameters, AMOP 파라미터

15. 주요 코드셋 (Codesets)

Application Error 코드

코드설명
04691NO TATTOO OR LINE MATCH FOUND, 타투/라인 매치 없음
08000INVALID - DUPLICATE INPUTS NOT ALLOWED, 중복 입력 불가
02213INVALID FORM OF PAYMENT, 유효하지 않은 결제 수단
02312INVALID SEQUENCE NUMBER, 유효하지 않은 시퀀스 번호
294Invalid Format, 유효하지 않은 형식

Application Error 상태 코드 (계정)

코드설명
CClosed, 폐쇄
EExpired, 만료
FFrozen, 동결
OOpen for Use, 사용 가능
RRefunded, 환불됨
TXTransaction In Progress, 거래 진행 중

Business Function 코드

코드설명
1Air Provider, 항공 서비스
2Car Provider (CCR), 렌터카
3Hotel Provider (HHL), 호텔
4Ferry, 페리
5Cruise, 크루즈
6Rail, 철도
7Tour, 투어
10Air Taxi (ATX), 에어 택시
17Charter, 전세기
29Insurance, 보험

Attribute Type 코드 (FOP 요소 유형)

코드설명
AOAuthorisation Only, 승인만
BUILDCreation Step, 생성 단계
DELEGDelegation Step, 위임 단계
FCFC Element, FC 요소
FPFP Element, FP 요소
PAYPAY Element, PAY 요소

Code List Qualifier (Return Code 유형)

코드설명
ATNAuthentication Return Code, 인증 반환 코드
AUTAuthorization Return Code, 승인 반환 코드
AVSAddress Verification Return Code, 주소 검증 반환 코드
CVVCVV Return Code, CVV 반환 코드
PNRPNR Update Return Code, PNR 업데이트 반환 코드
SETSettlement Return Code, 정산 반환 코드
ECError Codes, 오류 코드
WECWarning Code, 경고 코드
ACCAccount Return Code, 계정 반환 코드

Communication Address Code Qualifier (URL 유형)

코드설명
DEFDefault URL, 기본 URL
ERCError Callback URL, 오류 콜백 URL
FCBFail Callback URL, 실패 콜백 URL
KACKeepalive Callback URL, 킵얼라이브 콜백 URL
PCBPending Callback URL, 보류 콜백 URL
RReturn URL, 반환 URL
REDRedirection URL, 리다이렉트 URL
RESResource URL, 리소스 URL
RSPResponse URL, 응답 URL
SCBSuccess Callback URL, 성공 콜백 URL
CCancel URL, 취소 URL
AHWorld Wide Web, 월드 와이드 웹
BOBoleto FOP URL, 볼레토 FOP URL

16. 메시지 구조 용어

FOP_CreateFormOfPayment 기술 문서에서 사용되는 메시지 구조 정의 용어.
용어설명
Entity메시지 내 데이터 항목의 참조 이름
StructureEntity의 정식 명칭과 참조 번호
Rep (Repetitions)상위 구조 내에서의 반복 횟수
St (Status)필수 여부. M=Mandatory, C=Conditional, M*=구현 시 필수
Fmt (Format)데이터 형식. a=문자, n=숫자, an=영숫자, ..x=가변 길이
Grouped Structure하위 구조를 포함하는 복합 구조 (계층 구조)
Simple Structure데이터 요소만 포함하는 단순 구조
Codeset코드화된 데이터 항목의 가능한 값 목록

데이터 형식 표기법

표기의미예시
a1고정 1자리 문자F (Issue Indicator)
an2고정 2자리 영숫자VI (Vendor Code)
an..4가변 영숫자 최대 4자리123 (CVV)
an..19가변 영숫자 최대 19자리4111111111111111 (카드 번호)
an..99가변 영숫자 최대 99자리HONG/GILDONG (카드 소유자명)
n..15가변 숫자 최대 15자리528400 (금액)
an4고정 4자리 영숫자1225 (만료일 MMYY)

약어 모음

약어정식 명칭설명
FOPForm of Payment결제 수단
MOPMean of Payment결제 방법 (FOP 라인 내 개별 결제 수단)
CCCredit Card신용카드
CACash현금
CHCheque수표
CVVCard Verification Value카드 보안 코드 (3~4자리)
3DS3-D Secure3도메인 보안 인증 프로토콜
ACSAccess Control Server3DS 카드 소유자 인증 서버
AVSAddress Verification Service주소 검증 서비스
PCI DSSPayment Card Industry Data Security Standard결제 카드 산업 데이터 보안 표준
AMOPAlternative Method of Payment대안 결제 수단 (PayPal, iDEAL 등)
PSPPayment Service Provider결제 서비스 제공자
OB FeeOptionally Billable Fee선택적 청구 수수료
MCOMiscellaneous Charge Order기타 요금 지시서
SFPStructured Form of Payment구조화된 결제 수단
FPForm of Payment (PNR Element)PNR 내 결제 수단 요소
PAYPayment Element결제 요소
STANSystem Trace Audit Number시스템 추적 감사 번호 (CC 승인 쌍 식별)
ATIDAmadeus Terminal IDAmadeus 터미널 ID
ISO8583ISO 8583금융 거래 카드 메시지 표준
MOTOMail Order / Telephone Order우편/전화 주문
CNPCard Not Present카드 미제시 (비대면 거래)
CPCard Present카드 제시 (대면 거래)
RETReporting of Electronic Ticketing전자 발권 리포팅
SPRFSales/Payment Report File판매/결제 리포트 파일
PNRPassenger Name Record승객 예약 기록
ETSElectronic Ticketing Server전자 발권 서버
VCCVirtual Credit Card가상 신용카드
NOXNon-sensitive Encrypted IDFortKnox 카드 번호 토큰 ID
EDIFACTElectronic Data Interchange For Administration, Commerce and Transport전자 데이터 교환 표준

참고

WBS Integration Flow - Step 9

PNR_AddMultiElements 용어집

Fare_PricePNRWithBookingClass 용어집

BSP 정산 가이드