충전 API
회원에게 머니 또는 포인트를 충전(지급)하는 API입니다.
API 정보
POST/v1/approval/charge
Content-Type
application/json테스트
https://tb-mps-api.hectofinancial.co.kr/v1/approval/charge운영
https://mps-api.hectofinancial.co.kr/v1/approval/charge충전 유형
| 구분코드 | 유형 | 설명 |
|---|---|---|
| MP | 머니 충전 | 현금성 선불금 충전 (출금 가능) |
| PP | 포인트 지급 | 이벤트/프로모션 포인트 (출금 불가) |
충전 수단 코드
| 코드 | 충전 수단 |
|---|---|
| CA | 신용카드 |
| ZOZ | 010가상계좌 |
| 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)숫자, 최대 7byte
AES-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
상점 여유필드 1
*평문으로 송수신되므로 개인정보와 같은 민감정보 포함되지 않도록 주의
└mResrvField2AN(255)영문+숫자, 최대 255byte상점 여유필드 2
상점 여유필드 2
*평문으로 송수신되므로 개인정보와 같은 민감정보 포함되지 않도록 주의
└mResrvField3AN(255)영문+숫자, 최대 255byte상점 여유필드 3
상점 여유필드 3
*평문으로 송수신되므로 개인정보와 같은 민감정보 포함되지 않도록 주의
└trdSumryAN(50)영문+숫자, 최대 50byte거래 적요
거래 적요
*지급 사유
└pktHashAN(200)영문+숫자, 최대 200byte*
SHA-256SHA-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 해시값
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)는 중복될 수 없습니다.
