@nhnpayco-dev/mcp-devcenter 1.0.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 (68) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +197 -0
  3. package/dist/data/api-specs.json +8135 -0
  4. package/dist/data/error-codes.json +2212 -0
  5. package/dist/data/guides/calculate.md +164 -0
  6. package/dist/data/guides/calculate.meta.json +22 -0
  7. package/dist/data/guides/membership-api.md +967 -0
  8. package/dist/data/guides/membership-api.meta.json +27 -0
  9. package/dist/data/guides/membership-check.md +30 -0
  10. package/dist/data/guides/membership-check.meta.json +24 -0
  11. package/dist/data/guides/membership-code.md +59 -0
  12. package/dist/data/guides/membership-code.meta.json +22 -0
  13. package/dist/data/guides/membership-sample.md +23 -0
  14. package/dist/data/guides/membership-sample.meta.json +22 -0
  15. package/dist/data/guides/membership-start.md +74 -0
  16. package/dist/data/guides/membership-start.meta.json +26 -0
  17. package/dist/data/guides/membership-vmem.md +512 -0
  18. package/dist/data/guides/membership-vmem.meta.json +24 -0
  19. package/dist/data/guides/offline-api.md +743 -0
  20. package/dist/data/guides/offline-api.meta.json +50 -0
  21. package/dist/data/guides/offline-authapi.md +1170 -0
  22. package/dist/data/guides/offline-authapi.meta.json +81 -0
  23. package/dist/data/guides/offline-check.md +33 -0
  24. package/dist/data/guides/offline-check.meta.json +24 -0
  25. package/dist/data/guides/offline-code.md +138 -0
  26. package/dist/data/guides/offline-code.meta.json +22 -0
  27. package/dist/data/guides/offline-sample.md +34 -0
  28. package/dist/data/guides/offline-sample.meta.json +22 -0
  29. package/dist/data/guides/offline-start.md +99 -0
  30. package/dist/data/guides/offline-start.meta.json +25 -0
  31. package/dist/data/guides/offline-vcat.md +370 -0
  32. package/dist/data/guides/offline-vcat.meta.json +35 -0
  33. package/dist/data/guides/online-autopay.md +495 -0
  34. package/dist/data/guides/online-autopay.meta.json +50 -0
  35. package/dist/data/guides/online-check.md +57 -0
  36. package/dist/data/guides/online-check.meta.json +24 -0
  37. package/dist/data/guides/online-code.md +367 -0
  38. package/dist/data/guides/online-code.meta.json +22 -0
  39. package/dist/data/guides/online-easypay.md +530 -0
  40. package/dist/data/guides/online-easypay.meta.json +50 -0
  41. package/dist/data/guides/online-etc.md +167 -0
  42. package/dist/data/guides/online-etc.meta.json +36 -0
  43. package/dist/data/guides/online-extra.md +190 -0
  44. package/dist/data/guides/online-extra.meta.json +35 -0
  45. package/dist/data/guides/online-extradata.md +103 -0
  46. package/dist/data/guides/online-extradata.meta.json +54 -0
  47. package/dist/data/guides/online-sample.md +23 -0
  48. package/dist/data/guides/online-sample.meta.json +22 -0
  49. package/dist/data/guides/online-start.md +122 -0
  50. package/dist/data/guides/online-start.meta.json +25 -0
  51. package/dist/data/guides/order-check.md +35 -0
  52. package/dist/data/guides/order-check.meta.json +24 -0
  53. package/dist/data/guides/order-code.md +143 -0
  54. package/dist/data/guides/order-code.meta.json +22 -0
  55. package/dist/data/guides/order-sample.md +31 -0
  56. package/dist/data/guides/order-sample.meta.json +22 -0
  57. package/dist/data/guides/order-start.md +94 -0
  58. package/dist/data/guides/order-start.meta.json +25 -0
  59. package/dist/data/guides/order-vorder.md +326 -0
  60. package/dist/data/guides/order-vorder.meta.json +24 -0
  61. package/dist/data/index.json +782 -0
  62. package/dist/data/sitemap.json +302 -0
  63. package/dist/data.js +42 -0
  64. package/dist/excel.js +320 -0
  65. package/dist/index.js +25 -0
  66. package/dist/tools.js +929 -0
  67. package/dist/validation-buffer.js +29 -0
  68. package/package.json +58 -0
