mollie-api-typescript 1.2.2 → 1.2.4

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 (225) hide show
  1. package/FUNCTIONS.md +1 -1
  2. package/README.md +14 -7
  3. package/bin/mcp-server.js +742 -258
  4. package/bin/mcp-server.js.map +25 -14
  5. package/dist/commonjs/funcs/capabilitiesList.d.ts +3 -0
  6. package/dist/commonjs/funcs/capabilitiesList.d.ts.map +1 -1
  7. package/dist/commonjs/funcs/capabilitiesList.js +3 -0
  8. package/dist/commonjs/funcs/capabilitiesList.js.map +1 -1
  9. package/dist/commonjs/funcs/sessionsCreate.d.ts +23 -0
  10. package/dist/commonjs/funcs/sessionsCreate.d.ts.map +1 -0
  11. package/dist/commonjs/funcs/sessionsCreate.js +139 -0
  12. package/dist/commonjs/funcs/sessionsCreate.js.map +1 -0
  13. package/dist/commonjs/funcs/sessionsGet.d.ts +22 -0
  14. package/dist/commonjs/funcs/sessionsGet.d.ts.map +1 -0
  15. package/dist/commonjs/funcs/sessionsGet.js +136 -0
  16. package/dist/commonjs/funcs/sessionsGet.js.map +1 -0
  17. package/dist/commonjs/lib/config.d.ts +3 -3
  18. package/dist/commonjs/lib/config.js +3 -3
  19. package/dist/commonjs/mcp-server/mcp-server.js +1 -1
  20. package/dist/commonjs/mcp-server/server.d.ts.map +1 -1
  21. package/dist/commonjs/mcp-server/server.js +5 -1
  22. package/dist/commonjs/mcp-server/server.js.map +1 -1
  23. package/dist/commonjs/mcp-server/tools/capabilitiesList.d.ts.map +1 -1
  24. package/dist/commonjs/mcp-server/tools/capabilitiesList.js +3 -0
  25. package/dist/commonjs/mcp-server/tools/capabilitiesList.js.map +1 -1
  26. package/dist/commonjs/mcp-server/tools/sessionsCreate.d.ts +8 -0
  27. package/dist/commonjs/mcp-server/tools/sessionsCreate.d.ts.map +1 -0
  28. package/dist/commonjs/mcp-server/tools/sessionsCreate.js +68 -0
  29. package/dist/commonjs/mcp-server/tools/sessionsCreate.js.map +1 -0
  30. package/dist/commonjs/mcp-server/tools/sessionsGet.d.ts +8 -0
  31. package/dist/commonjs/mcp-server/tools/sessionsGet.d.ts.map +1 -0
  32. package/dist/commonjs/mcp-server/tools/sessionsGet.js +68 -0
  33. package/dist/commonjs/mcp-server/tools/sessionsGet.js.map +1 -0
  34. package/dist/commonjs/models/entitybalancetransaction.d.ts +8 -8
  35. package/dist/commonjs/models/entitybalancetransaction.d.ts.map +1 -1
  36. package/dist/commonjs/models/entitybalancetransaction.js +11 -11
  37. package/dist/commonjs/models/entitybalancetransaction.js.map +1 -1
  38. package/dist/commonjs/models/entitycapabilityrequirement.d.ts +2 -1
  39. package/dist/commonjs/models/entitycapabilityrequirement.d.ts.map +1 -1
  40. package/dist/commonjs/models/entitycapabilityrequirement.js.map +1 -1
  41. package/dist/commonjs/models/index.d.ts +6 -1
  42. package/dist/commonjs/models/index.d.ts.map +1 -1
  43. package/dist/commonjs/models/index.js +6 -1
  44. package/dist/commonjs/models/index.js.map +1 -1
  45. package/dist/commonjs/models/operations/createsession.d.ts +23 -0
  46. package/dist/commonjs/models/operations/createsession.d.ts.map +1 -0
  47. package/dist/commonjs/models/operations/createsession.js +72 -0
  48. package/dist/commonjs/models/operations/createsession.js.map +1 -0
  49. package/dist/commonjs/models/operations/getmethod.d.ts +1 -1
  50. package/dist/commonjs/models/operations/getmethod.d.ts.map +1 -1
  51. package/dist/commonjs/models/operations/getmethod.js +2 -2
  52. package/dist/commonjs/models/operations/getmethod.js.map +1 -1
  53. package/dist/commonjs/models/operations/getsession.d.ts +25 -0
  54. package/dist/commonjs/models/operations/getsession.d.ts.map +1 -0
  55. package/dist/commonjs/models/operations/getsession.js +69 -0
  56. package/dist/commonjs/models/operations/getsession.js.map +1 -0
  57. package/dist/commonjs/models/operations/index.d.ts +2 -0
  58. package/dist/commonjs/models/operations/index.d.ts.map +1 -1
  59. package/dist/commonjs/models/operations/index.js +2 -0
  60. package/dist/commonjs/models/operations/index.js.map +1 -1
  61. package/dist/commonjs/models/sessionlineitem.d.ts +84 -0
  62. package/dist/commonjs/models/sessionlineitem.d.ts.map +1 -0
  63. package/dist/commonjs/models/sessionlineitem.js +82 -0
  64. package/dist/commonjs/models/sessionlineitem.js.map +1 -0
  65. package/dist/commonjs/models/sessionlineitemresponse.d.ts +84 -0
  66. package/dist/commonjs/models/sessionlineitemresponse.d.ts.map +1 -0
  67. package/dist/commonjs/models/sessionlineitemresponse.js +82 -0
  68. package/dist/commonjs/models/sessionlineitemresponse.js.map +1 -0
  69. package/dist/commonjs/models/sessionrequest.d.ts +119 -0
  70. package/dist/commonjs/models/sessionrequest.d.ts.map +1 -0
  71. package/dist/commonjs/models/sessionrequest.js +100 -0
  72. package/dist/commonjs/models/sessionrequest.js.map +1 -0
  73. package/dist/commonjs/models/sessionresponse.d.ts +181 -0
  74. package/dist/commonjs/models/sessionresponse.d.ts.map +1 -0
  75. package/dist/commonjs/models/sessionresponse.js +152 -0
  76. package/dist/commonjs/models/sessionresponse.js.map +1 -0
  77. package/dist/commonjs/models/sessionsequencetype.d.ts +12 -0
  78. package/dist/commonjs/models/sessionsequencetype.d.ts.map +1 -0
  79. package/dist/commonjs/models/sessionsequencetype.js +49 -0
  80. package/dist/commonjs/models/sessionsequencetype.js.map +1 -0
  81. package/dist/commonjs/models/sessionsequencetyperesponse.d.ts +12 -0
  82. package/dist/commonjs/models/sessionsequencetyperesponse.d.ts.map +1 -0
  83. package/dist/commonjs/models/sessionsequencetyperesponse.js +49 -0
  84. package/dist/commonjs/models/sessionsequencetyperesponse.js.map +1 -0
  85. package/dist/commonjs/sdk/capabilities.d.ts +3 -0
  86. package/dist/commonjs/sdk/capabilities.d.ts.map +1 -1
  87. package/dist/commonjs/sdk/capabilities.js +3 -0
  88. package/dist/commonjs/sdk/capabilities.js.map +1 -1
  89. package/dist/commonjs/sdk/sdk.d.ts +3 -0
  90. package/dist/commonjs/sdk/sdk.d.ts.map +1 -1
  91. package/dist/commonjs/sdk/sdk.js +4 -0
  92. package/dist/commonjs/sdk/sdk.js.map +1 -1
  93. package/dist/commonjs/sdk/sessions.d.ts +28 -0
  94. package/dist/commonjs/sdk/sessions.d.ts.map +1 -0
  95. package/dist/commonjs/sdk/sessions.js +40 -0
  96. package/dist/commonjs/sdk/sessions.js.map +1 -0
  97. package/dist/esm/funcs/capabilitiesList.d.ts +3 -0
  98. package/dist/esm/funcs/capabilitiesList.d.ts.map +1 -1
  99. package/dist/esm/funcs/capabilitiesList.js +3 -0
  100. package/dist/esm/funcs/capabilitiesList.js.map +1 -1
  101. package/dist/esm/funcs/sessionsCreate.d.ts +23 -0
  102. package/dist/esm/funcs/sessionsCreate.d.ts.map +1 -0
  103. package/dist/esm/funcs/sessionsCreate.js +103 -0
  104. package/dist/esm/funcs/sessionsCreate.js.map +1 -0
  105. package/dist/esm/funcs/sessionsGet.d.ts +22 -0
  106. package/dist/esm/funcs/sessionsGet.d.ts.map +1 -0
  107. package/dist/esm/funcs/sessionsGet.js +100 -0
  108. package/dist/esm/funcs/sessionsGet.js.map +1 -0
  109. package/dist/esm/lib/config.d.ts +3 -3
  110. package/dist/esm/lib/config.js +3 -3
  111. package/dist/esm/mcp-server/mcp-server.js +1 -1
  112. package/dist/esm/mcp-server/server.d.ts.map +1 -1
  113. package/dist/esm/mcp-server/server.js +5 -1
  114. package/dist/esm/mcp-server/server.js.map +1 -1
  115. package/dist/esm/mcp-server/tools/capabilitiesList.d.ts.map +1 -1
  116. package/dist/esm/mcp-server/tools/capabilitiesList.js +3 -0
  117. package/dist/esm/mcp-server/tools/capabilitiesList.js.map +1 -1
  118. package/dist/esm/mcp-server/tools/sessionsCreate.d.ts +8 -0
  119. package/dist/esm/mcp-server/tools/sessionsCreate.d.ts.map +1 -0
  120. package/dist/esm/mcp-server/tools/sessionsCreate.js +32 -0
  121. package/dist/esm/mcp-server/tools/sessionsCreate.js.map +1 -0
  122. package/dist/esm/mcp-server/tools/sessionsGet.d.ts +8 -0
  123. package/dist/esm/mcp-server/tools/sessionsGet.d.ts.map +1 -0
  124. package/dist/esm/mcp-server/tools/sessionsGet.js +32 -0
  125. package/dist/esm/mcp-server/tools/sessionsGet.js.map +1 -0
  126. package/dist/esm/models/entitybalancetransaction.d.ts +8 -8
  127. package/dist/esm/models/entitybalancetransaction.d.ts.map +1 -1
  128. package/dist/esm/models/entitybalancetransaction.js +8 -8
  129. package/dist/esm/models/entitybalancetransaction.js.map +1 -1
  130. package/dist/esm/models/entitycapabilityrequirement.d.ts +2 -1
  131. package/dist/esm/models/entitycapabilityrequirement.d.ts.map +1 -1
  132. package/dist/esm/models/entitycapabilityrequirement.js.map +1 -1
  133. package/dist/esm/models/index.d.ts +6 -1
  134. package/dist/esm/models/index.d.ts.map +1 -1
  135. package/dist/esm/models/index.js +6 -1
  136. package/dist/esm/models/index.js.map +1 -1
  137. package/dist/esm/models/operations/createsession.d.ts +23 -0
  138. package/dist/esm/models/operations/createsession.d.ts.map +1 -0
  139. package/dist/esm/models/operations/createsession.js +34 -0
  140. package/dist/esm/models/operations/createsession.js.map +1 -0
  141. package/dist/esm/models/operations/getmethod.d.ts +1 -1
  142. package/dist/esm/models/operations/getmethod.d.ts.map +1 -1
  143. package/dist/esm/models/operations/getmethod.js +2 -2
  144. package/dist/esm/models/operations/getmethod.js.map +1 -1
  145. package/dist/esm/models/operations/getsession.d.ts +25 -0
  146. package/dist/esm/models/operations/getsession.d.ts.map +1 -0
  147. package/dist/esm/models/operations/getsession.js +31 -0
  148. package/dist/esm/models/operations/getsession.js.map +1 -0
  149. package/dist/esm/models/operations/index.d.ts +2 -0
  150. package/dist/esm/models/operations/index.d.ts.map +1 -1
  151. package/dist/esm/models/operations/index.js +2 -0
  152. package/dist/esm/models/operations/index.js.map +1 -1
  153. package/dist/esm/models/sessionlineitem.d.ts +84 -0
  154. package/dist/esm/models/sessionlineitem.d.ts.map +1 -0
  155. package/dist/esm/models/sessionlineitem.js +44 -0
  156. package/dist/esm/models/sessionlineitem.js.map +1 -0
  157. package/dist/esm/models/sessionlineitemresponse.d.ts +84 -0
  158. package/dist/esm/models/sessionlineitemresponse.d.ts.map +1 -0
  159. package/dist/esm/models/sessionlineitemresponse.js +44 -0
  160. package/dist/esm/models/sessionlineitemresponse.js.map +1 -0
  161. package/dist/esm/models/sessionrequest.d.ts +119 -0
  162. package/dist/esm/models/sessionrequest.d.ts.map +1 -0
  163. package/dist/esm/models/sessionrequest.js +60 -0
  164. package/dist/esm/models/sessionrequest.js.map +1 -0
  165. package/dist/esm/models/sessionresponse.d.ts +181 -0
  166. package/dist/esm/models/sessionresponse.d.ts.map +1 -0
  167. package/dist/esm/models/sessionresponse.js +110 -0
  168. package/dist/esm/models/sessionresponse.js.map +1 -0
  169. package/dist/esm/models/sessionsequencetype.d.ts +12 -0
  170. package/dist/esm/models/sessionsequencetype.d.ts.map +1 -0
  171. package/dist/esm/models/sessionsequencetype.js +13 -0
  172. package/dist/esm/models/sessionsequencetype.js.map +1 -0
  173. package/dist/esm/models/sessionsequencetyperesponse.d.ts +12 -0
  174. package/dist/esm/models/sessionsequencetyperesponse.d.ts.map +1 -0
  175. package/dist/esm/models/sessionsequencetyperesponse.js +13 -0
  176. package/dist/esm/models/sessionsequencetyperesponse.js.map +1 -0
  177. package/dist/esm/sdk/capabilities.d.ts +3 -0
  178. package/dist/esm/sdk/capabilities.d.ts.map +1 -1
  179. package/dist/esm/sdk/capabilities.js +3 -0
  180. package/dist/esm/sdk/capabilities.js.map +1 -1
  181. package/dist/esm/sdk/sdk.d.ts +3 -0
  182. package/dist/esm/sdk/sdk.d.ts.map +1 -1
  183. package/dist/esm/sdk/sdk.js +4 -0
  184. package/dist/esm/sdk/sdk.js.map +1 -1
  185. package/dist/esm/sdk/sessions.d.ts +28 -0
  186. package/dist/esm/sdk/sessions.d.ts.map +1 -0
  187. package/dist/esm/sdk/sessions.js +36 -0
  188. package/dist/esm/sdk/sessions.js.map +1 -0
  189. package/examples/balancesList.example.ts +1 -1
  190. package/jsr.json +1 -1
  191. package/package.json +1 -1
  192. package/src/funcs/capabilitiesList.ts +3 -0
  193. package/src/funcs/sessionsCreate.ts +195 -0
  194. package/src/funcs/sessionsGet.ts +187 -0
  195. package/src/lib/config.ts +3 -3
  196. package/src/mcp-server/mcp-server.ts +1 -1
  197. package/src/mcp-server/server.ts +5 -1
  198. package/src/mcp-server/tools/capabilitiesList.ts +3 -0
  199. package/src/mcp-server/tools/sessionsCreate.ts +41 -0
  200. package/src/mcp-server/tools/sessionsGet.ts +41 -0
  201. package/src/models/entitybalancetransaction.ts +33 -20
  202. package/src/models/entitycapabilityrequirement.ts +2 -1
  203. package/src/models/index.ts +6 -1
  204. package/src/models/operations/createsession.ts +70 -0
  205. package/src/models/operations/getmethod.ts +3 -3
  206. package/src/models/operations/getsession.ts +70 -0
  207. package/src/models/operations/index.ts +2 -0
  208. package/src/models/sessionlineitem.ts +147 -0
  209. package/src/models/sessionlineitemresponse.ts +149 -0
  210. package/src/models/sessionrequest.ts +216 -0
  211. package/src/models/sessionresponse.ts +347 -0
  212. package/src/models/sessionsequencetype.ts +21 -0
  213. package/src/models/sessionsequencetyperesponse.ts +28 -0
  214. package/src/sdk/capabilities.ts +3 -0
  215. package/src/sdk/sdk.ts +6 -0
  216. package/src/sdk/sessions.ts +54 -0
  217. package/dist/commonjs/models/methodid.d.ts +0 -65
  218. package/dist/commonjs/models/methodid.d.ts.map +0 -1
  219. package/dist/commonjs/models/methodid.js +0 -91
  220. package/dist/commonjs/models/methodid.js.map +0 -1
  221. package/dist/esm/models/methodid.d.ts +0 -65
  222. package/dist/esm/models/methodid.d.ts.map +0 -1
  223. package/dist/esm/models/methodid.js +0 -55
  224. package/dist/esm/models/methodid.js.map +0 -1
  225. package/src/models/methodid.ts +0 -79
