@tosspayments/tosspayments-sdk 2.3.5 → 2.3.7
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.
- package/CHANGELOG.md +22 -0
- package/package.json +3 -3
- package/types/index.d.ts +99 -11
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,28 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [2.3.7](https://github.com/tosspayments/browser-sdk/compare/@tosspayments/tosspayments-sdk@2.3.6...@tosspayments/tosspayments-sdk@2.3.7) (2025-08-22)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **tosspayments-sdk:** @tosspayments/standard-public-interfaces 버전업 ([#133](https://github.com/tosspayments/browser-sdk/issues/133)) ([1d2a4a6](https://github.com/tosspayments/browser-sdk/commit/1d2a4a6d55192f323f74b1672628b1bf44d1b810))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## [2.3.6](https://github.com/tosspayments/browser-sdk/compare/@tosspayments/tosspayments-sdk@2.3.5...@tosspayments/tosspayments-sdk@2.3.6) (2025-08-13)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Bug Fixes
|
|
21
|
+
|
|
22
|
+
* **tosspayments-sdk:** @tosspayments/standard-public-interfaces 버전업 ([#132](https://github.com/tosspayments/browser-sdk/issues/132)) ([282947a](https://github.com/tosspayments/browser-sdk/commit/282947a03ecdd1e969e2c7a42e432285c2126c5e))
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
6
28
|
## [2.3.5](https://github.com/tosspayments/browser-sdk/compare/@tosspayments/tosspayments-sdk@2.3.4...@tosspayments/tosspayments-sdk@2.3.5) (2025-05-16)
|
|
7
29
|
|
|
8
30
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tosspayments/tosspayments-sdk",
|
|
3
3
|
"description": "TossPayments.js Tosspayments SDK.",
|
|
4
|
-
"version": "2.3.
|
|
4
|
+
"version": "2.3.7",
|
|
5
5
|
"main": "dist/index.cjs.js",
|
|
6
6
|
"module": "dist/index.esm.js",
|
|
7
7
|
"types": "types/index.d.ts",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"@rollup/plugin-commonjs": "^21.0.1",
|
|
22
22
|
"@rollup/plugin-typescript": "^8.3.0",
|
|
23
23
|
"@tosspayments/sdk-loader": "2.0.1",
|
|
24
|
-
"@tosspayments/standard-public-interfaces": "2.0
|
|
24
|
+
"@tosspayments/standard-public-interfaces": "2.3.0",
|
|
25
25
|
"happy-dom": "^14.12.3",
|
|
26
26
|
"prettier": "^2.0.2",
|
|
27
27
|
"rollup": "^2.60.0",
|
|
@@ -38,5 +38,5 @@
|
|
|
38
38
|
"publishConfig": {
|
|
39
39
|
"access": "public"
|
|
40
40
|
},
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "3e772ae10d92e36c0605e4e86a2e5a7f32132dab"
|
|
42
42
|
}
|
package/types/index.d.ts
CHANGED
|
@@ -148,7 +148,7 @@ interface WidgetPaymentRequest {
|
|
|
148
148
|
*/
|
|
149
149
|
pendingUrl?: string | null;
|
|
150
150
|
/**
|
|
151
|
-
* 결제 관련 정보를 추가할 수 있는 객체입니다. 최대 5개의 키-값(key-value) 쌍을 자유롭게 추가해주세요. 키는 `[` , `]` 를 사용하지 않는 최대 40자의 문자열, 값은 최대
|
|
151
|
+
* 결제 관련 정보를 추가할 수 있는 객체입니다. 최대 5개의 키-값(key-value) 쌍을 자유롭게 추가해주세요. 키는 `[` , `]` 를 사용하지 않는 최대 40자의 문자열, 값은 최대 2000자의 문자열입니다.
|
|
152
152
|
*/
|
|
153
153
|
metadata?: Record<string | symbol | number, unknown> | null;
|
|
154
154
|
/**
|
|
@@ -209,6 +209,10 @@ interface WidgetPaymentRequest {
|
|
|
209
209
|
*/
|
|
210
210
|
quantity?: number | null;
|
|
211
211
|
}> | null;
|
|
212
|
+
/**
|
|
213
|
+
* 문화비(도서, 공연 티켓, 박물관·미술관 입장권 등) 지출 여부입니다.
|
|
214
|
+
*/
|
|
215
|
+
isCulturalExpenses?: boolean | null;
|
|
212
216
|
} | null;
|
|
213
217
|
/**
|
|
214
218
|
* 구매자가 가상계좌를 선택하면 결제에 적용되는 옵션입니다.
|
|
@@ -253,6 +257,10 @@ interface WidgetPaymentRequest {
|
|
|
253
257
|
*/
|
|
254
258
|
type: '소득공제' | '지출증빙' | '미발행';
|
|
255
259
|
} | null;
|
|
260
|
+
/**
|
|
261
|
+
* 문화비(도서, 공연 티켓, 박물관·미술관 입장권 등) 지출 여부입니다.
|
|
262
|
+
*/
|
|
263
|
+
isCulturalExpenses?: boolean | null;
|
|
256
264
|
} | null;
|
|
257
265
|
/**
|
|
258
266
|
* 구매자가 해외간편결제를 선택하면 결제에 적용되는 옵션입니다.
|
|
@@ -344,6 +352,30 @@ interface WidgetPaymentRequest {
|
|
|
344
352
|
} | null;
|
|
345
353
|
} | null;
|
|
346
354
|
} | null;
|
|
355
|
+
/**
|
|
356
|
+
* @ignore
|
|
357
|
+
*/
|
|
358
|
+
subMerchantSetting?: {
|
|
359
|
+
normalClientKey?: string | null;
|
|
360
|
+
keyinClientKey?: string | null;
|
|
361
|
+
foreignEasyPayClientKey?: string | null;
|
|
362
|
+
brandpayClientKey?: string | null;
|
|
363
|
+
brandpayRedirectUrl?: string | null;
|
|
364
|
+
} | null;
|
|
365
|
+
/**
|
|
366
|
+
* @ignore
|
|
367
|
+
*/
|
|
368
|
+
subOrders?: Array<{
|
|
369
|
+
merchantBusinessNumber: string;
|
|
370
|
+
merchantName: string;
|
|
371
|
+
merchantAddress: {
|
|
372
|
+
country: string;
|
|
373
|
+
postalCode: string;
|
|
374
|
+
address: string;
|
|
375
|
+
detailAddress?: string | null;
|
|
376
|
+
};
|
|
377
|
+
orderName: string;
|
|
378
|
+
}> | null;
|
|
347
379
|
}
|
|
348
380
|
|
|
349
381
|
interface Amount {
|
|
@@ -608,7 +640,7 @@ interface BrandpayPaymentRequest {
|
|
|
608
640
|
*/
|
|
609
641
|
methodId?: string | null;
|
|
610
642
|
/**
|
|
611
|
-
* 결제 관련 정보를 추가할 수 있는 객체입니다. 최대 5개의 키-값(key-value) 쌍을 자유롭게 추가해주세요. 키는 `[` , `]` 를 사용하지 않는 최대 40자의 문자열, 값은 최대
|
|
643
|
+
* 결제 관련 정보를 추가할 수 있는 객체입니다. 최대 5개의 키-값(key-value) 쌍을 자유롭게 추가해주세요. 키는 `[` , `]` 를 사용하지 않는 최대 40자의 문자열, 값은 최대 2000자의 문자열입니다.
|
|
612
644
|
*/
|
|
613
645
|
metadata?: Record<string | symbol | number, unknown> | null;
|
|
614
646
|
}
|
|
@@ -801,6 +833,21 @@ type IsOneTouchPayEnabled = () => Promise<{
|
|
|
801
833
|
isEnabled: boolean;
|
|
802
834
|
}>;
|
|
803
835
|
|
|
836
|
+
/**
|
|
837
|
+
* 자동결제(빌링) 약관 동의와 비밀번호 인증을 수행합니다
|
|
838
|
+
*
|
|
839
|
+
* @example
|
|
840
|
+
* ```javascript
|
|
841
|
+
* brandpay.requestBillingAuth();
|
|
842
|
+
* ```
|
|
843
|
+
*
|
|
844
|
+
* @throws {@link PublicError.Brandpay.UserCancelError} 사용자가 자동결제 인증창을 닫은 경우
|
|
845
|
+
* @throws {@link PublicError.Brandpay.NotRegisteredRedirectUrlError} redirectUrl이 등록되지 않은 경우
|
|
846
|
+
* @throws {@link PublicError.Brandpay.InvalidMethodTransactionError} 이미 다른 명령을 수행 중인 경우
|
|
847
|
+
* @throws {@link PublicError.Brandpay.UnknownError} 알 수 없는 오류가 발생한 경우
|
|
848
|
+
*/
|
|
849
|
+
type RequestBillingAuth$1 = () => Promise<void>;
|
|
850
|
+
|
|
804
851
|
interface TossPaymentsBrandpay {
|
|
805
852
|
/**
|
|
806
853
|
* 브랜드페이 결제창을 띄웁니다. [자세히 >](#brandpayrequestpayment)
|
|
@@ -826,6 +873,13 @@ interface TossPaymentsBrandpay {
|
|
|
826
873
|
* 원터치결제 활성화 여부를 확인합니다. [자세히 >](#brandpayisonetouchpayenabled)
|
|
827
874
|
*/
|
|
828
875
|
isOneTouchPayEnabled: IsOneTouchPayEnabled;
|
|
876
|
+
/**
|
|
877
|
+
* 자동결제(빌링) 약관 동의와 비밀번호 인증을 수행합니다 [자세히 >](#brandpayrequestbillingauth)
|
|
878
|
+
*/
|
|
879
|
+
/**
|
|
880
|
+
* @ignore
|
|
881
|
+
*/
|
|
882
|
+
requestBillingAuth: RequestBillingAuth$1;
|
|
829
883
|
}
|
|
830
884
|
|
|
831
885
|
interface PaymentRequest {
|
|
@@ -870,7 +924,7 @@ interface PaymentRequest {
|
|
|
870
924
|
*/
|
|
871
925
|
pendingUrl?: string | null;
|
|
872
926
|
/**
|
|
873
|
-
* 결제 관련 정보를 추가할 수 있는 객체입니다. 최대 5개의 키-값(key-value) 쌍을 자유롭게 추가해주세요. 키는 `[` , `]` 를 사용하지 않는 최대 40자의 문자열, 값은 최대
|
|
927
|
+
* 결제 관련 정보를 추가할 수 있는 객체입니다. 최대 5개의 키-값(key-value) 쌍을 자유롭게 추가해주세요. 키는 `[` , `]` 를 사용하지 않는 최대 40자의 문자열, 값은 최대 2000자의 문자열입니다.
|
|
874
928
|
*/
|
|
875
929
|
metadata?: Record<string | symbol | number, unknown> | null;
|
|
876
930
|
/**
|
|
@@ -882,6 +936,20 @@ interface PaymentRequest {
|
|
|
882
936
|
*/
|
|
883
937
|
paymentResult: 'SUCCESS' | 'FAIL';
|
|
884
938
|
};
|
|
939
|
+
/**
|
|
940
|
+
* @ignore
|
|
941
|
+
*/
|
|
942
|
+
subOrders?: Array<{
|
|
943
|
+
merchantBusinessNumber: string;
|
|
944
|
+
merchantName: string;
|
|
945
|
+
merchantAddress: {
|
|
946
|
+
country: string;
|
|
947
|
+
postalCode: string;
|
|
948
|
+
address: string;
|
|
949
|
+
detailAddress?: string | null;
|
|
950
|
+
};
|
|
951
|
+
orderName: string;
|
|
952
|
+
}> | null;
|
|
885
953
|
}
|
|
886
954
|
|
|
887
955
|
interface CardPaymentRequest extends PaymentRequest {
|
|
@@ -922,21 +990,21 @@ interface CardPaymentRequest extends PaymentRequest {
|
|
|
922
990
|
/**
|
|
923
991
|
* 신용카드 결제에 적용되는 할부 개월 수입니다.
|
|
924
992
|
* 예를 들어, `6`으로 설정하면 할부 개월 수가 6개월로 고정돼요. 자체창에서는 구매자가 할부 개월 수를 볼 수 없으니 사전에 충분히 안내를 해주세요.
|
|
925
|
-
* 0(일시불), 2~12 값으로 설정할 수 있고 `maxCardInstallmentPlan` 파라미터와 함께 사용할 수 없어요. 카드사 별로 할부결제가 가능한 [최소 금액](https://
|
|
993
|
+
* 0(일시불), 2~12 값으로 설정할 수 있고 `maxCardInstallmentPlan` 파라미터와 함께 사용할 수 없어요. 카드사 별로 할부결제가 가능한 [최소 금액](https://consumer.tosspayments.com/notice/free-installment)을 확인하세요.
|
|
926
994
|
*/
|
|
927
995
|
cardInstallmentPlan?: number | null;
|
|
928
996
|
/**
|
|
929
997
|
* 신용카드 결제에 적용할 수 있는 최대 할부 개월 수입니다.
|
|
930
|
-
* 예를 들어, `6`으로 설정하면 구매자는 일시불부터 6개월 할부를 선택할 수 있어요. 0(일시불), 2~12 값으로 설정할 수 있고 `cardInstallmentPlan` 파라미터와 함께 사용할 수 없어요. 카드사 별로 할부결제가 가능한 [최소 금액](https://
|
|
998
|
+
* 예를 들어, `6`으로 설정하면 구매자는 일시불부터 6개월 할부를 선택할 수 있어요. 0(일시불), 2~12 값으로 설정할 수 있고 `cardInstallmentPlan` 파라미터와 함께 사용할 수 없어요. 카드사 별로 할부결제가 가능한 [최소 금액](https://consumer.tosspayments.com/notice/free-installment)을 확인하세요.
|
|
931
999
|
*/
|
|
932
1000
|
maxCardInstallmentPlan?: number | null;
|
|
933
1001
|
/**
|
|
934
1002
|
* 신용카드 결제에 적용할 수 있는 **상점 부담 무이자** 할부 정보입니다.
|
|
935
|
-
* 구매자가 선택한 카드, 할부 개월 수가 배열에 등록한 정보와 같다면 무이자가 할부가 자동으로 적용돼요. 카드사 별로 할부결제가 가능한 [최소 금액](https://
|
|
1003
|
+
* 구매자가 선택한 카드, 할부 개월 수가 배열에 등록한 정보와 같다면 무이자가 할부가 자동으로 적용돼요. 카드사 별로 할부결제가 가능한 [최소 금액](https://consumer.tosspayments.com/notice/free-installment)을 확인하세요.
|
|
936
1004
|
*/
|
|
937
1005
|
freeInstallmentPlans?: Array<{
|
|
938
1006
|
/**
|
|
939
|
-
* 상점 부담 무이자를 적용할 카드사 코드](/codes/org-codes#카드사-코드)입니다.
|
|
1007
|
+
* 상점 부담 무이자를 적용할 [카드사 코드](/codes/org-codes#카드사-코드)입니다.
|
|
940
1008
|
*/
|
|
941
1009
|
company: string;
|
|
942
1010
|
/**
|
|
@@ -998,6 +1066,15 @@ interface CardPaymentRequest extends PaymentRequest {
|
|
|
998
1066
|
* 페이북/ISP 앱에서 상점 앱으로 돌아올 때 사용됩니다. 상점의 앱 스킴을 지정하면 됩니다. 예를 들면 testapp://같은 형태입니다.
|
|
999
1067
|
*/
|
|
1000
1068
|
appScheme?: string | null;
|
|
1069
|
+
/**
|
|
1070
|
+
* 키인 결제정보입니다.
|
|
1071
|
+
*/
|
|
1072
|
+
keyin?: {
|
|
1073
|
+
/**
|
|
1074
|
+
* 결제화면에 노출할 카드 타입입니다. `PERSONAL`(개인카드), `CORPORATE`(법인카드), `FOREIGN`(해외카드) 값을 배열 형태로 전달할 수 있습니다. 입력한 순서대로 화면에 노출되며, 첫 번째로 입력한 카드 타입이 기본 선택됩니다.
|
|
1075
|
+
*/
|
|
1076
|
+
selectableCardTypes?: Array<'PERSONAL' | 'CORPORATE' | 'FOREIGN'> | null;
|
|
1077
|
+
} | null;
|
|
1001
1078
|
} | null;
|
|
1002
1079
|
}
|
|
1003
1080
|
|
|
@@ -1063,6 +1140,10 @@ interface VirtualAccountPaymentRequest extends PaymentRequest {
|
|
|
1063
1140
|
* 기한이 지나고 시도하는 결제는 실패해요. 예를 들어 `2025-01-01T00:00:00`으로 설정하면, 2024년 12월 31일 23:59까지 결제할 수 있어요.
|
|
1064
1141
|
*/
|
|
1065
1142
|
dueDate?: string | null;
|
|
1143
|
+
/**
|
|
1144
|
+
* 문화비(도서, 공연 티켓, 박물관·미술관 입장권 등) 지출 여부입니다.
|
|
1145
|
+
*/
|
|
1146
|
+
isCulturalExpenses?: boolean | null;
|
|
1066
1147
|
} | null;
|
|
1067
1148
|
}
|
|
1068
1149
|
|
|
@@ -1080,11 +1161,11 @@ interface TransferPaymentRequest extends PaymentRequest {
|
|
|
1080
1161
|
*/
|
|
1081
1162
|
taxExemptionAmount?: number | null;
|
|
1082
1163
|
/**
|
|
1083
|
-
*
|
|
1164
|
+
* 현금영수증 정보입니다.
|
|
1084
1165
|
*/
|
|
1085
1166
|
cashReceipt?: {
|
|
1086
1167
|
/**
|
|
1087
|
-
*
|
|
1168
|
+
* type을 '미발행' 으로 보내면 현금영수증을 발행하지 않습니다.
|
|
1088
1169
|
*/
|
|
1089
1170
|
type: '소득공제' | '지출증빙' | '미발행';
|
|
1090
1171
|
} | null;
|
|
@@ -1129,6 +1210,10 @@ interface TransferPaymentRequest extends PaymentRequest {
|
|
|
1129
1210
|
* 기한이 지나고 시도하는 결제는 실패해요. 예를 들어 `2025-01-01T00:00:00`으로 설정하면, 2024년 12월 31일 23:59까지 결제할 수 있어요.
|
|
1130
1211
|
*/
|
|
1131
1212
|
dueDate?: string | null;
|
|
1213
|
+
/**
|
|
1214
|
+
* 문화비(도서, 공연 티켓, 박물관·미술관 입장권 등) 지출 여부입니다.
|
|
1215
|
+
*/
|
|
1216
|
+
isCulturalExpenses?: boolean | null;
|
|
1132
1217
|
} | null;
|
|
1133
1218
|
}
|
|
1134
1219
|
|
|
@@ -1265,9 +1350,8 @@ interface RequestPaymentResult {
|
|
|
1265
1350
|
interface BillingAuthRequest {
|
|
1266
1351
|
/**
|
|
1267
1352
|
* 자동결제(빌링)에 등록할 결제수단입니다. 토스페이먼츠 자동결제는 현재 신용·체크카드만 지원해요.
|
|
1268
|
-
*
|
|
1269
1353
|
*/
|
|
1270
|
-
method: 'CARD';
|
|
1354
|
+
method: 'CARD' | 'TRANSFER';
|
|
1271
1355
|
/**
|
|
1272
1356
|
* 카드 등록이 성공하면 리다이렉트되는 URL입니다. 리다이렉트되면 URL의 쿼리 파라미터로 `authKey`, `customerKey`가 추가돼요. 값을 검증하고 [빌링키 발급 API](/reference#authkey로-카드-빌링키-발급)를 호출하세요.
|
|
1273
1357
|
* 반드시 오리진을 포함해야 합니다.
|
|
@@ -1298,6 +1382,10 @@ interface BillingAuthRequest {
|
|
|
1298
1382
|
* @default 'iframe'
|
|
1299
1383
|
*/
|
|
1300
1384
|
windowTarget?: 'iframe' | 'self' | null;
|
|
1385
|
+
/**
|
|
1386
|
+
* 결제화면에 노출할 카드 타입입니다. `PERSONAL`(개인카드), `CORPORATE`(법인카드) 값을 배열 형태로 전달할 수 있습니다. 입력한 순서대로 화면에 노출되며, 첫 번째로 입력한 카드 타입이 기본 선택됩니다.
|
|
1387
|
+
*/
|
|
1388
|
+
selectableCardTypes?: Array<'PERSONAL' | 'CORPORATE'> | null;
|
|
1301
1389
|
}
|
|
1302
1390
|
|
|
1303
1391
|
/**
|