충전 API

회원에게 머니 또는 포인트를 충전(지급)하는 API입니다.


API 정보

POST/v1/approval/charge
Content-Typeapplication/json
테스트https://tb-mps-api.hectofinancial.co.kr/v1/approval/charge
운영https://mps-api.hectofinancial.co.kr/v1/approval/charge

충전 유형

구분코드유형설명
MP머니 충전현금성 선불금 충전 (출금 가능)
PP포인트 지급이벤트/프로모션 포인트 (출금 불가)

충전 수단 코드

코드충전 수단
CA신용카드
ZOZ010가상계좌
EZ내통장결제
RA계좌이체
PIN
RP간편현금결제
MM머니이관
PM포인트이관

요청 파라미터

타입 표기법
N숫자A영문H한글AN영문+숫자AHN영문+한글+숫자
예: AN(10) = 영문+숫자, 최대 10byte
custNoAN(20)영문+숫자, 최대 20byte*
선불 회원번호
*헥토파이낸셜에서 부여하는 고유 선불 회원 번호
mTrdNoAN(50)영문+숫자, 최대 50byte*
상점 거래번호
*가맹점에서 발급한 거래번호 (한글 제외)
divCdAN(2)영문+숫자, 최대 2byte*
구분코드
MP: 머니 충전 PP: 포인트 지급
trdDivDtlCdAN(10)영문+숫자, 최대 10byte
거래구분상세코드
*사전에 등록된 거래구분상세코드만 사용 가능
chrgMeanCdAN(2)영문+숫자, 최대 2byte*
충전 수단 코드
CA: 신용카드 ZOZ: 010가상계좌 EZ: 내통장결제 RA: 계좌이체 PIN: 핀 RP: 간편현금결제 MM: 머니이관 PM: 포인트이관
*화이트라벨 충전 시 화이트라벨 결제 API 응답 전문 내 payMethod (CA 또는 RP) 값 입력
trdAmtAN(7)영문+숫자, 최대 7byte*AES-256AES-256/ECB/PKCS5Padding + Base64
충전 요청 금액
*AES-256/ECB/PKCS5Padding 암호화 필요. 머니 충전 시 최소 충전금액 1만원
blcAmtAN(7)영문+숫자, 최대 7byte*AES-256AES-256/ECB/PKCS5Padding + Base64
잔액
*머니/포인트 잔액. AES-256/ECB/PKCS5Padding 암호화 필요. 머니 충전 시 머니 잔액
pntVldPdAN(8)영문+숫자, 최대 8byte*
포인트 만료일자
*yyyyMMdd. 유효기간 최대 10년
custBdnFeeAmtN(7)숫자, 최대 7byteAES-256AES-256/ECB/PKCS5Padding + Base64
고객 부담 수수료
*AES-256/ECB/PKCS5Padding 암호화 필요
chrgTrdNoAN(50)영문+숫자, 최대 50byte
충전거래번호
*헥토파이낸셜 PG 거래 시 발생하는 거래번호. 외부 PG 사용 시 '00000', 내부 PG 사용 시 PG거래번호 입력
reqDtAN(8)영문+숫자, 최대 8byte
요청 일자
*yyyyMMdd. 입력 안 할 시 서버 일자로 자동 입력
reqTmAN(6)영문+숫자, 최대 6byte
요청 시간
*HHmmss. 입력 안 할 시 서버 시간으로 자동 입력
mResrvField1AN(255)영문+숫자, 최대 255byte
상점 여유필드 1
*평문으로 송수신되므로 개인정보와 같은 민감정보 포함되지 않도록 주의
mResrvField2AN(255)영문+숫자, 최대 255byte
상점 여유필드 2
*평문으로 송수신되므로 개인정보와 같은 민감정보 포함되지 않도록 주의
mResrvField3AN(255)영문+숫자, 최대 255byte
상점 여유필드 3
*평문으로 송수신되므로 개인정보와 같은 민감정보 포함되지 않도록 주의
trdSumryAN(50)영문+숫자, 최대 50byte
거래 적요
*지급 사유
pktHashAN(200)영문+숫자, 최대 200byte*SHA-256(실시간 생성)
SHA-256 해시값
*선불회원번호 + 상점아이디 + 상점거래번호 + 거래금액(평문) + 해시키

