휴대폰 인증 확인 (S2) API

고객이 입력한 인증번호를 확인하는 API입니다.


테스트용 키 정보


API 정보

POST/spay/APIVBank.do
Content-Typeapplication/json
테스트https://tbgw.settlebank.co.kr/spay/APIVBank.do
운영https://gw.settlebank.co.kr/spay/APIVBank.do

요청 파라미터

타입 표기법
N숫자A영문H한글AN영문+숫자AHN영문+한글+숫자
예: AN(10) = 영문+숫자, 최대 10byte

params 객체

mchtIdAN(12)영문+숫자, 최대 12byte*
헥토파이낸셜에서 부여하는 고유 상점아이디
verAN(4)영문+숫자, 최대 4byte*
전문 버전
methodA(2)영문, 최대 2byte*
결제수단
bizTypeAN(2)영문+숫자, 최대 2byte*
업무 구분코드
*S2: 휴대폰 인증 확인
encCdN(2)숫자, 최대 2byte*
암호화 구분 코드
mchtTrdNoAN(100)영문+숫자, 최대 100byte*
상점주문번호 (S1에서 사용한 것과 동일)
trdDtN(8)숫자, 최대 8byte*
요청일자 (yyyyMMdd)
trdTmN(6)숫자, 최대 6byte*
요청시간 (HHmmss)
mobileYnA(1)영문, 최대 1byte
모바일 여부
Y: 모바일웹/앱 N: PC 또는 그 외
osTypeA(1)영문, 최대 1byte
OS 구분
A: Android I: IOS W: Windows M: Mac E: 기타

data 객체

pktHashAN(64)영문+숫자, 최대 64byte*SHA-256(실시간 생성)
SHA256 방식으로 생성한 해쉬값
*거래일자 + 거래시간 + 상점아이디 + 상점주문번호 + '0' + 해쉬키
authNoN(6)숫자, 최대 6byte*
고객이 입력한 인증번호
cphoneNoN(11)숫자, 최대 11byte*AES-256AES-256/ECB/PKCS5Padding + Base64
S1에서 요청한 휴대폰번호
orgMchtTrdNoAN(100)영문+숫자, 최대 100byte*
S1 인증 요청시 사용한 상점주문번호
mchtCustIdAN(100)영문+숫자, 최대 100byte*
S1 인증 요청시 사용한 고객아이디 (불일치 시 에러)
mchtCustNmAHN(30)영문+한글+숫자, 최대 30byte
상점 고객명
dpstrNmAHN(50)영문+한글+숫자, 최대 50byte
예금주명

응답 파라미터

타입 표기법
N숫자A영문H한글AN영문+숫자AHN영문+한글+숫자
예: AN(10) = 영문+숫자, 최대 10byte

params 객체

mchtIdAN(10)영문+숫자, 최대 10byte*nxva_sb_il
상점아이디
verAN(4)영문+숫자, 최대 4byte*0A18
전문 버전
methodA(2)영문, 최대 2byte*VA
결제수단
bizTypeAN(2)영문+숫자, 최대 2byte*S2
업무 구분코드
encCdN(2)숫자, 최대 2byte*23
암호화 구분 코드
mchtTrdNoAN(100)영문+숫자, 최대 100byte*ORDER20211231100000
상점주문번호
trdNoAN(40)영문+숫자, 최대 40byte*STBK_0123456789
헥토파이낸셜 거래번호
trdDtN(8)숫자, 최대 8byte*20211231
요청일자
trdTmN(6)숫자, 최대 6byte*120000
요청시간
outStatCdAN(4)영문+숫자, 최대 4byte*0021
거래상태코드
0021: 성공 0031: 실패
outRsltCdAN(4)영문+숫자, 최대 4byte*0000
결과코드 (0000인 경우 정상)
*VA03: B2B 이용시 이미 발급된 가상계좌번호가 존재하는 경우
outRsltMsgAHN(200)영문+한글+숫자, 최대 200byte*정상적으로 처리되었습니다.
결과메세지

data 객체

pktHashAN(64)영문+숫자, 최대 64byte*75ac014c33165f3ee0c331123a0049f37a6e1578f8cec1d3d0374ffb75f18496
응답 해쉬값
authNoN(6)숫자, 최대 6byte*123456
인증번호
cphoneNoN(11)숫자, 최대 11byte*AES-256AES-256/ECB/PKCS5Padding01012345678
휴대폰번호 (B2B 이용시 뒤에 3자리 추가)
*실제 응답값은 AES-256 암호화된 값입니다. 복호화 후 사용하세요.
reqAuthDtN(8)숫자, 최대 8byte*20211231
인증요청일자 (yyyyMMdd)
orgMchtTrdNoAN(100)영문+숫자, 최대 100byte*ORDER20211231100000
원상점주문번호
mchtCustIdAN(100)영문+숫자, 최대 100byte*HongGilDong
상점 고객 아이디
mchtCustNmAHN(30)영문+한글+숫자, 최대 30byte홍길동
상점 고객명
dpstrNmAHN(50)영문+한글+숫자, 최대 50byte*010가상계좌
예금주명 (B2C: '010가상계좌' 고정, B2B: '010_고객명')

요청 예시

{
  "params": {
    "mchtId": "nxva_sb_il",
    "ver": "0A18",
    "method": "VA",
    "bizType": "S2",
    "encCd": "23",
    "mchtTrdNo": "ORDER20211231100000",
    "trdDt": "20211231",
    "trdTm": "120100",
    "mobileYn": "N",
    "osType": "W"
  },
  "data": {
    "pktHash": "해시값",
    "authNo": "123456",
    "cphoneNo": "AES암호화된휴대폰번호",
    "orgMchtTrdNo": "ORDER20211231100000",
    "mchtCustId": "HongGilDong",
    "mchtCustNm": "홍길동",
    "dpstrNm": "홍길동"
  }
}

응답 예시

{
  "params": {
    "mchtId": "nxva_sb_il",
    "ver": "0A18",
    "method": "VA",
    "bizType": "S2",
    "encCd": "23",
    "mchtTrdNo": "ORDER20211231100000",
    "trdNo": "STBK_0123456789",
    "trdDt": "20211231",
    "trdTm": "120100",
    "outStatCd": "0021",
    "outRsltCd": "0000",
    "outRsltMsg": "정상적으로 처리되었습니다."
  },
  "data": {
    "pktHash": "응답해시값",
    "authNo": "123456",
    "cphoneNo": "AES암호화된휴대폰번호",
    "reqAuthDt": "20211231",
    "orgMchtTrdNo": "ORDER20211231100000",
    "mchtCustId": "HongGilDong",
    "mchtCustNm": "홍길동",
    "dpstrNm": "010가상계좌"
  }
}
❓

더 궁금한 내용이 있나요?

FAQ
💬

기술지원이 필요한가요?