@portone/mcp-server 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (576) hide show
  1. package/LICENSE-APACHE +201 -0
  2. package/LICENSE-MIT +21 -0
  3. package/README.md +165 -0
  4. package/assets/docs/README.md +27 -0
  5. package/assets/docs/api/backward-compatibility.md +40 -0
  6. package/assets/docs/blog/posts/2024-02/v2-oom.md +341 -0
  7. package/assets/docs/blog/posts/2024-02/v2-webhook.md +314 -0
  8. package/assets/docs/blog/posts/2024-02/v2-zio.md +529 -0
  9. package/assets/docs/blog/posts/2024-03/tgs.md +238 -0
  10. package/assets/docs/blog/posts/2024-04/gcp-datastream.md +307 -0
  11. package/assets/docs/blog/posts/2024-04/solid.md +558 -0
  12. package/assets/docs/blog/posts/2024-07/v2-event-sourcing-basic.md +231 -0
  13. package/assets/docs/help/admin-console/analytics/content32.md +270 -0
  14. package/assets/docs/help/admin-console/console-account/content31.md +94 -0
  15. package/assets/docs/help/admin-console/console_home/content34.md +82 -0
  16. package/assets/docs/help/admin-console/integration/content28.md +79 -0
  17. package/assets/docs/help/admin-console/payment-service/content29.md +260 -0
  18. package/assets/docs/help/admin-console/pg-settlement/content30.md +352 -0
  19. package/assets/docs/help/admin-console/platform-settlement/content33-1.md +201 -0
  20. package/assets/docs/help/api-sdk-2024-12-19.md +64 -0
  21. package/assets/docs/help/api-sdk-2025-01-15.md +84 -0
  22. package/assets/docs/help/applepay.md +46 -0
  23. package/assets/docs/help/content100000.md +46 -0
  24. package/assets/docs/help/content100002.md +52 -0
  25. package/assets/docs/help/content100004.md +29 -0
  26. package/assets/docs/help/content100014.md +50 -0
  27. package/assets/docs/help/content100015.md +20 -0
  28. package/assets/docs/help/content100016.md +28 -0
  29. package/assets/docs/help/content100020.md +28 -0
  30. package/assets/docs/help/content100022.md +40 -0
  31. package/assets/docs/help/content100023.md +21 -0
  32. package/assets/docs/help/content100024.md +25 -0
  33. package/assets/docs/help/content100025.md +40 -0
  34. package/assets/docs/help/content100026.md +20 -0
  35. package/assets/docs/help/content100027.md +24 -0
  36. package/assets/docs/help/content100029.md +29 -0
  37. package/assets/docs/help/content100030.md +82 -0
  38. package/assets/docs/help/content100033.md +44 -0
  39. package/assets/docs/help/content100035.md +34 -0
  40. package/assets/docs/help/content100036.md +14 -0
  41. package/assets/docs/help/content100037.md +16 -0
  42. package/assets/docs/help/content100038.md +32 -0
  43. package/assets/docs/help/content100039.md +28 -0
  44. package/assets/docs/help/content100040.md +31 -0
  45. package/assets/docs/help/content100041.md +37 -0
  46. package/assets/docs/help/content100044.md +15 -0
  47. package/assets/docs/help/content100045.md +21 -0
  48. package/assets/docs/help/content100046.md +34 -0
  49. package/assets/docs/help/content100047.md +32 -0
  50. package/assets/docs/help/content100048.md +25 -0
  51. package/assets/docs/help/content100049.md +20 -0
  52. package/assets/docs/help/content100052.md +147 -0
  53. package/assets/docs/help/content100053.md +40 -0
  54. package/assets/docs/help/content100054.md +18 -0
  55. package/assets/docs/help/content100055.md +37 -0
  56. package/assets/docs/help/content100056.md +15 -0
  57. package/assets/docs/help/content100057.md +28 -0
  58. package/assets/docs/help/content100058.md +36 -0
  59. package/assets/docs/help/content100059.md +23 -0
  60. package/assets/docs/help/content100060.md +43 -0
  61. package/assets/docs/help/content200001.md +21 -0
  62. package/assets/docs/help/content200002.md +38 -0
  63. package/assets/docs/help/content200005.md +30 -0
  64. package/assets/docs/help/content200012.md +91 -0
  65. package/assets/docs/help/content200013.md +52 -0
  66. package/assets/docs/help/content200015.md +41 -0
  67. package/assets/docs/help/content200016.md +30 -0
  68. package/assets/docs/help/content200017.md +39 -0
  69. package/assets/docs/help/content200018.md +105 -0
  70. package/assets/docs/help/content200019.md +59 -0
  71. package/assets/docs/help/content200020.md +42 -0
  72. package/assets/docs/help/content200023.md +54 -0
  73. package/assets/docs/help/content200024.md +49 -0
  74. package/assets/docs/help/content200025.md +68 -0
  75. package/assets/docs/help/content200027.md +34 -0
  76. package/assets/docs/help/content200028.md +70 -0
  77. package/assets/docs/help/content200029.md +71 -0
  78. package/assets/docs/help/content200030.md +67 -0
  79. package/assets/docs/help/content200032.md +39 -0
  80. package/assets/docs/help/content200033.md +21 -0
  81. package/assets/docs/help/content200034.md +34 -0
  82. package/assets/docs/help/content200037.md +38 -0
  83. package/assets/docs/help/content200038.md +50 -0
  84. package/assets/docs/help/content200039.md +45 -0
  85. package/assets/docs/help/content200040.md +15 -0
  86. package/assets/docs/help/content200043.md +23 -0
  87. package/assets/docs/help/content200044.md +33 -0
  88. package/assets/docs/help/content200045.md +25 -0
  89. package/assets/docs/help/content200046.md +104 -0
  90. package/assets/docs/help/content200048.md +34 -0
  91. package/assets/docs/help/content200049.md +54 -0
  92. package/assets/docs/help/content200050.md +43 -0
  93. package/assets/docs/help/content200051.md +81 -0
  94. package/assets/docs/help/content51.md +38 -0
  95. package/assets/docs/help/content61.md +165 -0
  96. package/assets/docs/help/core-service/channel-setting/danal.md +170 -0
  97. package/assets/docs/help/core-service/channel-setting/daou.md +118 -0
  98. package/assets/docs/help/core-service/channel-setting/eximbay.md +136 -0
  99. package/assets/docs/help/core-service/channel-setting/inicis.md +340 -0
  100. package/assets/docs/help/core-service/channel-setting/kakaopay.md +107 -0
  101. package/assets/docs/help/core-service/channel-setting/kcp_channel.md +235 -0
  102. package/assets/docs/help/core-service/channel-setting/kicc.md +114 -0
  103. package/assets/docs/help/core-service/channel-setting/kpn.md +93 -0
  104. package/assets/docs/help/core-service/channel-setting/ksnet.md +116 -0
  105. package/assets/docs/help/core-service/channel-setting/mobilians.md +107 -0
  106. package/assets/docs/help/core-service/channel-setting/naverpay.md +179 -0
  107. package/assets/docs/help/core-service/channel-setting/nice.md +210 -0
  108. package/assets/docs/help/core-service/channel-setting/payco.md +124 -0
  109. package/assets/docs/help/core-service/channel-setting/paymentwall.md +107 -0
  110. package/assets/docs/help/core-service/channel-setting/paypal.md +247 -0
  111. package/assets/docs/help/core-service/channel-setting/settle.md +123 -0
  112. package/assets/docs/help/core-service/channel-setting/smartro.md +164 -0
  113. package/assets/docs/help/core-service/channel-setting/smilepay.md +83 -0
  114. package/assets/docs/help/core-service/channel-setting/tosspay.md +168 -0
  115. package/assets/docs/help/core-service/channel-setting/tosspayments.md +232 -0
  116. package/assets/docs/help/core-service/channel-setting/welcome.md +110 -0
  117. package/assets/docs/help/core-service/how-to-use/additional-danal.md +71 -0
  118. package/assets/docs/help/core-service/how-to-use/additional-daou.md +65 -0
  119. package/assets/docs/help/core-service/how-to-use/additional-eximbay.md +54 -0
  120. package/assets/docs/help/core-service/how-to-use/additional-inicis.md +97 -0
  121. package/assets/docs/help/core-service/how-to-use/additional-kakaopay.md +56 -0
  122. package/assets/docs/help/core-service/how-to-use/additional-kcp.md +53 -0
  123. package/assets/docs/help/core-service/how-to-use/additional-kicc.md +67 -0
  124. package/assets/docs/help/core-service/how-to-use/additional-ksnet.md +68 -0
  125. package/assets/docs/help/core-service/how-to-use/additional-mobilians.md +71 -0
  126. package/assets/docs/help/core-service/how-to-use/additional-naverpay-order.md +69 -0
  127. package/assets/docs/help/core-service/how-to-use/additional-naverpay.md +72 -0
  128. package/assets/docs/help/core-service/how-to-use/additional-nice.md +112 -0
  129. package/assets/docs/help/core-service/how-to-use/additional-payco.md +68 -0
  130. package/assets/docs/help/core-service/how-to-use/additional-settle.md +70 -0
  131. package/assets/docs/help/core-service/how-to-use/additional-smartro.md +70 -0
  132. package/assets/docs/help/core-service/how-to-use/additional-tosspay.md +57 -0
  133. package/assets/docs/help/core-service/how-to-use/additional-tosspayments.md +47 -0
  134. package/assets/docs/help/core-service/how-to-use/additional-welcome.md +72 -0
  135. package/assets/docs/help/core-service/how-to-use/cancel-deadline-by-paymethod.md +68 -0
  136. package/assets/docs/help/core-service/how-to-use/cancel-guide-using-admin-console.md +49 -0
  137. package/assets/docs/help/core-service/how-to-use/cancel-reversal.md +114 -0
  138. package/assets/docs/help/core-service/how-to-use/cellphone-identity-verification.md +62 -0
  139. package/assets/docs/help/core-service/how-to-use/content200000.md +72 -0
  140. package/assets/docs/help/core-service/how-to-use/content200009.md +83 -0
  141. package/assets/docs/help/core-service/how-to-use/danal-contract.md +82 -0
  142. package/assets/docs/help/core-service/how-to-use/daou-contract.md +82 -0
  143. package/assets/docs/help/core-service/how-to-use/eximbay-contract.md +75 -0
  144. package/assets/docs/help/core-service/how-to-use/high-risk-industry.md +554 -0
  145. package/assets/docs/help/core-service/how-to-use/identity-verification-value.md +61 -0
  146. package/assets/docs/help/core-service/how-to-use/impossible-partial-cancel.md +53 -0
  147. package/assets/docs/help/core-service/how-to-use/information-pg.md +151 -0
  148. package/assets/docs/help/core-service/how-to-use/inicis-contract.md +95 -0
  149. package/assets/docs/help/core-service/how-to-use/inicis-vat.md +45 -0
  150. package/assets/docs/help/core-service/how-to-use/inicis-vbank-refund.md +45 -0
  151. package/assets/docs/help/core-service/how-to-use/kakao-contract.md +73 -0
  152. package/assets/docs/help/core-service/how-to-use/kakaopay-contract.md +41 -0
  153. package/assets/docs/help/core-service/how-to-use/kcp-contract.md +82 -0
  154. package/assets/docs/help/core-service/how-to-use/kcp-vat.md +39 -0
  155. package/assets/docs/help/core-service/how-to-use/kcp-vbank-refund.md +46 -0
  156. package/assets/docs/help/core-service/how-to-use/kicc-contract.md +81 -0
  157. package/assets/docs/help/core-service/how-to-use/ksnet-contract.md +78 -0
  158. package/assets/docs/help/core-service/how-to-use/mobilians-contract.md +81 -0
  159. package/assets/docs/help/core-service/how-to-use/naverpay-contract.md +86 -0
  160. package/assets/docs/help/core-service/how-to-use/naverpay-order-1.md +36 -0
  161. package/assets/docs/help/core-service/how-to-use/naverpay-order-contract.md +88 -0
  162. package/assets/docs/help/core-service/how-to-use/naverpay-order-diff.md +66 -0
  163. package/assets/docs/help/core-service/how-to-use/naverpay-order-review-items.md +66 -0
  164. package/assets/docs/help/core-service/how-to-use/naverpay-review-items.md +199 -0
  165. package/assets/docs/help/core-service/how-to-use/nice-contract.md +81 -0
  166. package/assets/docs/help/core-service/how-to-use/open-immediately.md +60 -0
  167. package/assets/docs/help/core-service/how-to-use/other-hosting-company.md +38 -0
  168. package/assets/docs/help/core-service/how-to-use/payco-contract.md +74 -0
  169. package/assets/docs/help/core-service/how-to-use/payment-settlement-method.md +30 -0
  170. package/assets/docs/help/core-service/how-to-use/paymentwall-contract.md +85 -0
  171. package/assets/docs/help/core-service/how-to-use/paypal-contract.md +66 -0
  172. package/assets/docs/help/core-service/how-to-use/point-service.md +293 -0
  173. package/assets/docs/help/core-service/how-to-use/refund-date.md +66 -0
  174. package/assets/docs/help/core-service/how-to-use/requirements.md +100 -0
  175. package/assets/docs/help/core-service/how-to-use/settle-contract.md +79 -0
  176. package/assets/docs/help/core-service/how-to-use/shopify-available-list.md +65 -0
  177. package/assets/docs/help/core-service/how-to-use/shopify-guide.md +62 -0
  178. package/assets/docs/help/core-service/how-to-use/small-business-commission-fee.md +55 -0
  179. package/assets/docs/help/core-service/how-to-use/smartro-contract.md +77 -0
  180. package/assets/docs/help/core-service/how-to-use/test-mode-cancel.md +63 -0
  181. package/assets/docs/help/core-service/how-to-use/tosspay-contract.md +82 -0
  182. package/assets/docs/help/core-service/how-to-use/tosspayments-contract.md +82 -0
  183. package/assets/docs/help/core-service/how-to-use/welcome-contract.md +81 -0
  184. package/assets/docs/help/core-service/how-to-use/withsoft-guide.md +69 -0
  185. package/assets/docs/help/core-service/how-to-use/wordpress-available-pg.md +49 -0
  186. package/assets/docs/help/core-service/how-to-use/wordpress-setting.md +50 -0
  187. package/assets/docs/help/core-service/payment-type/billing-key.md +72 -0
  188. package/assets/docs/help/core-service/payment-type/content200003.md +39 -0
  189. package/assets/docs/help/core-service/payment-type/content200007.md +176 -0
  190. package/assets/docs/help/core-service/payment-type/content200036.md +37 -0
  191. package/assets/docs/help/core-service/payment-type/content200042.md +150 -0
  192. package/assets/docs/help/core-service/payment-type/content200047.md +215 -0
  193. package/assets/docs/help/core-service/payment-type/content200052.md +142 -0
  194. package/assets/docs/help/core-service/payment-type/content200053.md +128 -0
  195. package/assets/docs/help/core-service/payment-type/crossborder.md +132 -0
  196. package/assets/docs/help/core-service/payment-type/eximbay-international.md +96 -0
  197. package/assets/docs/help/core-service/payment-type/hub-service-fee.md +79 -0
  198. package/assets/docs/help/core-service/payment-type/inicis-easypay-hub-fee.md +45 -0
  199. package/assets/docs/help/core-service/payment-type/inicis-international.md +65 -0
  200. package/assets/docs/help/core-service/payment-type/internationl-high-risk-industry.md +267 -0
  201. package/assets/docs/help/core-service/payment-type/internationl-pg.md +42 -0
  202. package/assets/docs/help/core-service/payment-type/kcp-easypay-hub-apply.md +49 -0
  203. package/assets/docs/help/core-service/payment-type/kcp-international.md +60 -0
  204. package/assets/docs/help/core-service/payment-type/nice-easypay-hub-fee.md +72 -0
  205. package/assets/docs/help/core-service/payment-type/nice-international.md +51 -0
  206. package/assets/docs/help/core-service/payment-type/paymentwall-international.md +84 -0
  207. package/assets/docs/help/core-service/payment-type/paypal-international.md +86 -0
  208. package/assets/docs/help/core-service/payment-type/paypal-payment-status.md +55 -0
  209. package/assets/docs/help/core-service/payment-type/schedule-logic-guide.md +49 -0
  210. package/assets/docs/help/core-service/payment-type/schedule-requirement.md +111 -0
  211. package/assets/docs/help/core-service/payment-type/schedule-validity-guide.md +68 -0
  212. package/assets/docs/help/core-service/payment-type/tosspayment-international.md +54 -0
  213. package/assets/docs/help/core-service/payment-type/tosspayments-easypay-hub-fee.md +42 -0
  214. package/assets/docs/help/core-service/payment-type/webhook-re-send.md +41 -0
  215. package/assets/docs/help/faq/console-faq/2-depth-auth.md +53 -0
  216. package/assets/docs/help/faq/console-faq/add-admin-account.md +42 -0
  217. package/assets/docs/help/faq/console-faq/change-console-url.md +51 -0
  218. package/assets/docs/help/faq/console-faq/impossible-login.md +30 -0
  219. package/assets/docs/help/faq/console-faq/payment-list.md +45 -0
  220. package/assets/docs/help/faq/console-faq/sub-store-mgnt.md +97 -0
  221. package/assets/docs/help/faq/general-inquiry/change-business-number.md +32 -0
  222. package/assets/docs/help/faq/general-inquiry/confirm-process.md +118 -0
  223. package/assets/docs/help/faq/general-inquiry/content200004.md +55 -0
  224. package/assets/docs/help/faq/general-inquiry/content200006.md +86 -0
  225. package/assets/docs/help/faq/general-inquiry/content200011.md +24 -0
  226. package/assets/docs/help/faq/general-inquiry/content200031.md +194 -0
  227. package/assets/docs/help/faq/general-inquiry/content200041.md +21 -0
  228. package/assets/docs/help/faq/general-inquiry/contract-checkpoint.md +49 -0
  229. package/assets/docs/help/faq/general-inquiry/main-user.md +56 -0
  230. package/assets/docs/help/faq/general-inquiry/platform-contract-method.md +67 -0
  231. package/assets/docs/help/faq/general-inquiry/platform-contract-pg.md +234 -0
  232. package/assets/docs/help/faq/general-inquiry/portone-advantages.md +71 -0
  233. package/assets/docs/help/faq/general-inquiry/real-channel-info.md +70 -0
  234. package/assets/docs/help/faq/general-inquiry/what-is-the-small-business-fee.md +41 -0
  235. package/assets/docs/help/faq/payment-faq/business-card-available.md +55 -0
  236. package/assets/docs/help/faq/payment-faq/business-info-change.md +96 -0
  237. package/assets/docs/help/faq/payment-faq/cancel-deadline.md +32 -0
  238. package/assets/docs/help/faq/payment-faq/cancel-guide.md +48 -0
  239. package/assets/docs/help/faq/payment-faq/cash-receipt-guide.md +64 -0
  240. package/assets/docs/help/faq/payment-faq/content200022.md +73 -0
  241. package/assets/docs/help/faq/payment-faq/pg-max-min-amount.md +158 -0
  242. package/assets/docs/help/faq/payment-faq/receipt-guide.md +38 -0
  243. package/assets/docs/help/faq/payment-faq/tosspayments-cash-receipt.md +32 -0
  244. package/assets/docs/help/faq/payment-faq/vbank-info.md +35 -0
  245. package/assets/docs/help/faq/payment-faq/vbank-service-detail.md +67 -0
  246. package/assets/docs/help/faq/payment-faq/vbank-test-guide.md +65 -0
  247. package/assets/docs/help/faq/platform-faq/platform_function_partnerbulkupload.md +190 -0
  248. package/assets/docs/help/faq/platform-faq/platform_infosec.md +56 -0
  249. package/assets/docs/help/faq/platform-faq/platform_nocode_guide.md +104 -0
  250. package/assets/docs/help/faq/platform-faq/platform_payout_guide.md +75 -0
  251. package/assets/docs/help/faq/platform-faq/platform_policymanagement_calculator.md +73 -0
  252. package/assets/docs/help/faq/platform-faq/platform_settlmentandpayout_guide.md +83 -0
  253. package/assets/docs/help/faq/platform-faq/platform_tax_setting_guide.md +108 -0
  254. package/assets/docs/help/faq/platform-faq/taxinvoice_guide.md +107 -0
  255. package/assets/docs/help/faq/platform-faq/taxinvoice_signupemail.md +67 -0
  256. package/assets/docs/help/holidays.md +29 -0
  257. package/assets/docs/help/notice-kakaopay-2025-06-30.md +47 -0
  258. package/assets/docs/help/platform-2024-11-07.md +73 -0
  259. package/assets/docs/help/platform-2024-11-25.md +91 -0
  260. package/assets/docs/help/platform-2024-12-10.md +71 -0
  261. package/assets/docs/help/platform-2025-03-04.md +54 -0
  262. package/assets/docs/help/platform-2025-04-03.md +105 -0
  263. package/assets/docs/help/platform-2025-04-08.md +120 -0
  264. package/assets/docs/help/platform-2025-05-14.md +70 -0
  265. package/assets/docs/help/platform-2025-1-16.md +65 -0
  266. package/assets/docs/help/platform-2025-2-10.md +75 -0
  267. package/assets/docs/help/platform-2025-2-13.md +43 -0
  268. package/assets/docs/help/portone-service/portone-service/content50.md +80 -0
  269. package/assets/docs/help/pricing/pg/domestic-and-oversea-fees.md +34 -0
  270. package/assets/docs/help/pricing/portone/portone-pricing.md +116 -0
  271. package/assets/docs/help/procedure/payment-integration/real-integration.md +43 -0
  272. package/assets/docs/help/procedure/payment-integration/test-integration.md +91 -0
  273. package/assets/docs/help/procedure/pg-application/content53.md +49 -0
  274. package/assets/docs/help/procedure/pg-application/content54.md +136 -0
  275. package/assets/docs/help/procedure/pg-application/content59.md +53 -0
  276. package/assets/docs/help/procedure/pg-application/start.md +154 -0
  277. package/assets/docs/help/procedure/recommendation/package.md +98 -0
  278. package/assets/docs/help/procedure/service-addition/add-service.md +98 -0
  279. package/assets/docs/help/recon_issue1.md +25 -0
  280. package/assets/docs/help/recon_issue2.md +29 -0
  281. package/assets/docs/help/service/identity-verification/identity-verification.md +65 -0
  282. package/assets/docs/help/service/integration-type/integration-type.md +49 -0
  283. package/assets/docs/help/service/payment-type/payment-type.md +100 -0
  284. package/assets/docs/help/service/paymethod/paymethod.md +100 -0
  285. package/assets/docs/help/service/pg/pg-service-list.md +339 -0
  286. package/assets/docs/help/service/version/portone-version.md +61 -0
  287. package/assets/docs/opi/ko/console/guide/account.md +111 -0
  288. package/assets/docs/opi/ko/console/guide/api-keys.md +34 -0
  289. package/assets/docs/opi/ko/console/guide/billing-payments.md +312 -0
  290. package/assets/docs/opi/ko/console/guide/channel-manage.md +303 -0
  291. package/assets/docs/opi/ko/console/guide/connect.md +84 -0
  292. package/assets/docs/opi/ko/console/guide/home.md +37 -0
  293. package/assets/docs/opi/ko/console/guide/integration.md +18 -0
  294. package/assets/docs/opi/ko/console/guide/list.md +183 -0
  295. package/assets/docs/opi/ko/console/guide/pay.md +14 -0
  296. package/assets/docs/opi/ko/console/guide/payments.md +298 -0
  297. package/assets/docs/opi/ko/console/guide/promotion.md +140 -0
  298. package/assets/docs/opi/ko/console/guide/readme.md +22 -0
  299. package/assets/docs/opi/ko/console/guide/reg.md +159 -0
  300. package/assets/docs/opi/ko/console/guide/smartrouting.md +74 -0
  301. package/assets/docs/opi/ko/console/pg.md +92 -0
  302. package/assets/docs/opi/ko/etc/recon.md +286 -0
  303. package/assets/docs/opi/ko/extra/confirm-process/readme-v1.md +98 -0
  304. package/assets/docs/opi/ko/extra/confirm-process/readme-v2.md +152 -0
  305. package/assets/docs/opi/ko/extra/identity-verification/readme-v2.md +261 -0
  306. package/assets/docs/opi/ko/extra/identity-verification/v1/all/0.md +35 -0
  307. package/assets/docs/opi/ko/extra/identity-verification/v1/all/1.md +44 -0
  308. package/assets/docs/opi/ko/extra/identity-verification/v1/all/2.md +75 -0
  309. package/assets/docs/opi/ko/extra/identity-verification/v1/all/3.md +134 -0
  310. package/assets/docs/opi/ko/extra/identity-verification/v1/all/readme.md +17 -0
  311. package/assets/docs/opi/ko/extra/identity-verification/v1/credit-auth/1.md +35 -0
  312. package/assets/docs/opi/ko/extra/identity-verification/v1/credit-auth/2.md +78 -0
  313. package/assets/docs/opi/ko/extra/identity-verification/v1/credit-auth/3.md +75 -0
  314. package/assets/docs/opi/ko/extra/identity-verification/v1/credit-auth/4.md +134 -0
  315. package/assets/docs/opi/ko/extra/identity-verification/v1/credit-auth/readme.md +17 -0
  316. package/assets/docs/opi/ko/extra/identity-verification/v1/phone/1.md +37 -0
  317. package/assets/docs/opi/ko/extra/identity-verification/v1/phone/2.md +86 -0
  318. package/assets/docs/opi/ko/extra/identity-verification/v1/phone/3.md +77 -0
  319. package/assets/docs/opi/ko/extra/identity-verification/v1/phone/4.md +149 -0
  320. package/assets/docs/opi/ko/extra/identity-verification/v1/phone/readme.md +19 -0
  321. package/assets/docs/opi/ko/extra/identity-verification/v1/readme.md +9 -0
  322. package/assets/docs/opi/ko/extra/link-pay/readme-v1.md +235 -0
  323. package/assets/docs/opi/ko/extra/plugins/readme-v1.md +7 -0
  324. package/assets/docs/opi/ko/extra/plugins/shopify/readme-v1.md +54 -0
  325. package/assets/docs/opi/ko/extra/plugins/shopify/shopify/shopify-1.md +16 -0
  326. package/assets/docs/opi/ko/extra/plugins/shopify/shopify/shopify-2.md +32 -0
  327. package/assets/docs/opi/ko/extra/plugins/shopify/shopify/shopify-3.md +16 -0
  328. package/assets/docs/opi/ko/extra/plugins/shopify/shopify/shopify-4.md +35 -0
  329. package/assets/docs/opi/ko/extra/plugins/shopify/shopify/shopify-5.md +27 -0
  330. package/assets/docs/opi/ko/extra/plugins/wordpress/button.md +166 -0
  331. package/assets/docs/opi/ko/extra/plugins/wordpress/edd.md +56 -0
  332. package/assets/docs/opi/ko/extra/plugins/wordpress/readme-v1.md +10 -0
  333. package/assets/docs/opi/ko/extra/plugins/wordpress/woocommerce/payment.md +62 -0
  334. package/assets/docs/opi/ko/extra/plugins/wordpress/woocommerce/readme.md +30 -0
  335. package/assets/docs/opi/ko/extra/plugins/wordpress/woocommerce/subscription.md +60 -0
  336. package/assets/docs/opi/ko/extra/plugins/wordpress/woocommerce/vbank.md +64 -0
  337. package/assets/docs/opi/ko/extra/promotion/console-guide.md +148 -0
  338. package/assets/docs/opi/ko/extra/promotion/integration.md +769 -0
  339. package/assets/docs/opi/ko/extra/promotion/intro.md +31 -0
  340. package/assets/docs/opi/ko/extra/promotion/refund.md +316 -0
  341. package/assets/docs/opi/ko/extra/smart-routing/console-guide.md +73 -0
  342. package/assets/docs/opi/ko/extra/smart-routing/integration.md +1324 -0
  343. package/assets/docs/opi/ko/extra/smart-routing/intro.md +155 -0
  344. package/assets/docs/opi/ko/integration/cancel/v1/basic.md +324 -0
  345. package/assets/docs/opi/ko/integration/cancel/v1/virtual-account.md +99 -0
  346. package/assets/docs/opi/ko/integration/cancel/v2/readme.md +378 -0
  347. package/assets/docs/opi/ko/integration/checklist/readme-v1.md +83 -0
  348. package/assets/docs/opi/ko/integration/pg/v1/blue.md +99 -0
  349. package/assets/docs/opi/ko/integration/pg/v1/danal.md +409 -0
  350. package/assets/docs/opi/ko/integration/pg/v1/daou/readme.md +305 -0
  351. package/assets/docs/opi/ko/integration/pg/v1/daou/undefined.md +214 -0
  352. package/assets/docs/opi/ko/integration/pg/v1/eximbay.md +242 -0
  353. package/assets/docs/opi/ko/integration/pg/v1/hyphen.md +196 -0
  354. package/assets/docs/opi/ko/integration/pg/v1/inicis.md +444 -0
  355. package/assets/docs/opi/ko/integration/pg/v1/kakaopay.md +207 -0
  356. package/assets/docs/opi/ko/integration/pg/v1/kcp-v2-identity-verification.md +188 -0
  357. package/assets/docs/opi/ko/integration/pg/v1/kg.md +177 -0
  358. package/assets/docs/opi/ko/integration/pg/v1/kicc.md +308 -0
  359. package/assets/docs/opi/ko/integration/pg/v1/ksnet/readme.md +533 -0
  360. package/assets/docs/opi/ko/integration/pg/v1/ksnet/warning.md +175 -0
  361. package/assets/docs/opi/ko/integration/pg/v1/naver.md +558 -0
  362. package/assets/docs/opi/ko/integration/pg/v1/newtoss/readme.md +503 -0
  363. package/assets/docs/opi/ko/integration/pg/v1/newtoss/warning.md +364 -0
  364. package/assets/docs/opi/ko/integration/pg/v1/nhn-kcp.md +1186 -0
  365. package/assets/docs/opi/ko/integration/pg/v1/nice-v2/billing-api-caution.md +150 -0
  366. package/assets/docs/opi/ko/integration/pg/v1/nice-v2/payment-caution.md +429 -0
  367. package/assets/docs/opi/ko/integration/pg/v1/nice-v2/readme.md +364 -0
  368. package/assets/docs/opi/ko/integration/pg/v1/nice.md +319 -0
  369. package/assets/docs/opi/ko/integration/pg/v1/payco.md +201 -0
  370. package/assets/docs/opi/ko/integration/pg/v1/paymentwall.md +283 -0
  371. package/assets/docs/opi/ko/integration/pg/v1/paypal.md +158 -0
  372. package/assets/docs/opi/ko/integration/pg/v1/readme.md +73 -0
  373. package/assets/docs/opi/ko/integration/pg/v1/rt/readme.md +501 -0
  374. package/assets/docs/opi/ko/integration/pg/v1/rt/warning.md +297 -0
  375. package/assets/docs/opi/ko/integration/pg/v1/settle/mybank.md +304 -0
  376. package/assets/docs/opi/ko/integration/pg/v1/settle/readme.md +185 -0
  377. package/assets/docs/opi/ko/integration/pg/v1/smartro-v2/api.md +197 -0
  378. package/assets/docs/opi/ko/integration/pg/v1/smartro-v2/caution.md +387 -0
  379. package/assets/docs/opi/ko/integration/pg/v1/smartro-v2/readme.md +293 -0
  380. package/assets/docs/opi/ko/integration/pg/v1/smartro.md +104 -0
  381. package/assets/docs/opi/ko/integration/pg/v1/smilepay.md +97 -0
  382. package/assets/docs/opi/ko/integration/pg/v1/spb/readme.md +441 -0
  383. package/assets/docs/opi/ko/integration/pg/v1/spb/stc.md +226 -0
  384. package/assets/docs/opi/ko/integration/pg/v1/spb/warning.md +729 -0
  385. package/assets/docs/opi/ko/integration/pg/v1/toss-brandpay/module.md +227 -0
  386. package/assets/docs/opi/ko/integration/pg/v1/toss-brandpay/readme.md +404 -0
  387. package/assets/docs/opi/ko/integration/pg/v1/toss-brandpay/warning.md +81 -0
  388. package/assets/docs/opi/ko/integration/pg/v1/toss-brandpay/widget.md +152 -0
  389. package/assets/docs/opi/ko/integration/pg/v1/toss.md +112 -0
  390. package/assets/docs/opi/ko/integration/pg/v1/tosspay-v2/caution.md +65 -0
  391. package/assets/docs/opi/ko/integration/pg/v1/tosspay-v2/readme.md +308 -0
  392. package/assets/docs/opi/ko/integration/pg/v1/tosspay.md +110 -0
  393. package/assets/docs/opi/ko/integration/pg/v1/welcome/api.md +229 -0
  394. package/assets/docs/opi/ko/integration/pg/v1/welcome/caution.md +517 -0
  395. package/assets/docs/opi/ko/integration/pg/v1/welcome/readme.md +795 -0
  396. package/assets/docs/opi/ko/integration/pg/v2/danal-identity-verification.md +121 -0
  397. package/assets/docs/opi/ko/integration/pg/v2/eximbay-v2.md +964 -0
  398. package/assets/docs/opi/ko/integration/pg/v2/hyphen.md +205 -0
  399. package/assets/docs/opi/ko/integration/pg/v2/inicis-jp.md +403 -0
  400. package/assets/docs/opi/ko/integration/pg/v2/inicis-unified-identity-verification.md +89 -0
  401. package/assets/docs/opi/ko/integration/pg/v2/inicis-v2.md +1598 -0
  402. package/assets/docs/opi/ko/integration/pg/v2/kakaopay.md +108 -0
  403. package/assets/docs/opi/ko/integration/pg/v2/kcp-v2-identity-verification.md +291 -0
  404. package/assets/docs/opi/ko/integration/pg/v2/kcp-v2.md +1273 -0
  405. package/assets/docs/opi/ko/integration/pg/v2/kpn.md +1133 -0
  406. package/assets/docs/opi/ko/integration/pg/v2/ksnet.md +526 -0
  407. package/assets/docs/opi/ko/integration/pg/v2/naverpay.md +186 -0
  408. package/assets/docs/opi/ko/integration/pg/v2/nice-v2.md +868 -0
  409. package/assets/docs/opi/ko/integration/pg/v2/payletter-global.md +62 -0
  410. package/assets/docs/opi/ko/integration/pg/v2/paypal-v2.md +1874 -0
  411. package/assets/docs/opi/ko/integration/pg/v2/readme.md +194 -0
  412. package/assets/docs/opi/ko/integration/pg/v2/smartro-v2.md +1043 -0
  413. package/assets/docs/opi/ko/integration/pg/v2/tosspay-v2.md +433 -0
  414. package/assets/docs/opi/ko/integration/pg/v2/tosspayments.md +551 -0
  415. package/assets/docs/opi/ko/integration/pg/v2/welcome.md +1441 -0
  416. package/assets/docs/opi/ko/integration/ready/readme.md +1069 -0
  417. package/assets/docs/opi/ko/integration/start/v1/auth.md +483 -0
  418. package/assets/docs/opi/ko/integration/start/v1/non-auth.md +420 -0
  419. package/assets/docs/opi/ko/integration/start/v1/readme.md +9 -0
  420. package/assets/docs/opi/ko/integration/start/v2/billing/issue.md +122 -0
  421. package/assets/docs/opi/ko/integration/start/v2/billing/payment.md +41 -0
  422. package/assets/docs/opi/ko/integration/start/v2/billing/readme.md +24 -0
  423. package/assets/docs/opi/ko/integration/start/v2/billing/schedule.md +54 -0
  424. package/assets/docs/opi/ko/integration/start/v2/checkout.md +258 -0
  425. package/assets/docs/opi/ko/integration/start/v2/keyin.md +54 -0
  426. package/assets/docs/opi/ko/integration/start/v2/readme.md +120 -0
  427. package/assets/docs/opi/ko/integration/using-ai-tools.md +140 -0
  428. package/assets/docs/opi/ko/integration/virtual-account/readme.md +268 -0
  429. package/assets/docs/opi/ko/integration/webhook/readme-v1.md +242 -0
  430. package/assets/docs/opi/ko/integration/webhook/readme-v2.md +599 -0
  431. package/assets/docs/opi/ko/quick-guide/payment.md +3305 -0
  432. package/assets/docs/opi/ko/readme.md +193 -0
  433. package/assets/docs/opi/ko/support/agency-and-tier.md +51 -0
  434. package/assets/docs/opi/ko/support/code-info/card-code.md +29 -0
  435. package/assets/docs/opi/ko/support/code-info/code.md +22 -0
  436. package/assets/docs/opi/ko/support/code-info/pg-1.md +161 -0
  437. package/assets/docs/opi/ko/support/code-info/pg-2.md +41 -0
  438. package/assets/docs/opi/ko/support/code-info/pg-3.md +36 -0
  439. package/assets/docs/opi/ko/support/code-info/pg.md +41 -0
  440. package/assets/docs/opi/ko/support/code-info/portone-code.md +15 -0
  441. package/assets/docs/opi/ko/support/code-info/readme.md +20 -0
  442. package/assets/docs/opi/ko/support/contact.md +23 -0
  443. package/assets/docs/opi/ko/support/faq/undefined.md +60 -0
  444. package/assets/docs/opi/ko/support/flow.md +24 -0
  445. package/assets/docs/opi/ko/support/redirect.md +26 -0
  446. package/assets/docs/opi/ko/support/tax.md +142 -0
  447. package/assets/docs/opi/ko/support/tls-support.md +497 -0
  448. package/assets/docs/platform/ko/guides/dictionary.md +20 -0
  449. package/assets/docs/platform/ko/guides/process.md +33 -0
  450. package/assets/docs/platform/ko/guides/webhook.md +171 -0
  451. package/assets/docs/platform/ko/readme.md +64 -0
  452. package/assets/docs/platform/ko/usages/client.md +17 -0
  453. package/assets/docs/platform/ko/usages/contract.md +126 -0
  454. package/assets/docs/platform/ko/usages/discount.md +89 -0
  455. package/assets/docs/platform/ko/usages/fee.md +97 -0
  456. package/assets/docs/platform/ko/usages/order.md +1666 -0
  457. package/assets/docs/platform/ko/usages/partner.md +115 -0
  458. package/assets/docs/platform/ko/using-ai-tools.md +140 -0
  459. package/assets/docs/release-notes/api-sdk/2023-04-24.md +10 -0
  460. package/assets/docs/release-notes/api-sdk/2023-05-08.md +22 -0
  461. package/assets/docs/release-notes/api-sdk/2023-05-12.md +24 -0
  462. package/assets/docs/release-notes/api-sdk/2023-05-22.md +46 -0
  463. package/assets/docs/release-notes/api-sdk/2023-05-25.md +15 -0
  464. package/assets/docs/release-notes/api-sdk/2023-06-19.md +20 -0
  465. package/assets/docs/release-notes/api-sdk/2023-07-03.md +26 -0
  466. package/assets/docs/release-notes/api-sdk/2023-07-10.md +35 -0
  467. package/assets/docs/release-notes/api-sdk/2023-07-17.md +31 -0
  468. package/assets/docs/release-notes/api-sdk/2023-07-31.md +14 -0
  469. package/assets/docs/release-notes/api-sdk/2023-08-31.md +29 -0
  470. package/assets/docs/release-notes/api-sdk/2023-12-15.md +12 -0
  471. package/assets/docs/release-notes/api-sdk/2024-01-08.md +36 -0
  472. package/assets/docs/release-notes/api-sdk/2024-01-11.md +18 -0
  473. package/assets/docs/release-notes/api-sdk/2024-01-25.md +35 -0
  474. package/assets/docs/release-notes/api-sdk/2024-01-30.md +19 -0
  475. package/assets/docs/release-notes/api-sdk/2024-02-23.md +26 -0
  476. package/assets/docs/release-notes/api-sdk/2024-03-08.md +12 -0
  477. package/assets/docs/release-notes/api-sdk/2024-03-15.md +30 -0
  478. package/assets/docs/release-notes/api-sdk/2024-03-25.md +23 -0
  479. package/assets/docs/release-notes/api-sdk/2024-04-01.md +37 -0
  480. package/assets/docs/release-notes/api-sdk/2024-04-05.md +10 -0
  481. package/assets/docs/release-notes/api-sdk/2024-04-12.md +32 -0
  482. package/assets/docs/release-notes/api-sdk/2024-05-08.md +34 -0
  483. package/assets/docs/release-notes/api-sdk/2024-05-14.md +17 -0
  484. package/assets/docs/release-notes/api-sdk/2024-06-03.md +48 -0
  485. package/assets/docs/release-notes/api-sdk/2024-06-17.md +37 -0
  486. package/assets/docs/release-notes/api-sdk/2024-06-19.md +39 -0
  487. package/assets/docs/release-notes/api-sdk/2024-06-20.md +13 -0
  488. package/assets/docs/release-notes/api-sdk/2024-07-04.md +15 -0
  489. package/assets/docs/release-notes/api-sdk/2024-07-11.md +47 -0
  490. package/assets/docs/release-notes/api-sdk/2024-09-05.md +36 -0
  491. package/assets/docs/release-notes/api-sdk/2024-09-27.md +27 -0
  492. package/assets/docs/release-notes/api-sdk/2024-12-19.md +52 -0
  493. package/assets/docs/release-notes/api-sdk/2025-01-15.md +76 -0
  494. package/assets/docs/release-notes/api-sdk/2025-05-19.md +49 -0
  495. package/assets/docs/release-notes/console/2023-04-24.md +41 -0
  496. package/assets/docs/release-notes/console/2023-05-08.md +6 -0
  497. package/assets/docs/release-notes/console/2023-05-22.md +15 -0
  498. package/assets/docs/release-notes/console/2023-07-05.md +29 -0
  499. package/assets/docs/release-notes/console/2023-07-07.md +25 -0
  500. package/assets/docs/release-notes/console/2023-07-17.md +16 -0
  501. package/assets/docs/release-notes/console/2023-08-23.md +17 -0
  502. package/assets/docs/release-notes/console/2023-09-12.md +16 -0
  503. package/assets/docs/release-notes/console/2023-12-27.md +24 -0
  504. package/assets/docs/release-notes/console/2024-09-05.md +23 -0
  505. package/assets/docs/release-notes/platform/2023-08-31.md +16 -0
  506. package/assets/docs/release-notes/platform/2023-11-08.md +37 -0
  507. package/assets/docs/release-notes/platform/2023-11-14.md +28 -0
  508. package/assets/docs/release-notes/platform/2023-12-15.md +11 -0
  509. package/assets/docs/release-notes/platform/2024-05-20.md +31 -0
  510. package/assets/docs/release-notes/platform/2024-05-29.md +159 -0
  511. package/assets/docs/release-notes/platform/2024-06-05.md +30 -0
  512. package/assets/docs/release-notes/platform/2024-07-05.md +49 -0
  513. package/assets/docs/release-notes/platform/2024-07-11.md +62 -0
  514. package/assets/docs/release-notes/platform/2024-07-30.md +44 -0
  515. package/assets/docs/release-notes/platform/2024-08-07.md +37 -0
  516. package/assets/docs/release-notes/platform/2024-08-22.md +111 -0
  517. package/assets/docs/release-notes/platform/2024-10-21.md +75 -0
  518. package/assets/docs/release-notes/platform/2024-11-07.md +65 -0
  519. package/assets/docs/release-notes/platform/2024-11-25.md +82 -0
  520. package/assets/docs/release-notes/platform/2024-12-10.md +61 -0
  521. package/assets/docs/release-notes/platform/2025-01-16.md +56 -0
  522. package/assets/docs/release-notes/platform/2025-02-10.md +67 -0
  523. package/assets/docs/release-notes/platform/2025-02-13.md +27 -0
  524. package/assets/docs/release-notes/platform/2025-03-04.md +49 -0
  525. package/assets/docs/release-notes/platform/2025-03-17.md +40 -0
  526. package/assets/docs/release-notes/platform/2025-04-03.md +96 -0
  527. package/assets/docs/release-notes/platform/2025-04-08.md +119 -0
  528. package/assets/docs/release-notes/platform/2025-05-14.md +77 -0
  529. package/assets/docs/release-notes/platform/2025-07-02.md +64 -0
  530. package/assets/docs/release-notes/platform/2025-07-07.md +55 -0
  531. package/assets/docs/schema/browser-sdk.yml +6349 -0
  532. package/assets/docs/schema/v1.openapi.json +11632 -0
  533. package/assets/docs/schema/v1.openapi.yml +11489 -0
  534. package/assets/docs/schema/v2.graphql +13849 -0
  535. package/assets/docs/schema/v2.openapi.json +47721 -0
  536. package/assets/docs/schema/v2.openapi.yml +34749 -0
  537. package/assets/docs/sdk/ko/readme.md +56 -0
  538. package/assets/docs/sdk/ko/v1-mobile-sdk/readme.md +31 -0
  539. package/assets/docs/sdk/ko/v1-sdk/javascript-sdk/cft-rt.md +32 -0
  540. package/assets/docs/sdk/ko/v1-sdk/javascript-sdk/cft.md +108 -0
  541. package/assets/docs/sdk/ko/v1-sdk/javascript-sdk/load-module-rt.md +10 -0
  542. package/assets/docs/sdk/ko/v1-sdk/javascript-sdk/load-module.md +55 -0
  543. package/assets/docs/sdk/ko/v1-sdk/javascript-sdk/payrq.md +502 -0
  544. package/assets/docs/sdk/ko/v1-sdk/javascript-sdk/payrt.md +300 -0
  545. package/assets/docs/sdk/ko/v1-sdk/javascript-sdk/readme.md +46 -0
  546. package/assets/docs/sdk/ko/v1-sdk/javascript-sdk-old/readme.md +33 -0
  547. package/assets/docs/sdk/ko/v2-mobile-sdk/android.md +268 -0
  548. package/assets/docs/sdk/ko/v2-mobile-sdk/react-native.md +239 -0
  549. package/assets/docs/sdk/ko/v2-mobile-sdk/readme.md +30 -0
  550. package/assets/docs/sdk/ko/v2-sdk/billing-key-and-pay-request.md +26 -0
  551. package/assets/docs/sdk/ko/v2-sdk/billing-key-and-pay-response.md +15 -0
  552. package/assets/docs/sdk/ko/v2-sdk/billing-key-request.md +24 -0
  553. package/assets/docs/sdk/ko/v2-sdk/billing-key-response.md +15 -0
  554. package/assets/docs/sdk/ko/v2-sdk/changelog.md +8 -0
  555. package/assets/docs/sdk/ko/v2-sdk/identity-verification-request.md +15 -0
  556. package/assets/docs/sdk/ko/v2-sdk/identity-verification-response.md +15 -0
  557. package/assets/docs/sdk/ko/v2-sdk/load-issue-billing-key-ui-request.md +15 -0
  558. package/assets/docs/sdk/ko/v2-sdk/load-issue-billing-key-ui-response.md +23 -0
  559. package/assets/docs/sdk/ko/v2-sdk/load-payment-ui-request.md +15 -0
  560. package/assets/docs/sdk/ko/v2-sdk/load-payment-ui-response.md +23 -0
  561. package/assets/docs/sdk/ko/v2-sdk/payment-request.md +15 -0
  562. package/assets/docs/sdk/ko/v2-sdk/payment-response.md +15 -0
  563. package/assets/docs/sdk/ko/v2-sdk/readme.md +73 -0
  564. package/assets/docs/sdk/ko/v2-sdk/update-load-issue-billing-key-ui-request.md +15 -0
  565. package/assets/docs/sdk/ko/v2-sdk/update-load-payment-ui-request.md +15 -0
  566. package/assets/docs/sdk/ko/v2-server-sdk/javascript.md +170 -0
  567. package/assets/docs/sdk/ko/v2-server-sdk/jvm.md +170 -0
  568. package/assets/docs/sdk/ko/v2-server-sdk/python.md +152 -0
  569. package/assets/docs/sdk/ko/v2-server-sdk/readme.md +259 -0
  570. package/assets/docs/v1-docs-full.md +36540 -0
  571. package/assets/docs/v2-docs-full.md +34980 -0
  572. package/assets/docs/website-links.md +331 -0
  573. package/assets/instructions.md +19 -0
  574. package/manifest.json +50 -0
  575. package/package.json +66 -0
  576. package/server/index.js +1764 -0
