통합 결제
03.KisPosAgent개발가이드 Event 버전을 토대로 작성 됨.
Payco 결제는 현재 통합 간편결제를 통해서만 가능해요 :-)
[메서드 리스트]
초기화
Init
모든 프로퍼티 초기화
void
[0] 성공 그 외 비정상
KIS-NAGT 결제요청
KIS_ICApproval
결제요청함수
void
[0] 결제 응답전문 수신 [-23] KIS-NAGT 접속 실패
결제종료 이벤트
OnApprovalEnd
결제완료이벤트 함수
void
상태 이벤트
OnApprovalChanged
결제 중 현재 상태를 알려주는 이벤트 함수
void
요청 취소 함수
KIS_Agent_Stop
결제요청 후 중지하고 싶을 때 호출하는 함수
short
[0] 성공 그 외 비정상
[결제 요청]
inTranCode
전문구분코드
●
●
2
"IP" : Event 버전 필수코드
inTradeType
거래 구분
●
●
2
"D1" : 신용or간편결제승인 "D2" : 신용or간편결제취소
inAgentIP
KIS-NAGT IP
●
●
10
KIS-NAGT 설치 된 PC의 IP (로컬 : "127.0.0.1")
inAgentPort
KIS-NAGT PORT
●
●
4
KIS-NAGT 설치 된 PC의 PORT (디폴트 : 1515)
inAddressNo1
요청 목적지 주소정보1
◎
◎
15
서버 IP (디폴트 : Agent 설정 값)
테스트:210.112.100.97 운영:210.112.100.63
inAddressNo2
요청 목적지 주소정보2
◎
◎
6
서버 PORT(디폴트:Agent 설정 값) 일반:60201 병원:60202
inCatId
단말기번호
◎
◎
10
가맹점단말기번호 (디폴트:Agent 설정 메뉴 값)
inSignYN
전자서명구분
●
●
1
"Y" : 전자서명을 Agent 통하여 입력받음 "N" : 전자서명을 Agent 통하지 않고 직접 서명데이터 넘겨줄 때 이용 "" : 무서명결제 (서명없음) ※ 5만원 이상 결제와 무관하게 보내야 함
inSignFileName
서명파일명
●
●
120
서명파일 저장 경로 (절대 경로) ※ 무서명 결제의 경우 inSignFileName : "" 로 필수로 설정
inTranGubun
거래수단구분
◎
◎
1
"B" : 바코드, "C" : IC카드입력
inBarCodeNumber
바코드번호
◎
◎
40
바코드번호 or QR코드
inInstallment
할부개월
◎
◎
2
할부개월
inTranAmt
결제금액
●
●
8
결제금액
inVatAmt
부가세액
◎
◎
8
부가세액
inSvcAmt
봉사료
◎
◎
8
봉사료
inOrgAuthDate
원거래일자
○
●
6
원거래승인일자 YYMMDD (취소거래 시에만 입력)
inOrgAuthNo
원승인번호
○
●
12
원거래승인번호 (취소거래 시에만 입력)
inHospitalYN
병원정보 사용여부
◎
◎
1
병원정보 입력 사용 여부 "Y" 인 경우 inVanKeyYN 도 "Y"로 설정 필수
inHospitalInfo
병원정보
◎
◎
Var
병원정보 데이터
inDepositAmt
컵보증금
◎
◎
7
컵보증금
[결제 응답]
outRtn
리턴값
●
●
1
Agent와 통신 결과 값
outCatId
단말기번호
●
●
10
가맹점 단말기 번호
outAgentCode
Agent 응답코드
●
●
4
Agent 응답코드 "0000" : 정상, 외에는 비정상
outPayType
간편결제 구분
●
●
3
간편결제 구분 "KKO" : 카카오페이 "SGP" : SSGPAY "ZRP" : 제로페이 "ALP" : 알리페이 "WEP" : 위챗페이 "LPY" : Lpay "APP" : 앱카드 "EMQ" : EMVQR(네이버페이, BC페이북 등) -> inStructVer : V01인 경우 "EMQ" :BC페이북 -> inStructVer : V02인 경우 "NVP" : 네이버페이-> inStructVer : V02인 경우 "HNQ" : 하나원Q페이 -> inStructVer : V02인 경우 "SPY" : 서울페이 "TSP" : 토스페이 "SSP" : 삼성페이 "BGQ" : BC GLOBAL QR
outReplyCode
응답코드
●
●
4
서버 응답코드 "0000" : 정상, 외에는 비정상
outTranAmt
결제금액
●
●
8
결제금액
outAuthNo
승인번호
●
●
13
승인번호
ouReplyDate
거래일자
●
●
V(14)
거래일자(YYYYMMDD) 간편결제 시(YYYYMMDDhhmmss)
outAccepterCode
매입사코드
●
●
4
매입사코드
outAccepterName
매입사명
●
●
20
매입사명
outIssuerCode
발급사코드
●
●
4
발급사코드
outIssuerName
발급사명
●
●
20
발급사명
outMerchantRegNo
가맹점번호
●
●
20
가맹점번호
outCardNo
카드빈
◎
◎
V(256)
카드빈 6자리 특수 바코드번호 결제 : OTC 결제된 카드 번호 (KKO)
outOrderNo
주문번호
●
Ο
32
알리/위챗 주문번호(고객 영수증에 출력 후 취소 결제 시 사용)
outUserID
UserID
◎
◎
32
알리/위챗 구매 UserID
outCardGubun
카드구분
●
●
1
0 : 신용, 1: 체크, 2:기프트
outMemberShipBarcode
멤버쉽바코드번호
◎
◎
20
멤버쉽바코드번호
outMerchantMemberShipNo
가맹점멤버번호
◎
◎
20
가맹점멤버번호
outTranGubun
WCC
●
●
1
"B" : 바코드 "K" : Keyin "Q" : QR
outPurchaseGubun
매입구분
●
●
1
S : DESC, C : EDC, D : DDC
outReplyMsg1
메시지1
●
●
40
메시지 1
outReplyMsg2
메시지2
●
●
80
메시지 2
outTradeNum
거래일련번호
◎
◎
20
거래일련번호
outTradeReqDate
거래요청날짜
◎
◎
8
거래요청날짜 (YYYYMMDD)
outTradeReqTime
거래요청시간
◎
◎
6
거래요청시간 (hhmmss)
outAddedPoint
발생포인트
●
◎
12
카카오페이 결제 시 : 할인금액
outUsablePoint
가용포인트
●
◎
12
카카오 페이 시 : 승인금액 = 결제요청금액 - 카카오페이할인금액
outTotalPoint
누적포인트
●
◎
12
SSG 결제 시 : 잔액한도
outPayMethod
결제 수단
●
◎
5
카카오페이 결제 시 : MONEY/CARD 토스페이 결제 시 : MONEY/CARD/ACCOT
outWCC
거래타입
◎
◎
1
S : MSR, 삼성페이 s : 서명패드를 통한 MST 삼성페이 승인 C : IC 결제 P : 암호화 키인 K : 키인 (현금영수증 등)
outAddInfo
부가정보
◎
◎
100
*SSGPAY SSGPAY 마스킹 실 카드번호 : '실카드: ' +0000---0000 SSG계좌 가상계좌출력번호 : '가상계좌: ' + 123456789012345 *LPAY LPAY에 등록된 결제요청ID (20) : 가맹점에서 LPAY와 대사 필요 시 가맹점 저장
outBarCodeNumber
바코드
◎
◎
40
바코드 번호
outToken
OTC
●
◎
V(256)
Pay 거래 시 OTC 번호
outArrivedData
상태체크
◎
◎
2
OnApprovalChanged 함수 호출 시 사용 "IC" : IC 카드 리딩 중 "FB" : FB 카드 리딩 중 "IS" : IC + 서명패드 통한 MST 삼성페이 진행 중 "TN" : IC + 서명패드 고객정보입력 "KI" : 키인 승인 중 "UQ" : BCQR 리딩 중 "PN" : 핀 입력 중 "SN" : 서명 입력 중 "NV" : 신용 승인 중
outEightCardNo
8자리 카드빈
◎
◎
8
8자리 카드빈처리 가능 리더기인 경우 8자리 카드빈 데이터
[샘플코드 - 통합결제승인]
axKisPosAgent1.inTranCode = "IP";
axKisPosAgent1.inTradeType= "D1";
axKisPosAgent1.inTranAmt = "1004";
axKisPosAgent1.inAgentIP = "127.0.0.1";
axKisPosAgent1.inAgentPort = 1515;
axKisPosAgent1.inSignYN = "Y";
axKisPosAgent1.inSignFileName = "C:\\sign.bmp";
axKisPosAgent1.KIS_ICApproval();
Last updated