본문 바로가기
기타

Spring Boot) 부트페이 연동하기

by 어렵다어려웡 2021. 5. 31.

개인 프로젝트에 결제서비스를 세팅하기 위해서 검색해봣는데 여러가지 서비스중에서

부트페이를 선택했습니다.

 

부트페이(Bootpay)는 무료로 서비스되는 결제 연동 API입니다.

장점으로는 PG 계약과 상관없이 즉시 개발이 가능하며, 웹, 앱 SDK 모두 지원합니다.

그리고 국내외 여러 PG(복수 선택 가능)와 결제수단을 소스코드 한 줄로 사용할 수 있으며,

PG기반의 무료 로그 분석 서비스를 제공합니다.

 

우선 하는 방법부터 말씀드리면.

1. 회원가입을 하여 프로젝트를 만든다

2. 결제수단 활성화를 시켜서 원하는 결제서비스를 설정한다.

테스트를 할것이기 떄문에 결제수단을 활성화 하되 실결제 모드를 비활성화 합니다.

 

3. 실제 프로젝트연동 방법

부트페이 공식홈페이지에 보면 어떤식으로 연동을 할수 있는지에 대한 방법들이 나옵니다.

출처 - https://docs.bootpay.co.kr/online/pg?pg=nicepay&pm=card&language=web 

 

부트페이 개발문서

 

docs.bootpay.co.kr

일단 그 중에서 CDN 방식으로 사용했습니다.

그리고 하단의 스크립트는 결제 화면을 띄우는 코드인데 우선 너무 긴 관계로 짧게 올리겠습니다.

해당 코드는 공식홈페이지에 있으며 커스텀해서 사용이 가능합니다.

<script src="https://cdn.bootpay.co.kr/js/bootpay-3.3.2.min.js" type="application/javascript"></script>

//실제 복사하여 사용시에는 모든 주석을 지운 후 사용하세요
BootPay.request({
	price: '1000', //실제 결제되는 가격
	application_id: "[ WEB SDK용 Application ID ]",
	name: '블링블링 마스카라', //결제창에서 보여질 이름
	pg: 'nicepay',
	method: 'card', //결제수단, 입력하지 않으면 결제수단 선택부터 화면이 시작합니다.
	show_agree_window: 0, // 부트페이 정보 동의 창 보이기 여부
	items: [
		{
			item_name: '나는 아이템', //상품명
			qty: 1, //수량
			unique: '123', //해당 상품을 구분짓는 primary key
			price: 1000, //상품 단가
			cat1: 'TOP', // 대표 상품의 카테고리 상, 50글자 이내
			cat2: '티셔츠', // 대표 상품의 카테고리 중, 50글자 이내
			cat3: '라운드 티', // 대표상품의 카테고리 하, 50글자 이내
		}
	],
	user_info: {
		username: '사용자 이름',
		email: '사용자 이메일',
		addr: '사용자 주소',
		phone: '010-1234-4567'
	},

---- 이하 생략 ------

 


부트페이는 다른 결제 서비스와 다르게 "검증하기" 과정을 하도록 권장되어있습니다.

부트페이는 자바스크립트 형태로 제공되는 서비스이기 떄문에 결제 금액 이나 상태에 대한 변조가

가능해지기 떄문이라고 합니다.

따라서 홈페이지에 나와있는 검증하기 과정을 구현해야 합니다.