concept_auth_and_approve - nicepayments/nicepay-manual GitHub Wiki
์ด ๋ฌธ์๋ NICEPAY๊ฐ ๊ฐ๋งน์ ์๊ฒ ์ ๊ณตํ๋ ์๋ด์ ๋๋ค.
๊ฒฐ์ ์ฐฝ ์ฐ๋ ์ ์ โ์ธ์ฆ๊ณผ ์น์ธ์ด ์ด๋ค ๊ฐ๋ ์ธ์ง, ์ด๋ค ์ญํ ๋ถ๋ด์ด ์ด๋ฃจ์ด์ง๋์งโ๋ฅผ ์ดํดํ ์ ์๋๋ก ์ ๋ฆฌํ์ต๋๋ค.
| ์ง๋ฌธ | NICEPAY๊ฐ ์ํํ๋ ์ผ | ๊ฐ๋งน์ ์ด ํ์ธํด์ผ ํ ์์ |
|---|---|---|
| ์ธ์ฆ(Authentication): โ์ด ๊ฒฐ์ ์๋จ์ ์ ํจํ๊ฐ?โ | NICEPAY๊ฐ ์นด๋์ฌยท์ํ๊ณผ ์ค์๊ฐ์ผ๋ก ํต์ ํด ๊ณ ๊ฐ์ด ์ ๋ ฅํ ์ ๋ณด๊ฐ ์ ํํ์ง ํ์ธํฉ๋๋ค. | ๊ณ ๊ฐ์ด ๊ฒฐ์ ์ฐฝ์์ ๊ฒฐ์ ๋ฒํผ์ ๋๋ ์ ๋ |
| ์น์ธ(Authorization): โํ์ธ๋ ๊ธ์ก์ ์ฒญ๊ตฌํด๋ ๋๋๊ฐ?โ | NICEPAY๊ฐ ์ธ์ฆ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํ์ผ๋ก ์นด๋์ฌยท์ํ์ ์ค์ ๊ธ์ก ์ฒญ๊ตฌ๋ฅผ ์์ฒญํฉ๋๋ค. | ์ธ์ฆ์ ์ฑ๊ณตํ ์ดํ, ๊ฒฐ์ ๋ฅผ ์ต์ข ํ์ ํ ๋ |
- ๊ณ ๊ฐ์ด ๊ฒฐ์ ์ฐฝ์ ์นด๋ ๋ฒํธ, ์ ํจ๊ธฐ๊ฐ, ๊ธ์ก ๋ฑ์ ์ ๋ ฅํ๋ฉด, ํด๋น ์ ๋ณด๋ NICEPAY๋ก ์์ ํ๊ฒ ์ ๋ฌ๋ฉ๋๋ค.
- NICEPAY๋ ์นด๋์ฌ/์ํ ์์คํ
๊ณผ ํต์ ํด ์๋ ํญ๋ชฉ์ ๊ฒ์ฆํฉ๋๋ค.
- ์นด๋ ๋ฒํธ์ ์ ํจ๊ธฐ๊ฐ์ด ์ ํํ์ง
- ์นด๋๊ฐ ์ ์งยทํ๋ ์ด๊ณผ ์ํ๋ ์๋์ง
- ์ถ๊ฐ ์ธ์ฆ(3D Secure ๋ฑ)์ด ํ์ํ์ง
- ์นด๋์ฌ/์ํ์ผ๋ก๋ถํฐ ๋ฐ์ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ๋งน์ ์ด ์ง์ ํ
returnUrl๋ก ์ ๋ฌํฉ๋๋ค. - ๊ฐ๋งน์ ์ ์๋ต์ ๋ฐ์ ์ฑ๊ณต ์
tid,authToken์ ์ ์ฅํ๊ณ ๋ค์ ๋จ๊ณ๋ก ์งํํฉ๋๋ค.
์ค์: ์ธ์ฆ ๋จ๊ณ์์๋ NICEPAY๊ฐ โ์ ๋ณด ๊ฒ์ฆโ๋ง ์ํํ๋ฉฐ ๊ธ์ก์ ์ฒญ๊ตฌ๋์ง ์์ต๋๋ค. ์๋ต ๊ฒฐ๊ณผ์ ๋ฐ๋ผ ๊ฐ๋งน์ ์ด ํ์ ํ๋์ ๊ฒฐ์ ํด์ผ ํฉ๋๋ค.
- ๊ฐ๋งน์ ์ ์ธ์ฆ ๋จ๊ณ์์ ๋ฐ์
tid๋ฅผ ์ฌ์ฉํด ์น์ธ API(/v1/payments/{tid})๋ฅผ ํธ์ถํฉ๋๋ค. - NICEPAY๊ฐ ์นด๋์ฌ/์ํ์ ๊ธ์ก ์ฒญ๊ตฌ๋ฅผ ์ํํ๊ณ , ๊ฒฐ๊ณผ๋ฅผ API ์๋ต๊ณผ webhook์ผ๋ก ์ ๋ฌํฉ๋๋ค.
- ๊ฐ๋งน์ ์ ์ฃผ๋ฌธ ์ํ๋ฅผ ๊ฐฑ์ ํ๊ณ , ํ์ ์ ๊ณ ๊ฐ์๊ฒ ์์์ฆ URL์ ์ ๊ณตํฉ๋๋ค.
์ค์: ์น์ธ ๋จ๊ณ์์ ๊ฒฐ์ ๋ ํ์ ๋์ง๋ง, ์น์ธ ์คํจยทํ์์์ ๋ฑ ์์ธ ์ํฉ์ ๋๋นํ ์ฌ์๋ยท์ทจ์ ๋ก์ง์ ๊ฐ๋งน์ ์์ ์ค๋นํด์ผ ํฉ๋๋ค.
- ๋ณด์: ์ธ์ฆ๋ง์ผ๋ก๋ ๊ฒฐ์ ๊ฐ ๋ฐ์ํ์ง ์์ ์ ๋ณด ์ ์ถ ์ ์ฆ์ ๊ธ์ ํผํด๋ก ์ด์ด์ง์ง ์์ต๋๋ค.
- ์ ์ฐ์ฑ: ์ธ์ฆ๊ณผ ์น์ธ ์ฌ์ด์ ์ฌ๊ณ ํ์ธ, ๊ณ ๊ฐ ์ธ์ฆ, ์ถ๊ฐ ๊ฒ์ฆ ๋ฑ์ ๊ฐ๋งน์ ์์คํ ์์ ์ํํ ์ ์์ต๋๋ค.
- ๋ฌธ์ ํด๊ฒฐ: ์ธ์ฆ ์คํจ์ ์น์ธ ์คํจ๋ฅผ ๊ตฌ๋ถํ๋ฉด ๋จ๊ณ๋ณ ๋์(์ฌ์๋ยท์ทจ์ยท๊ณ ๊ฐ ์๋ด)์ ๋ช ํํ๊ฒ ์ค๊ณํ ์ ์์ต๋๋ค.
์ด ๊ตฌ์กฐ๋ ์นด๋ ๊ฒฐ์ ๋ฟ ์๋๋ผ ์ ๊ธฐ๊ฒฐ์ , ๊ฐ์๊ณ์ข ๋ฑ ๋ค์ํ ์๋๋ฆฌ์ค์ ๋์ผํ๊ฒ ์ ์ฉ๋ฉ๋๋ค.
| ๋ฐฉ์ | NICEPAY๊ฐ ์ฒ๋ฆฌํ๋ ๋ชจ์ต | ๊ฐ๋งน์ ์์์ ํน์ง |
|---|---|---|
| 1 Transaction | NICEPAY๊ฐ ์ธ์ฆ๊ณผ ์น์ธ์ ๋ด๋ถ์ ์ผ๋ก ์ฐ์ ์ฒ๋ฆฌํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ํ ๋ฒ์ ๋ฐํํฉ๋๋ค. | ๊ตฌํ์ด ๋จ์ํ์ง๋ง, ์๋ต ๋๋ฝยทํ์์์์ ๋๋นํ webhookยท๊ธ์ก ๊ฒ์ฆ์ด ํ์์ ๋๋ค. |
| 2 Transaction | NICEPAY๊ฐ ์ธ์ฆ๊ณผ ์น์ธ์ ๋จ๊ณ๋ณ๋ก ์ง์ํ๊ณ , ๊ฐ๋งน์ ์ด ๊ฐ๊ฐ ํธ์ถํฉ๋๋ค. | ๊ตฌํ ๊ณต์๊ฐ ๋์ง๋ง, ๋จ๊ณ๋ณ ๊ฒ์ฆยท์ฌ์๋ยท์ทจ์ ๋ฑ ์ธ๋ฐํ ์ ์ด๊ฐ ๊ฐ๋ฅํฉ๋๋ค. |
-
(์๋ต ๋๋ฝ ๋ฐฉ์ง)
returnUrl์ด ์คํจํด๋ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ๊ธฐ ์ํด webhook์ ๋ฐ๋์ ๋ฑ๋กํด์ผ ํฉ๋๋ค. - (๊ธ์ก ์๋ณ์กฐ ๋ฐฉ์ง) ์น์ธ๊ธ์ก ๊ฒ์ฆ API์ ๊ฑฐ๋์กฐํ๋ก โ์ ๋ง ๊ฒฐ์ ๊ฐ ์๋ฃ๋๋์งโ ์ฌํ์ธํด ์ฃผ์ธ์.
- (๊ฒฐ์ ํ๋ฅ ๋ฐฉ์ง) ์๋ต์ ๋ฐ์ง ๋ชปํ ๊ฒฝ์ฐ ๋ง์ทจ์ API๋ ๊ณ ๊ฐ ์๋ด ํ๋ก์ฐ๋ฅผ ๋ฏธ๋ฆฌ ์ค๋นํด์ผ ํฉ๋๋ค.
- ์ถ์ฒ ์๋๋ฆฌ์ค: ๊ฐํธ ๊ฒฐ์ , MVP, ๋น ๋ฅธ ์จ๋ณด๋ฉ, ๋ฎ์ ๊ฑฐ๋๋ ์๋น์ค
- ์ธ์ฆ ๋จ๊ณ์์ ๋ฐ์
tid,authToken์ ์ฌ์ฉํด ์น์ธ ์์ฒญ์ ์ง์ ์์ฑํ๊ณ , ์คํจ ์ ์ฌ์๋ยท์ทจ์๋ฅผ ๋จ๊ณ๋ณ๋ก ์ํํฉ๋๋ค. - webhook๊ณผ ๊ฑฐ๋์กฐํ API๋ก ์น์ธ ๊ฒฐ๊ณผ๋ฅผ ๋ ๋ฒ ์ด์ ํ์ธํด ์ค๋ณต/๋๋ฝ์ ๋ฐฉ์งํด ์ฃผ์ธ์.
- ์ถ์ฒ ์๋๋ฆฌ์ค: ์ผํ๋ชฐ, ์ ๊ธฐ๊ฒฐ์ , ๊ณ ๊ฐ ์ํ ๊ฒฐ์ , ๋ณต์กํ ๋น์ฆ๋์ค ๋ก์ง
- ์ ๊ธฐ๊ฒฐ์ : ๋นํค ๋ฐ๊ธ(์ธ์ฆ)๊ณผ ๋นํค ์น์ธ/ํด์ง(์น์ธยท์ทจ์)๋ ๋์ผํ ๊ฐ๋ ์ ๋ฐ๋ฆ ๋๋ค. โ subscribe-integration.md
-
๊ฐ์๊ณ์ข: ๋ฐ๊ธ(
ready)๊ณผ ์ ๊ธ(paid) webhook์ด ๊ฐ๊ฐ ์ธ์ฆยท์น์ธ ์ญํ ์ ํฉ๋๋ค. โ webhook-test.md - ์ด์ ๋ชจ๋ํฐ๋ง: webhook ์ฌ์๋ ์ ์ฑ ์ โ์น์ธ์ด ์ ๋ง ์๋ฃ๋๋์งโ NICEPAY๊ฐ ์ฌ๋ฌ ๋ฒ ํ์ธํ๋๋ก ์ค๊ณ๋ ๊ฐ๋ ์ ๋๋ค. โ webhook-management.md
-
์ธ์ฆ (Authentication)
- ์ค๋ช : ๊ณ ๊ฐ์ ๊ฒฐ์ ์๋จ(์นด๋, ๊ณ์ข ๋ฑ)์ด ์ ํจํ์ง ์นด๋์ฌยท์ํ์ ํตํด ์ค์๊ฐ์ผ๋ก ํ์ธํ๋ ๊ณผ์ ์ ๋๋ค.
- ๊ด๋ จ ๋ช ์ธ: ๊ฒฐ์ ์ฐฝ(2-Transaction) ์ฐ๋
-
์น์ธ (Authorization)
- ์ค๋ช : ์ธ์ฆ๋ ๊ฒฐ์ ์๋จ์ผ๋ก ์ค์ ๊ธ์ก์ ์ฒญ๊ตฌ(๊ฒฐ์ )ํ๋๋ก ์นด๋์ฌยท์ํ์ ์์ฒญํ๋ ๊ณผ์ ์ ๋๋ค.
- ๊ด๋ จ ๋ช ์ธ: ์น์ธ API
-
tid (Transaction ID)
- ์ค๋ช : NICEPAY์์ ์์ฑํ๋ 28์์ ๊ณ ์ ํ ๊ฑฐ๋ ์๋ณ์์ ๋๋ค. ์ธ์ฆ, ์น์ธ, ์ทจ์ ๋ฑ ๋ชจ๋ API ํธ์ถ์ ํต์ฌ ํค๋ก ์ฌ์ฉ๋ฉ๋๋ค.
- ๊ด๋ จ ๋ช ์ธ: ๊ฑฐ๋์กฐํ API
-
authToken (Authentication Token)
- ์ค๋ช : 2 Transaction ๋ฐฉ์์์ ์ธ์ฆ ์ฑ๊ณต ์ ๋ฐ๊ธ๋๋ ์ผํ์ฑ ํ ํฐ์ ๋๋ค. ์ด ํ ํฐ์ผ๋ก ์น์ธ API๋ฅผ ํธ์ถํ๋ฏ๋ก, ์๋ฒ์์๋ง ์์ ํ๊ฒ ๊ด๋ฆฌํด์ผ ํฉ๋๋ค.
- ๊ด๋ จ ๋ช ์ธ: 2 Transaction ์น์ธ API
-
returnUrl
- ์ค๋ช : ๊ฒฐ์ ์ฐฝ ์ ์ฐจ๊ฐ ๋๋ ํ, NICEPAY๊ฐ ๊ฐ๋งน์ ์ ์ธ์ฆ๊ฒฐ๊ณผ๋ฅผ ์๋ต ๋ฐ์ callback ์ฃผ์์ ๋๋ค.
- ๊ด๋ จ ๋ช ์ธ: ๊ฒฐ์ ์ฐฝ ์ฐ๋ ๊ฐ์ด๋
-
webhook
-
์ค๋ช
: ๊ฒฐ์ ์ํ ๋ณ๊ฒฝ ์, NICEPAY๊ฐ ๊ฐ๋งน์ ์๋ฒ๋ก ์ค์๊ฐ ์๋ฆผ์ ๋ณด๋ด์ฃผ๋ ๊ธฐ๋ฅ์
๋๋ค.
returnUrl๊ณผ ๋ฌ๋ฆฌ ์๋ฒ ๊ฐ ํต์ ์ผ๋ก, ์๋ต ๋๋ฝ์ ๋ฐฉ์งํ๋ ๋ฐ ํ์์ ์ ๋๋ค. - ๊ด๋ จ ๋ช ์ธ: ์นํ (๊ฑฐ๋ํต๋ณด) API
-
์ค๋ช
: ๊ฒฐ์ ์ํ ๋ณ๊ฒฝ ์, NICEPAY๊ฐ ๊ฐ๋งน์ ์๋ฒ๋ก ์ค์๊ฐ ์๋ฆผ์ ๋ณด๋ด์ฃผ๋ ๊ธฐ๋ฅ์
๋๋ค.
-
๋ง์ทจ์ (Net Cancellation)
- ์ค๋ช : ๋คํธ์ํฌ ์ค๋ฅ ๋ฑ์ผ๋ก ์น์ธ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์ง ๋ชปํ์ ๋, ๊ฒฐ์ ๊ฐ ๋ถํ์คํ ์ํ๋ก ๋จ๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด ๊ฑฐ๋๋ฅผ ๊ฐ์ ๋ก ์ทจ์ํ๋ API์ ๋๋ค.
- ๊ด๋ จ ๋ช ์ธ: ๋ง์ทจ์ API
- ๊ฐ๋ ์ ๋ฆฌ: ํ ๋ด๋ถ์์ โ์ธ์ฆ์ NICEPAY๊ฐ ์นด๋์ฌ์ ์ ๋ณด๋ฅผ ํ์ธํด ์ฃผ๋ ๋จ๊ณโ๋ผ๋ ๊ด์ ์ ๊ณต์ ํด ์ฃผ์ธ์.
- ์๋๋ฐ์ค ์ค์ต: sandbox-1transaction.md ๋๋ sandbox-2transaction.md๋ก ์ํธ์์ฉ์ ์ง์ ํ์ธํด ์ฃผ์ธ์.
- ์ด์ ๋๋น: webhook, ๊ธ์ก ๊ฒ์ฆ, ์ทจ์ API ๋ฌธ์๋ฅผ ์ดํด๋ณด๊ณ , ์น์ธ ๊ฒฐ๊ณผ๋ฅผ ์ฌ๋ฌ ๊ฒฝ๋ก๋ก ๊ฒ์ฆํ๋ ์ด์ ํ๋ก์ธ์ค๋ฅผ ๋ง๋ จํด ์ฃผ์ธ์.
์ถ๊ฐ ๋ฌธ์๊ฐ ํ์ํ๋ฉด NICEPAY ๊ธฐ์ ์ง์ํ์ผ๋ก ์ฐ๋ฝํด ์ฃผ์ธ์. ์์ ์ ์ธ ๊ฒฐ์ ์ฐ๋์ ์ํด ํญ์ ํจ๊ปํ๊ฒ ์ต๋๋ค.