@@ -0,0 +1,147 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../types/fp.js";
8
+ import {
9
+ Amount,
10
+ Amount$inboundSchema,
11
+ Amount$Outbound,
12
+ Amount$outboundSchema,
13
+ } from "./amount.js";
14
+ import { SDKValidationError } from "./errors/sdkvalidationerror.js";
15
+ import {
16
+ PaymentLineTypeResponse,
17
+ PaymentLineTypeResponse$inboundSchema,
18
+ PaymentLineTypeResponse$outboundSchema,
19
+ } from "./paymentlinetyperesponse.js";
20
+
21
+ export type SessionLineItem = {
22
+ /**
23
+ * The type of product purchased. For example, a physical or a digital product.
24
+ *
25
+ * @remarks
26
+ *
27
+ * The `tip` payment line type is not available when creating a payment.
28
+ */
29
+ type?: PaymentLineTypeResponse | undefined;
30
+ /**
31
+ * A description of the line item. For example *LEGO 4440 Forest Police Station*.
32
+ */
33
+ description: string;
34
+ /**
35
+ * The number of items.
36
+ */
37
+ quantity: number;
38
+ /**
39
+ * The unit for the quantity. For example *pcs*, *kg*, or *cm*.
40
+ */
41
+ quantityUnit?: string | undefined;
42
+ /**
43
+ * In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field.
44
+ */
45
+ unitPrice: Amount;
46
+ /**
47
+ * In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field.
48
+ */
49
+ discountAmount?: Amount | undefined;
50
+ /**
51
+ * In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field.
52
+ */
53
+ totalAmount: Amount;
54
+ /**
55
+ * The VAT rate applied to the line, for example `21.00` for 21%. The vatRate should be passed as a string and
56
+ *
57
+ * @remarks
58
+ * not as a float, to ensure the correct number of decimals are passed.
59
+ */
60
+ vatRate?: string | undefined;
61
+ /**
62
+ * In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field.
63
+ */
64
+ vatAmount?: Amount | undefined;
65
+ /**
66
+ * The SKU, EAN, ISBN or UPC of the product sold.
67
+ */
68
+ sku?: string | undefined;
69
+ /**
70
+ * A link pointing to an image of the product sold.
71
+ */
72
+ imageUrl?: string | undefined;
73
+ /**
74
+ * A link pointing to the product page in your web shop of the product sold.
75
+ */
76
+ productUrl?: string | undefined;
77
+ };
78
+
79
+ /** @internal */
80
+ export const SessionLineItem$inboundSchema: z.ZodType<
81
+ SessionLineItem,
82
+ z.ZodTypeDef,
83
+ unknown
84
+ > = z.object({
85
+ type: PaymentLineTypeResponse$inboundSchema.optional(),
86
+ description: z.string(),
87
+ quantity: z.number().int(),
88
+ quantityUnit: z.string().optional(),
89
+ unitPrice: Amount$inboundSchema,
90
+ discountAmount: Amount$inboundSchema.optional(),
91
+ totalAmount: Amount$inboundSchema,
92
+ vatRate: z.string().optional(),
93
+ vatAmount: Amount$inboundSchema.optional(),
94
+ sku: z.string().optional(),
95
+ imageUrl: z.string().optional(),
96
+ productUrl: z.string().optional(),
97
+ });
98
+ /** @internal */
99
+ export type SessionLineItem$Outbound = {
100
+ type?: string | undefined;
101
+ description: string;
102
+ quantity: number;
103
+ quantityUnit?: string | undefined;
104
+ unitPrice: Amount$Outbound;
105
+ discountAmount?: Amount$Outbound | undefined;
106
+ totalAmount: Amount$Outbound;
107
+ vatRate?: string | undefined;
108
+ vatAmount?: Amount$Outbound | undefined;
109
+ sku?: string | undefined;
110
+ imageUrl?: string | undefined;
111
+ productUrl?: string | undefined;
112
+ };
113
+
114
+ /** @internal */
115
+ export const SessionLineItem$outboundSchema: z.ZodType<
116
+ SessionLineItem$Outbound,
117
+ z.ZodTypeDef,
118
+ SessionLineItem
119
+ > = z.object({
120
+ type: PaymentLineTypeResponse$outboundSchema.optional(),
121
+ description: z.string(),
122
+ quantity: z.number().int(),
123
+ quantityUnit: z.string().optional(),
124
+ unitPrice: Amount$outboundSchema,
125
+ discountAmount: Amount$outboundSchema.optional(),
126
+ totalAmount: Amount$outboundSchema,
127
+ vatRate: z.string().optional(),
128
+ vatAmount: Amount$outboundSchema.optional(),
129
+ sku: z.string().optional(),
130
+ imageUrl: z.string().optional(),
131
+ productUrl: z.string().optional(),
132
+ });
133
+
134
+ export function sessionLineItemToJSON(
135
+ sessionLineItem: SessionLineItem,
136
+ ): string {
137
+ return JSON.stringify(SessionLineItem$outboundSchema.parse(sessionLineItem));
138
+ }
139
+ export function sessionLineItemFromJSON(
140
+ jsonString: string,
141
+ ): SafeParseResult<SessionLineItem, SDKValidationError> {
142
+ return safeParse(
143
+ jsonString,
144
+ (x) => SessionLineItem$inboundSchema.parse(JSON.parse(x)),
145
+ `Failed to parse 'SessionLineItem' from JSON`,
146
+ );
147
+ }
@@ -0,0 +1,149 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../types/fp.js";
8
+ import {
9
+ Amount,
10
+ Amount$inboundSchema,
11
+ Amount$Outbound,
12
+ Amount$outboundSchema,
13
+ } from "./amount.js";
14
+ import { SDKValidationError } from "./errors/sdkvalidationerror.js";
15
+ import {
16
+ PaymentLineTypeResponse,
17
+ PaymentLineTypeResponse$inboundSchema,
18
+ PaymentLineTypeResponse$outboundSchema,
19
+ } from "./paymentlinetyperesponse.js";
20
+
21
+ export type SessionLineItemResponse = {
22
+ /**
23
+ * The type of product purchased. For example, a physical or a digital product.
24
+ *
25
+ * @remarks
26
+ *
27
+ * The `tip` payment line type is not available when creating a payment.
28
+ */
29
+ type?: PaymentLineTypeResponse | undefined;
30
+ /**
31
+ * A description of the line item. For example *LEGO 4440 Forest Police Station*.
32
+ */
33
+ description: string;
34
+ /**
35
+ * The number of items.
36
+ */
37
+ quantity: number;
38
+ /**
39
+ * The unit for the quantity. For example *pcs*, *kg*, or *cm*.
40
+ */
41
+ quantityUnit?: string | undefined;
42
+ /**
43
+ * In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field.
44
+ */
45
+ unitPrice: Amount;
46
+ /**
47
+ * In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field.
48
+ */
49
+ discountAmount?: Amount | undefined;
50
+ /**
51
+ * In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field.
52
+ */
53
+ totalAmount: Amount;
54
+ /**
55
+ * The VAT rate applied to the line, for example `21.00` for 21%. The vatRate should be passed as a string and
56
+ *
57
+ * @remarks
58
+ * not as a float, to ensure the correct number of decimals are passed.
59
+ */
60
+ vatRate?: string | undefined;
61
+ /**
62
+ * In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field.
63
+ */
64
+ vatAmount?: Amount | undefined;
65
+ /**
66
+ * The SKU, EAN, ISBN or UPC of the product sold.
67
+ */
68
+ sku?: string | undefined;
69
+ /**
70
+ * A link pointing to an image of the product sold.
71
+ */
72
+ imageUrl?: string | undefined;
73
+ /**
74
+ * A link pointing to the product page in your web shop of the product sold.
75
+ */
76
+ productUrl?: string | undefined;
77
+ };
78
+
79
+ /** @internal */
80
+ export const SessionLineItemResponse$inboundSchema: z.ZodType<
81
+ SessionLineItemResponse,
82
+ z.ZodTypeDef,
83
+ unknown
84
+ > = z.object({
85
+ type: PaymentLineTypeResponse$inboundSchema.optional(),
86
+ description: z.string(),
87
+ quantity: z.number().int(),
88
+ quantityUnit: z.string().optional(),
89
+ unitPrice: Amount$inboundSchema,
90
+ discountAmount: Amount$inboundSchema.optional(),
91
+ totalAmount: Amount$inboundSchema,
92
+ vatRate: z.string().optional(),
93
+ vatAmount: Amount$inboundSchema.optional(),
94
+ sku: z.string().optional(),
95
+ imageUrl: z.string().optional(),
96
+ productUrl: z.string().optional(),
97
+ });
98
+ /** @internal */
99
+ export type SessionLineItemResponse$Outbound = {
100
+ type?: string | undefined;
101
+ description: string;
102
+ quantity: number;
103
+ quantityUnit?: string | undefined;
104
+ unitPrice: Amount$Outbound;
105
+ discountAmount?: Amount$Outbound | undefined;
106
+ totalAmount: Amount$Outbound;
107
+ vatRate?: string | undefined;
108
+ vatAmount?: Amount$Outbound | undefined;
109
+ sku?: string | undefined;
110
+ imageUrl?: string | undefined;
111
+ productUrl?: string | undefined;
112
+ };
113
+
114
+ /** @internal */
115
+ export const SessionLineItemResponse$outboundSchema: z.ZodType<
116
+ SessionLineItemResponse$Outbound,
117
+ z.ZodTypeDef,
118
+ SessionLineItemResponse
119
+ > = z.object({
120
+ type: PaymentLineTypeResponse$outboundSchema.optional(),
121
+ description: z.string(),
122
+ quantity: z.number().int(),
123
+ quantityUnit: z.string().optional(),
124
+ unitPrice: Amount$outboundSchema,
125
+ discountAmount: Amount$outboundSchema.optional(),
126
+ totalAmount: Amount$outboundSchema,
127
+ vatRate: z.string().optional(),
128
+ vatAmount: Amount$outboundSchema.optional(),
129
+ sku: z.string().optional(),
130
+ imageUrl: z.string().optional(),
131
+ productUrl: z.string().optional(),
132
+ });
133
+
134
+ export function sessionLineItemResponseToJSON(
135
+ sessionLineItemResponse: SessionLineItemResponse,
136
+ ): string {
137
+ return JSON.stringify(
138
+ SessionLineItemResponse$outboundSchema.parse(sessionLineItemResponse),
139
+ );
140
+ }
141
+ export function sessionLineItemResponseFromJSON(
142
+ jsonString: string,
143
+ ): SafeParseResult<SessionLineItemResponse, SDKValidationError> {
144
+ return safeParse(
145
+ jsonString,
146
+ (x) => SessionLineItemResponse$inboundSchema.parse(JSON.parse(x)),
147
+ `Failed to parse 'SessionLineItemResponse' from JSON`,
148
+ );
149
+ }
@@ -0,0 +1,216 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../types/fp.js";
8
+ import {
9
+ Amount,
10
+ Amount$inboundSchema,
11
+ Amount$Outbound,
12
+ Amount$outboundSchema,
13
+ } from "./amount.js";
14
+ import { SDKValidationError } from "./errors/sdkvalidationerror.js";
15
+ import {
16
+ PaymentAddress,
17
+ PaymentAddress$inboundSchema,
18
+ PaymentAddress$Outbound,
19
+ PaymentAddress$outboundSchema,
20
+ } from "./paymentaddress.js";
21
+ import {
22
+ SessionLineItem,
23
+ SessionLineItem$inboundSchema,
24
+ SessionLineItem$Outbound,
25
+ SessionLineItem$outboundSchema,
26
+ } from "./sessionlineitem.js";
27
+ import {
28
+ SessionSequenceType,
29
+ SessionSequenceType$inboundSchema,
30
+ SessionSequenceType$outboundSchema,
31
+ } from "./sessionsequencetype.js";
32
+
33
+ export type SessionRequestPayment = {
34
+ /**
35
+ * The webhook URL where we will send payment status updates to.
36
+ *
37
+ * @remarks
38
+ *
39
+ * This URL will be automatically set as the webhook URL for all payments created for this session.
40
+ */
41
+ webhookUrl?: string | undefined;
42
+ };
43
+
44
+ export type SessionRequest = {
45
+ /**
46
+ * In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field.
47
+ */
48
+ amount: Amount;
49
+ /**
50
+ * A user-friendly description of the session that may be shown to the customer during the checkout process.
51
+ *
52
+ * @remarks
53
+ *
54
+ * Any payment created for the session will use the same description.
55
+ */
56
+ description: string;
57
+ /**
58
+ * List of items the customer will pay for in this session. The sum of all line items must equal the
59
+ *
60
+ * @remarks
61
+ * session's amount.
62
+ *
63
+ * All lines must have the same currency as the session.
64
+ */
65
+ lines: Array<SessionLineItem>;
66
+ /**
67
+ * The URL your customer will be redirected to after the payment process.
68
+ *
69
+ * @remarks
70
+ *
71
+ * It could make sense for the redirectUrl to contain a unique identifier – like your order ID – so you can show the
72
+ * right page referencing the order when your customer returns.
73
+ */
74
+ redirectUrl: string;
75
+ billingAddress?: PaymentAddress | undefined;
76
+ shippingAddress?: PaymentAddress | undefined;
77
+ customerId?: string | undefined;
78
+ sequenceType?: SessionSequenceType | undefined;
79
+ /**
80
+ * Provide any data you like in a JSON object. We will save the data alongside the entity. Whenever
81
+ *
82
+ * @remarks
83
+ * you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
84
+ *
85
+ * Any payment created for the session will use the same metadata.
86
+ */
87
+ metadata?: { [k: string]: any } | undefined;
88
+ payment?: SessionRequestPayment | undefined;
89
+ /**
90
+ * The identifier referring to the [profile](get-profile) this entity belongs to.
91
+ *
92
+ * @remarks
93
+ *
94
+ * Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted in the creation
95
+ * request. For organization-level credentials such as OAuth access tokens however, the `profileId` parameter is
96
+ * required.
97
+ */
98
+ profileId?: string | undefined;
99
+ /**
100
+ * Whether to create the entity in test mode or live mode.
101
+ *
102
+ * @remarks
103
+ *
104
+ * Most API credentials are specifically created for either live mode or test mode, in which case this parameter must
105
+ * not be sent. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
106
+ * `testmode` to `true`.
107
+ */
108
+ testmode?: boolean | null | undefined;
109
+ };
110
+
111
+ /** @internal */
112
+ export const SessionRequestPayment$inboundSchema: z.ZodType<
113
+ SessionRequestPayment,
114
+ z.ZodTypeDef,
115
+ unknown
116
+ > = z.object({
117
+ webhookUrl: z.string().optional(),
118
+ });
119
+ /** @internal */
120
+ export type SessionRequestPayment$Outbound = {
121
+ webhookUrl?: string | undefined;
122
+ };
123
+
124
+ /** @internal */
125
+ export const SessionRequestPayment$outboundSchema: z.ZodType<
126
+ SessionRequestPayment$Outbound,
127
+ z.ZodTypeDef,
128
+ SessionRequestPayment
129
+ > = z.object({
130
+ webhookUrl: z.string().optional(),
131
+ });
132
+
133
+ export function sessionRequestPaymentToJSON(
134
+ sessionRequestPayment: SessionRequestPayment,
135
+ ): string {
136
+ return JSON.stringify(
137
+ SessionRequestPayment$outboundSchema.parse(sessionRequestPayment),
138
+ );
139
+ }
140
+ export function sessionRequestPaymentFromJSON(
141
+ jsonString: string,
142
+ ): SafeParseResult<SessionRequestPayment, SDKValidationError> {
143
+ return safeParse(
144
+ jsonString,
145
+ (x) => SessionRequestPayment$inboundSchema.parse(JSON.parse(x)),
146
+ `Failed to parse 'SessionRequestPayment' from JSON`,
147
+ );
148
+ }
149
+
150
+ /** @internal */
151
+ export const SessionRequest$inboundSchema: z.ZodType<
152
+ SessionRequest,
153
+ z.ZodTypeDef,
154
+ unknown
155
+ > = z.object({
156
+ amount: Amount$inboundSchema,
157
+ description: z.string(),
158
+ lines: z.array(SessionLineItem$inboundSchema),
159
+ redirectUrl: z.string(),
160
+ billingAddress: PaymentAddress$inboundSchema.optional(),
161
+ shippingAddress: PaymentAddress$inboundSchema.optional(),
162
+ customerId: z.string().optional(),
163
+ sequenceType: SessionSequenceType$inboundSchema.optional(),
164
+ metadata: z.record(z.any()).optional(),
165
+ payment: z.lazy(() => SessionRequestPayment$inboundSchema).optional(),
166
+ profileId: z.string().optional(),
167
+ testmode: z.nullable(z.boolean()).optional(),
168
+ });
169
+ /** @internal */
170
+ export type SessionRequest$Outbound = {
171
+ amount: Amount$Outbound;
172
+ description: string;
173
+ lines: Array<SessionLineItem$Outbound>;
174
+ redirectUrl: string;
175
+ billingAddress?: PaymentAddress$Outbound | undefined;
176
+ shippingAddress?: PaymentAddress$Outbound | undefined;
177
+ customerId?: string | undefined;
178
+ sequenceType?: string | undefined;
179
+ metadata?: { [k: string]: any } | undefined;
180
+ payment?: SessionRequestPayment$Outbound | undefined;
181
+ profileId?: string | undefined;
182
+ testmode?: boolean | null | undefined;
183
+ };
184
+
185
+ /** @internal */
186
+ export const SessionRequest$outboundSchema: z.ZodType<
187
+ SessionRequest$Outbound,
188
+ z.ZodTypeDef,
189
+ SessionRequest
190
+ > = z.object({
191
+ amount: Amount$outboundSchema,
192
+ description: z.string(),
193
+ lines: z.array(SessionLineItem$outboundSchema),
194
+ redirectUrl: z.string(),
195
+ billingAddress: PaymentAddress$outboundSchema.optional(),
196
+ shippingAddress: PaymentAddress$outboundSchema.optional(),
197
+ customerId: z.string().optional(),
198
+ sequenceType: SessionSequenceType$outboundSchema.optional(),
199
+ metadata: z.record(z.any()).optional(),
200
+ payment: z.lazy(() => SessionRequestPayment$outboundSchema).optional(),
201
+ profileId: z.string().optional(),
202
+ testmode: z.nullable(z.boolean()).optional(),
203
+ });
204
+
205
+ export function sessionRequestToJSON(sessionRequest: SessionRequest): string {
206
+ return JSON.stringify(SessionRequest$outboundSchema.parse(sessionRequest));
207
+ }
208
+ export function sessionRequestFromJSON(
209
+ jsonString: string,
210
+ ): SafeParseResult<SessionRequest, SDKValidationError> {
211
+ return safeParse(
212
+ jsonString,
213
+ (x) => SessionRequest$inboundSchema.parse(JSON.parse(x)),
214
+ `Failed to parse 'SessionRequest' from JSON`,
215
+ );
216
+ }