@@ -0,0 +1,1186 @@
1
+ ---
2
+ title: NHN KCP
3
+ description: NHN KCP 결제 연동 방법을 안내합니다.
4
+ targetVersions:
5
+ - v1
6
+ ---
7
+
8
+ (관련 이미지 첨부)
9
+
10
+ ## 채널 설정하기
11
+
12
+ [결제대행사 채널 설정하기](../../../ready/readme#3-결제대행사-채널-설정하기)의 내용을 참고하여 PG 설정을 진행합니다.
13
+
14
+ ## 일반결제
15
+
16
+ ### 가능한 결제 수단
17
+
18
+ - **결제창 일반 결제**
19
+
20
+ `pay_method` 파라미터를 결제 수단에 따라 아래와 같이 설정해야 합니다.
21
+
22
+ - 카드 : `card`
23
+
24
+ - 계좌이체 : `trans`
25
+
26
+ - 가상계좌 : `vbank`
27
+
28
+ - 상품권 :
29
+ - 컬쳐랜드 문화상품권 : `cultureland`
30
+ - 스마트 문상 : `smartculture`
31
+ - 도서문화상품권 : `booknlife`
32
+
33
+ - 휴대폰 소액 결제 : `phone`
34
+
35
+ - 간편결제 :
36
+ - 삼성페이 : `samsung`
37
+ - 페이코 : `payco`
38
+ - L페이 : `lpay`
39
+ - 카카오페이 : `kakaopay`
40
+ - 네이버페이 : `naverpay`
41
+ - 애플페이 : `applepay`
42
+
43
+ - 베네피아 포인트 : `point`
44
+
45
+ - **결제창 빌링키 발급**
46
+
47
+ `pay_method` 파라미터를 결제 수단에 따라 아래와 같이 설정해야 합니다.
48
+
49
+ - 카드: `card`
50
+
51
+ - **API 수기(키인) 결제**
52
+
53
+ - 카드
54
+
55
+ 자세한 파라미터 구성은 [REST API Docs](https://developers.portone.io/api/rest-v1/nonAuthPayment?v=v1#post%20%2Fsubscribe%2Fpayments%2Fonetime)
56
+ 를 참고해주시기 바랍니다.
57
+
58
+ - **API 빌링키 발급**
59
+
60
+ - 카드
61
+
62
+ 자세한 파라미터 구성은 [REST API Docs](https://developers.portone.io/api/rest-v1/billingkey?v=v1#post%20%2Fsubscribe%2Fcustomers%2F%7Bcustomer_uid%7D)를 참고해주시기 바랍니다.
63
+
64
+ ### SDK 결제 요청하기
65
+
66
+ [JavaScript SDK](https://developers.portone.io/sdk/ko/v1-sdk/javascript-sdk/readme) `IMP.request_pay(param, callback)`을 호출하여 NHN
67
+ KCP 결제창을 호출할 수 있습니다. **결제결과**는 PC의 경우 `IMP.request_pay(param, callback)` 호출 후
68
+ **callback** 으로 수신되고
69
+ 모바일의 경우 **m\_redirect\_url** 로 리디렉션됩니다.
70
+
71
+ KCP 기준으로 작성한 예시 코드는 아래와 같습니다.
72
+
73
+ <div class="tabs-container">
74
+
75
+ <div class="tabs-content" data-title="SDK 결제 요청">
76
+
77
+ ```ts
78
+ IMP.request_pay(
79
+ {
80
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
81
+ pay_method: "card",
82
+ merchant_uid: "order_no_0001", //상점에서 생성한 고유 주문번호
83
+ name: "결제테스트", //주문명
84
+ amount: 1004,
85
+ company: "상호명", //해당 파라미터 설정시 통합결제창에 해당 상호명이 노출됩니다.
86
+ buyer_email: "test@portone.io",
87
+ buyer_name: "구매자이름",
88
+ buyer_tel: "010-1234-5678",
89
+ buyer_addr: "서울특별시 강남구 삼성동",
90
+ buyer_postcode: "123-456",
91
+ language: "ko", // en 입력 후 호출 시 영문으로 결제창이 표시됩니다.
92
+ m_redirect_url: "https://testtest.test", //모바일에서 결제 완료 후 리디렉션 될 URL
93
+ auth_mode: "key-in", // 키인결제(일회성 결제)이용시 설정
94
+ },
95
+ function (rsp) {
96
+ // callback 로직
97
+ //* ...중략... *//
98
+ },
99
+ );
100
+ ```
101
+
102
+ </div>
103
+
104
+ </div>
105
+
106
+ #### 주요 파라미터
107
+
108
+ - channelKey: string
109
+
110
+ **채널키**
111
+
112
+ 결제를 진행할 채널을 지정합니다.
113
+
114
+ 포트원 콘솔 내 \[결제 연동] - \[연동 정보] - \[채널 관리] 에서 확인 가능합니다.
115
+
116
+ (최신 JavaScript SDK 버전부터 사용 가능합니다.)
117
+
118
+ - pg(deprecated)?: string
119
+
120
+ **PG사 구분코드**
121
+
122
+ 포트원 콘솔 내 \[연동 관리] > \[연동 정보] > \[채널 관리] 화면에서 채널 추가 후
123
+ `kcp.{mid(사이트코드)}` 형식으로 채널을 지정할 때 사용됩니다.
124
+
125
+ <div class="hint" data-style="warning">
126
+
127
+ `pg` 파라미터는 지원 중단 예정입니다.
128
+
129
+ JS SDK를 가장 최신 버전으로 업그레이드 후 `channelKey` 파라미터로 채널 설정(PG사 구분)을 대체해주세요.
130
+
131
+ </div>
132
+
133
+ - pay\_method: string
134
+
135
+ **결제수단 구분코드**
136
+
137
+ 결제 호출 시 결제수단을 지정할 때 사용됩니다.
138
+
139
+ - `card` (신용카드)
140
+ - `trans` (실시간 계좌이체)
141
+ - `vbank` (가상계좌)
142
+ - `phone` (휴대폰 소액결제)
143
+ - `cultureland` (컬쳐랜드 문화상품권)
144
+ - `smartculture` (스마트문상)
145
+ - `booknlife` (도서문화상품권)
146
+ - `payco` (페이코)
147
+ - `lpay` (L페이)
148
+ - `kakaopay` (카카오페이)
149
+ - `naverpay` (네이버페이)
150
+ - `samsung` (삼성페이)
151
+ - `applepay` (애플페이)
152
+ - `point` (베네피아 포인트)
153
+
154
+ - merchant\_uid: string
155
+
156
+ **고객사 주문 고유 번호**
157
+
158
+ 고객사에서 채번하는 주문 고유 번호로 매번 고유하게 채번되어야 합니다.
159
+
160
+ - amount: integer
161
+
162
+ **결제금액**
163
+
164
+ <br />
165
+
166
+ #### 기타 파라미터
167
+
168
+ - display?: object
169
+
170
+ **결제창에 렌더링될 카드 할부 개월수 리스트 설정값**
171
+
172
+ - card\_quota: number\[]
173
+
174
+ **할부 개월수**
175
+
176
+ 예시
177
+
178
+ - `[]`: 일시불만 결제 가능
179
+ - `2,3,4,5,6`: 일시불을 포함한 2, 3, 4, 5, 6개월까지 할부개월 선택 가능
180
+ - `3`: 일시불을 포함한 2,3개월까지 할부개월 선택 가능
181
+
182
+ 예시코드
183
+
184
+ <div class="tabs-container">
185
+
186
+ <div class="tabs-content" data-title="할부개월수 설정">
187
+
188
+ ```json
189
+ {
190
+ "display": {
191
+ "card_quota": [6] // 할부개월 6개월까지만 활성화
192
+ }
193
+ }
194
+ ```
195
+
196
+ </div>
197
+
198
+ </div>
199
+
200
+ - card?: oneof object
201
+
202
+ **카드 결제시 세부 설정 정보**
203
+
204
+ - detail?: object\[]
205
+
206
+ **카드사 렌더링 정보**
207
+
208
+ - card\_code?: string
209
+
210
+ **카드사 코드**
211
+
212
+ [카드사 코드](https://developers.portone.io/opi/ko/support/code-info/card-code)를 참고하세요.
213
+
214
+ - enabled?: boolean
215
+
216
+ **렌더링 여부**
217
+
218
+ - direct?: object
219
+
220
+ **카드사 다이렉트 호출 정보**
221
+
222
+ - code?: string
223
+
224
+ **카드사 코드**
225
+
226
+ [카드사 코드](https://developers.portone.io/opi/ko/support/code-info/card-code)를 참고하세요.
227
+
228
+ - quota?: number
229
+
230
+ **고정 할부 개월수**
231
+
232
+ - 일시불인 경우 0으로 입력해야 합니다.
233
+
234
+ - 카드사별 포인트 사용시 아래 할부 개월수를 더해서 요청해야 합니다.
235
+ - 현대카드 : 80개월
236
+ - 국민카드, 비씨카드, 삼성카드, 하나카드, 롯데카드, 신한카드, 농협카드, 우리카드, 씨티카드 : 60개월
237
+
238
+ 예시코드
239
+
240
+ <div class="tabs-container">
241
+
242
+ <div class="tabs-content" data-title="카드사 다이렉트 호출">
243
+
244
+ ```json
245
+ {
246
+ "card": {
247
+ "direct": {
248
+ "code": "367",
249
+ "quota": 3
250
+ //카드사 포인트 사용 경우
251
+ //quota: 80 = 80(현대카드 포인트 할부개월) + 0(일시불)
252
+ //quota: 93 = 80(현대카드 포인트 할부개월) + 13개월 할부
253
+ //quota: 60 = 60(기타카드 포인트 할부개월) + 0(일시불)
254
+ //quota: 63 = 60(기타카드 포인트 할부개월) + 3개월 할부
255
+ }
256
+ },
257
+ "company": "고객사" //해당 파라미터를 설정하지 않으면 카드사 모듈 창에 iamport 로 표기
258
+ }
259
+ ```
260
+
261
+ </div>
262
+
263
+ <div class="tabs-content" data-title="특정 카드사 노출">
264
+
265
+ ```json
266
+ {
267
+ "card": {
268
+ "detail": [
269
+ { "card_code": "*", "enabled": false }, // 모든 카드사 비활성화
270
+ { "card_code": "366", "enabled": true } // 특정 카드만 활성화
271
+ ]
272
+ }
273
+ }
274
+ ```
275
+
276
+ </div>
277
+
278
+ </div>
279
+
280
+ - appCard?: boolean
281
+
282
+ **앱카드 렌더링 여부**
283
+
284
+ `true`로 호출시 각 카드사 앱카드 결제만 활성화됩니다.
285
+
286
+ 예시코드
287
+
288
+ <div class="tabs-container">
289
+
290
+ <div class="tabs-content" data-title="카드사 앱카드만 노출">
291
+
292
+ ```json
293
+ {
294
+ "appCard": true //true 설정시 각 카드사 앱카드 결제만 활성화
295
+ }
296
+ ```
297
+
298
+ </div>
299
+
300
+ </div>
301
+
302
+ #### 유의사항
303
+
304
+ <details>
305
+
306
+ <summary>할부 결제는 5만원 이상 결제 요청시 이용 가능합니다.</summary>
307
+
308
+ 일반적으로 결제 금액이 5만원 이상일 경우 할부 결제가 가능하며, 특정 카드사에 따라 1만원 이상일 경우에도 사용이 가능합니다.
309
+
310
+ </details>
311
+
312
+ <details>
313
+
314
+ <summary>상품권 결제시 `bypass.shop_user_id`파라미터를 필수 입력해야합니다.</summary>
315
+
316
+ 결제수단 중 상품권 결제를 요청하는 경우 고객사에서 관리하는 회원ID를 아래와 같은 방법으로 파라미터를 필수로 입력해야 합니다.
317
+ 해당 정보는 상품권 기관 RM 조치를 위해 입력받고 있습니다.
318
+
319
+ <div class="tabs-container">
320
+
321
+ <div class="tabs-content" data-title="상품권 결제 호출 예제">
322
+
323
+ ```ts
324
+ IMP.request_pay({
325
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
326
+ pay_method: "cultureland", //컬처랜드 문화상품권
327
+ merchant_uid: "A00021-TEST",
328
+ name: "당근 10kg",
329
+ amount: 1004,
330
+ buyer_email: "test@porton.io",
331
+ buyer_name: "포트원 기술지원팀",
332
+ buyer_tel: "010-1234-5678",
333
+ buyer_addr: "서울특별시 강남구 삼성동",
334
+ buyer_postcode: "123-456",
335
+ bypass: {
336
+ shop_user_id: "abaddd", // 고객사 회원 id 입력
337
+ },
338
+ });
339
+ ```
340
+
341
+ </div>
342
+
343
+ </div>
344
+
345
+ </details>
346
+
347
+ <details>
348
+
349
+ <summary>휴대폰 소액결제시 `buyer_name`과 `bypass.shop_user_id` 파라미터를 필수 입력해야합니다.</summary>
350
+
351
+ 결제수단 중 휴대폰 소액결제를 요청하는 경우 구매자 이름(`buyer_name`)과 고객사에서 관리하는 회원ID(`bypass.shop_user_id`)를 필수로 입력해야 합니다.
352
+
353
+ <div class="tabs-container">
354
+
355
+ <div class="tabs-content" data-title="휴대폰 소액결제 호출 예제">
356
+
357
+ ```ts
358
+ IMP.request_pay({
359
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
360
+ pay_method: "phone", //휴대폰 소액결제
361
+ merchant_uid: "A00021-TEST",
362
+ name: "당근 10kg",
363
+ amount: 1004,
364
+ buyer_email: "test@portone.io",
365
+ buyer_name: "포트원 기술지원팀", // 휴대폰 결제시 필수
366
+ buyer_tel: "010-1234-5678",
367
+ buyer_addr: "서울특별시 강남구 삼성동",
368
+ buyer_postcode: "123-456",
369
+ bypass: {
370
+ shop_user_id: "abaddd", // 고객사 회원 id 입력 (휴대폰 결제시 필수)
371
+ },
372
+ });
373
+ ```
374
+
375
+ </div>
376
+
377
+ </div>
378
+
379
+ </details>
380
+
381
+ <details>
382
+
383
+ <summary>휴대폰 소액결제 시 전화번호를 고정할 수 있습니다.</summary>
384
+
385
+ `prefill.phoneNumber` 파라미터에 고정할 휴대폰 번호를 입력한 후 결제를 요청합니다.
386
+
387
+ </details>
388
+
389
+ <details>
390
+
391
+ <summary>에스크로 결제관련 안내</summary>
392
+
393
+ 에스크로 결제를 위해서는 **`escrow`** 파라미터를 추가하고 **true** 값으로 설정되어야 합니다.
394
+ 에스크로 결제 요청시 **장바구니 상품을 묶어서 결제하는 경우**
395
+ 해당 품목에 대한 정보를 전달하기 위해 해당 상품 관련 정보를 추가 파라미터(**`kcpProducts`**)로 전달해야 합니다.
396
+ **`kcpProducts`** 는 다음 4개의 필수 속성으로 구성된 객체배열입니다.
397
+
398
+ - orderNumber : 상품주문번호
399
+ - name : 상품명
400
+ - quantity : 수량
401
+ - amount : 상품 가격
402
+
403
+ **`amount`** 값은 결제 금액(`param.amount`) 값과 관계가 없으며 비교 검증하지 않습니다.
404
+
405
+ <div class="tabs-container">
406
+
407
+ <div class="tabs-content" data-title="탭">
408
+
409
+ ```ts title="JavaScript SDK"
410
+ IMP.request_pay({
411
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
412
+ escrow: true, // 에스크로 결제인 경우 필요
413
+ kcpProducts: [
414
+ {
415
+ orderNumber: "xxxx",
416
+ name: "상품A",
417
+ quantity: 3,
418
+ amount: 1000,
419
+ },
420
+ {
421
+ orderNumber: "yyyy",
422
+ name: "상품B",
423
+ quantity: 2,
424
+ amount: 3000,
425
+ },
426
+ ],
427
+ });
428
+ ```
429
+
430
+ </div>
431
+
432
+ </div>
433
+
434
+ </details>
435
+
436
+ <details>
437
+
438
+ <summary>결제창 내 할인쿠폰 영역 활성/비활성화 안내</summary>
439
+
440
+ `bypass.coupon_apply_yn`파라미터를 이용하여 결제창 내 할인쿠폰 영역을 활성/비활성화 할 수 있습니다.
441
+ 해당 기능은 KCP와 협의 후 사용 가능합니다.
442
+
443
+ - `Y`: 활성
444
+ - `N`: 비활성
445
+
446
+ </details>
447
+
448
+ ### SDK 빌링키 발급 요청하기
449
+
450
+ [JavaScript SDK](https://developers.portone.io/sdk/ko/v1-sdk/javascript-sdk/readme) `IMP.request_pay(param, callback)`을 호출하여 NHN
451
+ KCP 결제창을 호출할 수 있습니다. **결제결과**는 PC의 경우 `IMP.request_pay(param, callback)` 호출 후
452
+ **callback** 으로 수신되고
453
+ 모바일의 경우 **m\_redirect\_url** 로 리디렉션됩니다.
454
+
455
+ 빌링키 발급 요청 시에는 `customer_uid` 파라미터를 입력한 후 호출해야 합니다.
456
+
457
+ KCP 기준으로 작성한 예시 코드는 아래와 같습니다.
458
+
459
+ <div class="tabs-container">
460
+
461
+ <div class="tabs-content" data-title="SDK 빌링키 발급 요청">
462
+
463
+ ```ts title="Javascript SDK" showLineNumbers
464
+ IMP.request_pay(
465
+ {
466
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
467
+ pay_method: "card", //'card'만 지원됩니다.
468
+ merchant_uid: "order_monthly_0001", //상점에서 생성한 고유 주문번호
469
+ name: "정기결제",
470
+ amount: 0, //결제창에 표시될 금액. 발급 요청시에는 결제가 승인되지 않습니다.
471
+ customer_uid: "your-customer-unique-id", //포트원 빌링키로 필수 입력해야 합니다.
472
+ buyer_email: "test@portone.io",
473
+ buyer_name: "포트원",
474
+ buyer_tel: "02-1234-1234",
475
+ m_redirect_url: "https://testtest.test", //모바일에서 결제 완료 후 리디렉션 될 URL
476
+ },
477
+ function (rsp) {
478
+ if (rsp.success) {
479
+ alert("빌링키 발급 성공");
480
+ } else {
481
+ alert("빌링키 발급 실패");
482
+ }
483
+ },
484
+ );
485
+ ```
486
+
487
+ </div>
488
+
489
+ </div>
490
+
491
+ #### 주요 파라미터 설명
492
+
493
+ - channelKey: string
494
+
495
+ **채널키**
496
+
497
+ 결제를 진행할 채널을 지정합니다.
498
+
499
+ 포트원 콘솔 내 \[결제 연동] - \[연동 정보] - \[채널 관리] 에서 확인 가능합니다.
500
+
501
+ (최신 JavaScript SDK 버전부터 사용 가능합니다.)
502
+
503
+ - pg(deprecated)?: string
504
+
505
+ **PG사 구분코드**
506
+
507
+ 포트원 콘솔 내 \[연동 관리] > \[연동 정보] > \[채널 관리] 화면에서 채널 추가 후
508
+ `kcp_billing.{mid(사이트코드)}` 형식으로 채널을 지정할 때 사용됩니다.
509
+
510
+ <div class="hint" data-style="warning">
511
+
512
+ `pg` 파라미터는 지원 중단 예정입니다.
513
+
514
+ JS SDK를 가장 최신 버전으로 업그레이드 후 `channelKey` 파라미터로 채널 설정(PG사 구분)을 대체해주세요.
515
+
516
+ </div>
517
+
518
+ - customer\_uid: string
519
+
520
+ **포트원 빌링키**
521
+
522
+ 빌링 결제시 사용되는 값으로 고객사에서 입력한 후 요청해야 합니다. 해당 값은 고객이 입력한 카드정보와 1:1로 매칭됩니다.
523
+
524
+ - amount: integer
525
+
526
+ **결제금액**
527
+
528
+ 결제창에 표시되는 금액입니다.
529
+
530
+ #### 유의사항
531
+
532
+ <details>
533
+
534
+ <summary>빌링키 발급시 사용한 `customer_uid`는 고객사에서 저장해야 합니다.</summary>
535
+
536
+ 발급된 빌링키를 이용하여 단건 결제 또는 예약/반복 결제 요청시 `customer_uid`를 입력한 후 요청해야합니다.
537
+ 고객사에서는 빌링키 발급 후 사용한 `customer_uid`를 고객 정보에 맵핑하여 관리하시길 권장드립니다.
538
+
539
+ </details>
540
+
541
+ <details>
542
+
543
+ <summary>빌링키 발급시 생년월일 입력 박스를 항상 표시되도록 설정할 수 있습니다.</summary>
544
+
545
+ NHN KCP 결제창을 이용한 빌링키 발급 시 PC환경에서 공인인증서 인증 절차를 생략할 수 있습니다.
546
+ 인증서 인증 절차를 생략하는 경우에도 기본적으로 결제창 내에 주민등록번호 입력 박스가 표시되며,
547
+ 카드 번호 8자리 입력시 주민등록번호 입력 박스가 생년월일 입력 박스로 변환됩니다.
548
+ 만약 초기 화면에서 생년월일 입력 박스가 항상 표시되길 원하시면 `bypass.batch_birth_day_yn` 파라미터를 포함하여 빌링키 발급을 요청해야 합니다.
549
+
550
+ - `Y`: 생년월일 입력박스 항상 표시
551
+
552
+ </details>
553
+
554
+ ### API 수기(키인)결제 요청하기
555
+
556
+ 수기(키인) 결제 요청시 [`POST /subscribe/payments/onetime`](https://developers.portone.io/api/rest-v1/nonAuthPayment?v=v1#post%20%2Fsubscribe%2Fpayments%2Fonetime) API를 호출해야 합니다.
557
+
558
+ KCP 기준으로 작성한 예시 코드는 아래와 같습니다.
559
+
560
+ <div class="tabs-container">
561
+
562
+ <div class="tabs-content" data-title="API 수기(키인) 카드 결제 요청">
563
+
564
+ ```sh
565
+ curl -H "Content-Type: application/json" \
566
+ -X POST -d '{"merchant_uid":"order_id_8237352", "card_number":"1234-1234-1234-1234", "expiry":"2019-01", "birth":"123456", "amount":3000}' \
567
+ https://api.iamport.kr/subscribe/payments/onetime
568
+ ```
569
+
570
+ </div>
571
+
572
+ </div>
573
+
574
+ ### API 빌링키 발급 요청하기
575
+
576
+ 빌링키 발급 요청시 [`POST /subscribe/payments/onetime`](https://developers.portone.io/api/rest-v1/nonAuthPayment?v=v1#post%20%2Fsubscribe%2Fpayments%2Fonetime) 또는
577
+ [`POST /subscribe/customers/{customer_uid}`](https://developers.portone.io/api/rest-v1/billingkey?v=v1#post%20%2Fsubscribe%2Fcustomers%2F%7Bcustomer_uid%7D) API를 호출해야 합니다.
578
+
579
+ `POST /subscribe/payments/onetime`를 호출하시는 경우 빌링키 발급과 동시에 결제가 요청됩니다.
580
+ 빌링키 발급 및 결제를 원하시는 경우 `customer_uid` 파라미터를 필수로 입력해야 합니다.
581
+
582
+ `POST /subscribe/customers/{customer_uid}`를 호출하시는 경우 빌링키만 발급됩니다.
583
+
584
+ KCP 기준으로 작성한 예시 코드는 아래와 같습니다.
585
+
586
+ <div class="tabs-container">
587
+
588
+ <div class="tabs-content" data-title="빌링키 발급과 동시에 결제 요청하기">
589
+
590
+ ```sh
591
+ curl -H "Content-Type: application/json" \
592
+ -X POST -d '{"customer_uid":"your-customer-unique-id", "merchant_uid":"order_id_8237352", "card_number":"1234-1234-1234-1234", "expiry":"2019-01", "birth":"123456", "amount":3000}' \
593
+ https://api.iamport.kr/subscribe/payments/onetime
594
+ ```
595
+
596
+ </div>
597
+
598
+ <div class="tabs-content" data-title="빌링키 발급 요청하기">
599
+
600
+ ```sh
601
+ curl -H "Content-Type: application/json" \
602
+ -X POST -d '{"card_number":"1234-1234-1234-1234", "expiry":"2025-12", "birth":"820213", "pwd_2digit":"00"}' \
603
+ https://api.iamport.kr/subscribe/customers/your-customer-unique-id
604
+ ```
605
+
606
+ </div>
607
+
608
+ </div>
609
+
610
+ #### 유의사항
611
+
612
+ <details>
613
+
614
+ <summary>빌링키 발급시 사용한 `customer_uid`는 고객사에서 저장해야 합니다.</summary>
615
+
616
+ 발급된 빌링키를 이용하여 단건 결제 또는 예약/반복 결제 요청시 `customer_uid`를 입력한 후 요청해야합니다.
617
+ 고객사에서는 빌링키 발급 후 사용한 `customer_uid`를 고객 정보에 맵핑하여 관리하시길 권장드립니다.
618
+
619
+ </details>
620
+
621
+ ### API 빌링키 단건 결제 요청하기
622
+
623
+ 발급된 빌링키로 단건 결제를 하기 위해서는 [`POST /subscribe/payments/again`](https://developers.portone.io/api/rest-v1/nonAuthPayment?v=v1#post%20%2Fsubscribe%2Fpayments%2Fagain)
624
+ 를 이용하여 결제를 요청해야 합니다.
625
+
626
+ KCP 기준으로 작성한 예시 코드는 아래와 같습니다.
627
+
628
+ <div class="tabs-container">
629
+
630
+ <div class="tabs-content" data-title="API 단건 결제">
631
+
632
+ ```sh
633
+ curl -H "Content-Type: application/json" \
634
+ -X POST -d '{"customer_uid":"your-customer-unique-id", "merchant_uid":"order_id_8237352", "amount":3000}' \
635
+ https://api.iamport.kr/subscribe/payments/again
636
+ ```
637
+
638
+ </div>
639
+
640
+ </div>
641
+
642
+ ### API 빌링키 예약/반복 결제 요청하기
643
+
644
+ 발급된 빌링키로 예약 결제를 하기 위해서는 [`POST /subscribe/payments/schedule`](https://developers.portone.io/api/rest-v1/nonAuthPayment.subscribe?v=v1#post%20%2Fsubscribe%2Fpayments%2Fschedule)
645
+ 를 이용하여 결제를 예약합니다.
646
+
647
+ KCP 기준으로 작성한 예시 코드는 아래와 같습니다.
648
+
649
+ <div class="tabs-container">
650
+
651
+ <div class="tabs-content" data-title="API 예약/반복 결제">
652
+
653
+ ```sh title="server-side"
654
+ curl -H "Content-Type: application/json" \
655
+ -X POST -d '{"customer_uid":"your-customer-unique-id", "merchant_uid":"order_id_8237352", "amount":3000}' \
656
+ https://api.iamport.kr/subscribe/payments/again
657
+ ```
658
+
659
+ </div>
660
+
661
+ </div>
662
+
663
+ ## 퀵페이 (자체 간편 결제)
664
+
665
+ <div class="hint" data-style="info">
666
+
667
+ KCP 퀵페이를 연동하시는 경우 포트원 JavaScript SDK 1.2.0 이상의 버전을 사용해야 합니다.
668
+
669
+ </div>
670
+
671
+ ### 가능한 결제 수단
672
+
673
+ - 카드 : `card`
674
+ - 즉시출금 : `trans`
675
+
676
+ ### 퀵페이 호출하기
677
+
678
+ 퀵페이의 경우 결제 기능을 포함하여 결제수단 등록 및 삭제, PIN 번호 변경 및 초기화, 탈퇴 기능을 지원합니다.
679
+
680
+ KCP 퀵페이 기준으로 작성한 예시 코드는 아래와 같습니다.
681
+
682
+ <div class="tabs-container">
683
+
684
+ <div class="tabs-content" data-title="결제수단 등록">
685
+
686
+ ```ts
687
+ IMP.request_pay(
688
+ {
689
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
690
+ pay_method: "card", //즉시 출금 이용 시 'trans' 입력
691
+ merchant_uid: "order_no_0001", //상점에서 생성한 고유 주문번호
692
+ name: "결제수단 등록테스트", //주문명
693
+ amount: 0, //등록시 0으로 전달
694
+ buyer_email: "test@portone.io",
695
+ buyer_name: "구매자이름",
696
+ buyer_tel: "010-1234-5678",
697
+ buyer_addr: "서울특별시 강남구 삼성동",
698
+ buyer_postcode: "123-456",
699
+ customer_uid: "use_your_unique_id_with_pay_method_0", //결제 수단에 대한 고유 식별값
700
+ bypass: {
701
+ kcpQuick: {
702
+ //KCP퀵페이 설정 정보
703
+ actionType: "Register", //결제수단 등록
704
+ encryptedCI: "encrypted_ci", // 본인인증 후 전달받은 CI를 암호화한 값
705
+ memeberID: "use_your_unique_id", //사용자에 대한 고유 식별값
706
+ },
707
+ },
708
+ m_redirect_url: "https://testtest.test", //결제수단 등록 후 리디렉션될 URL
709
+ },
710
+ function (rsp) {
711
+ // callback 로직
712
+ //* ...중략... *//
713
+ },
714
+ );
715
+ ```
716
+
717
+ </div>
718
+
719
+ <div class="tabs-content" data-title="결제수단 삭제">
720
+
721
+ ```ts
722
+ IMP.request_pay(
723
+ {
724
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
725
+ pay_method: "card", //즉시 출금 이용 시 'trans' 입력
726
+ merchant_uid: "order_no_0001", //상점에서 생성한 고유 주문번호
727
+ name: "결제수단 삭제테스트", //주문명
728
+ amount: 0, //삭제시 0으로 전달
729
+ buyer_email: "test@portone.io",
730
+ buyer_name: "구매자이름",
731
+ buyer_tel: "010-1234-5678",
732
+ buyer_addr: "서울특별시 강남구 삼성동",
733
+ buyer_postcode: "123-456",
734
+ customer_uid: "use_your_unique_id_with_pay_method_0", //결제 수단에 대한 고유 식별값
735
+ bypass: {
736
+ kcpQuick: {
737
+ //KCP퀵페이 설정 정보
738
+ actionType: "Deregister", //결제수단 삭제
739
+ encryptedCI: "encrypted_ci", // 본인인증 후 전달받은 CI를 암호화한 값
740
+ memeberID: "use_your_unique_id", //사용자에 대한 고유 식별값
741
+ },
742
+ },
743
+ m_redirect_url: "https://testtest.test", //결제수단 등록 후 리디렉션될 URL
744
+ },
745
+ function (rsp) {
746
+ // callback 로직
747
+ //* ...중략... *//
748
+ },
749
+ );
750
+ ```
751
+
752
+ </div>
753
+
754
+ </div>
755
+
756
+ <div class="tabs-container">
757
+
758
+ <div class="tabs-content" data-title="결제 요청">
759
+
760
+ ```ts
761
+ IMP.request_pay(
762
+ {
763
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
764
+ pay_method: "card", //즉시 출금 이용 시 'trans' 입력
765
+ merchant_uid: "order_no_0001", //상점에서 생성한 고유 주문번호
766
+ name: "결제 테스트", //주문명
767
+ amount: 1000,
768
+ buyer_email: "test@portone.io",
769
+ buyer_name: "구매자이름",
770
+ buyer_tel: "010-1234-5678",
771
+ buyer_addr: "서울특별시 강남구 삼성동",
772
+ buyer_postcode: "123-456",
773
+ customer_uid: "use_your_unique_id_with_pay_method_0", //결제 수단에 대한 고유 식별값
774
+ bypass: {
775
+ kcpQuick: {
776
+ //KCP퀵페이 설정 정보
777
+ actionType: "Pay", //결제 요청
778
+ encryptedCI: "encrypted_ci", // 본인인증 후 전달받은 CI를 암호화한 값
779
+ memeberID: "use_your_unique_id", //사용자에 대한 고유 식별값
780
+ },
781
+ },
782
+ m_redirect_url: "https://testtest.test", //결제수단 등록 후 리디렉션될 URL
783
+ },
784
+ function (rsp) {
785
+ // callback 로직
786
+ //* ...중략... *//
787
+ },
788
+ );
789
+ ```
790
+
791
+ </div>
792
+
793
+ </div>
794
+
795
+ <div class="tabs-container">
796
+
797
+ <div class="tabs-content" data-title="PIN번호 변경">
798
+
799
+ ```ts
800
+ IMP.request_pay(
801
+ {
802
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
803
+ pay_method: "card", //즉시 출금 이용 시 'trans' 입력
804
+ merchant_uid: "order_no_0001", //상점에서 생성한 고유 주문번호
805
+ name: "PIN번호 변경 테스트", //주문명
806
+ amount: 0, //pin번호 변경시 0으로 전달
807
+ buyer_email: "test@portone.io",
808
+ buyer_name: "구매자이름",
809
+ buyer_tel: "010-1234-5678",
810
+ buyer_addr: "서울특별시 강남구 삼성동",
811
+ buyer_postcode: "123-456",
812
+ customer_uid: "use_your_unique_id", //memberId와 동일하게 입력
813
+ bypass: {
814
+ kcpQuick: {
815
+ //KCP퀵페이 설정 정보
816
+ actionType: "PinChange", //PIN번호 변경
817
+ encryptedCI: "encrypted_ci", // 본인인증 후 전달받은 CI를 암호화한 값
818
+ memeberID: "use_your_unique_id", //사용자에 대한 고유 식별값
819
+ },
820
+ },
821
+ m_redirect_url: "https://testtest.test", //결제수단 등록 후 리디렉션될 URL
822
+ },
823
+ function (rsp) {
824
+ // callback 로직
825
+ //* ...중략... *//
826
+ },
827
+ );
828
+ ```
829
+
830
+ </div>
831
+
832
+ <div class="tabs-content" data-title="PIN번호 초기화">
833
+
834
+ ```ts
835
+ IMP.request_pay(
836
+ {
837
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
838
+ pay_method: "card", //즉시 출금 이용 시 'trans' 입력
839
+ merchant_uid: "order_no_0001", //상점에서 생성한 고유 주문번호
840
+ name: "PIN번호 초기화 테스트", //주문명
841
+ amount: 0, //pin번호 초기화시 0으로 전달
842
+ buyer_email: "test@portone.io",
843
+ buyer_name: "구매자이름",
844
+ buyer_tel: "010-1234-5678",
845
+ buyer_addr: "서울특별시 강남구 삼성동",
846
+ buyer_postcode: "123-456",
847
+ customer_uid: "use_your_unique_id", //memberId와 동일하게 입력
848
+ bypass: {
849
+ kcpQuick: {
850
+ //KCP퀵페이 설정 정보
851
+ actionType: "PinReset", //PIN번호 초기화
852
+ encryptedCI: "encrypted_ci", // 본인인증 후 전달받은 CI를 암호화한 값
853
+ memeberID: "use_your_unique_id", //사용자에 대한 고유 식별값
854
+ },
855
+ },
856
+ m_redirect_url: "https://testtest.test", //결제수단 등록 후 리디렉션될 URL
857
+ },
858
+ function (rsp) {
859
+ // callback 로직
860
+ //* ...중략... *//
861
+ },
862
+ );
863
+ ```
864
+
865
+ </div>
866
+
867
+ </div>
868
+
869
+ <div class="tabs-container">
870
+
871
+ <div class="tabs-content" data-title="등록된 전화번호 변경">
872
+
873
+ ```ts
874
+ IMP.request_pay(
875
+ {
876
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
877
+ pay_method: "card", //즉시 출금 이용 시 'trans' 입력
878
+ merchant_uid: "order_no_0001", //상점에서 생성한 고유 주문번호
879
+ name: "전화번호 변경 테스트", //주문명
880
+ amount: 0, //사용자만 등록시 0으로 전달
881
+ buyer_email: "test@portone.io",
882
+ buyer_name: "구매자이름",
883
+ buyer_tel: "010-1234-5678",
884
+ buyer_addr: "서울특별시 강남구 삼성동",
885
+ buyer_postcode: "123-456",
886
+ customer_uid: "use_your_unique_id", //memberId와 동일하게 입력
887
+ bypass: {
888
+ kcpQuick: {
889
+ //KCP퀵페이 설정 정보
890
+ actionType: "PhoneChange", //등록된 휴대폰 번호 변경
891
+ encryptedCI: "encrypted_ci", // 본인인증 후 전달받은 CI를 암호화한 값
892
+ memeberID: "use_your_unique_id", //사용자에 대한 고유 식별값
893
+ },
894
+ },
895
+ m_redirect_url: "https://testtest.test", //결제수단 등록 후 리디렉션될 URL
896
+ },
897
+ function (rsp) {
898
+ // callback 로직
899
+ //* ...중략... *//
900
+ },
901
+ );
902
+ ```
903
+
904
+ </div>
905
+
906
+ </div>
907
+
908
+ <div class="tabs-container">
909
+
910
+ <div class="tabs-content" data-title="해지">
911
+
912
+ ```ts
913
+ IMP.request_pay(
914
+ {
915
+ channelKey: "{콘솔 내 연동 정보의 채널키}",
916
+ pay_method: "card", //즉시 출금 이용 시 'trans' 입력
917
+ merchant_uid: "order_no_0001", //상점에서 생성한 고유 주문번호
918
+ name: "해지 테스트", //주문명
919
+ amount: 0, //해지시 0으로 전달
920
+ buyer_email: "test@portone.io",
921
+ buyer_name: "구매자이름",
922
+ buyer_tel: "010-1234-5678",
923
+ buyer_addr: "서울특별시 강남구 삼성동",
924
+ buyer_postcode: "123-456",
925
+ customer_uid: "use_your_unique_id", //memberId와 동일하게 입력
926
+ bypass: {
927
+ kcpQuick: {
928
+ //KCP퀵페이 설정 정보
929
+ actionType: "Terminate", //유저 및 결제수단 삭제
930
+ encryptedCI: "encrypted_ci", // 본인인증 후 전달받은 CI를 암호화한 값
931
+ memeberID: "use_your_unique_id", //사용자에 대한 고유 식별값
932
+ },
933
+ },
934
+ m_redirect_url: "https://testtest.test", //결제수단 등록 후 리디렉션될 URL
935
+ },
936
+ function (rsp) {
937
+ // callback 로직
938
+ //* ...중략... *//
939
+ },
940
+ );
941
+ ```
942
+
943
+ </div>
944
+
945
+ </div>
946
+
947
+ <div class="hint" data-style="info">
948
+
949
+ 퀵페이의 경우 m\_redirect\_url시 다음과 같이 4개의 파라미터가 Query String으로 전달됩니다.
950
+
951
+ - `imp_uid`
952
+ - `merchant_uid`
953
+ - `imp_status` : true 또는 false
954
+ - `kcp_action` : Register 또는 Dregister 또는 Pay
955
+
956
+ `kcp_action`이 Register 이고 `imp_status`가 true인 경우 결제수단 등록에 성공하였다는 것을 의미합니다.
957
+
958
+ </div>
959
+
960
+ #### 주요 파라미터
961
+
962
+ - channelKey: string
963
+
964
+ **채널키**
965
+
966
+ 결제를 진행할 채널을 지정합니다.
967
+
968
+ 포트원 콘솔 내 \[결제 연동] - \[연동 정보] - \[채널 관리] 에서 확인 가능합니다.
969
+
970
+ (최신 JavaScript SDK 버전부터 사용 가능합니다.)
971
+
972
+ - pg(deprecated)?: string
973
+
974
+ **PG사 구분코드**
975
+
976
+ 포트원 콘솔 내 \[연동 관리] > \[연동 정보] > \[채널 관리] 화면에서 채널 추가 후
977
+ `kcp_quick.{mid(사이트코드)}` 형식으로 채널을 지정할 때 사용됩니다.
978
+
979
+ <div class="hint" data-style="warning">
980
+
981
+ `pg` 파라미터는 지원 중단 예정입니다.
982
+
983
+ JS SDK를 가장 최신 버전으로 업그레이드 후 `channelKey` 파라미터로 채널 설정(PG사 구분)을 대체해주세요.
984
+
985
+ </div>
986
+
987
+ - pay\_method: string
988
+
989
+ **결제수단 구분코드**
990
+
991
+ 결제 호출 시 결제수단을 지정할 때 사용됩니다.
992
+
993
+ - card (카드)
994
+ - trans (즉시출금)
995
+
996
+ - merchant\_uid: string
997
+
998
+ **고객사 주문 고유 번호**
999
+
1000
+ 고객사에서 채번하는 주문 고유 번호로 매번 고유하게 채번되어야 합니다.
1001
+
1002
+ - amount: integer
1003
+
1004
+ **결제금액**
1005
+
1006
+ - customer\_uid: string
1007
+
1008
+ **결제 수단에 대한 고유 식별값**
1009
+
1010
+ 퀵페이에 등록된 결제수단과 1:1 맵핑됩니다.
1011
+
1012
+ - bypass?: oneof object
1013
+
1014
+ **PG사 결제창 호출 시 PG사로 그대로 bypass할 파라미터들의 모음**
1015
+
1016
+ - kcpQuick?: object
1017
+
1018
+ **KCP 퀵페이 설정정보**
1019
+
1020
+ 퀵페이 결제시 필수로 입력해야 합니다.
1021
+
1022
+ - actionType: string
1023
+
1024
+ **호출 유형**
1025
+
1026
+ - Register : 결제 수단 등록
1027
+ - Deregister : 결제 수단 삭제
1028
+ - Pay : 결제
1029
+ - PinChange : PIN번호 변경
1030
+ - PinReset : PIN번호 초기화
1031
+ - PhoneChange : 전화번호 변경
1032
+ - Terminate : 결제 수단 해지
1033
+
1034
+ - encryptedCI: string
1035
+
1036
+ **암호화된 본인인증 CI**
1037
+
1038
+ - memberID: string
1039
+
1040
+ **사용자 식별값**
1041
+
1042
+ 최대 16byte까지 입력가능하며, 고객이 여러개의 결제수단을 등록하는 경우 동일한 `memberID`를 입력해야 합니다.
1043
+
1044
+ - deviceID?: string
1045
+
1046
+ **디바이스 식별값**
1047
+
1048
+ 미 입력시 고객이 사용한 브라우저 정보가 입력됩니다.
1049
+
1050
+ - noAuth?: boolean
1051
+
1052
+ **무인증 등록/결제 여부**
1053
+
1054
+ `true`로 입력한 경우 무인증 키가 발급되며, 이후 결제시 PIN번호 인증 과정이 생략됩니다.
1055
+
1056
+ - true : 무인증 결제
1057
+ - false : 인증 결제
1058
+
1059
+ - installment?: number
1060
+
1061
+ **할부 개월수**
1062
+
1063
+ 입력하지 않는 경우 일시불로 진행됩니다.
1064
+
1065
+ - useCardPoint?: boolean
1066
+
1067
+ **카드사 포인트 결제 여부**
1068
+
1069
+ 입력하지 않는 경우 미사용으로 진행됩니다.
1070
+
1071
+ - true : 카드사 포인트 사용
1072
+ - false : 카드사 포인트 미사용
1073
+
1074
+ #### 유의사항
1075
+
1076
+ <details>
1077
+
1078
+ <summary>`customer_uid` 파라미터 안내</summary>
1079
+
1080
+ 결제수단 등록/삭제, 결제 요청시에는 결제수단을 식별하는 `customer_uid`를 입력한 후 사용해야 합니다.
1081
+ 이 외의 PIN번호 변경/확인/초기화, 사용자 등록, 해지 요청시에는 `customer_uid`에 결제수단 등록시 입력한 `memberID`를 입력해야 합니다.
1082
+ 위의 경우에 `customer_uid` 파라미터에 발급시 입력했던 `customer_uid`를 입력하는 경우 에러가 리턴됩니다.
1083
+
1084
+ </details>
1085
+
1086
+ <details>
1087
+
1088
+ <summary>`encryptedCI` 파라미터 안내</summary>
1089
+
1090
+ 본인인증 후 전달받은 CI 값을 아래 방법으로 암호화하여 입력해야합니다.
1091
+
1092
+ 포트원 계정의 [REST API Secret](https://developers.portone.io/api/rest-v1/auth?v=v1) 을 SHA-256 해시 알고리즘으로 처리하여 암호화 키를 생성한 후, 해당 키를 사용해 CI 데이터를 AES-256-ECB 방식으로 암호화해야 합니다.
1093
+ 암호화된 결과는 Base64로 인코딩하여 encryptedCI 파라미터 값으로 전달합니다.
1094
+
1095
+ ```pseudo
1096
+ FUNCTION encryptCi(ci, apiSecret):
1097
+ # Step 1: SHA-256으로 API Secret을 해시하여 암호화 키 생성
1098
+ key = SHA256(apiSecret)
1099
+
1100
+ # Step 2: AES-256-ECB 알고리즘으로 CI 데이터를 암호화
1101
+ encryptedData = AES256Encrypt(data = ci, key = key, mode = ECB)
1102
+
1103
+ # Step 3: 암호화된 데이터를 Base64로 인코딩
1104
+ base64EncodedData = Base64Encode(encryptedData)
1105
+
1106
+ # Step 4: Base64 인코딩된 결과 반환
1107
+ RETURN base64EncodedData
1108
+ END FUNCTION
1109
+ ```
1110
+
1111
+ </details>
1112
+
1113
+ <details>
1114
+
1115
+ <summary>결제수단을 여러개 등록할 수 있습니다.</summary>
1116
+
1117
+ 한 고객에게 여러개의 결제수단을 등록할 수 있습니다.
1118
+ 고객 식별 정보(`memberID`)와 결제 수단 식별 정보(`customer_uid`)의 경우 1:N으로 맵핑되며,
1119
+ 이미 등록한 고객의 `memeberID`를 동일하게 입력한 후 사용하지 않은 `customer_uid`를 지정하는 경우 여러개의 결제 수단을 등록할 수 있습니다.
1120
+
1121
+ </details>
1122
+
1123
+ <details>
1124
+
1125
+ <summary>결제수단 삭제 요청시 등록할 때 입력한 정보를 동일하게 입력해야 합니다.</summary>
1126
+
1127
+ 결제수단 삭제(actionType:Deregister) 요청시 결제수단 등록할 때 사용된 `customer_uid` + `encryptedCI` + `memberID` + `deviceID` + `noAuth` 조합을
1128
+ 동일하게 전송해야 합니다.
1129
+
1130
+ </details>
1131
+
1132
+ <details>
1133
+
1134
+ <summary>PIN번호 초기화 시 기존에 등록된 모든 결제수단이 삭제됩니다.</summary>
1135
+
1136
+ 핀번호 초기화 시 기존에 등록된 모든 결제수단이 삭제됩니다. 이에 따라 고객사에서는 `customer_uid`로 저장된 데이터를 일괄 삭제해야 합니다.
1137
+ 핀번호 초기화 이후 [빌링키 삭제 API](https://developers.portone.io/api/rest-v1/billingkey?v=v1#delete%20%2Fsubscribe%2Fcustomers%2F%7Bcustomer_uid%7D)를 이용하여 일괄 삭제할 수 있습니다.
1138
+ 만약 핀번호 초기화 전에 삭제를 시도하는 경우 에러 메시지와 함께 삭제가 불가능합니다.
1139
+
1140
+ </details>
1141
+
1142
+ <details>
1143
+
1144
+ <summary>등록된 전화번호 변경 기능은 사전 협의 후 사용 가능합니다.</summary>
1145
+
1146
+ 전화 번호 변경(actionType:PhoneChange)은 퀵페이에 등록된 전화번호를 변경할 수 있는 기능입니다.
1147
+ 해당 기능 사용을 원하시는 경우 KCP와 사전에 협의가 필요합니다.
1148
+
1149
+ </details>
1150
+
1151
+ <details>
1152
+
1153
+ <summary>결제 시 등록된 결제수단 화면을 표시할 수 있습니다.</summary>
1154
+
1155
+ 결제(actionType:Pay)시 `customer_uid`를 빈 값 또는 생략한 경우 등록된 결제수단을 선택하는 화면이 표시됩니다.
1156
+
1157
+ </details>
1158
+
1159
+ <details>
1160
+
1161
+ <summary>결제 금액이 30만원 이상인 경우 ARS 인증이 진행됩니다.</summary>
1162
+
1163
+ 결제 금액이 30만원 이상인 경우 ARS 인증이 진행되며, 퀵페이 등록시 입력된 전화 번호로 전화가 갑니다.
1164
+
1165
+ </details>
1166
+
1167
+ <details>
1168
+
1169
+ <summary>퀵페이 해지 안내 </summary>
1170
+
1171
+ 해지(actionType:Terminate)시
1172
+ [빌링키 삭제 API](https://developers.portone.io/api/rest-v1/billingkey?v=v1#delete%20%2Fsubscribe%2Fcustomers%2F%7Bcustomer_uid%7D)를 이용하여 등록되어 있던 결제수단을 일괄 삭제해야 합니다.
1173
+
1174
+ </details>
1175
+
1176
+ <details>
1177
+
1178
+ <summary>무인증 결제 안내</summary>
1179
+
1180
+ 결제 수단 등록, PIN번호 체크시 `noAuth:true` 파라미터를 추가하여 요청한 경우 무인증 등록이 가능합니다.
1181
+ 등록 이후 결제 요청하는 경우 무인증 결제를 이용할 수 있습니다. 무인증 결제시 PIN번호 입력 과정이 생략되며,
1182
+ 바로 결제과 진행됩니다.
1183
+
1184
+ 만약 무인증 등록과정 없이 무인증 결제가 요청되는 경우 PIN번호 입력 화면이 표시되고, 올바른 PIN번호 입력시 무인증 등록 및 결제가 진행됩니다.
1185
+
1186
+ </details>