@peable.to/contracts 6.0.0 → 6.1.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.
@@ -22,6 +22,10 @@ const shared_1 = require("./shared");
22
22
  const sessionFields = {
23
23
  id: zod_1.z.string(),
24
24
  object: zod_1.z.literal('checkout_session'),
25
+ contact_collection: zod_1.z
26
+ .enum(checkout_1.CHECKOUT_CONTACT_COLLECTIONS)
27
+ .optional()
28
+ .describe('Contact policy fixed by the merchant at creation. Absent means email. merchant_account delegates contact and notifications to the merchant account channel; it does not assert a Peable-verified identity.'),
25
29
  livemode: primitives_1.livemode,
26
30
  mode: zod_1.z.enum(checkout_1.CHECKOUT_SESSION_MODES),
27
31
  status: zod_1.z.enum(checkout_1.CHECKOUT_SESSION_STATUSES),
@@ -291,6 +295,10 @@ exports.createCheckoutSessionParams = zod_1.z
291
295
  .optional()
292
296
  .describe('`cus_…`; mutually exclusive with `customer_email`.'),
293
297
  customer_email: shared_1.checkoutEmailParam.optional(),
298
+ contact_collection: zod_1.z
299
+ .enum(checkout_1.CHECKOUT_CONTACT_COLLECTIONS)
300
+ .optional()
301
+ .describe('Defaults to email. merchant_account delegates contact and payment notifications to the merchant, which must have its own authenticated account channel. This is not identity verification by Peable. Payers cannot change this policy.'),
294
302
  customer_creation: zod_1.z
295
303
  .enum(checkout_1.CHECKOUT_CUSTOMER_CREATIONS)
296
304
  .optional()
@@ -4,7 +4,7 @@
4
4
  // the wallet import them without the schemas (`@peable.to/contracts/vocabulary`,
5
5
  // re-exported by `@peable.to/shared-types`).
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.PAYMENT_LINK_LIMITS = exports.CHECKOUT_SESSION_ID_TEMPLATE = exports.CHECKOUT_LIMITS = exports.CHECKOUT_TAX_ID_TYPES = exports.CHECKOUT_CUSTOM_FIELD_TYPES = exports.CHECKOUT_BILLING_ADDRESS_COLLECTIONS = exports.CHECKOUT_CUSTOMER_CREATIONS = exports.CHECKOUT_SUBMIT_TYPES = exports.CHECKOUT_RTL_LOCALES = exports.CHECKOUT_LOCALES = exports.CHECKOUT_UI_MODES = exports.CHECKOUT_PAYMENT_STATUSES = exports.CHECKOUT_SESSION_STATUSES = exports.CHECKOUT_SESSION_MODES = exports.FAIRCOIN_UNAVAILABLE_REASONS = void 0;
7
+ exports.CHECKOUT_CONTACT_COLLECTIONS = exports.PAYMENT_LINK_LIMITS = exports.CHECKOUT_SESSION_ID_TEMPLATE = exports.CHECKOUT_LIMITS = exports.CHECKOUT_TAX_ID_TYPES = exports.CHECKOUT_CUSTOM_FIELD_TYPES = exports.CHECKOUT_BILLING_ADDRESS_COLLECTIONS = exports.CHECKOUT_CUSTOMER_CREATIONS = exports.CHECKOUT_SUBMIT_TYPES = exports.CHECKOUT_RTL_LOCALES = exports.CHECKOUT_LOCALES = exports.CHECKOUT_UI_MODES = exports.CHECKOUT_PAYMENT_STATUSES = exports.CHECKOUT_SESSION_STATUSES = exports.CHECKOUT_SESSION_MODES = exports.FAIRCOIN_UNAVAILABLE_REASONS = void 0;
8
8
  exports.checkoutLocaleDirection = checkoutLocaleDirection;
9
9
  /**
10
10
  * Why FairCoin cannot be paid with on an order right now (ADR 0021). It is
@@ -102,3 +102,5 @@ exports.PAYMENT_LINK_LIMITS = Object.freeze({
102
102
  lineItemsMax: 20,
103
103
  customMessageMax: 500,
104
104
  });
105
+ /** Who owns contact collection for a service-created checkout session. */
106
+ exports.CHECKOUT_CONTACT_COLLECTIONS = ['email', 'merchant_account'];
@@ -7,7 +7,7 @@ import { defineComponent, defineObject, expandable } from '../../common/objects.
7
7
  import { expandOnlyQuery, expandParam, listQuery, metadataCreateParam, metadataUpdateParam, } from '../../common/params.js';
8
8
  import { amount, currency, livemode, metadata, network, unixSeconds, } from '../../common/primitives.js';
9
9
  import { defineRoute } from '../../route.js';
10
- import { CHECKOUT_CUSTOMER_CREATIONS, CHECKOUT_LIMITS, CHECKOUT_LOCALES, CHECKOUT_PAYMENT_STATUSES, CHECKOUT_SESSION_MODES, CHECKOUT_SESSION_STATUSES, CHECKOUT_SUBMIT_TYPES, CHECKOUT_TAX_ID_TYPES, CHECKOUT_UI_MODES, FAIRCOIN_UNAVAILABLE_REASONS, } from '../../vocabulary/checkout.js';
10
+ import { CHECKOUT_CUSTOMER_CREATIONS, CHECKOUT_CONTACT_COLLECTIONS, CHECKOUT_LIMITS, CHECKOUT_LOCALES, CHECKOUT_PAYMENT_STATUSES, CHECKOUT_SESSION_MODES, CHECKOUT_SESSION_STATUSES, CHECKOUT_SUBMIT_TYPES, CHECKOUT_TAX_ID_TYPES, CHECKOUT_UI_MODES, FAIRCOIN_UNAVAILABLE_REASONS, } from '../../vocabulary/checkout.js';
11
11
  import { adjustableIssues, adjustableQuantityParam, amountParam, checkoutAutomaticTaxSchema, checkoutBrandingSchema, checkoutConsentSchema, checkoutCustomerDetailsSchema, checkoutDiscountSchema, checkoutIdParam, checkoutLineItemSchema, checkoutShippingDetailsSchema, checkoutTotalDetailsSchema, collectionParams, collectionResponseFields, countryCodeParam, checkoutEmailParam, localeParam, merchantDisplaySchema, quantityParam, railSchema, redirectUrlParam, } from './shared.js';
12
12
  /**
13
13
  * Checkout Sessions (`cs_…`, Orbit Phase 3) — Stripe Checkout's session model:
@@ -19,6 +19,10 @@ import { adjustableIssues, adjustableQuantityParam, amountParam, checkoutAutomat
19
19
  const sessionFields = {
20
20
  id: z.string(),
21
21
  object: z.literal('checkout_session'),
22
+ contact_collection: z
23
+ .enum(CHECKOUT_CONTACT_COLLECTIONS)
24
+ .optional()
25
+ .describe('Contact policy fixed by the merchant at creation. Absent means email. merchant_account delegates contact and notifications to the merchant account channel; it does not assert a Peable-verified identity.'),
22
26
  livemode,
23
27
  mode: z.enum(CHECKOUT_SESSION_MODES),
24
28
  status: z.enum(CHECKOUT_SESSION_STATUSES),
@@ -288,6 +292,10 @@ export const createCheckoutSessionParams = z
288
292
  .optional()
289
293
  .describe('`cus_…`; mutually exclusive with `customer_email`.'),
290
294
  customer_email: checkoutEmailParam.optional(),
295
+ contact_collection: z
296
+ .enum(CHECKOUT_CONTACT_COLLECTIONS)
297
+ .optional()
298
+ .describe('Defaults to email. merchant_account delegates contact and payment notifications to the merchant, which must have its own authenticated account channel. This is not identity verification by Peable. Payers cannot change this policy.'),
291
299
  customer_creation: z
292
300
  .enum(CHECKOUT_CUSTOMER_CREATIONS)
293
301
  .optional()
@@ -98,3 +98,5 @@ export const PAYMENT_LINK_LIMITS = Object.freeze({
98
98
  lineItemsMax: 20,
99
99
  customMessageMax: 500,
100
100
  });
101
+ /** Who owns contact collection for a service-created checkout session. */
102
+ export const CHECKOUT_CONTACT_COLLECTIONS = ['email', 'merchant_account'];
@@ -113,6 +113,10 @@ export declare const checkoutSessionSchema: z.ZodObject<{
113
113
  }, z.core.$strict>>;
114
114
  id: z.ZodString;
115
115
  object: z.ZodLiteral<"checkout_session">;
116
+ contact_collection: z.ZodOptional<z.ZodEnum<{
117
+ email: "email";
118
+ merchant_account: "merchant_account";
119
+ }>>;
116
120
  livemode: z.ZodBoolean;
117
121
  mode: z.ZodEnum<{
118
122
  subscription: "subscription";
@@ -398,6 +402,10 @@ export declare const checkoutSessionPublicSchema: z.ZodObject<{
398
402
  }, z.core.$strict>>;
399
403
  id: z.ZodString;
400
404
  object: z.ZodLiteral<"checkout_session">;
405
+ contact_collection: z.ZodOptional<z.ZodEnum<{
406
+ email: "email";
407
+ merchant_account: "merchant_account";
408
+ }>>;
401
409
  livemode: z.ZodBoolean;
402
410
  mode: z.ZodEnum<{
403
411
  subscription: "subscription";
@@ -753,6 +761,10 @@ export declare const createCheckoutSessionParams: z.ZodObject<{
753
761
  allow_promotion_codes: z.ZodOptional<z.ZodBoolean>;
754
762
  customer: z.ZodOptional<z.ZodString>;
755
763
  customer_email: z.ZodOptional<z.ZodString>;
764
+ contact_collection: z.ZodOptional<z.ZodEnum<{
765
+ email: "email";
766
+ merchant_account: "merchant_account";
767
+ }>>;
756
768
  customer_creation: z.ZodOptional<z.ZodEnum<{
757
769
  always: "always";
758
770
  if_required: "if_required";
@@ -1072,6 +1084,10 @@ export declare const checkoutSessionRoutes: readonly [{
1072
1084
  allow_promotion_codes: z.ZodOptional<z.ZodBoolean>;
1073
1085
  customer: z.ZodOptional<z.ZodString>;
1074
1086
  customer_email: z.ZodOptional<z.ZodString>;
1087
+ contact_collection: z.ZodOptional<z.ZodEnum<{
1088
+ email: "email";
1089
+ merchant_account: "merchant_account";
1090
+ }>>;
1075
1091
  customer_creation: z.ZodOptional<z.ZodEnum<{
1076
1092
  always: "always";
1077
1093
  if_required: "if_required";
@@ -1189,6 +1205,10 @@ export declare const checkoutSessionRoutes: readonly [{
1189
1205
  }, z.core.$strict>>;
1190
1206
  id: z.ZodString;
1191
1207
  object: z.ZodLiteral<"checkout_session">;
1208
+ contact_collection: z.ZodOptional<z.ZodEnum<{
1209
+ email: "email";
1210
+ merchant_account: "merchant_account";
1211
+ }>>;
1192
1212
  livemode: z.ZodBoolean;
1193
1213
  mode: z.ZodEnum<{
1194
1214
  subscription: "subscription";
@@ -1426,6 +1446,10 @@ export declare const checkoutSessionRoutes: readonly [{
1426
1446
  }, z.core.$strict>>;
1427
1447
  id: z.ZodString;
1428
1448
  object: z.ZodLiteral<"checkout_session">;
1449
+ contact_collection: z.ZodOptional<z.ZodEnum<{
1450
+ email: "email";
1451
+ merchant_account: "merchant_account";
1452
+ }>>;
1429
1453
  livemode: z.ZodBoolean;
1430
1454
  mode: z.ZodEnum<{
1431
1455
  subscription: "subscription";
@@ -1644,6 +1668,10 @@ export declare const checkoutSessionRoutes: readonly [{
1644
1668
  }, z.core.$strict>>;
1645
1669
  id: z.ZodString;
1646
1670
  object: z.ZodLiteral<"checkout_session">;
1671
+ contact_collection: z.ZodOptional<z.ZodEnum<{
1672
+ email: "email";
1673
+ merchant_account: "merchant_account";
1674
+ }>>;
1647
1675
  livemode: z.ZodBoolean;
1648
1676
  mode: z.ZodEnum<{
1649
1677
  subscription: "subscription";
@@ -1862,6 +1890,10 @@ export declare const checkoutSessionRoutes: readonly [{
1862
1890
  }, z.core.$strict>>;
1863
1891
  id: z.ZodString;
1864
1892
  object: z.ZodLiteral<"checkout_session">;
1893
+ contact_collection: z.ZodOptional<z.ZodEnum<{
1894
+ email: "email";
1895
+ merchant_account: "merchant_account";
1896
+ }>>;
1865
1897
  livemode: z.ZodBoolean;
1866
1898
  mode: z.ZodEnum<{
1867
1899
  subscription: "subscription";
@@ -2079,6 +2111,10 @@ export declare const checkoutSessionRoutes: readonly [{
2079
2111
  }, z.core.$strict>>;
2080
2112
  id: z.ZodString;
2081
2113
  object: z.ZodLiteral<"checkout_session">;
2114
+ contact_collection: z.ZodOptional<z.ZodEnum<{
2115
+ email: "email";
2116
+ merchant_account: "merchant_account";
2117
+ }>>;
2082
2118
  livemode: z.ZodBoolean;
2083
2119
  mode: z.ZodEnum<{
2084
2120
  subscription: "subscription";
@@ -2436,6 +2472,10 @@ export declare const checkoutSessionRoutes: readonly [{
2436
2472
  }, z.core.$strict>>;
2437
2473
  id: z.ZodString;
2438
2474
  object: z.ZodLiteral<"checkout_session">;
2475
+ contact_collection: z.ZodOptional<z.ZodEnum<{
2476
+ email: "email";
2477
+ merchant_account: "merchant_account";
2478
+ }>>;
2439
2479
  livemode: z.ZodBoolean;
2440
2480
  mode: z.ZodEnum<{
2441
2481
  subscription: "subscription";
@@ -2770,6 +2810,10 @@ export declare const checkoutSessionRoutes: readonly [{
2770
2810
  }, z.core.$strict>>;
2771
2811
  id: z.ZodString;
2772
2812
  object: z.ZodLiteral<"checkout_session">;
2813
+ contact_collection: z.ZodOptional<z.ZodEnum<{
2814
+ email: "email";
2815
+ merchant_account: "merchant_account";
2816
+ }>>;
2773
2817
  livemode: z.ZodBoolean;
2774
2818
  mode: z.ZodEnum<{
2775
2819
  subscription: "subscription";
@@ -3078,6 +3122,10 @@ export declare const checkoutSessionRoutes: readonly [{
3078
3122
  }, z.core.$strict>>;
3079
3123
  id: z.ZodString;
3080
3124
  object: z.ZodLiteral<"checkout_session">;
3125
+ contact_collection: z.ZodOptional<z.ZodEnum<{
3126
+ email: "email";
3127
+ merchant_account: "merchant_account";
3128
+ }>>;
3081
3129
  livemode: z.ZodBoolean;
3082
3130
  mode: z.ZodEnum<{
3083
3131
  subscription: "subscription";
@@ -3292,6 +3340,10 @@ export declare const checkoutSessionRoutes: readonly [{
3292
3340
  }, z.core.$strict>>;
3293
3341
  id: z.ZodString;
3294
3342
  object: z.ZodLiteral<"checkout_session">;
3343
+ contact_collection: z.ZodOptional<z.ZodEnum<{
3344
+ email: "email";
3345
+ merchant_account: "merchant_account";
3346
+ }>>;
3295
3347
  livemode: z.ZodBoolean;
3296
3348
  mode: z.ZodEnum<{
3297
3349
  subscription: "subscription";
@@ -184,6 +184,10 @@ export declare const checkoutRoutes: readonly [{
184
184
  allow_promotion_codes: import("zod").ZodOptional<import("zod").ZodBoolean>;
185
185
  customer: import("zod").ZodOptional<import("zod").ZodString>;
186
186
  customer_email: import("zod").ZodOptional<import("zod").ZodString>;
187
+ contact_collection: import("zod").ZodOptional<import("zod").ZodEnum<{
188
+ email: "email";
189
+ merchant_account: "merchant_account";
190
+ }>>;
187
191
  customer_creation: import("zod").ZodOptional<import("zod").ZodEnum<{
188
192
  always: "always";
189
193
  if_required: "if_required";
@@ -301,6 +305,10 @@ export declare const checkoutRoutes: readonly [{
301
305
  }, import("zod/v4/core").$strict>>;
302
306
  id: import("zod").ZodString;
303
307
  object: import("zod").ZodLiteral<"checkout_session">;
308
+ contact_collection: import("zod").ZodOptional<import("zod").ZodEnum<{
309
+ email: "email";
310
+ merchant_account: "merchant_account";
311
+ }>>;
304
312
  livemode: import("zod").ZodBoolean;
305
313
  mode: import("zod").ZodEnum<{
306
314
  subscription: "subscription";
@@ -538,6 +546,10 @@ export declare const checkoutRoutes: readonly [{
538
546
  }, import("zod/v4/core").$strict>>;
539
547
  id: import("zod").ZodString;
540
548
  object: import("zod").ZodLiteral<"checkout_session">;
549
+ contact_collection: import("zod").ZodOptional<import("zod").ZodEnum<{
550
+ email: "email";
551
+ merchant_account: "merchant_account";
552
+ }>>;
541
553
  livemode: import("zod").ZodBoolean;
542
554
  mode: import("zod").ZodEnum<{
543
555
  subscription: "subscription";
@@ -756,6 +768,10 @@ export declare const checkoutRoutes: readonly [{
756
768
  }, import("zod/v4/core").$strict>>;
757
769
  id: import("zod").ZodString;
758
770
  object: import("zod").ZodLiteral<"checkout_session">;
771
+ contact_collection: import("zod").ZodOptional<import("zod").ZodEnum<{
772
+ email: "email";
773
+ merchant_account: "merchant_account";
774
+ }>>;
759
775
  livemode: import("zod").ZodBoolean;
760
776
  mode: import("zod").ZodEnum<{
761
777
  subscription: "subscription";
@@ -974,6 +990,10 @@ export declare const checkoutRoutes: readonly [{
974
990
  }, import("zod/v4/core").$strict>>;
975
991
  id: import("zod").ZodString;
976
992
  object: import("zod").ZodLiteral<"checkout_session">;
993
+ contact_collection: import("zod").ZodOptional<import("zod").ZodEnum<{
994
+ email: "email";
995
+ merchant_account: "merchant_account";
996
+ }>>;
977
997
  livemode: import("zod").ZodBoolean;
978
998
  mode: import("zod").ZodEnum<{
979
999
  subscription: "subscription";
@@ -1191,6 +1211,10 @@ export declare const checkoutRoutes: readonly [{
1191
1211
  }, import("zod/v4/core").$strict>>;
1192
1212
  id: import("zod").ZodString;
1193
1213
  object: import("zod").ZodLiteral<"checkout_session">;
1214
+ contact_collection: import("zod").ZodOptional<import("zod").ZodEnum<{
1215
+ email: "email";
1216
+ merchant_account: "merchant_account";
1217
+ }>>;
1194
1218
  livemode: import("zod").ZodBoolean;
1195
1219
  mode: import("zod").ZodEnum<{
1196
1220
  subscription: "subscription";
@@ -1548,6 +1572,10 @@ export declare const checkoutRoutes: readonly [{
1548
1572
  }, import("zod/v4/core").$strict>>;
1549
1573
  id: import("zod").ZodString;
1550
1574
  object: import("zod").ZodLiteral<"checkout_session">;
1575
+ contact_collection: import("zod").ZodOptional<import("zod").ZodEnum<{
1576
+ email: "email";
1577
+ merchant_account: "merchant_account";
1578
+ }>>;
1551
1579
  livemode: import("zod").ZodBoolean;
1552
1580
  mode: import("zod").ZodEnum<{
1553
1581
  subscription: "subscription";
@@ -1882,6 +1910,10 @@ export declare const checkoutRoutes: readonly [{
1882
1910
  }, import("zod/v4/core").$strict>>;
1883
1911
  id: import("zod").ZodString;
1884
1912
  object: import("zod").ZodLiteral<"checkout_session">;
1913
+ contact_collection: import("zod").ZodOptional<import("zod").ZodEnum<{
1914
+ email: "email";
1915
+ merchant_account: "merchant_account";
1916
+ }>>;
1885
1917
  livemode: import("zod").ZodBoolean;
1886
1918
  mode: import("zod").ZodEnum<{
1887
1919
  subscription: "subscription";
@@ -2190,6 +2222,10 @@ export declare const checkoutRoutes: readonly [{
2190
2222
  }, import("zod/v4/core").$strict>>;
2191
2223
  id: import("zod").ZodString;
2192
2224
  object: import("zod").ZodLiteral<"checkout_session">;
2225
+ contact_collection: import("zod").ZodOptional<import("zod").ZodEnum<{
2226
+ email: "email";
2227
+ merchant_account: "merchant_account";
2228
+ }>>;
2193
2229
  livemode: import("zod").ZodBoolean;
2194
2230
  mode: import("zod").ZodEnum<{
2195
2231
  subscription: "subscription";
@@ -2404,6 +2440,10 @@ export declare const checkoutRoutes: readonly [{
2404
2440
  }, import("zod/v4/core").$strict>>;
2405
2441
  id: import("zod").ZodString;
2406
2442
  object: import("zod").ZodLiteral<"checkout_session">;
2443
+ contact_collection: import("zod").ZodOptional<import("zod").ZodEnum<{
2444
+ email: "email";
2445
+ merchant_account: "merchant_account";
2446
+ }>>;
2407
2447
  livemode: import("zod").ZodBoolean;
2408
2448
  mode: import("zod").ZodEnum<{
2409
2449
  subscription: "subscription";
@@ -75,3 +75,6 @@ export declare const PAYMENT_LINK_LIMITS: Readonly<{
75
75
  lineItemsMax: 20;
76
76
  customMessageMax: 500;
77
77
  }>;
78
+ /** Who owns contact collection for a service-created checkout session. */
79
+ export declare const CHECKOUT_CONTACT_COLLECTIONS: readonly ["email", "merchant_account"];
80
+ export type CheckoutContactCollection = (typeof CHECKOUT_CONTACT_COLLECTIONS)[number];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peable.to/contracts",
3
- "version": "6.0.0",
3
+ "version": "6.1.0",
4
4
  "description": "The Peable wire, declared once: Zod contracts of every public route, the OpenAPI 3.1 generator and the closed value sets (ADR 0014 D5).",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",