본문으로 건너뛰기

OTC 조회

오프라인 대면 결제(단말기-Kiosk, POS, 등) 시 필요한 OTC 정보(Track2)를 조회하는 API 입니다.

주의사항
  • 보안을 위해 OTC 조회 API는 허용된 제휴사만 사용가능하고, 사전 등록된 IP에서 요청된 API 호출만 정상 처리됩니다.
    • API 연동 전, 반드시 API를 초출하는 제휴사 서버의 공인 IP(Public IP)를 영업담당자를 통해 등록하시기 바랍니다.
  • OTC 조회 후 반드시 180초이내 승인요청을 해야 합니다. 이후 승인 요청 시 거절이 발생할 수 있습니다.
정보
  • OTC 정보(Track2)는 요청시 보내준 RSA공개를 이용하여 RSA 암호화(ECB/PKCS1Padding) 후 암호화된 정보를 전달됩니다.
  • 제휴사에서 암호화된 OTC 정보(Track2)를 비밀키로 복호화하여 단말기로 승인요청 하시기 바랍니다.
공개키 및 개인키 발행 Java 예
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
keyPairGenerator.initialize(2048);

KeyPair keyPair = keyPairGenerator.genKeyPair();

String privateKey = new String(Base64.encodeBase64(keyPair.getPrivate().getEncoded()));
String publicKey = new String(Base64.encodeBase64(keyPair.getPublic().getEncoded()));

요청

요청 URL
POST https://{API 도메인}/easycheck/merchant-otcs.do
Content-type: application/json; charset=euc-kr

파라미터

필드명타입길이필수여부설명
authorizationIdString60Byte인증 거래번호
publicKeyString512Byte제휴사 RSA 공개키(Base64 인코딩)
요청 예시
{  
"authorizationId": "{인증 거래번호}",
"publicKey": "{제휴사 RSA 공개키}",
}

응답

파라미터

필드명타입길이설명
resCdString4Byte결과코드(정상 : “0000”)
resMsgString1000Byte결과 메시지
shopTransactionIdString60Byte거래인증 등록 요청 시 전송한 값 그대로 사용
shopOrderNoString40Byte거래인증 등록 요청 시 전송한 값 그대로 사용
authorizationIdString60Byte요청 시 전송한 값 그대로 사용
encOtcString400Byte암호화된 OTC 정보(RSA/ECB/PKCS1Padding)
shopParameterString4000Byte제휴사 예비필드
응답 예시
{
"resCd": "0000",
"resMsg": "정상처리",
"shopTransactionId": "{API 멱등성 키}",
"shopOrderNo": "{제휴사 주문번호}",
"authorizationId": "{인증 거래번호}",
"encOtc": "{암호화된 OTC 정보}",
"shopParameter": "{제휴사 예비필드}"
}