1. ์ ๊ธฐ๊ฒฐ์ ๋?
โข
์ต์ด 1ํ ์นด๋/๊ณ์ข ์ ๋ณด ๋ฑ๋ก๋ง ๋ฐ๊ณ , ํํธ๋์ฌ์ ๋ค์ํ ๊ฒฐ์ ์ฃผ๊ธฐ์ ๋ง์ถฐ ์๋์ผ๋ก ๊ฒฐ์ ๋ฅผ ๋ฐ์ ์ ์์ต๋๋ค.
ํ์ดํ์์ ์ ๊ณตํ๋ ์ ๊ธฐ๊ฒฐ์ ๋ ๋ฑ๋ก์ ๊ฒฐ์ ์ค์ผ์ค๋ง(์์ฝ)์ ๊ฑธ์ด ์๋์ผ๋ก ๊ฒฐ์ ๊ฐ ๋ฐ์ํ๋ ๋ฐฉ์์ด ์๋
๊ฒฐ์ ๊ฐ ํ์ํ ๋๋ง๋ค ํํธ๋๊ฐ ๋ฐ๊ธ๋ ๋น๋งํค(PCD_PAYER_ID
)๋ก ์ค์๊ฐ์ผ๋ก REST ๊ฒฐ์ ์์ฒญ์ ์งํํ์ฌ ๊ฒฐ์ ๊ฐ ๋๋ ๋ฐฉ์์
๋๋ค.
๊ณ ๊ฐ ์
์ฅ์์๋ ํ๋ฒ์ ๊ฒฐ์ ์๋จ ๋ฑ๋ก ํ์ ๋ณ๋์ ์ธ์ฆ ์์
์์ด ๊ฒฐ์ ๊ฐ ์ผ์ด๋๋ ๊ฒ์ผ๋ก ์ธ์ํ๊ฒ ๋ฉ๋๋ค.
๋ค๋ฅธ ๊ฒฐ์ ๋ฐฉ์์ ์ฐ๋๋ฐฉ์์ ์๋ด๋ฐ๊ณ ์ถ๋ค๋ฉด ์ด๊ณณ
์ ํด๋ฆญํด์ ํ์ธํด๋ณด์ธ์.
์ ๊ธฐ๊ฒฐ์ ๋ฅผ ์ํ ๊ฒฐ์ ์๋จ ๋ฑ๋ก์ฐฝ ๋ฏธ๋ฆฌ๋ณด๊ธฐ
2. ํ๋ก์ธ์ค ๊ฐ์
์ด ๋ฌธ์์์๋ @7/6/2023 ์ดํ๋ก ์ถ๊ฐ๋ ํด๋ผ์ด์ธํธ ํค(clientKey)๋ก ํํธ๋ ์ธ์ฆ์ ํ๋ ๋ฐฉ์์ ๊ฒฐ์ ์ฐฝ ํธ์ถ ๊ฐ์ด๋๋ฅผ ์ค๋ช
ํฉ๋๋ค.
์ ๊ธฐ๊ฒฐ์ ๋ ํ์ดํ ๊ฒฐ์ ์ฐฝ์์ ๊ฒฐ์ ์ ๋ณด๋ฅผ ์
๋ ฅํ์ฌ ๋ฑ๋กํ๋ 1๋จ๊ณ์ ๋ฑ๋ก๋ ๋น๋งํค(PCD_PAYER_ID)๋ก REST ์ฌ๊ฒฐ์ ๋ฅผ ํ๋ 2๋จ๊ณ๋ก ๊ตฌ๋ถ๋ฉ๋๋ค.
2-1. ๋ฑ๋ก ๋จ๊ณ ํ๋ก์ธ์ค
2-2. REST ์ฌ๊ฒฐ์ ํ๋ก์ธ์ค
๋ฐ๊ธ๋ฐ์ ๋น๋งํค๋ก ๊ฒฐ์ ์์ฒญํ๋ ์ฌ๊ฒฐ์ ์์ฒญ์ REST ๋ฐฉ์์ด๋ฉฐ, ํด๋ผ์ด์ธํธ ํค(clientKey)๊ฐ ์๋ ๊ธฐ์กด ํํธ๋ ์ธ์ฆ ๋ฐฉ์์ผ๋ก ์ธ์ฆํด์ผ ํฉ๋๋ค.
3. ์ฒซ๋ฑ๋ก & ์ฒซ๊ฒฐ์
3-1. ์๋น์ค ์ ์ฒญ๋ฒํผ ํด๋ฆญ
๊ณ ๊ฐ ๊ฒฐ์ ํ์ด์ง(Web)
โข
๊ณ ๊ฐ์ด ํํธ๋์ ์ผํ๋ชฐ์์ ์ ๊ธฐ๊ฒฐ์ (ํน์ ๊ตฌ๋
์๋น์ค)๋ฅผ ์ํด ๊ฒฐ์ ์๋จ ๋ฑ๋ก์ ์ ์ฒญํ์์ต๋๋ค.
3-2. ๋ฑ๋ก ์์ฒญ
ํํธ๋ ๊ฒฐ์ ํ์ด์ง(Web)
ํด๋ผ์ด์ธํธ ํค(clientKey)๋ก ํํธ๋ ์ธ์ฆ์ ํ๊ณ ๊ฒฐ์ ์ฐฝ์ ํธ์ถํ๋ ๊ฒฝ์ฐ,
ํํธ๋์ฌ์ ๋ฑ๋ก ๋๋ฉ์ธ๊ณผ ๊ฒฐ์ ์ฐฝ ํธ์ถ ๋๋ฉ์ธ์ ๋ฉ์ธ ๋๋ฉ์ธ์ด ์ผ์นํ๋์ง ๊ฒ์ฆํฉ๋๋ค.
์ฆ, ๊ฒฐ์ ์ฐฝ ํธ์ถ ๋๋ฉ์ธ์ ๋ฉ์ธ ๋๋ฉ์ธ์ด ๋ฑ๋ก๋์ด์์ง ์๋ค๋ฉด ํํธ๋ ์ธ์ฆ์ด ์คํจ๋์ด ์์ฒญ์ด ๊ฑฐ๋ถ๋๋, ์ด ์ ๊ผญ ์ ์ํด์ฃผ์ธ์!
๊ฒฐ์ ์ฐฝ ๋ง๋ฃ ์๊ฐ์ 30๋ถ์ด๋, ์ด ์ ์ฐธ๊ณ ํ์ฌ ๊ฒฐ์ ์งํํด์ฃผ์๊ธฐ ๋ฐ๋๋๋ค.
Payple Payment Script
โข
๊ฒฐ์ ์ฐฝ์ ํธ์ถํ ์ ์๋ ์คํฌ๋ฆฝํธ๋ฅผ ์ถ๊ฐํ์ฌ ํ์ดํ์ ์์ฒญํฉ๋๋ค.
@7/6/2023 ์ดํ ์ถ๊ฐ๋ ํด๋ผ์ด์ธํธ ํค(clientKey) ๋ฐฉ์์ ํํธ๋ ์ธ์ฆ ๋ฐฉ์์ผ๋ก ๊ฒฐ์ ์ฐฝ์ ํธ์ถํ๋ ๊ฒฝ์ฐ, ์๋ ์คํฌ๋ฆฝํธ๋ฅผ ์ถ๊ฐํ์ฌ ์์ฒญํ์
์ผํ๋ ์ฐธ๊ณ ํด์ฃผ์๊ธฐ ๋ฐ๋๋๋ค.
// ์๋ฒ๋ณ ํ์ดํ ๊ตญ๋ด๊ฒฐ์ ์คํฌ๋ฆฝํธ ์ถ๊ฐ
<script src="https://democpay.payple.kr/js/v1/payment.js"></script> // ํ
์คํธ(TEST)
<script src="https://cpay.payple.kr/js/v1/payment.js"></script> // ์ด์(REAL)
JavaScript
๋ณต์ฌ
ํ์ดํ ๊ฒฐ์ ์ฐฝ ์คํฌ๋ฆฝํธ ์ถ๊ฐ
โข
ํ์ดํ ๊ตญ๋ด๊ฒฐ์ ์คํฌ๋ฆฝํธ๋ฅผ ์ถ๊ฐํ ํ ๊ฒฐ์ ์์ฒญ ํ๋ผ๋ฏธํฐ๋ฅผ Object ๊ฐ์ฒด์ ๋ด์ PaypleCpayAuthCheck(Object)๋ฅผ ํธ์ถํ๋ฉด ๊ฒฐ์ ์ฐฝ์ด ์ด๋ฆฝ๋๋ค.
๊ฒฐ์ ์ฐฝ ์์ฒญ ์์
// ํ์ดํ ๊ตญ๋ด๊ฒฐ์ ๊ฒฐ์ ์ฐฝ ํธ์ถ
function requsetPayplePay() {
// obj์ ๊ฒฐ์ ์์ฒญ ํ๋ผ๋ฏธํฐ ์ ์ฅ
let obj = new Object();
/* ์ค๋ต */
// ๊ฒฐ์ ์์ฒญ ํจ์ ํธ์ถ
PaypleCpayAuthCheck(obj);
}
JavaScript
๋ณต์ฌ
JavaScript
์ํ์ฝ๋๋ ํ๋ผ๋ฏธํฐ ์ ๋ณด ํ๋จ๊ณผ ์ฐ๋๊ฐ์ด๋ > ์ํ์ฝ๋์์ ํ์ธํด๋ณด์ธ์!
๊ฒฐ์ ์์ด ๋ฑ๋ก๋ง ์ํํ ๋๋ PCD_PAY_WORK ๋ฅผ AUTH๋ก ์ค์ ํฉ๋๋ค.
๊ฒฐ์ ์ ๋์์ ๋ฑ๋ก์ ์ํํ ๋๋ PCD_PAY_WORK ๋ฅผ PAY๋ก ์ค์ ํฉ๋๋ค.
Request Parameters
Show All
Search
Sample Code
<!-- jQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<!-- ์๋ฒ๋ณ ํ์ดํ ๊ตญ๋ด๊ฒฐ์ ์คํฌ๋ฆฝํธ ์ถ๊ฐ -->
<script src="https://democpay.payple.kr/js/v1/payment.js"></script> <!-- ํ
์คํธ(TEST) -->
<!-- <script src="https://cpay.payple.kr/js/v1/payment.js"></script> --> <!-- ์ด์(REAL) -->
<script>
$(document).ready( function () {
$('#requsetPayplePay').on('click', function (event) {
let obj = new Object();
// ๊ฒฐ์ ์๋จ ๋ฑ๋ก (๋น๋งํค ๋ฐ๊ธ) Request Parameters
obj.PCD_PAY_TYPE = "card";
obj.PCD_PAY_WORK = "AUTH";
/* 01 : ํ์ดํ ๊ฐํธ๊ฒฐ์ */
obj.PCD_CARD_VER = "01"
obj.PCD_PAYER_NO = "1234";
obj.PCD_PAYER_NAME = "ํ๊ธธ๋";
obj.PCD_PAYER_HP = "01012345678";
obj.PCD_PAYER_EMAIL = "dev@payple.kr";
/* ๊ฒฐ๊ณผ๋ฅผ ์ฝ๋ฐฑ ํจ์๋ก ๋ฐ๊ณ ์ ํ๋ ๊ฒฝ์ฐ ํจ์ ์ค์ ์ถ๊ฐ */
// obj.callbackFunction = getResult; // getResult : ์ฝ๋ฐฑ ํจ์๋ช
/**
* ํํธ๋ ์ธ์ฆ์ ์ํ ํด๋ผ์ด์ธํธ ํค(clientKey)
* - ํด๋น ํค ๊ฐ์ ํ
์คํธ๋ฅผ ์ํด ํ์ดํ์์ ์ ๊ณตํ๋ test ๊ณ์ ์ clientKey ๊ฐ์
๋๋ค.
* - ์์ธํ ๋ด์ฉ์ '๊ฐ์
๋ฐ KEY ์ ๋ณด ์๋ น'์์๋ ํ์ธํ ์ ์์ต๋๋ค.
*/
obj.clientKey = "test_DF55F29DA654A8CBC0F0A9DD4B556486";
obj.PCD_RST_URL = "/order_result.php"; // ๊ฒฐ์ ๊ฒฐ๊ณผ ์์ URL
// ๊ฒฐ์ ์์ฒญ ํจ์ ํธ์ถ
PaypleCpayAuthCheck(obj);
});
});
</script>
<button id="requsetPayplePay">ํ์ดํ ๊ตญ๋ด๊ฒฐ์ </button>
HTML
๋ณต์ฌ
3-3. ๋ฑ๋ก ์งํ
๊ณ ๊ฐ ๊ฒฐ์ ์ฐฝ
โข
ํ์ดํ์์ ๊ฒฐ์ ์ฐฝ์ ๊ณ ๊ฐ์ ๋ธ๋ผ์ฐ์ ์ ํธ์ถ์ํต๋๋ค.
โข
๊ณ ๊ฐ์ ๊ฒฐ์ ์ฐฝ์์ ๊ฒฐ์ ์ ๋ณด๋ฅผ ์
๋ ฅํ์ฌ ๋ฑ๋ก์ ์๋ฃํฉ๋๋ค.
3-4. ๊ฒฐ์ ๊ฒฐ๊ณผ
ํ์ดํ ์๋ฒ
โข
ํ์ดํ์์ ๊ณ ๊ฐ์ ๊ฒฐ์ ์ฐฝ์ ์ข
๋ฃ์ํต๋๋ค.
โข
PCD_RST_URL๋ก ๊ณ ๊ฐ์ ๋ธ๋ผ์ฐ์ ๋ฅผ ๋ฆฌ๋ค์ด๋ ํธ(Redirect) ์ฒ๋ฆฌํฉ๋๋ค.
โฆ
callbackFunction์ผ๋ก ๊ฒฐ์ ๊ฒฐ๊ณผ๋ฅผ ์์ ํ ๊ฒฝ์ฐ, ์ฝ๋ฐฑํจ์๋ก ๊ฒฐ์ ๊ฒฐ๊ณผ๊ฐ ๋ฐํ๋๋ฉฐ
PCD_RST_URL๋ก ๊ณ ๊ฐ์ ๋ธ๋ผ์ฐ์ ๋ฅผ ๋ฆฌ๋ค์ด๋ ํธ(Redirect) ์ฒ๋ฆฌํฉ๋๋ค.
Response Parameters
โข
ํํธ๋๋ก ๊ฒฐ๊ณผ ๋ฆฌํด(Response)์ ๋ค์๊ณผ ๊ฐ์ด ์งํ๋ฉ๋๋ค.
Show All
Search
โข
callbackFunction ์ ์ฌ์ฉํ๋ค๋ฉด PCD_RST_URL ์ ๋์ฒดํ์ฌ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํฉ๋๋ค.
โข
Webhook URL
์ ๋ฑ๋กํ์๋ค๋ฉด ํ์ดํ์์ ํด๋น URL๋ก ๊ฒฐ๊ณผ๋ฅผ ์ถ๊ฐ๋ก ๋ฐํํฉ๋๋ค.
- ํ์ดํ์์๋ ๊ฒฐ๊ณผ ์์ ์คํจ ๋๋ฝ์ ๋ฐฉ์งํ๊ธฐ ์ํด Webhook URL ๋ฑ๋ก์ ๊ถ์ฅํฉ๋๋ค.
- ํ
์คํธ ์๋ฒ์์๋ ๋ณ๋์ ๊ณ์ ์ ๋ฐ๊ธ๋ฐ์ง ์๋ ํ Webhook URL ๋ฑ๋ก ๋ฐ ํ
์คํธ๊ฐ ๋ถ๊ฐํฉ๋๋ค.
- ํ
์คํธ ์๋ฒ์์ Webhook URL์ ํ
์คํธํ๊ธฐ ์ํด์ help@payple.kr ๋ก ์ฐ๋ฝ์ฃผ์๋ฉด ํํธ๋ ์ ์ฉ ํ
์คํธ ๊ณ์ ์ ๋ฐ๊ธํ์ฌ ๋๋ฆฝ๋๋ค.
- Webhook URL ๋ฑ๋ก ์์ด ํ
์คํธํ์๋ ค๋ฉด PCD_RST_URL ๋ก ์์ ๋ฐ์ Response ๋ฐ์ดํฐ๋ก ๊ฒฐ๊ณผ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.
3-5. ๊ฒฐ๊ณผ ์ฒ๋ฆฌ
ํํธ๋ ์๋ฒ
ํํธ๋์์ ํ์ดํ์์ ๋ฐ์ Response ๋ฐ์ดํฐ๋ก ๊ฒฐ๊ณผ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.
โข
PCD_PAY_RST = success, PCD_PAY_CODE = "0000"์ด ํฌํจ๋ ๊ฒฝ์ฐ ์์ฒญ์ฑ๊ณต์ผ๋ก ํ๋จํฉ๋๋ค.
โข
PCD_PAY_RST = error ์ผ ๊ฒฝ์ฐ ์์ฒญ์คํจ๋ก ํ๋จํฉ๋๋ค.
โข
PCD_PAY_RST = close ์ผ ๊ฒฝ์ฐ ์์ฒญ์คํจ๋ก ํ๋จํฉ๋๋ค.
๊ณ ๊ฐ์ด ๊ฒฐ์ ์ฐฝ์ ๊ฒฐ์ ์ค ์ข
๋ฃํ ๊ฒฝ์ฐ ๋ฆฌํด๋ฉ๋๋ค.
3-5-1. ์์ฒญ์ด ์ฑ๊ณตํ์ ๊ฒฝ์ฐ(success)
โข
๋ฐ์ดํฐ ์๋ณ์กฐ ์ฌ๋ถ๋ฅผ ํ๋ณํ๊ธฐ ์ํด ๋ฆฌํด๋ฐ์ PCD_PAY_TOTAL ๊ฐ๊ณผ ์์ฒญํ๋ ๊ฐ์ ๋์กฐํ์ฌ ์ด์์ด ์์์ ํ์ธํฉ๋๋ค.
โข
๋ฆฌํด๋ฐ์ ๊ฑฐ๋ ๊ณ ์ ์๋ณ๋ฒํธ์ธ PCD_PAY_OID๋ฅผ ํ์ธํ์ฌ ์์ฒญํ๋ ๊ฑฐ๋ ์ ๋ณด์ ๋งค์นญ์ํต๋๋ค.
โข
๊ฑฐ๋๋ฅผ ์์ฒญํ๋ ๊ณ ๊ฐ์๊ฒ ์ฝ์ ๋ ์๋น์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
3-5-2. ์์ฒญ์ด ์คํจํ์ ๊ฒฝ์ฐ(error / close)
โข
PCD_PAY_CODE ์ PCD_PAY_MSG ๋ก ์์ธ์ ํ์
ํ์ฌ ๋์ํฉ๋๋ค.
โข
์๋ต์ฝ๋ ๋ฆฌ์คํธ
๋ฅผ ํ์ธํด๋ณด์ธ์.
4. ์ฌ๊ฒฐ์
๋ฑ๋ก ํ ์ฝ์ ๋ ๊ฒฐ์ ์ผ์ด ๋ค๊ฐ์์ต๋๋ค.
ํํธ๋๋ ๊ณ ๊ฐ์๊ฒ ๊ฒฐ์ ๋ฅผ ๋ฐ์์ผ ํ ์์ ์ ๋ง์ถฐ ํ์ดํ๋ก ๊ฒฐ์ ์์ฒญ์ ์ค๋นํฉ๋๋ค.
ํ์ดํ์์๋ ๋ณ๋์ ์ค์ผ์ค๋ง์ ํ์ง ์๊ธฐ ๋๋ฌธ์, ํํธ๋์ฌ์์ ์ค์ผ์ค๋ง ๋ถ๋ถ์ ์์
ํด์ฃผ์
์ผ ํฉ๋๋ค.
4-1. ์ฌ๊ฒฐ์ ํ๋ก์ธ์ค
4-2 ํํธ๋ ์ธ์ฆ
ํํธ๋ ์๋ฒ
REST๋ก ์ฌ๊ฒฐ์ ์ ํํธ๋ ์ธ์ฆ์์๋ ๊ฒฐ์ ์ฐฝ์ ํธ์ถํ์ ๋์๋ ๋ค๋ฅด๊ฒ
PCD_PAY_TYPE ์ PCD_SIMPLE_FLAG Parameter๊ฐ ์ถ๊ฐ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
Request Parameters
๊ธฐ๋ณธ ๋ณด๊ธฐ
Search
Request sample
โข
Header ์ ๋ณด
/*
* Request HTTP URL
* TEST : https://democpay.payple.kr/php/auth.php
* REAL : https://cpay.payple.kr/php/auth.php
*/
Request URL: "https://democpay.payple.kr/php/auth.php"
HTTP Method: POST
Content-Type: application/json
Cache-Control: no-cache
referer: https://ํํธ๋์ฌ ๋๋ฉ์ธ
/* โป referer ์ค์ ๋ฐฉ๋ฒ
* REAL : referer์๋ ํํธ๋์ฌ ๋๋ฉ์ธ์ผ๋ก ๋ฑ๋ก๋ ๋๋ฉ์ธ์ ๋ฃ์ด์ฃผ์
์ผํฉ๋๋ค.
* ๋ค๋ฅธ ๋๋ฉ์ธ์ ๋ฃ์ผ์๋ฉด [AUTH0004] ์๋ต์ด ๋ฐ์ํฉ๋๋ค.
*/
JSON
๋ณต์ฌ
โข
Body(Payload) ๊ฐ
{
"cst_id": "test",
"custKey": "abcd1234567890",
"PCD_PAY_TYPE": "card",
"PCD_SIMPLE_FLAG": "Y"
}
JSON
๋ณต์ฌ
PHP ์ํ์ฝ๋
JAVA ์ํ์ฝ๋
NODE ์ํ์ฝ๋
Response Parameters
โข
ํํธ๋ ์ธ์ฆ์ด ์ฑ๊ณตํ๋ฉด ํ์ดํ์์ ํํธ๋์ ๋ค์๊ณผ ๊ฐ์ ์ฑ๊ณต ๋ฆฌํด์ ๋๋ฆฝ๋๋ค.
๊ธฐ๋ณธ ๋ณด๊ธฐ
Search
Response sample
{
"server_name": "์์ฒญ URL",
"result": "๊ฒฐ๊ณผํ์ธ",
"result_msg": "๊ฒฐ๊ณผ ๋ฉ์์ง",
"cst_id": "ํํธ๋์ฌ ์์ด๋",
"custKey": "ํํธ๋์ฌ ํค",
"AuthKey": "ํํธ๋์ฌ ์ธ์ฆํ ํฐ",
"PCD_PAY_HOST": "์์ฒญ ๋๋ฉ์ธ, (์: https://democpay.payple.kr)",
"PCD_PAY_URL": "์์ฒญ URL, (์: /auth.php)",
"return_url": "์์ฒญ URL (PCD_PAY_HOST + PCD_PAY_URL)"
}
JSON
๋ณต์ฌ
์คํจ ๋ฆฌํด (result = error)์ ๋ฐ์ผ์ ๊ฒฝ์ฐ,
result_msg ์ ์๋ต์ฝ๋๋ฅผ ํ์ธํ๊ณ ์๋ชป๋ ๋ถ๋ถ์ ์์ ํฉ๋๋ค.
์๋ต์ฝ๋ ๋ฆฌ์คํธ๋ ์ด ๊ณณ
์์ ํ์ธํ์ค ์ ์์ต๋๋ค.
4-3. ๊ฒฐ์ ์์ฒญ
ํํธ๋ ์๋ฒ
โข
ํํธ๋ ์ธ์ฆ ์๋ฃ ํ ํ์ดํ ์๋ฒ๋ก ๊ฒฐ์ ์์ฒญ์ ์งํํฉ๋๋ค.
โข
์ด๋ ํํธ๋ ์ธ์ฆ ํ Response ๋ฐ์ cst_id, custKey, AuthKey ๊ฐ์
๊ฐ๊ฐ PCD_CST_ID, PCD_CUST_KEY, PCD_AUTH_KEY ์ ๋ฃ์ด๋ณด๋ด์ผ ํฉ๋๋ค.
ํํธ๋ ์ธ์ฆ ํ Response ๋ฐ์ cst_id, custKey,AuthKey ๊ฐ์
๊ณ ์ ๊ฐ์ด ์๋๋ฏ๋ก ์ ์ฅํด๋๊ณ ๊ณ์ํด์ ์ฌ์ฉํ๋ฉด ์๋ฉ๋๋ค.
+ ํ ๋ฒ์ ํํธ๋ ์ธ์ฆ๊ณผ ํ๋์ ์์ฒญ์ด ๋งค์นญ๋์ด์ผ ํฉ๋๋ค.
์ฆ ํ๋ฒ์ ํํธ๋ ์ธ์ฆ์ผ๋ก ๋ฐ์ cst_id, custKey,AuthKey ๊ฐ์
์ฌ๋ฌ ์์ฒญ์ ์ฌ์ฉํ๋ฉด ์๋ฉ๋๋ค.
PCD_PAY_OID Parameter๋ ๊ฑฐ๋์ ๊ณ ์ ์๋ณ๋ฒํธ์
๋๋ค.
์์ฒญ์๋ง๋ค ์ ๋ํฌํ๊ฒ ์๋ก ์ง์ ํด ์ฃผ์ธ์.
PCD_PAY_OID ๊ฐ ์ค๋ณต๋๋ฉด ์ฒ์ ์ฒ๋ฆฌ์๋ฃ๋ ๊ฑฐ๋๋ณด๋ค
๋์ค์ ๋ค์ด์จ ๊ฑฐ๋์์ฒญ๊ฑด์ ์ค๋ณต์๋๋ก ํ๋จ๋์ด ๊ฑฐ์ ๋ฉ๋๋ค.
โ ์ด๋ฌํ ์ด์ ๋ก, ํํธ๋์ฌ์์ ์ ๋ํฌํ๊ฒ ์ฃผ๋ฌธ๋ฒํธ๋ฅผ ์ง์ ํ ์ ์์ ๊ฒฝ์ฐ์๋
์ฃผ๋ฌธ๋ฒํธ๋ ๋ฏธ์ง์ ํ๋ ๊ฒ์ ๊ถ์ฅํ๊ณ ์์ต๋๋ค.
โป ํํธ๋๊ฐ ์ฃผ๋ฌธ๋ฒํธ๋ฅผ ๋ฏธ์ง์ ์, ํ์ดํ์์๋ ์์์ ์ฃผ๋ฌธ๋ฒํธ๋ฅผ ์์ฑํ์ฌ ๋ฆฌํดํ์ฌ ๋๋ฆฝ๋๋ค.
์ ๊ธฐ๊ฒฐ์ ์ฌ๊ฒฐ์ (๋น๋งํค ๊ฒฐ์ ) ์์ฒญ์, ๊ณ ๊ฐ ์ ๋ณด๋ฅผ ๋ณด๋ด์ง ์์ผ์๋ฉด ์ต์ด ๋ฑ๋ก์ ์ ๋ณด๋ฅผ ์
๋ ฅํ๋๋ผ๋ ๊ฒฐ์ ๋ด์ญ ์ด๋ฉ์ผ, ์๋ฆผํก ๋ฑ์ด ๋ณด๋ด์ง์ง ์์ต๋๋ค.
๋ํ, ํํธ๋ ๊ด๋ฆฌ์ ํ์ด์ง์ ๊ฒฐ์ ๋ด์ญ ์กฐํ ํ์ด์ง์์๋ ๊ณ ๊ฐ์ ๋ณด(๊ตฌ๋งค์, ํด๋ํฐ๋ฒํธ, Email)์ด ๊ณต๋์ผ๋ก ๋ณด์ฌ์ง๋ ์ฐธ๊ณ ํด์ฃผ์ธ์.
๊ณ ๊ฐ์๊ฒ ๊ฒฐ์ ๋ด์ญ ๋ฉ์ผ ๋ฐ์ก ๋ฑ์ ์ํ์๋ ๊ฒฝ์ฐ, ํด๋น ํ๋ผ๋ฏธํฐ๋ค์ ๋ณด๋ด์ฃผ์
์ผ ํ๋ ์ ์ํด์ฃผ์ธ์.
๊ฐ ํ๋ผ๋ฏธํฐ์ ์์ธ ๋ด์ฉ์ ์๋ ์ ํ ํ๋ผ๋ฏธํฐ ์ ๋ณด์ โ๋ ์์๋ณด๊ธฐโ์์ ํ์ธํด์ฃผ์ธ์!
โข
๊ฒฐ์ ๊ณ ๊ฐ ์ด๋ฆ(PCD_PAYER_NAME)
โฆ
๊ฒฐ์ ๋ด์ญ ๋ฉ์ผ ๋ฐ์ก์ ๊ณ ๊ฐ ์ด๋ฆ์ผ๋ก ํ์๋ฉ๋๋ค.
โข
๊ฒฐ์ ๊ณ ๊ฐ ํธ๋ํฐ๋ฒํธ(PCD_PAYER_HP)
โฆ
๊ฒฐ์ ๋ด์ญ ์๋ฆผํก์ด ๋ฐ์ก๋ฉ๋๋ค.
โข
๊ฒฐ์ ๊ณ ๊ฐ ์ด๋ฉ์ผ(PCD_PAYER_EMAIL)
โฆ
๊ฒฐ์ ๋ด์ญ ๋ฉ์ผ์ด ํด๋น ์ฃผ์๋ก ๋ฐ์ก๋ฉ๋๋ค.
Request Parameters
Show All
Search
Request sample
โข
Header ์ ๋ณด
/*
* ์ฌ๊ฒฐ์ (๋น๋งํค ๊ฒฐ์ ) ์์ฒญ
* Request HTTP URL
* โปํํธ๋ ์ธ์ฆ ํ ๋ฆฌํด๋ฐ์ return_url๋ก ์ค์ ํด์ฃผ์ธ์.
* (return_url = PCD_PAY_HOST + PCD_PAY_URL)
* TEST : https://democpay.payple.kr/(ํํธ๋ ์ธ์ฆ ํ ๋ฆฌํด ๋ฐ์ ์์ฒญ URL(PCD_PAY_URL))
* REAL : https://cpay.payple.kr/(ํํธ๋ ์ธ์ฆ ํ ๋ฆฌํด ๋ฐ์ ์์ฒญ URL(PCD_PAY_URL))
*/
Request URL: "https://democpay.payple.kr/(ํํธ๋ ์ธ์ฆํ ๋ฆฌํด๋ฐ์ PCD_PAY_URL)"
HTTP Method: POST
Content-Type: application/json
Cache-Control: no-cache
Referer: http://localhost:8080
JSON
๋ณต์ฌ
โข
Body(Payload) ๊ฐ
{
"PCD_CST_ID": "ํํธ๋ ์ธ์ฆ ํ ๋ฆฌํด๋ฐ์ cst_id",
"PCD_CUST_KEY": "ํํธ๋ ์ธ์ฆ ํ ๋ฆฌํด๋ฐ์ custKey",
"PCD_AUTH_KEY": "ํํธ๋ ์ธ์ฆ ํ ๋ฆฌํด๋ฐ์ AuthKey",
"PCD_PAY_TYPE": "card",
"PCD_PAYER_ID": "d0to...",
"PCD_PAY_GOODS": "ํ
์คํธ ์ํ๋ช
",
"PCD_PAY_TOTAL": "100",
"PCD_SIMPLE_FLAG": "Y"
}
JSON
๋ณต์ฌ
Response Parameters
Show All
Search
Response sample
{
"PCD_PAY_RST": "success|error"
"PCD_PAY_CODE": "SPCD0000"
"PCD_PAY_MSG": "์นด๋๊ฒฐ์ ์๋ฃ|์นด๋๊ฒฐ์ ์คํจ"
"PCD_PAY_OID": "test201804000001"
"PCD_PAY_TYPE": "card"
"PCD_PAYER_NO": "1234"
"PCD_PAYER_ID": "NS9qNTgzU2xRNHR2RmFB..."
"PCD_PAYER_NAME": "ํ๊ธธ๋"
"PCD_PAYER_HP": "01012345678"
"PCD_PAYER_EMAIL": "test@payple.kr"
"PCD_PAY_GOODS": "์ํ1"
"PCD_PAY_TOTAL": "100"
"PCD_PAY_TAXTOTAL": "0"
"PCD_PAY_ISTAX": "Y"
"PCD_PAY_TIME": "20200323130201"
"PCD_PAY_CARDNANE": "BC ์นด๋"
"PCD_PAY_CARDNUM": "2121-****-****-2031"
"PCD_PAY_CARDTRADENUM": "201904141320332692022400"
"PCD_PAY_CARDAUTHNO": "98123445"
"PCD_PAY_CARDRECEIPT": "https://www.danalpay.."
"PCD_SIMPLE_FLAG": "Y"
}
JSON
๋ณต์ฌ
4-4. ๊ฒฐ๊ณผ ์ฒ๋ฆฌ
ํํธ๋ ์๋ฒ
ํํธ๋์์ ํ์ดํ์์ ๋ฐ์ Response ๋ฐ์ดํฐ๋ก ๊ฒฐ๊ณผ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.
โข
PCD_PAY_RST = success, PCD_PAY_CODE = "0000"์ด ํฌํจ๋ ๊ฒฝ์ฐ ์์ฒญ์ฑ๊ณต์ผ๋ก ํ๋จํฉ๋๋ค.
โข
PCD_PAY_RST = error ์ผ ๊ฒฝ์ฐ ์์ฒญ์คํจ๋ก ํ๋จํฉ๋๋ค.
4-4-1. ์์ฒญ์ด ์ฑ๊ณตํ์ ๊ฒฝ์ฐ(success)
โข
๋ฐ์ดํฐ ์๋ณ์กฐ ์ฌ๋ถ๋ฅผ ํ๋ณํ๊ธฐ ์ํด ๋ฆฌํด๋ฐ์ PCD_PAY_TOTAL ๊ฐ๊ณผ ์์ฒญํ๋ ๊ฐ์ ๋์กฐํ์ฌ ์ด์์ด ์์์ ํ์ธํฉ๋๋ค.
โข
๋ฆฌํด๋ฐ์ ๊ฑฐ๋ ๊ณ ์ ์๋ณ๋ฒํธ์ธ PCD_PAY_OID๋ฅผ ํ์ธํ์ฌ ์์ฒญํ๋ ๊ฑฐ๋ ์ ๋ณด์ ๋งค์นญ์ํต๋๋ค.
โข
๊ฑฐ๋๋ฅผ ์์ฒญํ๋ ๊ณ ๊ฐ์๊ฒ ์ฝ์ ๋ ์๋น์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
4-4-2. ์์ฒญ์ด ์คํจํ์ ๊ฒฝ์ฐ(error)
โข
PCD_PAY_CODE ์ PCD_PAY_MSG ๋ก ์์ธ์ ํ์
ํ์ฌ ๋์ํฉ๋๋ค.
โข
์๋ต์ฝ๋ ๋ฆฌ์คํธ
๋ฅผ ํ์ธํด๋ณด์ธ์.
5. ๋ง๋ฌด๋ฆฌ
โข
์ ๊ธฐ๊ฒฐ์ ์ ์ฐ๋์์
์ ์๋ฃํ์์ต๋๋ค! ์ถํ๋๋ฆฝ๋๋ค!