개발자센터

내통장 결제

핵토파이낸셜에서 제공하는 오픈뱅킹 기반 계좌간편결제 연동 방법을 안내합니다.

1. 내통장 결제 설정하기

내통장 결제설정 페이지의 내용을 참고하여 PG 설정을 진행합니다.

2.결제 요청하기

JavaScript SDK IMP.request_pay(param, callback)을 호출하여 내통장 결제 결제창을 호출할 수 있습니다. 결제결과는 PC의 경우 IMP.request_pay(param, callback) 호출 후 callback 으로 수신되 모바일의 경우 m_redirect_url 로 리디렉션됩니다.

Javascript SDK
IMP.request_pay({ // param
  pg: "settle_acc.MID", // 발급받은 가맹점아이디  
  pay_method: "trans",
  merchant_uid: "ORD20180131-0000011",
  name: "노르웨이 회전 의자",
  buyer_email: "gildong@gmail.com",
  buyer_name: "홍길동",
  buyer_tel: "010-1234-5678", 
  buyer_addr: "서울특별시 강남구 삼성동",
  m_redirect_url: "{모바일에서 결제 완료 후 리디렉션 될 URL}",
  amount: 1000,
  bypass: {
    settle: {
      addDeductionYn: "N", // 추가공제구분 (대중교통:Y, 도서,공연비:C, 추가공제없음:N)
      criPsblYn: "N", // 현금영수증 발행가능 여부 ( Y or N or ""빈문자열은 Y로인식)
      custCi: "<회원 연계정보(Connecting Information)>" // 가맹점이 보유한 회원 CI를 설정하면 내통장 결제에 등록한 CI와 비교하여 동일인인지 자동검증되며 일치하지 않은 경우 결제가 중단됩니다.
    }
  }
}, function (rsp) { // callback
  // 생략
});

주요 파라미터 설명

pg *string

PG사 구분코드

settle_acc.MID 형태 로 지정하셔야 합니다.

pay_method * string

결제수단 구분코드

trans

merchant_uid * string

가맹점 고유주문번호

매번 고유하게 채번되어야 합니다.

buyer_tel * string

구매자 연락처

필수 파라미터 입니다.

amount * integer

결제금액

string 이 아닌점에 유의하세요

bypass

optional 로 계약이 된 경우 사용 가능합니다.

addDeductionYn: 추가공제구분 (대중교통:Y, 도서,공연비:C, 추가공제없음:N)
criPsblYn: "N", // 현금영수증 발행가능 여부 ( Y or N or ""빈문자열은 Y로인식)
  1. 내통장결제는 팝업 형태로 제공됩니다.
  2. 매출전표가 제공되지 않습니다.
  3. 선불충전금 ( ex: 카카오페이, 네이버페이 충전금)으로만 결제하는 경우 계좌정보(은행코드)가 제공되지 않습니다

인증결제창 호출 파라미터에서 customer_uid 값을 추가하면 비 인증 결제창을 호출할 수 있습니다. 비인증 결제창에서 빌링키를 발급받은 후 해당 빌링키로 결제를 요청합니다.

Javascript SDK
IMP.request_pay(
  {
    pg: "settle_acc.MID", //발급받은 가맹점아이디
    pay_method: "trans",
    merchant_uid: "ORD20180131-0000011",
    name: "노르웨이 회전 의자",
    buyer_email: "gildong@gmail.com",
    buyer_name: "홍길동",
    buyer_tel: "010-1234-5678",
    buyer_addr: "서울특별시 강남구 삼성동",
    m_redirect_url: "{모바일에서 결제 완료 후 리디렉션 될 URL}",
    customer_uid: "A00001-001", // 빌링키와 맵핑되는
    amount: 1000,
    bypass: {
      settle: {
        addDeductionYn: "N", // 추가공제구분 (대중교통:Y, 도서,공연비:C, 추가공제없음:N)
        criPsblYn: "N", // 현금영수증 발행가능 여부 ( Y or N or ""빈문자열은 Y로인식)
      },
    },
  },
  function (rsp) {
    if (rsp.success) {
      alert("빌링키 발급 성공");
    } else {
      alert("빌링키 발급 실패");
    }
  }
);
  • 비인증 결제를 위해서는 정기결제 계약이 필수입니다.
  • amount 값을 0으로 설정시 빌링키만 발급이 가능합니다.

주요 파라미터 설명

pg *string

PG사 구분코드

settle_acc.MID 형태 로 지정\

customer_uid *string

빌링키

등록 계좌정보와 1:1로 매칭될 빌링키를 지정합니다.

amount *Integer

결제금액

0원으로 입력시 빌링키만 발급되 실금액 설정시 결제와 동시에 빌링키가 발급됩니다.\

빌링키(customer_uid)로 결제 요청하기

빌링키 발급이 성공하면 실 빌링키는 customer_uid 와 1:1 매칭되어 포트원 서버에 저장됩니다. customer_uid를 가맹점 내부서버에 저장하시고 비 인증 결제요청 REST API를 호출하시면 결제를 발생시킬 수 있습니다.

server-side
curl -H "Content-Type: application/json" \
     -X POST -d '{"customer_uid":"your-customer-unique-id", "merchant_uid":"order_id_8237352", "amount":3000}' \
     https://api.iamport.kr/subscribe/payments/again

추가 파라미터 안내

{
  "extra": {
    "addDeductionYn": "N", // 추가공제구분 (대중교통:Y, 도서,공연비:C, 추가공제없음:N)
    "criPsblYn": "N" // 현금영수증 발행가능 여부 ( Y or N or ""빈문자열은 Y로인식)
  }
}