응답 파라미터

타입 표기법
N숫자A영문H한글AN영문+숫자AHN영문+한글+숫자
예: AN(10) = 영문+숫자, 최대 10byte
rsltCdAN(4)영문+숫자, 최대 4byte*0000
응답코드
0000: 성공 그 외: 실패
rsltMsgAN(255)영문+숫자, 최대 255byte*성공
응답 메시지

rsltObj (응답 객체)

custNoAN(20)영문+숫자, 최대 20byte*2400001605
선불 회원번호
mtrdNoAN(50)영문+숫자, 최대 50byte*ORDER20240716
상점 거래번호
*한글 제외
trdNoAN(50)영문+숫자, 최대 50byte*24071616270200002193
거래 승인번호
*헥토파이낸셜에서 발급한 거래 승인번호
trdDivDtlCdAN(10)영문+숫자, 최대 10byte
거래구분상세코드
*사전에 등록된 거래구분상세코드만 사용 가능
trdAmtN(7)숫자, 최대 7byte*10000
거래 금액
custBdnFeeAmtN(7)숫자, 최대 7byte*0
고객 부담 수수료
mnyBlcN(7)숫자, 최대 7byte*25000
머니 잔액
*거래 후 머니 잔액
pntBlcN(7)숫자, 최대 7byte*1000
포인트 잔액
*거래 후 포인트 잔액
trdDtAN(8)영문+숫자, 최대 8byte*20241212
거래 일자
*yyyyMMdd
trdTmAN(6)영문+숫자, 최대 6byte*192035
거래 시간
*HHmmss
pktHashAN(200)영문+숫자, 최대 200byte*
SHA-256 해시값
*선불회원번호 + 상점아이디 + 상점거래번호 + 헥토파이낸셜 거래승인번호 + 거래금액 + 해시키

요청 예시

머니 충전

{
  "custNo": "2400001605",
  "mTrdNo": "ORDER20240716",
  "divCd": "MP",
  "chrgMeanCd": "CA",
  "trdAmt": "AES암호화된금액",
  "blcAmt": "AES암호화된잔액",
  "pntVldPd": "20340716",
  "reqDt": "20241212",
  "reqTm": "192035",
  "pktHash": "해시값"
}

포인트 지급

{
  "custNo": "2400001605",
  "mTrdNo": "ORDER20240716",
  "divCd": "PP",
  "chrgMeanCd": "PIN",
  "trdAmt": "AES암호화된금액",
  "blcAmt": "AES암호화된잔액",
  "pntVldPd": "20340716",
  "trdSumry": "이벤트 포인트 지급",
  "pktHash": "해시값"
}

응답 예시

성공

{
  "rsltCd": "0000",
  "rsltMsg": "성공",
  "rsltObj": {
    "custNo": "2400001605",
    "mtrdNo": "ORDER20240716",
    "trdNo": "24071616270200002193",
    "trdAmt": "10000",
    "custBdnFeeAmt": "0",
    "mnyBlc": "25000",
    "pntBlc": "1000",
    "trdDt": "20241212",
    "trdTm": "192035",
    "pktHash": "f395b6725a9a18f2563ce34f8bc76698051d27c05de5ba815f463f00429061c"
  }
}

실패

{
  "rsltCd": "1001",
  "rsltMsg": "회원 정보가 존재하지 않습니다."
}

주의사항

  • 머니 충전 시 최소 충전금액은 1만원입니다.
  • 포인트는 출금이 불가능합니다.
  • 포인트 유효기간은 최대 10년입니다.
  • 거래번호(mTrdNo)는 중복될 수 없습니다.
❓

더 궁금한 내용이 있나요?

FAQ
💬

기술지원이 필요한가요?