@@ -0,0 +1,495 @@
1
+ # 자동결제 연동하기
2
+
3
+ > **원본:** https://devcenter.payco.com/guide/online/autopay/flow?id=220401007
4
+ > **카테고리:** `online-autopay`
5
+ > **포함 단계 (LNB):**
6
+ > - ⑤ 결제 취소/삭제 (`/guide/online/autopay/cancel?id=220401012`)
7
+ > - 자동결제 연동하기 (`/guide/online/autopay/flow?id=220401007`)
8
+ > - ③ 결제 정보조회 (`/guide/online/autopay/info?id=220401010`)
9
+ > - ④ 결제 승인 (`/guide/online/autopay/payment?id=220401011`)
10
+ > - ① 결제창 호출 (`/guide/online/autopay/reserve?id=220401008`)
11
+ > - ② 결제 인증 (`/guide/online/autopay/return?id=220401009`)
12
+
13
+ ---
14
+
15
+ ## 자동결제 연동하기 연동 프로세스 및 API 안내
16
+
17
+ PAYCO 자동결제 연동 API 상세 내용을 안내합니다.
18
+
19
+ ### 연동 프로세스 이해하기
20
+
21
+ PAYCO 자동결제를 통해 구독서비스 정기결제, 후불결제 등 제휴사가 원하는 시점에 결제 할 수 있어요.
22
+ 자동결제 등록창에서 결제수단을 최대 3개까지 순차 등록을 할 수 있고, 등록 후 별도 인증절차 없이 결제를 할 수 있습니다.
23
+
24
+ ![자동결제 flow 이미지](/img/@autopay_flow.ae64b1e4.png)
25
+
26
+ ### 연동 API 상세
27
+
28
+ 1. #### 등록예약 API로 결제창 호출하기
29
+
30
+ 등록예약 API를 호출하여 응답 받은 주문서 URL를 팝업으로 노출하여 PAYCO 결제창을 호출합니다.
31
+
32
+ 연동 API 상세
33
+
34
+ | | |
35
+ | --- | --- |
36
+ | URL | /outseller/autoPayment/reserve |
37
+ | Method | POST |
38
+
39
+ **잠깐만요!**
40
+
41
+ 결제창 팝업 오픈 시 팝업차단으로 열리지 않을 수 있어요.
42
+ 가맹점 페이지에서 API 호출 후 응답 받은 주문서 URL로 redirect 하여 팝업 차단을 방지할 수 있습니다.
43
+ 결제창 팝업 오픈은 POST 방식의 submit은 지양해주세요.
44
+
45
+ **잠깐만요!**
46
+
47
+ 이미 자동결제 정보를 등록을 했는데 변경을 하고 싶다면 기 등록된 ‘자동결제번호’와 ‘Key값’을 넣어서 호출하면 변경처리 할 수 있어요.
48
+ 또는 자동 결제 삭제 API 호출 후 주문 예약 API 로 다시 등록을 할 수 있어요.
49
+
50
+ #### ※ 개발환경 테스트 가맹점 정보 확인
51
+
52
+ 자동결제 연동 시 개발환경에서 테스트 가능한 가맹점 코드를 확인해주세요.
53
+
54
+ - 개발환경 결제는 실결제가 이루어지지 않습니다.
55
+ - 테스트하기 페이지를 참고하여 테스트에 필요한 APP, PAYCO 포인트, 쿠폰 등을 받아 보세요.
56
+
57
+ 개발 테스트 가맹점키
58
+
59
+ | | |
60
+ | --- | --- |
61
+ | sellerKey | AUTOPAY |
62
+ | cpId | AUTOPAY |
63
+ | productId | PAYCO_AUTOPAY |
64
+
65
+ - ##### 자동결제 등록예약 API - REQUEST
66
+
67
+ 자동결제 등록예약 API - REQUEST
68
+
69
+ | No. | 파라미터 | 설명 |
70
+ | --- | --- | --- |
71
+ | 1 | sellerKey(필수 / string) | PAYCO에서 전달받은 가맹점 고유 코드입니다.(가맹점 정보) |
72
+ | 2 | cpId(필수 / string) | PAYCO에서 발급받은 상점ID값 입니다.(가맹점 정보) 가맹점에서 사용하는 거래 주문번호(고유번호) 이며, 기본적으로 값은 유니크 해야합니다. |
73
+ | 3 | sellerAutoPaymentReferenceKey(필수 / string) | 가맹점에서 사용하는 자동결제 주문번호(고유번호) 이며, 기본적으로 값은 유니크 해야합니다. |
74
+ | 4 | currency(string) | 통화 단위를 표기합니다.(Default : KRW) |
75
+ | 5 | totalPaymentAmt(number) | 총 결제할 금액을 표기합니다. 면세, 과세, 부가세 금액의 총합이 되어야합니다. |
76
+ | 6 | returnUrl(필수 / string) | 주문완료 후 redirect 되는 URL 입니다. |
77
+ | 7 | returnUrlParam(string) | 주문완료 후 redirect 되는 URL로 함께 전달 되어야하는 파라미터 입니다. (Json 형태의 String 문자열 형태 입니다) |
78
+ | 8 | orderMethod(필수 / string) | 결제 주문유형을 구분합니다. - EASYPAY_F: 가맹점 회원결제 - EASYPAY: 가맹점 비회원결제 |
79
+ | 9 | orderChannel(필수 / string) | 결제(주문) 유입 채널을 구분합니다. (PC, MOBILE / Default : PC) |
80
+ | 10 | inAppYn(필수 / string) | 인앱결제 여부를 구분합니다. (Y, N) (진입경로가 가맹점 App 인 경우 ‘Y’ 사용) [App결제 연동 안내](/guide/online/extra/start?id=220401016) |
81
+ | 11 | autoPaymentNo(string) | 자동결제 번호 / 자동결제 정보 변경 시 전달 필요합니다. |
82
+ | 12 | autoPaymentCertifyKey(string) | 자동결제 인증키 / 자동결제 정보 변경 시 전달 필요합니다. |
83
+ | 13 | orderTitle(string) | 결제에 대한 가맹점 주문명 입니다. |
84
+ | 14 | extraData(string) | 결제 부가정보를 표기합니다. [* 상세내용 확인하기](/guide/online/autopay/extradata?id=220401008) |
85
+
86
+ **잠깐만요!**
87
+
88
+ IOS에서 유니버셜 링크 비활성화로 인해 PAYCO 앱 결제가 안될 수 있어요!
89
+ 앱 결제를 위해 가맹점 앱 내부에서 completionHandler 를 사용하거나 앱스킴 등록 후 canOpenURL 를 사용해주세요.
90
+ 자세한 내용은 'APP 결제 연동 주의사항' 을 확인해주세요.
91
+ - ##### 가맹점 부가정보(extraData) 상세
92
+
93
+ 가맹점 부가정보(extraData) 상세
94
+
95
+ | No. | 파라미터 | 설명 |
96
+ | --- | --- | --- |
97
+ | 1 | autoPaymentExpiryYmd(string) | PAYCO 자동결제 만료일을 지정합니다. (해당 일시 이후 결제요청 불가) ex) YYYYMMDD 형식 |
98
+ | 2 | cancelMobileUrl(string) | Mobile 결제창에서 ‘취소’버튼 클릭 시 이동할 URL을 지정합니다. 미설정 시 returnUrl로 이동합니다. |
99
+ | 3 | appUrl(필수 / string) | iOS App을 통해 PAYCO 호출이 발생하는 경우 결제완료 후 복귀할 App Url 입니다. (iOS App 호출의 경우만 필수값 입니다) |
100
+ | 4 | viewOptions(string) | PAYCO 결제창 화면 UI 옵션을 지정합니다. [* 상세내용 확인하기](/guide/online/autopay/viewoptions?id=220401008) |
101
+ - ##### PAYCO 결제창 화면 UI 옵션(viewOptions)
102
+
103
+ PAYCO 결제창 화면 UI 옵션(viewOptions)
104
+
105
+ | No. | 파라미터 | 설명 |
106
+ | --- | --- | --- |
107
+ | 1 | showMobileTopGnbYn(string) | 모바일화면 상단 GNB 노출여부를 기재합니다. |
108
+ | 2 | iframeYn | iframe 호출여부를 기재합니다. (Default : N) |
109
+ | 3 | autoPaymentAmtTitle(string) | 자동결제 등록/변경창에 노출되는 정기결제 금액 항목 명칭 입니다. 값이 없는 경우 ‘자동 결제금액’으로 노출되며, 특수문자는 사용 불가합니다. |
110
+
111
+ **자동결제 등록예약 API - REQUEST Sample 코드**
112
+
113
+ ```
114
+ {
115
+ "sellerKey": "DEMO",
116
+ "cpId": "DEMO_AUTO",
117
+ "sellerAutoPaymentReferenceKey": "mallAutoSeq1640064545311",
118
+ "autoPaymentNo": "",
119
+ "autoPaymentCertifyKey": "",
120
+ "currency": "KRW",
121
+ "totalPaymentAmt": "1000",
122
+ "orderTitle": "payco 자동 결제 테스트 주문",
123
+ "returnUrl": "http://demo-bill.nhnent.com/autoPayment/resultPage",
124
+ "returnUrlParam": "",
125
+ "orderMethod": "EASYPAY",
126
+ "orderChannel": "PC",
127
+ "inAppYn": "N",
128
+ "extraData": "{\"viewOptions\":{\"showMobileTopGnbYn\":\"N\",\"iframeYn\":\"N\", \"autoPaymentAmtTitle\":\"자동결제금액\"},\"appUrl\":\"payco://\", \"autoPaymentExpiryYmd\":null}"
129
+ }
130
+ ```- ##### 자동결제 등록예약 API - RESPONSE
131
+
132
+ 자동결제 등록예약 API - RESPONSE
133
+
134
+ | No. | 파라미터 | 설명 |
135
+ | --- | --- | --- |
136
+ | 1 | reserveOrderNo(string) | 주문예약 API 호출에 따른 PAYCO 주문예약 번호입니다. |
137
+ | 2 | orderSheetUrl(string) | PAYCO 결제창(주문서) URL 입니다. 해당 URL을 팝업으로 Open 하시면 결제창이 호출됩니다. |
138
+
139
+ **자동결제 등록예약 API - RESPONSE Sample 코드**
140
+
141
+ ```
142
+ {
143
+ "result": {
144
+ "reserveOrderNo": "202112212005560777",
145
+ "orderSheetUrl": "https://alpha-bill.payco.com/autoPayment/easyLogin/20211221200556077"
146
+ },
147
+ "message": "success",
148
+ "code": 0
149
+ }
150
+ ```2. #### 결제인증 완료 페이지로 인증 데이터 전달받기
151
+
152
+ 이용자 결제인증(비밀번호 or 지문) 완료 후 가맹점 인증완료 페이지(returnUrl)로 데이터를 전달합니다.
153
+ 가맹점에서 결제 가능 여부를 확인 후 팝업창을 닫고 승인요청 API를 호출 해주세요.
154
+
155
+ - 자동결제 등록예약 API로 전달한 returnUrl로 파라미터를 전달하게 됩니다.
156
+ - 케릭터셋은 UTF-8 이며, GET방식으로 전달합니다.
157
+ - 자동결제 등록/변경 성공시점 또는 사용자 취소 시 가맹점의 returnUrl로 이동합니다.
158
+ - 전달받은 reserveOrderNo와 sellerAutoPaymentReferenceKey가 일치하는지 확인이 필요합니다.
159
+ - ##### returnUrl로 전달되는 파라미터 정보
160
+
161
+ returnUrl로 전달되는 파라미터 정보
162
+
163
+ | No. | 파라미터 | 설명 |
164
+ | --- | --- | --- |
165
+ | 1 | reserveOrderNo(string) | PAYCO 자동결제 주문예약번호를 전달합니다. |
166
+ | 2 | sellerAutoPaymentReferenceKey(string) | 가맹점의 자동결제 관리번호를 전달합니다. |
167
+ | 3 | autoPaymentCertifyKey(string) | PAYCO 자동결제 인증 키값을 전달합니다. ex) r3ggRziu3/Pb0ZdZjrPKvsqbiL_c24oQ7ngFXdfDFb_qwaNp4yQpzAgmo8wNe4a0 |
168
+ | 4 | code(number) | 인증 결과 코드를 전달합니다. ex) 0: 성공 / 2222: 사용자에 의한 취소(close) / 그 외 코드: 오류 |
169
+
170
+ **returnUrl 전달 파라미터 Sample**
171
+
172
+ ```
173
+ code=0&
174
+ reserveOrderNo=202112132005557446&
175
+ sellerAutoPaymentReferenceKey=mallSeq1639391629325&
176
+ autoPaymentCertifyKey=r3ggRziu3/Pb0ZdZjrPKvsqbiL_c24oQ7ngFXdfDFb_qwaNp4yQpzAgmo8wNe4a0&
177
+ ```3. #### 자동결제 인증키값 조회하기
178
+
179
+ PAYCO 승인 요청에 필요한 자동결제번호를 조회합니다. 향후 승인 요청을 위해 해당 값은 저장해주세요.
180
+
181
+ | | |
182
+ | --- | --- |
183
+ | URL | /outseller/autoPayment/info |
184
+ | Method | POST |
185
+
186
+ - ##### 자동결제 정보조회 API - REQUEST
187
+
188
+ 자동결제 정보조회 API - REQUEST
189
+
190
+ | No. | 파라미터 | 설명 |
191
+ | --- | --- | --- |
192
+ | 1 | sellerKey(필수 / string) | PAYCO에서 전달받은 가맹점 고유 코드입니다.(가맹점 정보) |
193
+ | 2 | sellerAutoPaymentReferenceKey(필수 / string) | 가맹점에서 사용하는 자동결제 주문번호(고유번호) 이며, 기본적으로 값은 유니크 해야합니다. |
194
+ | 3 | autoPaymentCertifyKey(필수 / string) | 자동결제 등록예약에 따른 확인된 자동결제 인증키를 기재합니다. |
195
+
196
+ **자동결제 정보조회 API - REQUEST Sample 코드**
197
+
198
+ ```
199
+ {
200
+ "sellerKey": "DEMO",
201
+ "sellerAutoPaymentReferenceKey": "mallAutoSeq1640064545311",
202
+ "autoPaymentCertifyKey": "fQOsdmNut2n90yHVlsaoCkvqvR7gSduNtM21BM/IhfN/QuECY660NI_8PZFMMRBY"
203
+ }
204
+ ```- ##### 자동결제 정보조회 API - RESPONSE
205
+
206
+ 자동결제 정보조회 API - RESPONSE
207
+
208
+ | No. | 파라미터 | 설명 |
209
+ | --- | --- | --- |
210
+ | 1 | sellerAutoPaymentReferenceKey(string) | 가맹점에서 사용하는 자동결제 주문번호(고유번호) 입니다. |
211
+ | 2 | autoPaymentCertifyKey(string) | 자동결제 등록예약에 따라 확인된 자동결제 인증키 입니다. |
212
+ | 3 | autoPaymentNo(string) | PAYCO 자동결제 번호 입니다. |
213
+ | 4 | paymentMethodCode(string) | PAYCO 결제수단 코드 입니다. |
214
+ | 5 | paymentMethodName(string) | PAYCO 결제수단 코드에 따른 결제수단명칭 입니다. |
215
+ | 6 | pinNo(string) | 마스킹된 핀번호를 전달합니다. |
216
+ | 7 | corporationCode(string) | PAYCO 사업자 코드를 전달합니다. ex) 카드사코드 |
217
+ | 8 | corporationName(string) | PAYCO 사업자코드에 따른 명칭을 전달합니다. ex) 카드사명 |
218
+ | 9 | registYmdt(string) | 자동결제 등록일시를 전달합니다. ex) YYYYMMDDHHmmss 형식 |
219
+ | 10 | maskingId(string) | 마스킹된 PAYCO 계정을 전달합니다. |
220
+
221
+ **자동결제 정보조회 API - RESPONSE Sample 코드**
222
+
223
+ ```
224
+ {
225
+ "result": {
226
+ "sellerAutoPaymentReferenceKey": "TEST3429654693",
227
+ "autoPaymentCertifyKey": "zxi8rFXWRA5MeOStIWSXf01u5Euz06Ux9dAU8zVcfmXNGH9ZJZ5bW9hylkHHSXZ8",
228
+ "autoPaymentNo": "201608311000022591",
229
+ "paymentMethodCode": "51",
230
+ "paymentMethodName": "신용카드(자동)",
231
+ "pinNo": "************1234",
232
+ "corporationCode": "CCSS",
233
+ "corporationName": "삼성카드",
234
+ "registYmdt": "20160831145438"
235
+ },
236
+ "code": 0,
237
+ "message": "success"
238
+ }
239
+ ```4. #### 자동결제 승인 요청하기
240
+
241
+ PAYCO 자동결제 정보를 통해 제휴사가 원하는 시점에 승인 요청을 할 수 있어요.
242
+
243
+ | | |
244
+ | --- | --- |
245
+ | URL | /outseller/autoPayment/payment |
246
+ | Method | POST |
247
+
248
+ - ##### 자동결제 결제요청 API - REQUEST
249
+
250
+ 자동결제 결제요청 API - REQUEST
251
+
252
+ | No. | 파라미터 | 설명 |
253
+ | --- | --- | --- |
254
+ | 1 | sellerKey(필수 / string) | PAYCO에서 전달받은 가맹점 고유 코드입니다.(가맹점 정보) |
255
+ | 2 | autoPaymentNo(필수 / string) | PAYCO 자동결제번호를 기재합니다. |
256
+ | 3 | sellerOrderReferenceKey(필수 / string) | 가맹점에서 사용하는 자동결제 주문번호(고유번호) 이며, 기본적으로 값은 유니크 해야합니다. |
257
+ | 4 | autoPaymentCertifyKey(필수 / string) | 자동결제 등록예약에 따른 확인된 자동결제 인증키를 기재합니다. |
258
+ | 5 | sellerOrderReferenceKeyType(string) | 가맹점 주문번호 타입입니다. - UNIQUE_KEY : 유니크한 값 (Default) - DUPLICATE_KEY : 중복가능한 값 – 가맹점 주문번호가 중복 가능한 경우에 사용합니다. |
259
+ | 6 | currency(string) | 통화 단위를 표기합니다.(Default : KRW) |
260
+ | 7 | totalPaymentAmt(필수 / number) | 총 결제금액을 표기합니다. 면세+과세+부가세 금액의 총 합이 되어야 합니다. |
261
+ | 8 | totalTaxfreeAmt(number) | 총 면세금액을 표기합니다. |
262
+ | 9 | totalTaxableAmt(number) | 총 과세금액을 표기합니다. |
263
+ | 10 | totalVatAmt(number) | 총 부가세액을 표기합니다. |
264
+ | 11 | totalGreenDepositAmt(number) | 컵보증금 |
265
+ | 12 | orderTitle(필수 / string) | 결제에 대한 가맹점 주문명 입니다. |
266
+ | 13 | orderProducts(필수 / array) | 결제 주문상품 List를 표기합니다. [* 상세내용 확인하기](/guide/online/autopay/orderproducts?id=220401011) |
267
+ - ##### 주문상품 List(orderProducts) 상세
268
+
269
+ 주문상품 List(orderProducts) 상세
270
+
271
+ | No. | 파라미터 | 설명 |
272
+ | --- | --- | --- |
273
+ | 1 | cpId(필수 / string) | PAYCO에서 발급받은 상점ID값 입니다.(가맹점 정보) |
274
+ | 2 | productId(필수 / string) | PAYCO에서 발급받은 상품ID값 입니다.(가맹점 정보) |
275
+ | 3 | productAmt(필수 / number) | 가맹점의 결제 상품 원금액(할인 프로모션 등 미적용) 입니다. (상품단가*수량 총합이 되어야 합니다) |
276
+ | 4 | productPaymentAmt(필수 / number) | 가맹점의 결제 상품 실결제 금액(할인 프로모션 등 적용) 입니다. (상품단가*수량 총합이 되어야 합니다) |
277
+ | 5 | orderQuantity(필수 / string) | 상품 주문 수량을 표기합니다. |
278
+ | 6 | sortOrdering(필수 / number) | 상품 노출 순서를 정합니다. |
279
+ | 7 | productName(필수 / string) | 결제 상품명을 기재합니다. |
280
+ | 8 | sellerOrderProductReferenceKey(필수 / string) | 가맹점에서 관리하는 주문상품 연동키(고유코드) 입니다. |
281
+ | 9 | taxationType(string) | 주문상품에 대한 과세타입 구분값 입니다. - DUTYFREE: 면세상품 - TAXATION: 과세상품(Default) - COMBINE: 결합상품 |
282
+
283
+ **자동결제 승인요청 API - REQUEST Sample 코드**
284
+
285
+ ```
286
+ {
287
+ "sellerKey": "DEMO",
288
+ "totalPaymentAmt": 5000,
289
+ "totalGreenDepositAmt": 0,
290
+ "autoPaymentNo": "202112211000095380",
291
+ "autoPaymentCertifyKey": "fQOsdmNut2n90yHVlsaoCkvqvR7gSduNtM21BM/IhfN/QuECY660NI_8PZFMMRBY",
292
+ "sellerOrderReferenceKey": "mallAutoSeq1640064545311",
293
+ "orderProducts": [{
294
+ "cpId": "DEMO_AUTO",
295
+ "productId": "DEMO_AUTO",
296
+ "productAmt": "5000",
297
+ "productPaymentAmt": "5000",
298
+ "sortOrdering": 1,
299
+ "productName": "BAG",
300
+ "orderQuantity": 1,
301
+ "sellerOrderProductReferenceKey": "PD_123456"
302
+ }]
303
+ }
304
+ ```- ##### 자동결제 승인요청 API - RESPONSE Sample 코드
305
+
306
+ 결제승인 API - RESPONSE
307
+
308
+ | No. | 파라미터 | 설명 |
309
+ | --- | --- | --- |
310
+ | 1 | sellerOrderReferenceKey(string) | 가맹점에서 사용하는 거래 주문번호(고유번호) 입니다. |
311
+ | 2 | orderNo(string) | 결제건에 대한 PAYCO 주문번호 입니다. ex) 202112142002669697 |
312
+ | 3 | memberName(string) | 주문자명을 일부 마스킹 처리하여 표기합니다. ex) 박** |
313
+ | 4 | memberEmail(string) | 주문자 EMAIL을 일부 마스킹 처리하여 표기합니다. ex) ac**** |
314
+ | 5 | orderChannel(string) | 결제(주문) 유입 채널을 표기합니다. (PC/MOBILE) |
315
+ | 6 | totalOrderAmt(number) | 총 주문금액을 표기합니다. |
316
+ | 7 | totalDeliveryFeeAmt(number) | 총 배송비 금액을 표기합니다. |
317
+ | 8 | totalRemoteAreaDeliveryFeeAmt(number) | 총 도서산간비 금액을 표기합니다. |
318
+ | 9 | totalPaymentAmt(필수 / number) | 총 결제금액을 표기합니다. |
319
+ | 10 | totalGreenDepositAmt(number) | 총 컵보증금 |
320
+ | 11 | orderProducts(array) | 결제 주문상품 List를 표기합니다. [* 상세내용 확인하기](/guide/online/autopay/orderproductsRes?id=220401011) |
321
+ | 12 | paymentDetails(array) | 결제내역 List를 표기하며, 각각의 결제수단별 array list로 구성되어 리턴됩니다. [* 상세내용 확인하기](/guide/online/autopay/paymentdetails?id=220401011) |
322
+ | 13 | orderCertifyKey(string) | 주문인증키값을 표기하며, 이 값으로 취소요청을 할 수 있습니다. [* 결제취소 상세내용 확인하기](/guide/online/autopay/cancel?id=220401012) |
323
+ | 14 | autoPaymentNo(string) | PAYCO 자동결제번호 입니다. |
324
+ | 15 | paymentCompleteYmdt(string) | 최종 결제일시를 표기합니다. ex) YYYYMMDDHHmmss 형식 |
325
+ - ##### 주문상품 List(orderProducts) 상세
326
+
327
+ 주문상품 List(orderProducts) 상세
328
+
329
+ | No. | 파라미터 | 설명 |
330
+ | --- | --- | --- |
331
+ | 1 | orderProductNo(string) | PAYCO에서 생성된 주문상품번호 입니다. ex) 202112142002935076 |
332
+ | 2 | sellerOrderProductReferenceKey(string) | 가맹점에서 사용하는 주문상품 연동키(코유코드) 입니다. ex) ITEM_100001 |
333
+ | 3 | orderProductStatusCode(string) | PAYCO에서 생성된 주문상품상태코드 입니다. ex) OPSPAED |
334
+ | 4 | orderProductStatusName(string) | 주문상품상태코드에 따른 주문상품상태명 입니다. ex) 결제완료 |
335
+ | 5 | cpId(string) | PAYCO에서 발급받은 상점ID값 입니다.(가맹점 정보) |
336
+ | 6 | productId(string) | PAYCO에서 발급받은 상품ID값 입니다.(가맹점 정보) |
337
+ | 7 | productKindCode(string) | PAYCO에서 생성된 상품타입 입니다. (사용된 productId에 따라 값이 달라집니다) ex) GENERAL_PRODUCT, DELIVERY_FREE |
338
+ | 8 | productPaymentAmt(float) | 상품결제금액 입니다. 배송비 상품의 경우 ‘원 상품결제금액+추가배송비’ 로 변경될 수 있습니다. |
339
+ | 9 | originalProductPaymentAmt(float) | 원 상품결제금액 입니다 |
340
+ - ##### 결제내역 List(paymentDetails) 상세
341
+
342
+ 결제내역 List(paymentDetails) 상세
343
+
344
+ | No. | 파라미터 | 설명 |
345
+ | --- | --- | --- |
346
+ | 1 | paymentTradeNo(string) | PAYCO 결제번호 입니다. ex) 202112142004291664 |
347
+ | 2 | paymentMethodCode(string) | PAYCO 결제수단코드 입니다. ex) 31, 98 등 |
348
+ | 3 | paymentMethodName(string) | 결제수단 코드에 대한 결제수단명 입니다. ex) 신용카드, PAYCO 포인트 등 |
349
+ | 4 | paymentAmt(number) | 총 결제금액 입니다. |
350
+ | 5 | taxfreeAmt(number) | 총 면세금액 입니다. |
351
+ | 6 | taxableAmt(number) | 총 과세금액 입니다. |
352
+ | 7 | vatAmt(number) | 총 부가세 입니다. |
353
+ | 8 | serviceAmt(number) | 총 봉사료 입니다. |
354
+ | 9 | greenDepositAmt(number) | 컵보증금 |
355
+ | 10 | tradeYmdt(string) | 결제일시 ex) YYYYMMDDHHmmss 형식 |
356
+ | 11 | pgAdmissionNo(string) | PG 승인번호 |
357
+ | 12 | pgAdmissionYmdt(string) | PG 승인일시 ex) YYYYMMDDHHmmss 형식 |
358
+ | 13 | easyPaymentYn(string) | PAYCO 간편결제여부 입니다. (Y/N) |
359
+ | 14 | cardSettleInfo(object) | 신용카드 결제정보 상세 필드 입니다. [* 상세내용 확인하기](/guide/online/autopay/cardSettleInfo?id=220401011) |
360
+ | 15 | cellphoneSettleInfo(object) | 휴대폰 결제정보 상세 필드 입니다. [* 상세내용 확인하기](/guide/online/autopay/cellphoneSettleInfo?id=220401011) |
361
+ | 16 | couponSettleInfo(object) | 쿠폰 결제정보 상세 필드 입니다. [* 상세내용 확인하기](/guide/online/autopay/couponSettleInfo?id=220401011) |
362
+ - ##### 신용카드 결제정보 필드(cardSettleInfo) 상세
363
+
364
+ 신용카드 결제정보 필드(cardSettleInfo) 상세
365
+
366
+ | No. | 파라미터 | 설명 |
367
+ | --- | --- | --- |
368
+ | 1 | cardCompanyName(string) | 결제 카드사명 입니다. ex) KB국민카드 |
369
+ | 2 | cardCompanyCode(string) | 결제 카드사코드 입니다. ex) CCKM |
370
+ | 3 | cardNo(string) | 결제 카드번호 입니다. ex) 374725********** |
371
+ | 4 | cardInstallmentMonthNumber(string) | 결제건 할부개월수 입니다. |
372
+ | 5 | cardAdmissionNo(string) | 카드사 승인번호 입니다. |
373
+ | 6 | cardInterestFreeYn(string) | 무이자여부를 표기합니다. (Y/N) |
374
+ | 7 | corporateCardYn(string) | 법인카드 여부를 표기합니다. (Y: 법인 / N: 개인) |
375
+ | 8 | partCancelPossibleYn(string) | 부분취소가능 여부를 표기합니다. (Y/N) |
376
+ - ##### 휴대폰 결제정보 필드(cellphoneSettleInfo) 상세
377
+
378
+ 휴대폰 결제정보 필드(cellphoneSettleInfo) 상세
379
+
380
+ | No. | 파라미터 | 설명 |
381
+ | --- | --- | --- |
382
+ | 1 | companyName(string) | 통신사명 입니다. ex) SKT |
383
+ | 2 | cellphoneNo(string) | 휴대폰 번호 입니다. |
384
+ - ##### 쿠폰 결제정보 필드(couponSettleInfo) 상세
385
+
386
+ 쿠폰 결제정보 필드(couponSettleInfo) 상세
387
+
388
+ | No. | 파라미터 | 설명 |
389
+ | --- | --- | --- |
390
+ | 1 | discountAmt(string) | 쿠폰 할인금액 입니다. |
391
+ | 2 | discountConditionAmt(string) | 쿠폰 할인조건 입니다. |
392
+
393
+ **자동결제 승인요청 API - RESPONSE Sample 코드**
394
+
395
+ ```
396
+ {
397
+ "result": {
398
+ "sellerOrderReferenceKey": "mallAutoSeq1640064545311",
399
+ "orderNo": "202112212002671075",
400
+ "memberName": "박**",
401
+ "memberEmail": "ac****",
402
+ "orderChannel": "기타",
403
+ "totalOrderAmt": 5000,
404
+ "totalDeliveryFeeAmt": 0,
405
+ "totalRemoteAreaDeliveryFeeAmt": 0,
406
+ "totalPaymentAmt": 5000,
407
+ "totalGreenDepositAmt": 0,
408
+ "receiptPaycoPointAmt": 0,
409
+ "receiptPaycoPointTaxfreeAmt": 0,
410
+ "receiptPaycoPointTaxableAmt": 0,
411
+ "receiptPaycoPointVatAmt": 0,
412
+ "receiptPaycoPointServiceAmt": 0,
413
+ "orderProducts": [{
414
+ "orderProductNo": "202112212002936755",
415
+ "sellerOrderProductReferenceKey": "PD_123456",
416
+ "orderProductStatusCode": "OPSPAED",
417
+ "orderProductStatusName": "결제완료",
418
+ "cpId": "DEMO_AUTO",
419
+ "productId": "DEMO_AUTO",
420
+ "productKindCode": "GENERAL_PRODUCT",
421
+ "productPaymentAmt": 5000,
422
+ "originalProductPaymentAmt": 5000
423
+ }],
424
+ "paymentDetails": [{
425
+ "cardSettleInfo": {
426
+ "cardCompanyName": "수협카드",
427
+ "cardCompanyCode": "CCSU",
428
+ "cardNo": "940701******9999",
429
+ "cardInstallmentMonthNumber": "00",
430
+ "cardAdmissionNo": "67460145",
431
+ "cardInterestFreeYn": "N",
432
+ "corporateCardYn": "N",
433
+ "partCancelPossibleYn": "Y"
434
+ },
435
+ "paymentTradeNo": "202112212004300360",
436
+ "paymentMethodCode": "51",
437
+ "paymentMethodName": "신용카드(자동결제)",
438
+ "paymentAmt": 2000,
439
+ "taxfreeAmt": 0,
440
+ "taxableAmt": 1818,
441
+ "vatAmt": 182,
442
+ "serviceAmt": 0,
443
+ "greenDepositAmt": 0,
444
+ "tradeYmdt": "20211221170029",
445
+ "pgAdmissionNo": "21605969893370",
446
+ "pgAdmissionYmdt": "20211221170029",
447
+ "easyPaymentYn": "N"
448
+ }],
449
+ "orderCertifyKey": "6296ZJYsmOT8OtBBAAVsrstYJQPPr3NXcMKL90USy0W5oCC",
450
+ "autoPaymentNo": "202112211000095380",
451
+ "paymentCompleteYmdt": "20211221170029"
452
+ },
453
+ "message": "success",
454
+ "code": 0
455
+ }
456
+ ```5. #### 결제 취소하기
457
+
458
+ 결제 연동하기의 ‘결제 취소’ API와 동일합니다.
459
+
460
+ [결제 취소 API 확인하기](/guide/online/easypay/cancel?id=220401006)
461
+ 6. #### 등록한 자동결제 삭제하기
462
+
463
+ 제휴사에서 PAYCO 자동결제를 해지할 경우 자동결제 삭제 API를 통해 등록한 자동결제를 삭제할 수 있어요.
464
+
465
+ | | |
466
+ | --- | --- |
467
+ | URL | /outseller/autoPayment/delete |
468
+ | Method | POST |
469
+
470
+ - ##### 자동결제 삭제 API - REQUEST
471
+
472
+ 자동결제 삭제 API - REQUEST
473
+
474
+ | No. | 파라미터 | 설명 |
475
+ | --- | --- | --- |
476
+ | 1 | sellerKey(필수 / string) | PAYCO에서 전달받은 가맹점 고유 코드입니다.(가맹점 정보) |
477
+ | 2 | sellerAutoPaymentReferenceKey(필수 / string) | 가맹점에서 사용하는 자동결제 주문번호(고유번호) 이며, 기본적으로 값은 유니크 해야합니다. |
478
+ | 3 | autoPaymentCertifyKey(필수 / number) | 자동결제 등록예약에 따른 확인된 자동결제 인증키를 기재합니다. |
479
+
480
+ **자동결제 삭제 API - REQUEST Sample 코드**
481
+
482
+ ```
483
+ {
484
+ "sellerKey": "DEMO",
485
+ "sellerAutoPaymentReferenceKey": "mallAutoSeq1640064545311",
486
+ "autoPaymentCertifyKey": "fQOsdmNut2n90yHVlsaoCkvqvR7gSduNtM21BM/IhfN/QuECY660NI_8PZFMMRBY"
487
+ }
488
+ ```자동결제 삭제 API - RESPONSE Sample 코드**
489
+
490
+ ```
491
+ {
492
+ "message": "success",
493
+ "code": 0
494
+ }
495
+ ```
@@ -0,0 +1,50 @@
1
+ {
2
+ "slug": "online-autopay",
3
+ "id": "220401007",
4
+ "url": "https://devcenter.payco.com/guide/online/autopay/flow?id=220401007",
5
+ "path": "/guide/online/autopay/flow",
6
+ "title": "자동결제 연동하기",
7
+ "menu_text": "자동결제 연동하기",
8
+ "sections": [
9
+ {
10
+ "label": "⑤ 결제 취소/삭제",
11
+ "path": "/guide/online/autopay/cancel",
12
+ "id": "220401012"
13
+ },
14
+ {
15
+ "label": "자동결제 연동하기",
16
+ "path": "/guide/online/autopay/flow",
17
+ "id": "220401007"
18
+ },
19
+ {
20
+ "label": "③ 결제 정보조회",
21
+ "path": "/guide/online/autopay/info",
22
+ "id": "220401010"
23
+ },
24
+ {
25
+ "label": "④ 결제 승인",
26
+ "path": "/guide/online/autopay/payment",
27
+ "id": "220401011"
28
+ },
29
+ {
30
+ "label": "① 결제창 호출",
31
+ "path": "/guide/online/autopay/reserve",
32
+ "id": "220401008"
33
+ },
34
+ {
35
+ "label": "② 결제 인증",
36
+ "path": "/guide/online/autopay/return",
37
+ "id": "220401009"
38
+ }
39
+ ],
40
+ "h2_sections": [
41
+ "자동결제 연동하기 연동 프로세스 및 API 안내"
42
+ ],
43
+ "h3_sections": [
44
+ "연동 프로세스 이해하기",
45
+ "연동 API 상세"
46
+ ],
47
+ "table_count": 21,
48
+ "code_block_count": 9,
49
+ "text_length": 16357
50
+ }
@@ -0,0 +1,57 @@
1
+ # 검수하기
2
+
3
+ > **원본:** https://devcenter.payco.com/guide/online/check?id=220401020
4
+ > **카테고리:** `online-check`
5
+ > **포함 단계 (LNB):**
6
+ > - 검수하기 (`/guide/online/check?id=220401020`)
7
+
8
+ ---
9
+
10
+ ## 검수하기 PAYCO 결제 완료 후 점검하기
11
+
12
+ 검수 전 아래 내용을 체크해주세요.
13
+
14
+ PAYCO 방화벽 등록이 완료되었나요?
15
+
16
+ PAYCO 가맹점 코드 발급이 되었나요?
17
+
18
+ [PAYCO 버튼 디자인 가이드](/design/guide?id=220401043)에 맞춰서 PAYCO 결제 버튼이 적용되었나요?
19
+
20
+ 운영 환경으로 연동 후 검수를 진행해 주세요.
21
+
22
+ 아래 체크 List를 통하여 검수를 진행해 보세요.
23
+
24
+ 정확한 검수를 원하신다면!
25
+ 검수가 어려우시다면!
26
+ 검수요청을 해주세요.
27
+ 2일 안에 바로 연락드릴께요.
28
+
29
+ ### 사전 체크리스트( Check list )
30
+
31
+ | 구분 | 항목 | 내용 |
32
+ | --- | --- | --- |
33
+ | 앱결제 | 앱스킴 추가 | iOS 및 AOS 환경 별 APP URL Scheme 추가 여부를 점검 해주세요. iOS: payco, paycoapplogin AOS: com.nhnent.payapp |
34
+ | 결제연동/노출 | PAYCO 결제 버튼 노출 | 가맹점 주문서의 결제수단에 PAYCO 결제 버튼이 정상적으로 노출 되어있나요 '간편결제' 또는 '바로구매' 버튼이 이용자에게 잘 인지되어야 합니다. '디자인가이드'를 참고 해주세요! |
35
+ | PAYCO 결제수단 디자인 | 가맹점 정책에 반하지않는 선에서 결제수단 디자인은 PAYCO 영문자, 붉은색으로 해주세요. PAYCO 디자인 별도 요청 시 버튼 이미지 및 포토샵 원본 파일을 제공 해드리고 있습니다. |
36
+ | PAYCO 결제 안내문구 | PAYCO 결제수단 선택 시 아래와같이 메시지를 노출 해주세요. PAYCO 안내 PAYCO는 온/오프라인 쇼핑은 물론 송금, 멤버십 적립까지 가능한 통합 서비스입니다. - 지원카드: 모든 국내 신용/체크카드 |
37
+ | PAYCO 결제창 노출 | 결제하기 버튼 클릭시 PAYCO 결제창(popup)이 정상적으로 노출되어야 합니다. |
38
+ | 팝업차단 확인 | 팝업 미차단 확인 또는 내부 정책상 팝업 차단 해제가 어렵다면 팝업차단 허용 요청에 대한 내용을 알림창(Alert) 으로 안내 부탁 드립니다. |
39
+ | 모바일 환경의 PAYCO 브릿지 페이지 실행여부 | 모바일웹/앱에서 PAYCO 브릿지 페이지를 통해 앱이 실행되어야 합니다. |
40
+ | 결제인증/승인 | 주문금액과 PAYCO 결제금액 일치여부 | 가맹점 주문요청 금액과 PAYCO 결제창의 '최종 결제금액'의 일치여부를 확인 해주세요. |
41
+ | 결제창 '취소' 시 원 주문화면 이동 여부 | 사용자가 결제를 취소하였습니다'는 알럿 후 PAYCO 결제창이 닫히고 원 주문화면으로 이동 되어야 합니다. |
42
+ | 결제창 내 PAYCO 쿠폰 노출/사용 확인 | PAYCO 쿠폰 사용 가맹점의 경우 결제창에서 쿠폰의 정상 노출 및 적용 여부를 확인해주세요. |
43
+ | 결제수단 등록 및 삭제 | 가맹점과 PAYCO 양사간 계약에 따라 사용하는 결제수단의 정상 노출여부를 확인 해주세요. 또한, 결제창에서 결제수단 등록 및 삭제가 정상적으로 되는지 확인 해주세요. |
44
+ | 결제인증 정보 정상 수신 여부 | PAYCO 결제비밀번호 인증 후 PAYCO에서 가맹점 페이지(returnUrl)로 승인요청에 필요한 인증정보가 전달되며, 해당 정보(인증토큰, 주문예약번호 등)가 정상 수신 되는지 확인 해주세요. |
45
+ | 결제 처리 | PAYCO로 승인요청 후 승인 결과가 정상 수신 되는지 확인해주세요. |
46
+ | 결제 실패 | 결제 승인이 이루어지지 않았다면 PAYCO에서 응답되는 결제실패 사유(에러코드 및 메시지)를 확인하여 고객이 실패사유 인지할 수 있도록 처리(실패사유 노출) 해주세요. |
47
+ | 승인결과 미수신 시 | 승인결과를 PAYCO로 부터 응답받지 못한 경우(통신장애, 타임아웃 등)에 결제취소(망취소) 처리 또는 실패 인지 처리 등 대응이 되어있어야 합니다. |
48
+ | 결제 성공 확인 | 주결제수단 단독결제 또는 복합결제(주결제수단+PAYCO쿠폰) 등 여러 승인 케이스를 테스트하여 이상유무를 확인 해주세요. iOS 가맹점앱의 경우 주문예약 시 appUrl(가맹점 앱스킴) 값이 전달되지 않으면 승인완료 후 가맹점 앱으로 이동이 안될 수 있습니다. |
49
+ | 결제완료 후 기타 정보 확인 | 주문내역 조회 페이지 등 기타 조회 페이지에서 주문결과, 결제정보 등의 내용을 확인 해주세요. |
50
+ | 결제완료 후 가맹점 리턴페이지가 재호출되는 경우 | 웹브라우저 히스토리(방문기록)를 통해 리턴페이지(returnUrl)가 재호출 되는 경우 결제가 취소되는 등 해당 페이지에서 이뤄졌던 API 호출 또는 응답처리가 발생하지 않도록 확인 해주세요. |
51
+ | 결제취소 | 결제취소 구현 및 오류여부 | 전체취소 및 부분취소 테스트로 PAYCO 주문내역 및 결제취소 상세내역을 확인 해보세요. - 결제취소는 PAYCO 파트너센터(https://partner.payco.com)에서도 가능합니다. |
52
+ | 결제취소 실패 | 결제 취소가 이루어지지 않았다면 PAYCO에서 응답되는 취소실패 사유(에러코드 및 메시지)를 확인하여 고객이 실패사유를 인지할 수 있도록 처리(실패사유 노출) 해주세요. |
53
+ | 영수증 | 영수증 API | 가맹점 페이지에서 PAYCO 영수증 API 구현에 따른 영수증 노출관련 오류 여부를 확인 해주세요. |
54
+ | 영수증에 주문명(상품명) 노출 확인 | 영수증의 '주문명'에 고객이 주문한 상품명으로 영수증에 노출 되는지 확인 해주세요. |
55
+ | 기타 | PAYCO 결제 API Request 전문 확인 | Request 파라미터값에 공백, 특수문자 등 JSON형식의 문자열에 맞지 않는 형태가 있는지 확인 해주세요. |
56
+ | 주문예약(reserve) 시 파라미터값이 인코딩된 채로 전달되면 안되요. 예시) " 14K%20DSETINY%uBAA9%uAC78%uC774%20 " (잘못된 사용예) → " 14K DSETINY목걸이" (올바른 사용예) |
57
+ | Request 파라미터에 개인정보가 유입되지는 않는지 확인 해주세요. |
@@ -0,0 +1,24 @@
1
+ {
2
+ "slug": "online-check",
3
+ "id": "220401020",
4
+ "url": "https://devcenter.payco.com/guide/online/check?id=220401020",
5
+ "path": "/guide/online/check",
6
+ "title": "검수하기",
7
+ "menu_text": "검수하기",
8
+ "sections": [
9
+ {
10
+ "label": "검수하기",
11
+ "path": "/guide/online/check",
12
+ "id": "220401020"
13
+ }
14
+ ],
15
+ "h2_sections": [
16
+ "검수하기 PAYCO 결제 완료 후 점검하기"
17
+ ],
18
+ "h3_sections": [
19
+ "사전 체크리스트( Check list )"
20
+ ],
21
+ "table_count": 1,
22
+ "code_block_count": 0,
23
+ "text_length": 2689
24
+ }