@ducatjs/money 0.0.0 → 0.2.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.
- package/LICENSE +21 -0
- package/NOTICE +51 -0
- package/README.md +1034 -3
- package/assets/CREDITS.md +12 -0
- package/data/adyen-fx.json +19 -0
- package/data/adyen.json +171 -0
- package/data/braintree.json +223 -0
- package/data/cash-rounding.json +520 -0
- package/data/checkout.json +230 -0
- package/data/cldr-cash.json +101 -0
- package/data/historic.json +78 -0
- package/data/iso4217-list-one.xml +1956 -0
- package/data/iso4217-list-three.xml +1185 -0
- package/data/klarna.json +95 -0
- package/data/paypal.json +65 -0
- package/data/stripe-fx.json +17 -0
- package/data/stripe.json +285 -0
- package/dist/adyen-fx.d.ts +25 -0
- package/dist/adyen-fx.d.ts.map +1 -0
- package/dist/adyen-fx.js +140 -0
- package/dist/adyen-fx.js.map +1 -0
- package/dist/adyen.d.ts +25 -0
- package/dist/adyen.d.ts.map +1 -0
- package/dist/adyen.js +34 -0
- package/dist/adyen.js.map +1 -0
- package/dist/allocate.d.ts +72 -0
- package/dist/allocate.d.ts.map +1 -0
- package/dist/allocate.js +314 -0
- package/dist/allocate.js.map +1 -0
- package/dist/bag.d.ts +58 -0
- package/dist/bag.d.ts.map +1 -0
- package/dist/bag.js +122 -0
- package/dist/bag.js.map +1 -0
- package/dist/boc.d.ts +31 -0
- package/dist/boc.d.ts.map +1 -0
- package/dist/boc.js +114 -0
- package/dist/boc.js.map +1 -0
- package/dist/boe.d.ts +33 -0
- package/dist/boe.d.ts.map +1 -0
- package/dist/boe.js +114 -0
- package/dist/boe.js.map +1 -0
- package/dist/braintree.d.ts +34 -0
- package/dist/braintree.d.ts.map +1 -0
- package/dist/braintree.js +45 -0
- package/dist/braintree.js.map +1 -0
- package/dist/cash.d.ts +64 -0
- package/dist/cash.d.ts.map +1 -0
- package/dist/cash.js +134 -0
- package/dist/cash.js.map +1 -0
- package/dist/checkout.d.ts +42 -0
- package/dist/checkout.d.ts.map +1 -0
- package/dist/checkout.js +52 -0
- package/dist/checkout.js.map +1 -0
- package/dist/convert.d.ts +52 -0
- package/dist/convert.d.ts.map +1 -0
- package/dist/convert.js +65 -0
- package/dist/convert.js.map +1 -0
- package/dist/currency.d.ts +22 -0
- package/dist/currency.d.ts.map +1 -0
- package/dist/currency.js +38 -0
- package/dist/currency.js.map +1 -0
- package/dist/decimal.d.ts +52 -0
- package/dist/decimal.d.ts.map +1 -0
- package/dist/decimal.js +251 -0
- package/dist/decimal.js.map +1 -0
- package/dist/drizzle/mysql.d.ts +105 -0
- package/dist/drizzle/mysql.d.ts.map +1 -0
- package/dist/drizzle/mysql.js +60 -0
- package/dist/drizzle/mysql.js.map +1 -0
- package/dist/drizzle/pg.d.ts +103 -0
- package/dist/drizzle/pg.d.ts.map +1 -0
- package/dist/drizzle/pg.js +60 -0
- package/dist/drizzle/pg.js.map +1 -0
- package/dist/drizzle/sqlite.d.ts +102 -0
- package/dist/drizzle/sqlite.d.ts.map +1 -0
- package/dist/drizzle/sqlite.js +59 -0
- package/dist/drizzle/sqlite.js.map +1 -0
- package/dist/ecb.d.ts +52 -0
- package/dist/ecb.d.ts.map +1 -0
- package/dist/ecb.js +285 -0
- package/dist/ecb.js.map +1 -0
- package/dist/exact.d.ts +62 -0
- package/dist/exact.d.ts.map +1 -0
- package/dist/exact.js +147 -0
- package/dist/exact.js.map +1 -0
- package/dist/fed.d.ts +35 -0
- package/dist/fed.d.ts.map +1 -0
- package/dist/fed.js +134 -0
- package/dist/fed.js.map +1 -0
- package/dist/fetch.d.ts +103 -0
- package/dist/fetch.d.ts.map +1 -0
- package/dist/fetch.js +222 -0
- package/dist/fetch.js.map +1 -0
- package/dist/fixed.d.ts +121 -0
- package/dist/fixed.d.ts.map +1 -0
- package/dist/fixed.js +420 -0
- package/dist/fixed.js.map +1 -0
- package/dist/fn.d.ts +34 -0
- package/dist/fn.d.ts.map +1 -0
- package/dist/fn.js +37 -0
- package/dist/fn.js.map +1 -0
- package/dist/format.d.ts +13 -0
- package/dist/format.d.ts.map +1 -0
- package/dist/format.js +90 -0
- package/dist/format.js.map +1 -0
- package/dist/generated/adyen.d.ts +3 -0
- package/dist/generated/adyen.d.ts.map +1 -0
- package/dist/generated/adyen.js +144 -0
- package/dist/generated/adyen.js.map +1 -0
- package/dist/generated/braintree.d.ts +3 -0
- package/dist/generated/braintree.d.ts.map +1 -0
- package/dist/generated/braintree.js +140 -0
- package/dist/generated/braintree.js.map +1 -0
- package/dist/generated/cash.d.ts +14 -0
- package/dist/generated/cash.d.ts.map +1 -0
- package/dist/generated/cash.js +465 -0
- package/dist/generated/cash.js.map +1 -0
- package/dist/generated/checkout.d.ts +3 -0
- package/dist/generated/checkout.d.ts.map +1 -0
- package/dist/generated/checkout.js +151 -0
- package/dist/generated/checkout.js.map +1 -0
- package/dist/generated/historic.d.ts +337 -0
- package/dist/generated/historic.d.ts.map +1 -0
- package/dist/generated/historic.js +66 -0
- package/dist/generated/historic.js.map +1 -0
- package/dist/generated/iso4217.d.ts +174 -0
- package/dist/generated/iso4217.d.ts.map +1 -0
- package/dist/generated/iso4217.js +175 -0
- package/dist/generated/iso4217.js.map +1 -0
- package/dist/generated/kernel.d.ts +17 -0
- package/dist/generated/kernel.d.ts.map +1 -0
- package/dist/generated/kernel.js +208 -0
- package/dist/generated/kernel.js.map +1 -0
- package/dist/generated/klarna.d.ts +3 -0
- package/dist/generated/klarna.d.ts.map +1 -0
- package/dist/generated/klarna.js +21 -0
- package/dist/generated/klarna.js.map +1 -0
- package/dist/generated/paypal.d.ts +3 -0
- package/dist/generated/paypal.d.ts.map +1 -0
- package/dist/generated/paypal.js +31 -0
- package/dist/generated/paypal.js.map +1 -0
- package/dist/generated/stripe.d.ts +8 -0
- package/dist/generated/stripe.d.ts.map +1 -0
- package/dist/generated/stripe.js +150 -0
- package/dist/generated/stripe.js.map +1 -0
- package/dist/historic.d.ts +40 -0
- package/dist/historic.d.ts.map +1 -0
- package/dist/historic.js +43 -0
- package/dist/historic.js.map +1 -0
- package/dist/history.d.ts +96 -0
- package/dist/history.d.ts.map +1 -0
- package/dist/history.js +213 -0
- package/dist/history.js.map +1 -0
- package/dist/hmrc.d.ts +28 -0
- package/dist/hmrc.d.ts.map +1 -0
- package/dist/hmrc.js +108 -0
- package/dist/hmrc.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/klarna.d.ts +31 -0
- package/dist/klarna.d.ts.map +1 -0
- package/dist/klarna.js +38 -0
- package/dist/klarna.js.map +1 -0
- package/dist/kysely.d.ts +120 -0
- package/dist/kysely.d.ts.map +1 -0
- package/dist/kysely.js +309 -0
- package/dist/kysely.js.map +1 -0
- package/dist/money.d.ts +302 -0
- package/dist/money.d.ts.map +1 -0
- package/dist/money.js +703 -0
- package/dist/money.js.map +1 -0
- package/dist/parse.d.ts +55 -0
- package/dist/parse.d.ts.map +1 -0
- package/dist/parse.js +419 -0
- package/dist/parse.js.map +1 -0
- package/dist/paypal.d.ts +41 -0
- package/dist/paypal.d.ts.map +1 -0
- package/dist/paypal.js +58 -0
- package/dist/paypal.js.map +1 -0
- package/dist/pg.d.ts +100 -0
- package/dist/pg.d.ts.map +1 -0
- package/dist/pg.js +343 -0
- package/dist/pg.js.map +1 -0
- package/dist/plugins/adyen.d.ts +15 -0
- package/dist/plugins/adyen.d.ts.map +1 -0
- package/dist/plugins/adyen.js +10 -0
- package/dist/plugins/adyen.js.map +1 -0
- package/dist/plugins/all.d.ts +29 -0
- package/dist/plugins/all.d.ts.map +1 -0
- package/dist/plugins/all.js +30 -0
- package/dist/plugins/all.js.map +1 -0
- package/dist/plugins/allocate.d.ts +20 -0
- package/dist/plugins/allocate.d.ts.map +1 -0
- package/dist/plugins/allocate.js +26 -0
- package/dist/plugins/allocate.js.map +1 -0
- package/dist/plugins/braintree.d.ts +12 -0
- package/dist/plugins/braintree.d.ts.map +1 -0
- package/dist/plugins/braintree.js +12 -0
- package/dist/plugins/braintree.js.map +1 -0
- package/dist/plugins/cash.d.ts +19 -0
- package/dist/plugins/cash.d.ts.map +1 -0
- package/dist/plugins/cash.js +16 -0
- package/dist/plugins/cash.js.map +1 -0
- package/dist/plugins/checkout.d.ts +21 -0
- package/dist/plugins/checkout.d.ts.map +1 -0
- package/dist/plugins/checkout.js +16 -0
- package/dist/plugins/checkout.js.map +1 -0
- package/dist/plugins/convert.d.ts +19 -0
- package/dist/plugins/convert.d.ts.map +1 -0
- package/dist/plugins/convert.js +13 -0
- package/dist/plugins/convert.js.map +1 -0
- package/dist/plugins/exact.d.ts +15 -0
- package/dist/plugins/exact.d.ts.map +1 -0
- package/dist/plugins/exact.js +13 -0
- package/dist/plugins/exact.js.map +1 -0
- package/dist/plugins/fixed.d.ts +17 -0
- package/dist/plugins/fixed.d.ts.map +1 -0
- package/dist/plugins/fixed.js +13 -0
- package/dist/plugins/fixed.js.map +1 -0
- package/dist/plugins/format.d.ts +9 -0
- package/dist/plugins/format.d.ts.map +1 -0
- package/dist/plugins/format.js +16 -0
- package/dist/plugins/format.js.map +1 -0
- package/dist/plugins/klarna.d.ts +10 -0
- package/dist/plugins/klarna.d.ts.map +1 -0
- package/dist/plugins/klarna.js +10 -0
- package/dist/plugins/klarna.js.map +1 -0
- package/dist/plugins/paypal.d.ts +14 -0
- package/dist/plugins/paypal.d.ts.map +1 -0
- package/dist/plugins/paypal.js +16 -0
- package/dist/plugins/paypal.js.map +1 -0
- package/dist/plugins/prisma.d.ts +8 -0
- package/dist/plugins/prisma.d.ts.map +1 -0
- package/dist/plugins/prisma.js +13 -0
- package/dist/plugins/prisma.js.map +1 -0
- package/dist/plugins/stripe.d.ts +14 -0
- package/dist/plugins/stripe.d.ts.map +1 -0
- package/dist/plugins/stripe.js +16 -0
- package/dist/plugins/stripe.js.map +1 -0
- package/dist/plugins/tax.d.ts +20 -0
- package/dist/plugins/tax.d.ts.map +1 -0
- package/dist/plugins/tax.js +18 -0
- package/dist/plugins/tax.js.map +1 -0
- package/dist/policy.d.ts +34 -0
- package/dist/policy.d.ts.map +1 -0
- package/dist/policy.js +90 -0
- package/dist/policy.js.map +1 -0
- package/dist/prisma.d.ts +77 -0
- package/dist/prisma.d.ts.map +1 -0
- package/dist/prisma.js +76 -0
- package/dist/prisma.js.map +1 -0
- package/dist/processor.d.ts +28 -0
- package/dist/processor.d.ts.map +1 -0
- package/dist/processor.js +118 -0
- package/dist/processor.js.map +1 -0
- package/dist/provider.d.ts +103 -0
- package/dist/provider.d.ts.map +1 -0
- package/dist/provider.js +280 -0
- package/dist/provider.js.map +1 -0
- package/dist/rate-text.d.ts +38 -0
- package/dist/rate-text.d.ts.map +1 -0
- package/dist/rate-text.js +143 -0
- package/dist/rate-text.js.map +1 -0
- package/dist/rate.d.ts +175 -0
- package/dist/rate.d.ts.map +1 -0
- package/dist/rate.js +371 -0
- package/dist/rate.js.map +1 -0
- package/dist/rounding-error.d.ts +9 -0
- package/dist/rounding-error.d.ts.map +1 -0
- package/dist/rounding-error.js +9 -0
- package/dist/rounding-error.js.map +1 -0
- package/dist/rounding.d.ts +50 -0
- package/dist/rounding.d.ts.map +1 -0
- package/dist/rounding.js +87 -0
- package/dist/rounding.js.map +1 -0
- package/dist/schema.d.ts +43 -0
- package/dist/schema.d.ts.map +1 -0
- package/dist/schema.js +77 -0
- package/dist/schema.js.map +1 -0
- package/dist/sql.d.ts +54 -0
- package/dist/sql.d.ts.map +1 -0
- package/dist/sql.js +131 -0
- package/dist/sql.js.map +1 -0
- package/dist/stripe-fx.d.ts +22 -0
- package/dist/stripe-fx.d.ts.map +1 -0
- package/dist/stripe-fx.js +30 -0
- package/dist/stripe-fx.js.map +1 -0
- package/dist/stripe.d.ts +36 -0
- package/dist/stripe.d.ts.map +1 -0
- package/dist/stripe.js +39 -0
- package/dist/stripe.js.map +1 -0
- package/dist/tax.d.ts +33 -0
- package/dist/tax.d.ts.map +1 -0
- package/dist/tax.js +55 -0
- package/dist/tax.js.map +1 -0
- package/dist/testing/arbitraries.d.ts +43 -0
- package/dist/testing/arbitraries.d.ts.map +1 -0
- package/dist/testing/arbitraries.js +98 -0
- package/dist/testing/arbitraries.js.map +1 -0
- package/dist/testing/index.d.ts +67 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +159 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/jest.d.ts +2 -0
- package/dist/testing/jest.d.ts.map +1 -0
- package/dist/testing/jest.js +15 -0
- package/dist/testing/jest.js.map +1 -0
- package/dist/testing/vitest.d.ts +7 -0
- package/dist/testing/vitest.d.ts.map +1 -0
- package/dist/testing/vitest.js +12 -0
- package/dist/testing/vitest.js.map +1 -0
- package/dist/valibot.d.ts +33 -0
- package/dist/valibot.d.ts.map +1 -0
- package/dist/valibot.js +61 -0
- package/dist/valibot.js.map +1 -0
- package/dist/zod.d.ts +36 -0
- package/dist/zod.d.ts.map +1 -0
- package/dist/zod.js +58 -0
- package/dist/zod.js.map +1 -0
- package/package.json +280 -5
- package/src/adyen-fx.ts +175 -0
- package/src/adyen.ts +46 -0
- package/src/allocate.ts +393 -0
- package/src/bag.ts +170 -0
- package/src/boc.ts +136 -0
- package/src/boe.ts +131 -0
- package/src/braintree.ts +71 -0
- package/src/cash.ts +183 -0
- package/src/checkout.ts +77 -0
- package/src/convert.ts +177 -0
- package/src/currency.ts +61 -0
- package/src/decimal.ts +283 -0
- package/src/drizzle/mysql.ts +78 -0
- package/src/drizzle/pg.ts +78 -0
- package/src/drizzle/sqlite.ts +70 -0
- package/src/ecb.ts +328 -0
- package/src/exact.ts +182 -0
- package/src/fed.ts +146 -0
- package/src/fetch.ts +306 -0
- package/src/fixed.ts +558 -0
- package/src/fn.ts +94 -0
- package/src/format.ts +106 -0
- package/src/generated/adyen.ts +144 -0
- package/src/generated/braintree.ts +140 -0
- package/src/generated/cash.ts +478 -0
- package/src/generated/checkout.ts +151 -0
- package/src/generated/historic.ts +67 -0
- package/src/generated/iso4217.ts +179 -0
- package/src/generated/kernel.ts +230 -0
- package/src/generated/klarna.ts +21 -0
- package/src/generated/paypal.ts +31 -0
- package/src/generated/stripe.ts +150 -0
- package/src/historic.ts +77 -0
- package/src/history.ts +333 -0
- package/src/hmrc.ts +125 -0
- package/src/index.ts +41 -0
- package/src/klarna.ts +54 -0
- package/src/kysely.ts +588 -0
- package/src/money.ts +979 -0
- package/src/parse.ts +511 -0
- package/src/paypal.ts +93 -0
- package/src/pg.ts +410 -0
- package/src/plugins/adyen.ts +25 -0
- package/src/plugins/all.ts +57 -0
- package/src/plugins/allocate.ts +53 -0
- package/src/plugins/braintree.ts +23 -0
- package/src/plugins/cash.ts +33 -0
- package/src/plugins/checkout.ts +32 -0
- package/src/plugins/convert.ts +49 -0
- package/src/plugins/exact.ts +23 -0
- package/src/plugins/fixed.ts +28 -0
- package/src/plugins/format.ts +28 -0
- package/src/plugins/klarna.ts +21 -0
- package/src/plugins/paypal.ts +29 -0
- package/src/plugins/prisma.ts +24 -0
- package/src/plugins/stripe.ts +29 -0
- package/src/plugins/tax.ts +40 -0
- package/src/policy.ts +124 -0
- package/src/prisma.ts +199 -0
- package/src/processor.ts +181 -0
- package/src/provider.ts +389 -0
- package/src/rate-text.ts +151 -0
- package/src/rate.ts +546 -0
- package/src/rounding-error.ts +8 -0
- package/src/rounding.ts +122 -0
- package/src/schema.ts +119 -0
- package/src/sql.ts +178 -0
- package/src/stripe-fx.ts +49 -0
- package/src/stripe.ts +69 -0
- package/src/tax.ts +102 -0
- package/src/testing/arbitraries.ts +134 -0
- package/src/testing/index.ts +247 -0
- package/src/testing/jest.ts +18 -0
- package/src/testing/vitest.ts +18 -0
- package/src/valibot.ts +87 -0
- package/src/zod.ts +78 -0
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
{
|
|
2
|
+
"processor": "Checkout.com",
|
|
3
|
+
"retrieved": "2026-11-07",
|
|
4
|
+
"amountFormat": "integer",
|
|
5
|
+
"sources": {
|
|
6
|
+
"format": {
|
|
7
|
+
"url": "https://www.checkout.com/docs/payments/accept-payments/format-the-amount-value",
|
|
8
|
+
"quotes": [
|
|
9
|
+
"Additionally, the `amount` value must: Be greater than zero; Not contain decimals; Not contain more than nine digits",
|
|
10
|
+
"For the following currencies, the `amount` you specify is the final amount, without any additional calculations. For example, the following payment request with `amount` set to `100` is for 100 Japanese Yen",
|
|
11
|
+
"For the following currencies, the `amount` you specify is divided by 1000 to determine the final amount. For example, the following payment request with `amount` set to `100000` is for 100 Bahraini Dinar.",
|
|
12
|
+
"The last digit must always be a `0`. For example, an `amount` value of `1001` is invalid.",
|
|
13
|
+
"For all other currencies, the `amount` you specify is divided by 100 to determine the final amount. For example, the following payment request with `amount` set to `10000` is for 100 US Dollars.",
|
|
14
|
+
"For payment requests in which the `currency` is `CLP` (Chilean Peso), the last two digits of the `amount` must be `00`. For example, an `amount` value of `100010` is invalid.",
|
|
15
|
+
"This does not apply to authentication requests sent using the Standalone API."
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
"currencies": {
|
|
19
|
+
"url": "https://www.checkout.com/docs/developer-resources/codes/currency-codes",
|
|
20
|
+
"quotes": [
|
|
21
|
+
"The following table lists the three-letter ISO 4217 code for each of the major currencies we support."
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
"api": {
|
|
25
|
+
"url": "https://api-reference.checkout.com/v1/swagger.json",
|
|
26
|
+
"quotes": [
|
|
27
|
+
"PaymentRequest.amount: {\"maximum\": 9999999999, \"minimum\": 0, \"type\": \"integer\", \"format\": \"int64\"}",
|
|
28
|
+
"The payment amount. To perform a card verification, do not provide the amount or provide a value of `0`."
|
|
29
|
+
]
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"defaultExponent": 2,
|
|
33
|
+
"exponents": {
|
|
34
|
+
"BIF": 0,
|
|
35
|
+
"DJF": 0,
|
|
36
|
+
"GNF": 0,
|
|
37
|
+
"ISK": 0,
|
|
38
|
+
"JPY": 0,
|
|
39
|
+
"KMF": 0,
|
|
40
|
+
"KRW": 0,
|
|
41
|
+
"PYG": 0,
|
|
42
|
+
"RWF": 0,
|
|
43
|
+
"UGX": 0,
|
|
44
|
+
"VUV": 0,
|
|
45
|
+
"VND": 0,
|
|
46
|
+
"XAF": 0,
|
|
47
|
+
"XOF": 0,
|
|
48
|
+
"XPF": 0,
|
|
49
|
+
"BHD": 3,
|
|
50
|
+
"IQD": 3,
|
|
51
|
+
"JOD": 3,
|
|
52
|
+
"KWD": 3,
|
|
53
|
+
"LYD": 3,
|
|
54
|
+
"OMR": 3,
|
|
55
|
+
"TND": 3
|
|
56
|
+
},
|
|
57
|
+
"multiples": {
|
|
58
|
+
"BHD": 10,
|
|
59
|
+
"IQD": 10,
|
|
60
|
+
"JOD": 10,
|
|
61
|
+
"KWD": 10,
|
|
62
|
+
"LYD": 10,
|
|
63
|
+
"OMR": 10,
|
|
64
|
+
"TND": 10,
|
|
65
|
+
"CLP": 100
|
|
66
|
+
},
|
|
67
|
+
"standaloneMultiples": {
|
|
68
|
+
"CLP": 1
|
|
69
|
+
},
|
|
70
|
+
"currencies": [
|
|
71
|
+
"AED",
|
|
72
|
+
"AFN",
|
|
73
|
+
"ALL",
|
|
74
|
+
"AMD",
|
|
75
|
+
"AOA",
|
|
76
|
+
"AUD",
|
|
77
|
+
"AWG",
|
|
78
|
+
"AZN",
|
|
79
|
+
"BAM",
|
|
80
|
+
"BBD",
|
|
81
|
+
"BDT",
|
|
82
|
+
"BHD",
|
|
83
|
+
"BIF",
|
|
84
|
+
"BMD",
|
|
85
|
+
"BND",
|
|
86
|
+
"BOB",
|
|
87
|
+
"BRL",
|
|
88
|
+
"BSD",
|
|
89
|
+
"BTN",
|
|
90
|
+
"BWP",
|
|
91
|
+
"BZD",
|
|
92
|
+
"CAD",
|
|
93
|
+
"CDF",
|
|
94
|
+
"CHF",
|
|
95
|
+
"CLP",
|
|
96
|
+
"CNY",
|
|
97
|
+
"COP",
|
|
98
|
+
"CRC",
|
|
99
|
+
"CUP",
|
|
100
|
+
"CVE",
|
|
101
|
+
"CZK",
|
|
102
|
+
"DJF",
|
|
103
|
+
"DKK",
|
|
104
|
+
"DOP",
|
|
105
|
+
"DZD",
|
|
106
|
+
"EGP",
|
|
107
|
+
"ERN",
|
|
108
|
+
"ETB",
|
|
109
|
+
"EUR",
|
|
110
|
+
"FJD",
|
|
111
|
+
"FKP",
|
|
112
|
+
"GBP",
|
|
113
|
+
"GEL",
|
|
114
|
+
"GIP",
|
|
115
|
+
"GNF",
|
|
116
|
+
"GTQ",
|
|
117
|
+
"GYD",
|
|
118
|
+
"HKD",
|
|
119
|
+
"HNL",
|
|
120
|
+
"HTG",
|
|
121
|
+
"HUF",
|
|
122
|
+
"IDR",
|
|
123
|
+
"ILS",
|
|
124
|
+
"INR",
|
|
125
|
+
"IQD",
|
|
126
|
+
"IRR",
|
|
127
|
+
"ISK",
|
|
128
|
+
"JMD",
|
|
129
|
+
"JOD",
|
|
130
|
+
"JPY",
|
|
131
|
+
"KES",
|
|
132
|
+
"KGS",
|
|
133
|
+
"KHR",
|
|
134
|
+
"KMF",
|
|
135
|
+
"KRW",
|
|
136
|
+
"KWD",
|
|
137
|
+
"KYD",
|
|
138
|
+
"KZT",
|
|
139
|
+
"LAK",
|
|
140
|
+
"LKR",
|
|
141
|
+
"LRD",
|
|
142
|
+
"LSL",
|
|
143
|
+
"LYD",
|
|
144
|
+
"MAD",
|
|
145
|
+
"MDL",
|
|
146
|
+
"MGA",
|
|
147
|
+
"MKD",
|
|
148
|
+
"MMK",
|
|
149
|
+
"MNT",
|
|
150
|
+
"MOP",
|
|
151
|
+
"MRU",
|
|
152
|
+
"MUR",
|
|
153
|
+
"MVR",
|
|
154
|
+
"MWK",
|
|
155
|
+
"MXN",
|
|
156
|
+
"MYR",
|
|
157
|
+
"MZN",
|
|
158
|
+
"NAD",
|
|
159
|
+
"NGN",
|
|
160
|
+
"NIO",
|
|
161
|
+
"NOK",
|
|
162
|
+
"NPR",
|
|
163
|
+
"NZD",
|
|
164
|
+
"OMR",
|
|
165
|
+
"PAB",
|
|
166
|
+
"PEN",
|
|
167
|
+
"PGK",
|
|
168
|
+
"PHP",
|
|
169
|
+
"PKR",
|
|
170
|
+
"PLN",
|
|
171
|
+
"PYG",
|
|
172
|
+
"QAR",
|
|
173
|
+
"RON",
|
|
174
|
+
"RSD",
|
|
175
|
+
"RWF",
|
|
176
|
+
"SAR",
|
|
177
|
+
"SBD",
|
|
178
|
+
"SCR",
|
|
179
|
+
"SEK",
|
|
180
|
+
"SGD",
|
|
181
|
+
"SHP",
|
|
182
|
+
"SLE",
|
|
183
|
+
"SLL",
|
|
184
|
+
"SOS",
|
|
185
|
+
"SRD",
|
|
186
|
+
"STN",
|
|
187
|
+
"SVC",
|
|
188
|
+
"SZL",
|
|
189
|
+
"THB",
|
|
190
|
+
"TJS",
|
|
191
|
+
"TMT",
|
|
192
|
+
"TND",
|
|
193
|
+
"TOP",
|
|
194
|
+
"TRY",
|
|
195
|
+
"TTD",
|
|
196
|
+
"TWD",
|
|
197
|
+
"TZS",
|
|
198
|
+
"UAH",
|
|
199
|
+
"UGX",
|
|
200
|
+
"USD",
|
|
201
|
+
"UYU",
|
|
202
|
+
"UZS",
|
|
203
|
+
"VES",
|
|
204
|
+
"VND",
|
|
205
|
+
"VUV",
|
|
206
|
+
"WST",
|
|
207
|
+
"XAF",
|
|
208
|
+
"XCD",
|
|
209
|
+
"XCG",
|
|
210
|
+
"XDR",
|
|
211
|
+
"XOF",
|
|
212
|
+
"XPF",
|
|
213
|
+
"YER",
|
|
214
|
+
"ZAR",
|
|
215
|
+
"ZMW"
|
|
216
|
+
],
|
|
217
|
+
"notes": [
|
|
218
|
+
"CLP is not in the full-amount list, so it falls under \"all other currencies\": two decimals, with the last two digits 00 for payments (like Stripe's ISK). ISO 4217 and Stripe give CLP 0 decimals; Adyen gives it 2 without the 00 rule.",
|
|
219
|
+
"Three-decimal currencies include IQD and LYD (Stripe lists neither); all seven need the last digit 0.",
|
|
220
|
+
"UYI (ISO 0 decimals) is not on the currency-codes page. MGA follows ISO (2), unlike Stripe (0).",
|
|
221
|
+
"The currency-codes page lists SLL (withdrawn from ISO 4217) and XDR (ISO minor unit N.A.); both fall under \"all other currencies\" (2). It does not list CLF, UYW, UYI, VED or ZWG.",
|
|
222
|
+
"Limits disagree: the format page says greater than zero and at most nine digits; the API reference allows 0 (card verification) up to 9999999999 (ten digits). Neither limit is enforced by ducat."
|
|
223
|
+
],
|
|
224
|
+
"unverified": [
|
|
225
|
+
{
|
|
226
|
+
"claim": "The currency-codes page is the complete list of accepted presentment currencies (it says \"major currencies\").",
|
|
227
|
+
"verified": false
|
|
228
|
+
}
|
|
229
|
+
]
|
|
230
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
{
|
|
2
|
+
"source": "https://raw.githubusercontent.com/unicode-org/cldr/release-49/common/supplemental/supplementalData.xml",
|
|
3
|
+
"note": "CLDR <currencyData> fractions with a cash rule. cashDigits is the number of decimals cash amounts show, and cashRounding (0 means 1) the step in units of the last of them: CHF cashDigits 2, cashRounding 5 is CHF 0.05.",
|
|
4
|
+
"currencies": {
|
|
5
|
+
"AMD": {
|
|
6
|
+
"digits": 2,
|
|
7
|
+
"cashDigits": 0,
|
|
8
|
+
"cashRounding": 0
|
|
9
|
+
},
|
|
10
|
+
"CAD": {
|
|
11
|
+
"digits": 2,
|
|
12
|
+
"cashDigits": 2,
|
|
13
|
+
"cashRounding": 5
|
|
14
|
+
},
|
|
15
|
+
"CHF": {
|
|
16
|
+
"digits": 2,
|
|
17
|
+
"cashDigits": 2,
|
|
18
|
+
"cashRounding": 5
|
|
19
|
+
},
|
|
20
|
+
"CRC": {
|
|
21
|
+
"digits": 2,
|
|
22
|
+
"cashDigits": 0,
|
|
23
|
+
"cashRounding": 0
|
|
24
|
+
},
|
|
25
|
+
"CZK": {
|
|
26
|
+
"digits": 2,
|
|
27
|
+
"cashDigits": 0,
|
|
28
|
+
"cashRounding": 0
|
|
29
|
+
},
|
|
30
|
+
"DKK": {
|
|
31
|
+
"digits": 2,
|
|
32
|
+
"cashDigits": 2,
|
|
33
|
+
"cashRounding": 50
|
|
34
|
+
},
|
|
35
|
+
"GYD": {
|
|
36
|
+
"digits": 2,
|
|
37
|
+
"cashDigits": 0,
|
|
38
|
+
"cashRounding": 0
|
|
39
|
+
},
|
|
40
|
+
"HUF": {
|
|
41
|
+
"digits": 0,
|
|
42
|
+
"cashDigits": 0,
|
|
43
|
+
"cashRounding": 5
|
|
44
|
+
},
|
|
45
|
+
"MNT": {
|
|
46
|
+
"digits": 2,
|
|
47
|
+
"cashDigits": 0,
|
|
48
|
+
"cashRounding": 0
|
|
49
|
+
},
|
|
50
|
+
"MRU": {
|
|
51
|
+
"digits": 2,
|
|
52
|
+
"cashDigits": 2,
|
|
53
|
+
"cashRounding": 20
|
|
54
|
+
},
|
|
55
|
+
"MUR": {
|
|
56
|
+
"digits": 2,
|
|
57
|
+
"cashDigits": 0,
|
|
58
|
+
"cashRounding": 0
|
|
59
|
+
},
|
|
60
|
+
"NOK": {
|
|
61
|
+
"digits": 2,
|
|
62
|
+
"cashDigits": 0,
|
|
63
|
+
"cashRounding": 0
|
|
64
|
+
},
|
|
65
|
+
"PKR": {
|
|
66
|
+
"digits": 2,
|
|
67
|
+
"cashDigits": 0,
|
|
68
|
+
"cashRounding": 0
|
|
69
|
+
},
|
|
70
|
+
"RSD": {
|
|
71
|
+
"digits": 2,
|
|
72
|
+
"cashDigits": 0,
|
|
73
|
+
"cashRounding": 0
|
|
74
|
+
},
|
|
75
|
+
"SEK": {
|
|
76
|
+
"digits": 2,
|
|
77
|
+
"cashDigits": 0,
|
|
78
|
+
"cashRounding": 0
|
|
79
|
+
},
|
|
80
|
+
"TWD": {
|
|
81
|
+
"digits": 2,
|
|
82
|
+
"cashDigits": 0,
|
|
83
|
+
"cashRounding": 0
|
|
84
|
+
},
|
|
85
|
+
"TZS": {
|
|
86
|
+
"digits": 2,
|
|
87
|
+
"cashDigits": 0,
|
|
88
|
+
"cashRounding": 0
|
|
89
|
+
},
|
|
90
|
+
"UZS": {
|
|
91
|
+
"digits": 2,
|
|
92
|
+
"cashDigits": 0,
|
|
93
|
+
"cashRounding": 0
|
|
94
|
+
},
|
|
95
|
+
"VEF": {
|
|
96
|
+
"digits": 2,
|
|
97
|
+
"cashDigits": 0,
|
|
98
|
+
"cashRounding": 0
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
{
|
|
2
|
+
"description": "Withdrawn ISO 4217 codes and non-ISO codes for @ducatjs/money/historic. Codes, names and withdrawal dates come from ISO 4217 List Three (data/iso4217-list-three.xml). List Three has no minor units, so each exponent here is the one ISO 4217 gave the code while it was current. Only codes whose exponent is sourced are included.",
|
|
3
|
+
"sources": {
|
|
4
|
+
"listThree": {
|
|
5
|
+
"url": "https://www.six-group.com/dam/download/financial-information/data-center/iso-currrency/lists/list-three.xml",
|
|
6
|
+
"published": "2026-01-01",
|
|
7
|
+
"retrieved": "2026-11-08"
|
|
8
|
+
},
|
|
9
|
+
"exponents": {
|
|
10
|
+
"url": "https://github.com/openjdk/jdk/blob/master/src/java.base/share/data/currency/CurrencyData.properties",
|
|
11
|
+
"note": "OpenJDK's currency data (dataVersion 180) keeps the ISO 4217 minor units of withdrawn codes; codes it lists as minorUndefined (XFO, XFU) are not monetary and are left out",
|
|
12
|
+
"retrieved": "2026-11-08"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"exponents": {
|
|
16
|
+
"ADP": 0,
|
|
17
|
+
"AFA": 2,
|
|
18
|
+
"ANG": 2,
|
|
19
|
+
"ATS": 2,
|
|
20
|
+
"AYM": 2,
|
|
21
|
+
"AZM": 2,
|
|
22
|
+
"BEF": 0,
|
|
23
|
+
"BGL": 2,
|
|
24
|
+
"BGN": 2,
|
|
25
|
+
"BYB": 0,
|
|
26
|
+
"BYR": 0,
|
|
27
|
+
"CSD": 2,
|
|
28
|
+
"CUC": 2,
|
|
29
|
+
"CYP": 2,
|
|
30
|
+
"DEM": 2,
|
|
31
|
+
"EEK": 2,
|
|
32
|
+
"ESP": 0,
|
|
33
|
+
"FIM": 2,
|
|
34
|
+
"FRF": 2,
|
|
35
|
+
"GHC": 2,
|
|
36
|
+
"GRD": 0,
|
|
37
|
+
"GWP": 2,
|
|
38
|
+
"HRK": 2,
|
|
39
|
+
"IEP": 2,
|
|
40
|
+
"ITL": 0,
|
|
41
|
+
"LTL": 2,
|
|
42
|
+
"LUF": 0,
|
|
43
|
+
"LVL": 2,
|
|
44
|
+
"MGF": 0,
|
|
45
|
+
"MRO": 2,
|
|
46
|
+
"MTL": 2,
|
|
47
|
+
"MZM": 2,
|
|
48
|
+
"NLG": 2,
|
|
49
|
+
"PTE": 0,
|
|
50
|
+
"ROL": 0,
|
|
51
|
+
"RUR": 2,
|
|
52
|
+
"SDD": 2,
|
|
53
|
+
"SIT": 2,
|
|
54
|
+
"SKK": 2,
|
|
55
|
+
"SLL": 2,
|
|
56
|
+
"SRG": 2,
|
|
57
|
+
"STD": 2,
|
|
58
|
+
"TMM": 2,
|
|
59
|
+
"TPE": 0,
|
|
60
|
+
"TRL": 0,
|
|
61
|
+
"USS": 2,
|
|
62
|
+
"VEB": 2,
|
|
63
|
+
"VEF": 2,
|
|
64
|
+
"YUM": 2,
|
|
65
|
+
"ZMK": 2,
|
|
66
|
+
"ZWD": 2,
|
|
67
|
+
"ZWL": 2,
|
|
68
|
+
"ZWN": 2,
|
|
69
|
+
"ZWR": 2
|
|
70
|
+
},
|
|
71
|
+
"nonIso": {
|
|
72
|
+
"CNH": {
|
|
73
|
+
"name": "Chinese Yuan Renminbi (offshore)",
|
|
74
|
+
"exponent": 2,
|
|
75
|
+
"note": "the offshore renminbi traded in Hong Kong; not an ISO 4217 code, listed by Adyen"
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|