@vtex/faststore 0.0.5 → 0.0.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 +101 -0
- package/dist/actions.json +181 -0
- package/dist/catalog.json +1673 -484
- package/dist/cli/UnreachableCaseError-Crd168Vu.js +10 -0
- package/dist/cli/UnreachableCaseError-Crd168Vu.js.map +1 -0
- package/dist/cli/cacheControl-CEojH_TM.js +158 -0
- package/dist/cli/cacheControl-CEojH_TM.js.map +1 -0
- package/dist/cli/cachePolicy-m2vASMRW.js +26 -0
- package/dist/cli/cachePolicy-m2vASMRW.js.map +1 -0
- package/dist/cli/computeCoreSchemaHash-DPJZj-qJ.js +10 -0
- package/dist/cli/computeCoreSchemaHash-DPJZj-qJ.js.map +1 -0
- package/dist/cli/default-BCQHcwbL.js +253 -0
- package/dist/cli/default-BCQHcwbL.js.map +1 -0
- package/dist/cli/disableSuggestions-yO9UqiWn.js +21 -0
- package/dist/cli/disableSuggestions-yO9UqiWn.js.map +1 -0
- package/dist/cli/dist-C1JhdHfo.js +2001 -0
- package/dist/cli/dist-C1JhdHfo.js.map +1 -0
- package/dist/cli/graphql-DG9thCDG.js +14589 -0
- package/dist/cli/graphql-DG9thCDG.js.map +1 -0
- package/dist/cli/index.d.ts +350 -0
- package/dist/cli/index.js +35047 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/index.min-BsIHDfFK.js +613 -0
- package/dist/cli/index.min-BsIHDfFK.js.map +1 -0
- package/dist/cli/inlineTrace-uLgOJ3TH.js +52 -0
- package/dist/cli/inlineTrace-uLgOJ3TH.js.map +1 -0
- package/dist/cli/internalPlugin-DnuwN4_4.js +11 -0
- package/dist/cli/internalPlugin-DnuwN4_4.js.map +1 -0
- package/dist/cli/packageVersion-DQAnIEil.js +6 -0
- package/dist/cli/packageVersion-DQAnIEil.js.map +1 -0
- package/dist/cli/rolldown-runtime-BMI-E3GI.js +44 -0
- package/dist/cli/schemaIsSubgraph-DoGh3OYj.js +17 -0
- package/dist/cli/schemaIsSubgraph-DoGh3OYj.js.map +1 -0
- package/dist/cli/schemaReporting-K-me-3-v.js +199 -0
- package/dist/cli/schemaReporting-K-me-3-v.js.map +1 -0
- package/dist/cli/server-runtime.js +49859 -0
- package/dist/cli/server-runtime.js.map +1 -0
- package/dist/cli/traceTreeBuilder-BIcV2U7b.js +9118 -0
- package/dist/cli/traceTreeBuilder-BIcV2U7b.js.map +1 -0
- package/dist/cli/usageReporting-Bpl8vSZX.js +10201 -0
- package/dist/cli/usageReporting-Bpl8vSZX.js.map +1 -0
- package/dist/cli/v4-CBhFvC49.js +42 -0
- package/dist/cli/v4-CBhFvC49.js.map +1 -0
- package/dist/client.d.ts +2 -1
- package/dist/client.js +2 -1
- package/dist/components.d.ts +32 -9
- package/dist/components.js +35 -14
- package/dist/content-types.json +93 -0
- package/dist/core/dist/define-component.d.ts +37 -0
- package/dist/core/dist/index.d.ts +2 -2
- package/dist/docs/access-code-sign-in.md +1 -1
- package/dist/docs/account-entry-point.md +1 -1
- package/dist/docs/account-menu-identity.md +160 -0
- package/dist/docs/account-menu.md +106 -23
- package/dist/docs/address-summary.md +24 -3
- package/dist/docs/alert-dialog.md +204 -0
- package/dist/docs/avatar.md +103 -0
- package/dist/docs/billing-address.md +284 -0
- package/dist/docs/card-entry.md +250 -0
- package/dist/docs/cardholder-document.md +142 -0
- package/dist/docs/client-preferences-fieldset.md +148 -0
- package/dist/docs/client-preferences.md +2 -1
- package/dist/docs/client-profile-fieldset.md +184 -0
- package/dist/docs/client-profile.md +1 -1
- package/dist/docs/document-field.md +58 -4
- package/dist/docs/field.md +317 -0
- package/dist/docs/form.md +307 -0
- package/dist/docs/identity-edit.md +6 -6
- package/dist/docs/identity-summary.md +5 -5
- package/dist/docs/installments.md +248 -0
- package/dist/docs/my-account-profile.md +2 -1
- package/dist/docs/order-placed-payment-summary.md +138 -0
- package/dist/docs/payment-method-badges.md +232 -0
- package/dist/docs/payment-methods.md +1 -0
- package/dist/docs/payment.md +218 -0
- package/dist/docs/phone-field.md +58 -4
- package/dist/docs/place-order.md +157 -0
- package/dist/docs/product-shelf.md +20 -13
- package/dist/docs/save-card.md +186 -0
- package/dist/docs/saved-cards.md +218 -0
- package/dist/docs/select.md +465 -0
- package/dist/docs/shipping-address.md +110 -258
- package/dist/index.d.ts +5 -2
- package/dist/internal/client.d.ts +3 -1
- package/dist/internal/client.js +4 -2
- package/dist/internal/content.d.ts +2 -2
- package/dist/internal/server.d.ts +4 -1
- package/dist/internal/server.js +4 -1
- package/dist/matter/access-code-sign-in/access-code-sign-in.js +9 -8
- package/dist/matter/access-code-sign-in/access-code-sign-in.js.map +1 -1
- package/dist/matter/account-access-gate/account-access-gate.js.map +1 -1
- package/dist/matter/account-entry-point/account-entry-point.js +1 -1
- package/dist/matter/account-entry-point/account-entry-point.js.map +1 -1
- package/dist/matter/account-menu/account-menu.d.ts +70 -0
- package/dist/matter/account-menu/account-menu.js +201 -9
- package/dist/matter/account-menu/account-menu.js.map +1 -1
- package/dist/matter/account-menu/sign-out-failure.js +50 -0
- package/dist/matter/account-menu/sign-out-failure.js.map +1 -0
- package/dist/matter/account-menu-identity/account-menu-identity.d.ts +21 -0
- package/dist/matter/account-menu-identity/account-menu-identity.js +88 -0
- package/dist/matter/account-menu-identity/account-menu-identity.js.map +1 -0
- package/dist/matter/billing-address/billing-address.d.ts +165 -0
- package/dist/matter/billing-address/billing-address.js +408 -0
- package/dist/matter/billing-address/billing-address.js.map +1 -0
- package/dist/matter/card-entry/card-capture.d.ts +25 -0
- package/dist/matter/card-entry/card-capture.js +25 -0
- package/dist/matter/card-entry/card-capture.js.map +1 -0
- package/dist/matter/card-entry/card-entry.d.ts +120 -0
- package/dist/matter/card-entry/card-entry.js +833 -0
- package/dist/matter/card-entry/card-entry.js.map +1 -0
- package/dist/matter/cardholder-document/cardholder-document.d.ts +45 -0
- package/dist/matter/cardholder-document/cardholder-document.js +70 -0
- package/dist/matter/cardholder-document/cardholder-document.js.map +1 -0
- package/dist/matter/cart/cart.js +1 -1
- package/dist/matter/client-preferences/client-preferences-fieldset.d.ts +77 -0
- package/dist/matter/client-preferences/client-preferences-fieldset.js +299 -0
- package/dist/matter/client-preferences/client-preferences-fieldset.js.map +1 -0
- package/dist/matter/client-preferences/client-preferences.d.ts +3 -5
- package/dist/matter/client-preferences/client-preferences.js +6 -6
- package/dist/matter/client-preferences/client-preferences.js.map +1 -1
- package/dist/matter/client-profile/client-profile.d.ts +4 -6
- package/dist/matter/client-profile/client-profile.js +9 -6
- package/dist/matter/client-profile/client-profile.js.map +1 -1
- package/dist/matter/client-profile-form/client-profile-fieldset.d.ts +119 -0
- package/dist/matter/client-profile-form/client-profile-fieldset.js +488 -0
- package/dist/matter/client-profile-form/client-profile-fieldset.js.map +1 -0
- package/dist/matter/identity-edit/identity-edit.js +2 -2
- package/dist/matter/identity-edit/identity-edit.js.map +1 -1
- package/dist/matter/identity-summary/identity-summary.js +3 -2
- package/dist/matter/identity-summary/identity-summary.js.map +1 -1
- package/dist/matter/installments/installments-select.d.ts +42 -0
- package/dist/matter/installments/installments-select.js +167 -0
- package/dist/matter/installments/installments-select.js.map +1 -0
- package/dist/matter/installments/installments.d.ts +58 -0
- package/dist/matter/installments/installments.js +176 -0
- package/dist/matter/installments/installments.js.map +1 -0
- package/dist/matter/installments/use-installments-selection.d.ts +29 -0
- package/dist/matter/installments/use-installments-selection.js +95 -0
- package/dist/matter/installments/use-installments-selection.js.map +1 -0
- package/dist/matter/my-account-profile/my-account-profile.d.ts +3 -0
- package/dist/matter/my-account-profile/my-account-profile.js +6 -5
- package/dist/matter/my-account-profile/my-account-profile.js.map +1 -1
- package/dist/matter/order-placed-payment-summary/order-placed-payment-summary.d.ts +63 -0
- package/dist/matter/order-placed-payment-summary/order-placed-payment-summary.js +305 -0
- package/dist/matter/order-placed-payment-summary/order-placed-payment-summary.js.map +1 -0
- package/dist/matter/payment/payment-card-capture.d.ts +19 -0
- package/dist/matter/payment/payment-card-capture.js +129 -0
- package/dist/matter/payment/payment-card-capture.js.map +1 -0
- package/dist/matter/payment/payment-controller.d.ts +24 -0
- package/dist/matter/payment/payment-controller.js +108 -0
- package/dist/matter/payment/payment-controller.js.map +1 -0
- package/dist/matter/payment/payment-method-badges.d.ts +57 -0
- package/dist/matter/payment/payment-method-badges.js +192 -0
- package/dist/matter/payment/payment-method-badges.js.map +1 -0
- package/dist/matter/payment/payment.d.ts +89 -0
- package/dist/matter/payment/payment.js +264 -0
- package/dist/matter/payment/payment.js.map +1 -0
- package/dist/matter/payment/use-payment-method-selection.d.ts +302 -0
- package/dist/matter/payment/use-payment-method-selection.js +458 -0
- package/dist/matter/payment/use-payment-method-selection.js.map +1 -0
- package/dist/matter/payment/use-payment-submit-gate.d.ts +111 -0
- package/dist/matter/payment/use-payment-submit-gate.js +144 -0
- package/dist/matter/payment/use-payment-submit-gate.js.map +1 -0
- package/dist/matter/place-order/place-order.d.ts +74 -0
- package/dist/matter/place-order/place-order.js +379 -0
- package/dist/matter/place-order/place-order.js.map +1 -0
- package/dist/matter/product-list/product-list.d.ts +1 -0
- package/dist/matter/product-list/product-list.js.map +1 -1
- package/dist/matter/product-shelf/product-shelf.d.ts +62 -31
- package/dist/matter/product-shelf/product-shelf.js +159 -57
- package/dist/matter/product-shelf/product-shelf.js.map +1 -1
- package/dist/matter/region/region.js +1 -1
- package/dist/matter/region/region.js.map +1 -1
- package/dist/matter/save-card/save-card.d.ts +49 -0
- package/dist/matter/save-card/save-card.js +188 -0
- package/dist/matter/save-card/save-card.js.map +1 -0
- package/dist/matter/saved-cards/saved-cards.d.ts +79 -0
- package/dist/matter/saved-cards/saved-cards.js +388 -0
- package/dist/matter/saved-cards/saved-cards.js.map +1 -0
- package/dist/matter/shipping-address/country-descriptors.js +20 -10
- package/dist/matter/shipping-address/country-descriptors.js.map +1 -1
- package/dist/matter/shipping-address/shipping-address.d.ts +113 -174
- package/dist/matter/shipping-address/shipping-address.js +480 -791
- package/dist/matter/shipping-address/shipping-address.js.map +1 -1
- package/dist/matter/variant-selector/variant-selector.js +1 -1
- package/dist/particles/address-summary/address-summary.d.ts +24 -0
- package/dist/particles/address-summary/address-summary.js +83 -2
- package/dist/particles/address-summary/address-summary.js.map +1 -1
- package/dist/particles/alert-dialog/alert-dialog.d.ts +68 -0
- package/dist/particles/alert-dialog/alert-dialog.js +187 -0
- package/dist/particles/alert-dialog/alert-dialog.js.map +1 -0
- package/dist/particles/avatar/avatar.d.ts +17 -0
- package/dist/particles/avatar/avatar.js +65 -0
- package/dist/particles/avatar/avatar.js.map +1 -0
- package/dist/particles/checkbox/checkbox.d.ts +7 -3
- package/dist/particles/checkbox/checkbox.js +4 -1
- package/dist/particles/checkbox/checkbox.js.map +1 -1
- package/dist/particles/document-field/document-field.d.ts +48 -5
- package/dist/particles/document-field/document-field.js +189 -32
- package/dist/particles/document-field/document-field.js.map +1 -1
- package/dist/particles/field/bound-field-registry.js +52 -0
- package/dist/particles/field/bound-field-registry.js.map +1 -0
- package/dist/particles/field/field.d.ts +116 -0
- package/dist/particles/field/field.js +497 -6
- package/dist/particles/field/field.js.map +1 -1
- package/dist/particles/fieldset/fieldset.js +2 -2
- package/dist/particles/fieldset/fieldset.js.map +1 -1
- package/dist/particles/form/form.d.ts +104 -0
- package/dist/particles/form/form.js +485 -0
- package/dist/particles/form/form.js.map +1 -0
- package/dist/particles/phone-field/phone-field.d.ts +38 -10
- package/dist/particles/phone-field/phone-field.js +183 -39
- package/dist/particles/phone-field/phone-field.js.map +1 -1
- package/dist/particles/postal-code-field/postal-code-field.js +2 -2
- package/dist/particles/postal-code-field/postal-code-field.js.map +1 -1
- package/dist/particles/select/field-select.d.ts +43 -0
- package/dist/particles/select/field-select.js +150 -0
- package/dist/particles/select/field-select.js.map +1 -0
- package/dist/particles/select/select.d.ts +2 -0
- package/dist/particles/select/select.js.map +1 -1
- package/dist/particles/shared/compose-refs.js +21 -0
- package/dist/particles/shared/compose-refs.js.map +1 -0
- package/dist/schema.graphql +766 -28
- package/dist/sdk/actions/analytics-action-provider.d.ts +15 -0
- package/dist/sdk/actions/analytics-action-provider.js +19 -0
- package/dist/sdk/actions/analytics-action-provider.js.map +1 -0
- package/dist/sdk/actions/index.d.ts +3 -1
- package/dist/sdk/actions/index.js +3 -1
- package/dist/sdk/actions/payment-action-provider.d.ts +22 -0
- package/dist/sdk/actions/payment-action-provider.js +26 -0
- package/dist/sdk/actions/payment-action-provider.js.map +1 -0
- package/dist/sdk/actions/types.d.ts +6 -2
- package/dist/sdk/analytics/analytics-destination.d.ts +43 -0
- package/dist/sdk/analytics/analytics-destination.js +90 -0
- package/dist/sdk/analytics/analytics-destination.js.map +1 -0
- package/dist/sdk/analytics/use-analytics-actions.d.ts +57 -0
- package/dist/sdk/analytics/use-analytics-actions.js +109 -0
- package/dist/sdk/analytics/use-analytics-actions.js.map +1 -0
- package/dist/sdk/cart/use-cart-actions.js +10 -9
- package/dist/sdk/cart/use-cart-actions.js.map +1 -1
- package/dist/sdk/cart/use-cart-validate-on-open.js +2 -1
- package/dist/sdk/cart/use-cart-validate-on-open.js.map +1 -1
- package/dist/sdk/content/create-content-runtime.d.ts +22 -1
- package/dist/sdk/content/create-content-runtime.js +89 -1
- package/dist/sdk/content/create-content-runtime.js.map +1 -1
- package/dist/sdk/data/empty-content-value.js +16 -0
- package/dist/sdk/data/empty-content-value.js.map +1 -0
- package/dist/sdk/data/entity-resolution-context.js +31 -0
- package/dist/sdk/data/entity-resolution-context.js.map +1 -0
- package/dist/sdk/data/entity-subscriber.js +18 -8
- package/dist/sdk/data/entity-subscriber.js.map +1 -1
- package/dist/sdk/data/hot-data-provider.js +2 -1
- package/dist/sdk/data/hot-data-provider.js.map +1 -1
- package/dist/sdk/data/index.js +2 -1
- package/dist/sdk/data/page-reactive-data-root.d.ts +36 -0
- package/dist/sdk/data/page-reactive-data-root.js +4 -2
- package/dist/sdk/data/page-reactive-data-root.js.map +1 -1
- package/dist/sdk/data/reactive-data-provider.js +7 -3
- package/dist/sdk/data/reactive-data-provider.js.map +1 -1
- package/dist/sdk/data/reactive-list-item-data-provider.js +12 -4
- package/dist/sdk/data/reactive-list-item-data-provider.js.map +1 -1
- package/dist/sdk/data/use-reactive-data-settled.js +39 -0
- package/dist/sdk/data/use-reactive-data-settled.js.map +1 -0
- package/dist/sdk/data/use-reactive-entity.js +5 -1
- package/dist/sdk/data/use-reactive-entity.js.map +1 -1
- package/dist/sdk/data/variables-from-content.d.ts +43 -0
- package/dist/sdk/data/variables-from-content.js +57 -0
- package/dist/sdk/data/variables-from-content.js.map +1 -0
- package/dist/sdk/generated/fragment-types.js +2 -0
- package/dist/sdk/generated/fragment-types.js.map +1 -1
- package/dist/sdk/generated/gql.js +2 -1
- package/dist/sdk/generated/gql.js.map +1 -1
- package/dist/sdk/generated/graphql.js +85 -1
- package/dist/sdk/generated/graphql.js.map +1 -1
- package/dist/sdk/i18n/messages/en-US.js +3 -0
- package/dist/sdk/i18n/messages/en-US.json +3 -0
- package/dist/sdk/i18n/messages/en-US.json.d.ts +3 -0
- package/dist/sdk/i18n/messages/es-ES.js +3 -0
- package/dist/sdk/i18n/messages/es-ES.json +3 -0
- package/dist/sdk/i18n/messages/pt-BR.js +3 -0
- package/dist/sdk/i18n/messages/pt-BR.json +3 -0
- package/dist/sdk/identity/use-identity-actions.js +8 -6
- package/dist/sdk/identity/use-identity-actions.js.map +1 -1
- package/dist/sdk/payment/gateway-origin.js +35 -0
- package/dist/sdk/payment/gateway-origin.js.map +1 -0
- package/dist/sdk/payment/gateway.d.ts +85 -0
- package/dist/sdk/payment/gateway.js +183 -0
- package/dist/sdk/payment/gateway.js.map +1 -0
- package/dist/sdk/payment/operations.d.ts +52 -0
- package/dist/sdk/payment/operations.js +223 -0
- package/dist/sdk/payment/operations.js.map +1 -0
- package/dist/sdk/payment/security-code-mask.js +71 -0
- package/dist/sdk/payment/security-code-mask.js.map +1 -0
- package/dist/sdk/payment/submission-registry.d.ts +33 -0
- package/dist/sdk/payment/submission-registry.js +58 -0
- package/dist/sdk/payment/submission-registry.js.map +1 -0
- package/dist/sdk/payment/use-payment-actions.d.ts +78 -0
- package/dist/sdk/payment/use-payment-actions.js +276 -0
- package/dist/sdk/payment/use-payment-actions.js.map +1 -0
- package/dist/sdk/payment/use-place-order.d.ts +65 -0
- package/dist/sdk/payment/use-place-order.js +640 -0
- package/dist/sdk/payment/use-place-order.js.map +1 -0
- package/dist/sdk/region/use-region-actions.js +2 -1
- package/dist/sdk/region/use-region-actions.js.map +1 -1
- package/dist/sdk/session/read-server-session.d.ts +21 -0
- package/dist/sdk/session/read-server-session.js +61 -0
- package/dist/sdk/session/read-server-session.js.map +1 -0
- package/dist/sdk/session/use-session-actions.js +5 -4
- package/dist/sdk/session/use-session-actions.js.map +1 -1
- package/dist/sdk/session/use-session-revalidation.js +2 -1
- package/dist/sdk/session/use-session-revalidation.js.map +1 -1
- package/dist/sdk/shipping/use-shipping-actions.js +4 -3
- package/dist/sdk/shipping/use-shipping-actions.js.map +1 -1
- package/dist/utils/loggable-error-name.js +49 -0
- package/dist/utils/loggable-error-name.js.map +1 -0
- package/dist/utils/resolve-authored-copy.js +18 -0
- package/dist/utils/resolve-authored-copy.js.map +1 -0
- package/dist/utils/safe-href.d.ts +11 -0
- package/dist/utils/substitute-template.js +33 -0
- package/dist/utils/substitute-template.js.map +1 -0
- package/package.json +14 -2
- package/src/styles/tailwind.css +34 -0
- package/dist/docs/client-profile-form.md +0 -192
- package/dist/matter/client-profile-form/client-profile-form.d.ts +0 -126
- package/dist/matter/client-profile-form/client-profile-form.js +0 -662
- package/dist/matter/client-profile-form/client-profile-form.js.map +0 -1
package/dist/schema.graphql
CHANGED
|
@@ -241,6 +241,14 @@ extend type Query {
|
|
|
241
241
|
"""Maximum number of recommendations."""
|
|
242
242
|
first: Int = 10
|
|
243
243
|
): [Product!]!
|
|
244
|
+
"""
|
|
245
|
+
Resolves a catalog route by ID or by path and returns its confirmed localized equivalents.
|
|
246
|
+
Null when the route does not exist or the catalog could not be reached.
|
|
247
|
+
"""
|
|
248
|
+
catalogRoute(
|
|
249
|
+
"""The route to resolve, by ID or by path."""
|
|
250
|
+
input: CatalogRouteInput!
|
|
251
|
+
): CatalogRoute
|
|
244
252
|
"""Look up a single category by global ID."""
|
|
245
253
|
category(
|
|
246
254
|
"""Global category ID."""
|
|
@@ -373,6 +381,28 @@ extend type Query {
|
|
|
373
381
|
session: Session!
|
|
374
382
|
}
|
|
375
383
|
|
|
384
|
+
extend type Query {
|
|
385
|
+
"""
|
|
386
|
+
The cart's payment state: methods, selection, installment options, and saved cards. Projected from the same order form as Query.cart. Always resolves; lists are empty and selection fields are null when payment is unset.
|
|
387
|
+
"""
|
|
388
|
+
payment: Payment!
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
extend type Query {
|
|
392
|
+
"""
|
|
393
|
+
A settled order's payment recap, keyed on the order group
|
|
394
|
+
paymentStartTransaction / paymentGatewayCallback return. Null when the
|
|
395
|
+
order group does not resolve to a settled order — never a fabricated empty
|
|
396
|
+
projection (contrast Query.payment, which always resolves).
|
|
397
|
+
"""
|
|
398
|
+
order(
|
|
399
|
+
"""
|
|
400
|
+
The order group returned by paymentStartTransaction / paymentGatewayCallback.
|
|
401
|
+
"""
|
|
402
|
+
orderGroup: String!
|
|
403
|
+
): Order
|
|
404
|
+
}
|
|
405
|
+
|
|
376
406
|
extend type Query {
|
|
377
407
|
"""Which authentication methods this account enables."""
|
|
378
408
|
sessionAuthProviders: SessionAuthProviders!
|
|
@@ -389,11 +419,14 @@ extend type Query {
|
|
|
389
419
|
extend type Query {
|
|
390
420
|
"""
|
|
391
421
|
The signed-in shopper's own persistent profile. Takes no id — the identity
|
|
392
|
-
comes from the session.
|
|
393
|
-
|
|
394
|
-
|
|
422
|
+
comes from the session. Nullable because it is permission-gated (ADR-00005).
|
|
423
|
+
Null with no error when the session names no shopper. Null with an
|
|
424
|
+
UNAUTHORIZED, UPSTREAM_ERROR, UPSTREAM_TIMEOUT or CIRCUIT_OPEN error on this
|
|
425
|
+
field's path when the read fails (ADR-00007), so the rest of the operation
|
|
426
|
+
still resolves. A profile whose fields are null when the shopper has saved
|
|
427
|
+
nothing yet.
|
|
395
428
|
"""
|
|
396
|
-
customerProfile: CustomerProfile
|
|
429
|
+
customerProfile: CustomerProfile
|
|
397
430
|
}
|
|
398
431
|
|
|
399
432
|
"""
|
|
@@ -507,6 +540,41 @@ extend type Mutation {
|
|
|
507
540
|
): ShippingOptionSelectPayload!
|
|
508
541
|
}
|
|
509
542
|
|
|
543
|
+
extend type Mutation {
|
|
544
|
+
"""
|
|
545
|
+
Select a payment method, optionally identifying a new card's BIN or a saved card's account.
|
|
546
|
+
"""
|
|
547
|
+
paymentMethodSelect(
|
|
548
|
+
"""Method (and optional BIN/saved-card) to select."""
|
|
549
|
+
input: PaymentMethodSelectInput!
|
|
550
|
+
): PaymentMethodSelectPayload!
|
|
551
|
+
"""
|
|
552
|
+
Select an installment count for the currently-selected method. Recomputes the cart total.
|
|
553
|
+
"""
|
|
554
|
+
paymentInstallmentSelect(
|
|
555
|
+
"""Installment count to select."""
|
|
556
|
+
input: PaymentInstallmentSelectInput!
|
|
557
|
+
): PaymentInstallmentSelectPayload!
|
|
558
|
+
"""Set the billing address, or fall back to the delivery address."""
|
|
559
|
+
paymentBillingAddressUpdate(
|
|
560
|
+
"""
|
|
561
|
+
Billing address details, or sameAsDelivery: true to use the delivery address.
|
|
562
|
+
"""
|
|
563
|
+
input: PaymentBillingAddressUpdateInput!
|
|
564
|
+
): PaymentBillingAddressUpdatePayload!
|
|
565
|
+
"""
|
|
566
|
+
Open a VTEX transaction from the currently-selected payment. No input: every field is server-derived.
|
|
567
|
+
"""
|
|
568
|
+
paymentStartTransaction: PaymentStartTransactionPayload!
|
|
569
|
+
"""
|
|
570
|
+
Finalize a transaction after the direct-to-gateway payment call succeeded.
|
|
571
|
+
"""
|
|
572
|
+
paymentGatewayCallback(
|
|
573
|
+
"""The order group to finalize."""
|
|
574
|
+
input: PaymentGatewayCallbackInput!
|
|
575
|
+
): PaymentGatewayCallbackPayload!
|
|
576
|
+
}
|
|
577
|
+
|
|
510
578
|
extend type Mutation {
|
|
511
579
|
"""
|
|
512
580
|
Sign in with email and password. Returns the refreshed session, or typed
|
|
@@ -766,6 +834,10 @@ type Variant implements Node {
|
|
|
766
834
|
name: String!
|
|
767
835
|
"""Stock Keeping Unit code. Unique merchant-side identifier."""
|
|
768
836
|
sku: String!
|
|
837
|
+
"""
|
|
838
|
+
PDP path segment in the active locale for this SKU, "{linkId}-{skuId}".
|
|
839
|
+
"""
|
|
840
|
+
routeSlug: String!
|
|
769
841
|
"""International Article Number (barcode). Maps to VTEX SKU EAN."""
|
|
770
842
|
ean: String
|
|
771
843
|
"""Merchant reference code."""
|
|
@@ -839,6 +911,11 @@ type Product implements Node @cacheControl(maxAge: 60, scope: PUBLIC) {
|
|
|
839
911
|
title: String!
|
|
840
912
|
"""URL-friendly handle / slug. Maps to VTEX `LinkId`."""
|
|
841
913
|
slug: String!
|
|
914
|
+
"""
|
|
915
|
+
PDP path segment in the active locale, "{linkId}-{skuId}" with the representative SKU (in stock first, then lowest
|
|
916
|
+
spot price, then the first SKU). Build product URLs from this, not from `slug`.
|
|
917
|
+
"""
|
|
918
|
+
routeSlug: String!
|
|
842
919
|
"""Full marketing description."""
|
|
843
920
|
description: String
|
|
844
921
|
"""Description rendered as HTML."""
|
|
@@ -1503,6 +1580,62 @@ type TrendingSearch {
|
|
|
1503
1580
|
count: Int!
|
|
1504
1581
|
}
|
|
1505
1582
|
|
|
1583
|
+
"""Identifies a catalog route. Set exactly one member."""
|
|
1584
|
+
input CatalogRouteInput {
|
|
1585
|
+
"""
|
|
1586
|
+
Relay node ID of the entity behind the route. Only Product IDs are accepted.
|
|
1587
|
+
"""
|
|
1588
|
+
id: ID
|
|
1589
|
+
"""
|
|
1590
|
+
Logical store route, without the binding's origin or base path
|
|
1591
|
+
(e.g. "/apparel/t-shirts", "/shirt-51/p").
|
|
1592
|
+
"""
|
|
1593
|
+
path: String
|
|
1594
|
+
}
|
|
1595
|
+
|
|
1596
|
+
"""Kind of entity a catalog route resolves to."""
|
|
1597
|
+
enum CatalogRouteKind {
|
|
1598
|
+
"""A product detail page."""
|
|
1599
|
+
PRODUCT
|
|
1600
|
+
"""A category or subcategory page."""
|
|
1601
|
+
CATEGORY
|
|
1602
|
+
"""A brand page."""
|
|
1603
|
+
BRAND
|
|
1604
|
+
"""A collection page."""
|
|
1605
|
+
COLLECTION
|
|
1606
|
+
}
|
|
1607
|
+
|
|
1608
|
+
"""
|
|
1609
|
+
A catalog route and its confirmed equivalents in every locale the catalog registers.
|
|
1610
|
+
"""
|
|
1611
|
+
type CatalogRoute @cacheControl(maxAge: 300, scope: PUBLIC) {
|
|
1612
|
+
"""
|
|
1613
|
+
Relay node ID of the entity. Stable across locales; the route's identity.
|
|
1614
|
+
"""
|
|
1615
|
+
id: ID!
|
|
1616
|
+
"""Kind of entity behind the route."""
|
|
1617
|
+
kind: CatalogRouteKind!
|
|
1618
|
+
"""
|
|
1619
|
+
One entry per locale the catalog confirms for every segment of the route. Editorial fallback never adds an
|
|
1620
|
+
entry. May include locales the store does not publish; intersect with the store's bindings.
|
|
1621
|
+
"""
|
|
1622
|
+
variants: [CatalogRouteVariant!]!
|
|
1623
|
+
}
|
|
1624
|
+
|
|
1625
|
+
"""A route's equivalent in one locale."""
|
|
1626
|
+
type CatalogRouteVariant {
|
|
1627
|
+
"""BCP 47 tag, canonicalized."""
|
|
1628
|
+
locale: String!
|
|
1629
|
+
"""
|
|
1630
|
+
Route segment(s) in that locale, lowercased, accents kept. Not percent-encoded.
|
|
1631
|
+
"""
|
|
1632
|
+
slug: String!
|
|
1633
|
+
"""
|
|
1634
|
+
Relative logical path ("/{slug}" or "/{slug}/p"). No origin, no base path, not percent-encoded.
|
|
1635
|
+
"""
|
|
1636
|
+
path: String!
|
|
1637
|
+
}
|
|
1638
|
+
|
|
1506
1639
|
"""
|
|
1507
1640
|
A shopping cart representing items a customer intends to purchase.
|
|
1508
1641
|
Maps to the VTEX orderForm entity.
|
|
@@ -1719,10 +1852,11 @@ type CartItem {
|
|
|
1719
1852
|
"""
|
|
1720
1853
|
compositions: [CartItemComposition!]!
|
|
1721
1854
|
"""
|
|
1722
|
-
|
|
1723
|
-
|
|
1855
|
+
The cart-wide delivery options this item is eligible for: the same ShippingOption
|
|
1856
|
+
entities Shipping.options lists, carrying the shared-pool price, not a per-item
|
|
1857
|
+
quote. Excludes pickup options; delivery channel only.
|
|
1724
1858
|
"""
|
|
1725
|
-
shippingOptions: [
|
|
1859
|
+
shippingOptions: [ShippingOption!]!
|
|
1726
1860
|
"""
|
|
1727
1861
|
This item's own currently selected delivery option, or null when no selection
|
|
1728
1862
|
is persisted or the persisted selection is a pickup option.
|
|
@@ -1745,7 +1879,7 @@ type CartItemCustomization {
|
|
|
1745
1879
|
}
|
|
1746
1880
|
|
|
1747
1881
|
"""A single submitted customization field."""
|
|
1748
|
-
type CartItemCustomizationEntry {
|
|
1882
|
+
type CartItemCustomizationEntry @cacheControl(maxAge: 0, scope: PRIVATE) {
|
|
1749
1883
|
"""Field name as defined by the assembly (e.g. "Text")."""
|
|
1750
1884
|
name: String!
|
|
1751
1885
|
"""Submitted value, stringified. File uploads carry the file URL."""
|
|
@@ -2272,8 +2406,9 @@ type ShippingEstimate {
|
|
|
2272
2406
|
}
|
|
2273
2407
|
|
|
2274
2408
|
"""
|
|
2275
|
-
|
|
2276
|
-
item
|
|
2409
|
+
One cart item's current selection. Its price and estimate are Checkout's real values for
|
|
2410
|
+
this item; option carries the shared name and channel. All values are a live snapshot:
|
|
2411
|
+
another item joining or leaving the same SLA can change them.
|
|
2277
2412
|
"""
|
|
2278
2413
|
type ItemShippingOption {
|
|
2279
2414
|
"""
|
|
@@ -2281,15 +2416,9 @@ type ItemShippingOption {
|
|
|
2281
2416
|
from cart-wide options so the Apollo cache never conflates them.
|
|
2282
2417
|
"""
|
|
2283
2418
|
id: ID!
|
|
2284
|
-
"""
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
it may read in the account's default culture on a non-default binding.
|
|
2288
|
-
"""
|
|
2289
|
-
name: String!
|
|
2290
|
-
"""Delivery channel: home delivery or pickup."""
|
|
2291
|
-
channel: DeliveryChannel!
|
|
2292
|
-
"""Estimated shipping time."""
|
|
2419
|
+
"""The cart-wide shipping option this selection belongs to."""
|
|
2420
|
+
option: ShippingOption!
|
|
2421
|
+
"""Estimated shipping time for this item."""
|
|
2293
2422
|
shippingEstimate: ShippingEstimate!
|
|
2294
2423
|
"""Shipping cost for this item. Zero when free shipping applies."""
|
|
2295
2424
|
price: Money!
|
|
@@ -2297,6 +2426,28 @@ type ItemShippingOption {
|
|
|
2297
2426
|
listPrice: Money!
|
|
2298
2427
|
}
|
|
2299
2428
|
|
|
2429
|
+
"""
|
|
2430
|
+
A shipping option with at least one cart item currently selected on it. Its price and
|
|
2431
|
+
shippingEstimateList cover only those items, recomputed on every request.
|
|
2432
|
+
"""
|
|
2433
|
+
type SelectedShippingOption {
|
|
2434
|
+
"""The cart-wide shipping option these items selected."""
|
|
2435
|
+
option: ShippingOption!
|
|
2436
|
+
"""
|
|
2437
|
+
Cart items currently selected on this option (not every eligible item).
|
|
2438
|
+
"""
|
|
2439
|
+
items: [CartItem!]!
|
|
2440
|
+
"""Sum of items[].selectedShippingOption.price."""
|
|
2441
|
+
price: Money!
|
|
2442
|
+
"""Sum of items[].selectedShippingOption.listPrice."""
|
|
2443
|
+
listPrice: Money!
|
|
2444
|
+
"""
|
|
2445
|
+
items[].selectedShippingOption.shippingEstimate, one entry per item, unreduced and
|
|
2446
|
+
uncompared.
|
|
2447
|
+
"""
|
|
2448
|
+
shippingEstimateList: [ShippingEstimate!]!
|
|
2449
|
+
}
|
|
2450
|
+
|
|
2300
2451
|
"""A shipping option available for a given item and destination."""
|
|
2301
2452
|
type ShippingOption {
|
|
2302
2453
|
"""Opaque delivery option identifier."""
|
|
@@ -2309,11 +2460,21 @@ type ShippingOption {
|
|
|
2309
2460
|
name: String!
|
|
2310
2461
|
"""Delivery channel: home delivery or pickup."""
|
|
2311
2462
|
channel: DeliveryChannel!
|
|
2312
|
-
"""
|
|
2313
|
-
|
|
2314
|
-
|
|
2463
|
+
"""
|
|
2464
|
+
Estimated shipping time, sampled from one eligible item. Delivery estimates can genuinely vary
|
|
2465
|
+
per item under the same option; use shippingEstimateList for every item's own value.
|
|
2466
|
+
"""
|
|
2467
|
+
shippingEstimate: ShippingEstimate! @deprecated(reason: "Sampled from one item and can misrepresent the others. Use shippingEstimateList.")
|
|
2468
|
+
"""
|
|
2469
|
+
Every eligible item's own shippingEstimate, one entry per item, unreduced and uncompared.
|
|
2470
|
+
"""
|
|
2471
|
+
shippingEstimateList: [ShippingEstimate!]!
|
|
2472
|
+
"""
|
|
2473
|
+
Shipping cost for every item this option covers. Zero when free shipping applies. A live
|
|
2474
|
+
estimate of the shared per-SLA pool, not a guaranteed quote.
|
|
2475
|
+
"""
|
|
2315
2476
|
price: Money!
|
|
2316
|
-
"""Shipping list price before any promotions."""
|
|
2477
|
+
"""Shipping list price before any promotions, summed like price."""
|
|
2317
2478
|
listPrice: Money!
|
|
2318
2479
|
"""Cart items for which this option is currently available."""
|
|
2319
2480
|
items: [CartItem!]!
|
|
@@ -2530,17 +2691,21 @@ type Shipping implements Node @cacheControl(maxAge: 0, scope: PRIVATE) {
|
|
|
2530
2691
|
"""The logged-in shopper's saved addresses. Empty for anonymous shoppers."""
|
|
2531
2692
|
savedAddresses: [Address!]!
|
|
2532
2693
|
"""
|
|
2533
|
-
Delivery-channel shipping options
|
|
2694
|
+
Delivery-channel shipping options any cart item is eligible for at the current address, prices summed across the eligible items.
|
|
2534
2695
|
"""
|
|
2535
2696
|
options: [ShippingOption!]!
|
|
2536
2697
|
"""
|
|
2698
|
+
Delivery-channel options with at least one item currently selected on them, one entry per option. Pickup selections are excluded.
|
|
2699
|
+
"""
|
|
2700
|
+
selectedOptions: [SelectedShippingOption!]!
|
|
2701
|
+
"""
|
|
2537
2702
|
The selected option, when one selection applies to the whole cart. Null when items disagree or the persisted selection is a pickup-channel SLA.
|
|
2538
2703
|
"""
|
|
2539
|
-
selectedOptionId: ID
|
|
2704
|
+
selectedOptionId: ID @deprecated(reason: "Cannot express split shipping. Use Shipping.selectedOptions.")
|
|
2540
2705
|
}
|
|
2541
2706
|
|
|
2542
2707
|
"""A delivery address or saved-address reference."""
|
|
2543
|
-
type Address {
|
|
2708
|
+
type Address @cacheControl(maxAge: 0, scope: PRIVATE) {
|
|
2544
2709
|
"""Saved-address reference. Null for addresses entered in this session."""
|
|
2545
2710
|
id: ID
|
|
2546
2711
|
"""Recipient name for this address."""
|
|
@@ -2656,7 +2821,8 @@ type ShippingAddressUpdatePayload {
|
|
|
2656
2821
|
"""Input for selecting a shipping option for the whole cart."""
|
|
2657
2822
|
input ShippingOptionSelectInput {
|
|
2658
2823
|
"""
|
|
2659
|
-
The shipping option ID to select. Must be
|
|
2824
|
+
The shipping option ID to select. Must be offered as a delivery option by at least one item in
|
|
2825
|
+
the cart; items that don't offer it fall back to the Checkout API's own choice.
|
|
2660
2826
|
"""
|
|
2661
2827
|
optionId: ID!
|
|
2662
2828
|
}
|
|
@@ -2667,7 +2833,10 @@ enum ShippingOptionSelectErrorCode {
|
|
|
2667
2833
|
MISSING_CART_CONTEXT
|
|
2668
2834
|
"""The cart was not found."""
|
|
2669
2835
|
CART_NOT_FOUND
|
|
2670
|
-
"""
|
|
2836
|
+
"""
|
|
2837
|
+
The option id is not offered as a delivery option by any item in the cart (unknown id or
|
|
2838
|
+
pickup). Returned without calling Checkout. An option only some items offer is not an error.
|
|
2839
|
+
"""
|
|
2671
2840
|
OPTION_UNAVAILABLE
|
|
2672
2841
|
"""No delivery address is persisted on the cart."""
|
|
2673
2842
|
MISSING_SHIPPING_ADDRESS
|
|
@@ -2691,6 +2860,575 @@ type ShippingOptionSelectPayload {
|
|
|
2691
2860
|
userErrors: [ShippingOptionSelectError!]!
|
|
2692
2861
|
}
|
|
2693
2862
|
|
|
2863
|
+
"""
|
|
2864
|
+
The cart's payment state: available methods with server-driven validator config,
|
|
2865
|
+
the current selection, installment options, and the shopper's saved cards. A
|
|
2866
|
+
read-only sibling of Cart, Shipping, and Session, projected from the same order
|
|
2867
|
+
form fetch. Method-agnostic: projects whatever payment systems VTEX returns, not
|
|
2868
|
+
only credit card. Never carries a full card number or CVV.
|
|
2869
|
+
"""
|
|
2870
|
+
type Payment implements Node @cacheControl(maxAge: 0, scope: PRIVATE) {
|
|
2871
|
+
"""
|
|
2872
|
+
Globally unique identifier (Relay Node ID), encoded from the order form ID.
|
|
2873
|
+
"""
|
|
2874
|
+
id: ID!
|
|
2875
|
+
"""
|
|
2876
|
+
Payment methods available on this cart. Empty when none are configured.
|
|
2877
|
+
"""
|
|
2878
|
+
methods: [PaymentMethod!]!
|
|
2879
|
+
"""
|
|
2880
|
+
The currently selected method's id (PaymentMethod.id), or null when unselected.
|
|
2881
|
+
"""
|
|
2882
|
+
selectedMethodId: String
|
|
2883
|
+
"""
|
|
2884
|
+
Saved-card account reference for the current selection, when a saved card is selected. Null otherwise.
|
|
2885
|
+
"""
|
|
2886
|
+
selectedAccountId: String
|
|
2887
|
+
"""
|
|
2888
|
+
The currently selected installment tier, resolved from the selection against installmentOptions. Null when unselected or unresolved.
|
|
2889
|
+
"""
|
|
2890
|
+
selectedInstallment: PaymentInstallment
|
|
2891
|
+
"""
|
|
2892
|
+
Installment plans available, grouped by method (and BIN, for card methods). Serves both a new card (matched by BIN) and a saved card (matched by its stored method).
|
|
2893
|
+
"""
|
|
2894
|
+
installmentOptions: [PaymentInstallmentOption!]!
|
|
2895
|
+
"""
|
|
2896
|
+
The shopper's saved cards. Empty for anonymous shoppers or when none are saved.
|
|
2897
|
+
"""
|
|
2898
|
+
savedCards: [SavedCard!]!
|
|
2899
|
+
"""
|
|
2900
|
+
The BIN persisted on the current selection, or null when the selection carries
|
|
2901
|
+
none (a non-card method, or a saved card selected without one). Echoes back what
|
|
2902
|
+
paymentMethodSelect wrote, which is what a client needs in order to know whether
|
|
2903
|
+
its own locally-detected BIN has actually reached the order form: installment
|
|
2904
|
+
options are matched against THIS value server-side, never against a client draft.
|
|
2905
|
+
Not sensitive — a BIN identifies an issuer range, never a card.
|
|
2906
|
+
"""
|
|
2907
|
+
selectedBin: String
|
|
2908
|
+
}
|
|
2909
|
+
|
|
2910
|
+
"""
|
|
2911
|
+
A payment method available on the cart, with the server-driven validator config
|
|
2912
|
+
that determines which card-form fields render, their masks, and whether they
|
|
2913
|
+
are required. A non-normalized value object (ADR-0012); read directly off
|
|
2914
|
+
Payment.methods.
|
|
2915
|
+
"""
|
|
2916
|
+
type PaymentMethod {
|
|
2917
|
+
"""Payment-system identifier (VTEX paymentSystem stringId)."""
|
|
2918
|
+
id: String!
|
|
2919
|
+
"""
|
|
2920
|
+
Display name (e.g. "Visa", "Mastercard", "Cash"). Doubles as the network name for card methods.
|
|
2921
|
+
"""
|
|
2922
|
+
name: String!
|
|
2923
|
+
"""
|
|
2924
|
+
Payment-system group (e.g. "creditCardPaymentGroup", "debitCardPaymentGroup"). Store-configured; kept as a string, not an enum.
|
|
2925
|
+
"""
|
|
2926
|
+
groupName: String!
|
|
2927
|
+
"""
|
|
2928
|
+
Whether VTEX flags this payment system as requiring cardholder authentication
|
|
2929
|
+
(for example 3-D Secure). Projected verbatim from the order form's payment-system
|
|
2930
|
+
configuration: it describes how the store configured the system, not a guarantee
|
|
2931
|
+
about any particular transaction. Null when the order form carries no value for
|
|
2932
|
+
this system — which is not the same as false. Detection only: this API implements
|
|
2933
|
+
no authentication challenge.
|
|
2934
|
+
"""
|
|
2935
|
+
requiresAuthentication: Boolean
|
|
2936
|
+
"""
|
|
2937
|
+
Validator configuration driving field presence, masks, and requiredness.
|
|
2938
|
+
"""
|
|
2939
|
+
validator: PaymentMethodValidator!
|
|
2940
|
+
}
|
|
2941
|
+
|
|
2942
|
+
"""
|
|
2943
|
+
Per-method validator configuration. Server-driven so no component hardcodes
|
|
2944
|
+
field presence, masks, or requiredness.
|
|
2945
|
+
"""
|
|
2946
|
+
type PaymentMethodValidator {
|
|
2947
|
+
"""
|
|
2948
|
+
Mask pattern for the card number input. Null when the method carries no mask.
|
|
2949
|
+
"""
|
|
2950
|
+
numberMask: String
|
|
2951
|
+
"""
|
|
2952
|
+
Regex for real-time network detection against the typed BIN. Null when unset.
|
|
2953
|
+
"""
|
|
2954
|
+
numberRegex: String
|
|
2955
|
+
"""
|
|
2956
|
+
Mask pattern for the security-code (CVV) input. Null when unused or unmasked.
|
|
2957
|
+
"""
|
|
2958
|
+
cvvMask: String
|
|
2959
|
+
"""Regex validating the security-code (CVV) input. Null when unused."""
|
|
2960
|
+
cvvRegex: String
|
|
2961
|
+
"""Whether this method requires the security code (CVV)."""
|
|
2962
|
+
cvvRequired: Boolean!
|
|
2963
|
+
"""Whether this method requires an expiration date."""
|
|
2964
|
+
expirationRequired: Boolean!
|
|
2965
|
+
"""Whether this method requires the cardholder name."""
|
|
2966
|
+
holderNameRequired: Boolean!
|
|
2967
|
+
"""Whether this method requires a billing address."""
|
|
2968
|
+
billingAddressRequired: Boolean!
|
|
2969
|
+
"""
|
|
2970
|
+
Whether a cardholder document field is displayable for this method. Distinct from documentRequired.
|
|
2971
|
+
"""
|
|
2972
|
+
documentDisplayable: Boolean!
|
|
2973
|
+
"""
|
|
2974
|
+
Whether the displayed cardholder document is required. Distinct from documentDisplayable — a document can be shown without being mandatory.
|
|
2975
|
+
"""
|
|
2976
|
+
documentRequired: Boolean!
|
|
2977
|
+
}
|
|
2978
|
+
|
|
2979
|
+
"""
|
|
2980
|
+
One installment tier: a specific installment count at a given per-installment
|
|
2981
|
+
value and total. Keyed by count within its parent PaymentInstallmentOption — a
|
|
2982
|
+
non-normalized value object (ADR-0012).
|
|
2983
|
+
"""
|
|
2984
|
+
type PaymentInstallment {
|
|
2985
|
+
"""Number of installments (1 = single payment, no interest)."""
|
|
2986
|
+
count: Int!
|
|
2987
|
+
"""Amount per installment."""
|
|
2988
|
+
value: Money!
|
|
2989
|
+
"""Total amount across all installments, including any interest."""
|
|
2990
|
+
total: Money!
|
|
2991
|
+
"""
|
|
2992
|
+
Interest rate in hundredths of a percent, exactly as the VTEX order form carries it (100 = 1%; 0 = interest-free).
|
|
2993
|
+
"""
|
|
2994
|
+
interestRate: Float!
|
|
2995
|
+
}
|
|
2996
|
+
|
|
2997
|
+
"""
|
|
2998
|
+
Installment tiers available for one payment method (and, for card methods, one
|
|
2999
|
+
BIN range). A non-normalized value object (ADR-0012): read straight off
|
|
3000
|
+
Payment.installmentOptions.
|
|
3001
|
+
"""
|
|
3002
|
+
type PaymentInstallmentOption @cacheControl(maxAge: 0, scope: PRIVATE) {
|
|
3003
|
+
"""The payment method this option applies to (PaymentMethod.id)."""
|
|
3004
|
+
methodId: String!
|
|
3005
|
+
"""
|
|
3006
|
+
The BIN range this option applies to, when method-and-BIN-specific. Null when the option applies by method alone.
|
|
3007
|
+
"""
|
|
3008
|
+
bin: String
|
|
3009
|
+
"""Base order value this option was quoted against."""
|
|
3010
|
+
baseValue: Money!
|
|
3011
|
+
"""
|
|
3012
|
+
Installment tiers, with a guaranteed `count: 1` entry prepended when VTEX
|
|
3013
|
+
omits one. A tier that upstream already supplies is passed through untouched
|
|
3014
|
+
(including its position and interest rate).
|
|
3015
|
+
"""
|
|
3016
|
+
installments: [PaymentInstallment!]!
|
|
3017
|
+
}
|
|
3018
|
+
|
|
3019
|
+
"""
|
|
3020
|
+
One of the shopper's saved cards. Never carries a full card number or CVV. A
|
|
3021
|
+
normalized, id-bearing value object (ADR-0012): id is a stable opaque cache
|
|
3022
|
+
key, not a Relay Node.
|
|
3023
|
+
"""
|
|
3024
|
+
type SavedCard @cacheControl(maxAge: 0, scope: PRIVATE) {
|
|
3025
|
+
"""
|
|
3026
|
+
Opaque, stable cache key. Not a Relay Node ID; SavedCard is not registered in the cross-module Node registry.
|
|
3027
|
+
"""
|
|
3028
|
+
id: ID!
|
|
3029
|
+
"""
|
|
3030
|
+
The saved-card account reference. Pass this back on selection; never a full card number.
|
|
3031
|
+
"""
|
|
3032
|
+
accountId: String!
|
|
3033
|
+
"""
|
|
3034
|
+
The saved card's payment-system id (PaymentMethod.id), for cross-referencing validator config and installment options.
|
|
3035
|
+
"""
|
|
3036
|
+
methodId: String!
|
|
3037
|
+
"""Card network / issuer display name (e.g. "Visa")."""
|
|
3038
|
+
network: String!
|
|
3039
|
+
"""Last four digits of the card number."""
|
|
3040
|
+
lastFourDigits: String!
|
|
3041
|
+
"""BIN of the saved card, for installment-option lookup by network."""
|
|
3042
|
+
bin: String!
|
|
3043
|
+
"""Shopper-assigned custom label, when set."""
|
|
3044
|
+
label: String
|
|
3045
|
+
"""
|
|
3046
|
+
Whether the card is expired. Expired cards are still returned; non-selectable is a UI concern downstream.
|
|
3047
|
+
"""
|
|
3048
|
+
expired: Boolean!
|
|
3049
|
+
"""
|
|
3050
|
+
Whether completing payment with this card requires the shopper to enter the CVV.
|
|
3051
|
+
"""
|
|
3052
|
+
cvvRequired: Boolean!
|
|
3053
|
+
}
|
|
3054
|
+
|
|
3055
|
+
"""
|
|
3056
|
+
Input for selecting a payment method, optionally identifying a new card (by
|
|
3057
|
+
BIN) or a saved card (by account reference). A non-card method (e.g. Cash)
|
|
3058
|
+
omits both `bin` and `accountId`. When `accountId` is given, `bin` may also
|
|
3059
|
+
be given to match the saved card against a BIN-specific installment option;
|
|
3060
|
+
a `bin` that does not match the saved card's own BIN is rejected with
|
|
3061
|
+
MISMATCHED_BIN_FOR_SAVED_CARD.
|
|
3062
|
+
"""
|
|
3063
|
+
input PaymentMethodSelectInput {
|
|
3064
|
+
"""The method to select (PaymentMethod.id)."""
|
|
3065
|
+
methodId: String!
|
|
3066
|
+
"""
|
|
3067
|
+
A newly-entered card's BIN, once detected. Omit for a saved card or a non-card method.
|
|
3068
|
+
"""
|
|
3069
|
+
bin: String
|
|
3070
|
+
"""
|
|
3071
|
+
A saved card's account reference (SavedCard.accountId). Omit for a new card or a non-card method.
|
|
3072
|
+
"""
|
|
3073
|
+
accountId: String
|
|
3074
|
+
}
|
|
3075
|
+
|
|
3076
|
+
"""Error codes for the paymentMethodSelect mutation."""
|
|
3077
|
+
enum PaymentMethodSelectErrorCode {
|
|
3078
|
+
"""No cart context was provided (x-order-form-id header/cookie)."""
|
|
3079
|
+
MISSING_CART_CONTEXT
|
|
3080
|
+
"""The cart was not found."""
|
|
3081
|
+
CART_NOT_FOUND
|
|
3082
|
+
"""The provided methodId does not match any entry in Payment.methods."""
|
|
3083
|
+
INVALID_METHOD_ID
|
|
3084
|
+
"""The provided accountId does not match any entry in Payment.savedCards."""
|
|
3085
|
+
INVALID_SAVED_CARD_ACCOUNT_ID
|
|
3086
|
+
"""The bin does not match the BIN of the saved card named by accountId."""
|
|
3087
|
+
MISMATCHED_BIN_FOR_SAVED_CARD
|
|
3088
|
+
"""
|
|
3089
|
+
The bin is not 1 to 8 numeric digits — a BIN identifies an issuer range, never a card number.
|
|
3090
|
+
"""
|
|
3091
|
+
INVALID_BIN_FORMAT
|
|
3092
|
+
"""
|
|
3093
|
+
Never returned. The input once allowed at most one of bin / accountId; both are
|
|
3094
|
+
now accepted so a saved card can be matched to an installment option by its own
|
|
3095
|
+
BIN. Retained per ADR-00010 (additive-only with a deprecation window).
|
|
3096
|
+
"""
|
|
3097
|
+
CONFLICTING_BIN_AND_ACCOUNT_ID @deprecated(reason: "Never returned; bin and accountId may now be sent together.")
|
|
3098
|
+
}
|
|
3099
|
+
|
|
3100
|
+
"""A domain error returned from the paymentMethodSelect mutation."""
|
|
3101
|
+
type PaymentMethodSelectError {
|
|
3102
|
+
"""Machine-readable error code."""
|
|
3103
|
+
code: PaymentMethodSelectErrorCode!
|
|
3104
|
+
"""Human-readable error message."""
|
|
3105
|
+
message: String!
|
|
3106
|
+
}
|
|
3107
|
+
|
|
3108
|
+
"""Payload returned by the paymentMethodSelect mutation."""
|
|
3109
|
+
type PaymentMethodSelectPayload {
|
|
3110
|
+
"""The updated payment state, or null if errors occurred."""
|
|
3111
|
+
payment: Payment
|
|
3112
|
+
"""
|
|
3113
|
+
The current billing address, echoed for convenience. Null when same-as-delivery is in effect.
|
|
3114
|
+
"""
|
|
3115
|
+
billingAddress: Address
|
|
3116
|
+
"""Domain errors that occurred during the operation."""
|
|
3117
|
+
userErrors: [PaymentMethodSelectError!]!
|
|
3118
|
+
}
|
|
3119
|
+
|
|
3120
|
+
"""
|
|
3121
|
+
Input for selecting an installment count for the currently-selected method.
|
|
3122
|
+
"""
|
|
3123
|
+
input PaymentInstallmentSelectInput {
|
|
3124
|
+
"""Number of installments to select (1 = single payment, no interest)."""
|
|
3125
|
+
count: Int!
|
|
3126
|
+
}
|
|
3127
|
+
|
|
3128
|
+
"""Error codes for the paymentInstallmentSelect mutation."""
|
|
3129
|
+
enum PaymentInstallmentSelectErrorCode {
|
|
3130
|
+
"""No cart context was provided (x-order-form-id header/cookie)."""
|
|
3131
|
+
MISSING_CART_CONTEXT
|
|
3132
|
+
"""The cart was not found."""
|
|
3133
|
+
CART_NOT_FOUND
|
|
3134
|
+
"""
|
|
3135
|
+
No payment method has been selected yet (paymentMethodSelect was never called).
|
|
3136
|
+
"""
|
|
3137
|
+
MISSING_PAYMENT_METHOD_SELECTION
|
|
3138
|
+
"""
|
|
3139
|
+
The count does not match any tier in the resolvable installment option.
|
|
3140
|
+
"""
|
|
3141
|
+
INVALID_INSTALLMENT_COUNT
|
|
3142
|
+
}
|
|
3143
|
+
|
|
3144
|
+
"""A domain error returned from the paymentInstallmentSelect mutation."""
|
|
3145
|
+
type PaymentInstallmentSelectError {
|
|
3146
|
+
"""Machine-readable error code."""
|
|
3147
|
+
code: PaymentInstallmentSelectErrorCode!
|
|
3148
|
+
"""Human-readable error message."""
|
|
3149
|
+
message: String!
|
|
3150
|
+
}
|
|
3151
|
+
|
|
3152
|
+
"""
|
|
3153
|
+
Payload returned by the paymentInstallmentSelect mutation. Includes the
|
|
3154
|
+
recomputed cart so the order total (with any interest) updates in the same
|
|
3155
|
+
round trip.
|
|
3156
|
+
"""
|
|
3157
|
+
type PaymentInstallmentSelectPayload {
|
|
3158
|
+
"""The updated payment state, or null if errors occurred."""
|
|
3159
|
+
payment: Payment
|
|
3160
|
+
"""
|
|
3161
|
+
The recomputed cart, or null if errors occurred. Carries the order total with any installment interest applied.
|
|
3162
|
+
"""
|
|
3163
|
+
cart: Cart
|
|
3164
|
+
"""
|
|
3165
|
+
The current billing address, echoed for convenience. Null when same-as-delivery is in effect.
|
|
3166
|
+
"""
|
|
3167
|
+
billingAddress: Address
|
|
3168
|
+
"""Domain errors that occurred during the operation."""
|
|
3169
|
+
userErrors: [PaymentInstallmentSelectError!]!
|
|
3170
|
+
}
|
|
3171
|
+
|
|
3172
|
+
"""
|
|
3173
|
+
Input for setting the billing address. When sameAsDelivery is true, every
|
|
3174
|
+
other field is ignored and no upstream write happens (VTEX's own default:
|
|
3175
|
+
an absent invoiceData falls back to the delivery address).
|
|
3176
|
+
"""
|
|
3177
|
+
input PaymentBillingAddressUpdateInput {
|
|
3178
|
+
"""
|
|
3179
|
+
When true, billing uses the delivery address; every field below is ignored.
|
|
3180
|
+
"""
|
|
3181
|
+
sameAsDelivery: Boolean!
|
|
3182
|
+
"""Address classification for the billing address."""
|
|
3183
|
+
addressType: String
|
|
3184
|
+
"""
|
|
3185
|
+
Postal code for the billing address. Required when sameAsDelivery is false.
|
|
3186
|
+
"""
|
|
3187
|
+
postalCode: String
|
|
3188
|
+
"""
|
|
3189
|
+
ISO 3166-1 alpha-3 country code (e.g. "BRA"). Required when sameAsDelivery is false.
|
|
3190
|
+
"""
|
|
3191
|
+
country: String
|
|
3192
|
+
"""Street name."""
|
|
3193
|
+
street: String
|
|
3194
|
+
"""Street number."""
|
|
3195
|
+
number: String
|
|
3196
|
+
"""Additional address detail (apartment, suite, etc.)."""
|
|
3197
|
+
complement: String
|
|
3198
|
+
"""Neighborhood / district."""
|
|
3199
|
+
neighborhood: String
|
|
3200
|
+
"""City name."""
|
|
3201
|
+
city: String
|
|
3202
|
+
"""State / province code."""
|
|
3203
|
+
state: String
|
|
3204
|
+
"""
|
|
3205
|
+
A landmark reference. Sent upstream but not echoed back on billingAddress (Decision 11).
|
|
3206
|
+
"""
|
|
3207
|
+
reference: String
|
|
3208
|
+
}
|
|
3209
|
+
|
|
3210
|
+
"""Error codes for the paymentBillingAddressUpdate mutation."""
|
|
3211
|
+
enum PaymentBillingAddressUpdateErrorCode {
|
|
3212
|
+
"""No cart context was provided (x-order-form-id header/cookie)."""
|
|
3213
|
+
MISSING_CART_CONTEXT
|
|
3214
|
+
"""The cart was not found."""
|
|
3215
|
+
CART_NOT_FOUND
|
|
3216
|
+
"""sameAsDelivery is false but postalCode or country was omitted."""
|
|
3217
|
+
MISSING_BILLING_ADDRESS_FIELDS
|
|
3218
|
+
}
|
|
3219
|
+
|
|
3220
|
+
"""A domain error returned from the paymentBillingAddressUpdate mutation."""
|
|
3221
|
+
type PaymentBillingAddressUpdateError {
|
|
3222
|
+
"""Machine-readable error code."""
|
|
3223
|
+
code: PaymentBillingAddressUpdateErrorCode!
|
|
3224
|
+
"""Human-readable error message."""
|
|
3225
|
+
message: String!
|
|
3226
|
+
}
|
|
3227
|
+
|
|
3228
|
+
"""Payload returned by the paymentBillingAddressUpdate mutation."""
|
|
3229
|
+
type PaymentBillingAddressUpdatePayload {
|
|
3230
|
+
"""
|
|
3231
|
+
The billing address just written, or null when same-as-delivery is in effect.
|
|
3232
|
+
"""
|
|
3233
|
+
billingAddress: Address
|
|
3234
|
+
"""
|
|
3235
|
+
The updated payment state, or null if errors occurred, or when same-as-delivery is in effect, where no upstream write happens.
|
|
3236
|
+
"""
|
|
3237
|
+
payment: Payment
|
|
3238
|
+
"""Domain errors that occurred during the operation."""
|
|
3239
|
+
userErrors: [PaymentBillingAddressUpdateError!]!
|
|
3240
|
+
}
|
|
3241
|
+
|
|
3242
|
+
"""
|
|
3243
|
+
Error codes for the paymentStartTransaction mutation. Login-required VTEX
|
|
3244
|
+
business codes (CHK0087, CHK003, ORD062) and generic infrastructure failures
|
|
3245
|
+
are never in this enum — per ADR-00007 they surface as top-level GraphQL
|
|
3246
|
+
errors (UNAUTHORIZED / UPSTREAM_ERROR), not userErrors.
|
|
3247
|
+
"""
|
|
3248
|
+
enum PaymentStartTransactionErrorCode {
|
|
3249
|
+
"""No cart context was provided (x-order-form-id header/cookie)."""
|
|
3250
|
+
MISSING_CART_CONTEXT
|
|
3251
|
+
"""The cart was not found."""
|
|
3252
|
+
CART_NOT_FOUND
|
|
3253
|
+
"""
|
|
3254
|
+
No payment method has been selected yet (paymentMethodSelect was never called).
|
|
3255
|
+
"""
|
|
3256
|
+
MISSING_PAYMENT_METHOD_SELECTION
|
|
3257
|
+
"""
|
|
3258
|
+
VTEX opened the transaction but named no merchant transaction on it, so
|
|
3259
|
+
neither the transaction id the send-payments POST addresses nor the merchant
|
|
3260
|
+
name its body carries exists. The transaction is open upstream but cannot be
|
|
3261
|
+
paid; the legacy checkout refuses the same state.
|
|
3262
|
+
"""
|
|
3263
|
+
INVALID_TRANSACTION_DATA
|
|
3264
|
+
}
|
|
3265
|
+
|
|
3266
|
+
"""A domain error returned from the paymentStartTransaction mutation."""
|
|
3267
|
+
type PaymentStartTransactionError {
|
|
3268
|
+
"""Machine-readable error code."""
|
|
3269
|
+
code: PaymentStartTransactionErrorCode!
|
|
3270
|
+
"""Human-readable error message."""
|
|
3271
|
+
message: String!
|
|
3272
|
+
}
|
|
3273
|
+
|
|
3274
|
+
"""
|
|
3275
|
+
Payload returned by paymentStartTransaction: everything the browser needs to
|
|
3276
|
+
run the direct-to-gateway send-payments call (out of scope here) and the
|
|
3277
|
+
later gatewayCallback. The transaction cookies VTEX issues are set on the
|
|
3278
|
+
HTTP response (Set-Cookie), not exposed as a field.
|
|
3279
|
+
"""
|
|
3280
|
+
type PaymentStartTransactionPayload {
|
|
3281
|
+
"""The opened transaction's id. Null if errors occurred."""
|
|
3282
|
+
transactionId: String
|
|
3283
|
+
"""
|
|
3284
|
+
Name of the merchant responsible for the sale, as the gateway call's payment
|
|
3285
|
+
`id` and `transaction.merchantName`. Projected from the same
|
|
3286
|
+
merchantTransactions entry transactionId comes from — VTEX returns one entry
|
|
3287
|
+
per seller, so a multi-seller order carries more than one and only the first
|
|
3288
|
+
is exposed here (see specs/payment-transaction-payload-gaps.md, Decision 1).
|
|
3289
|
+
Null if errors occurred.
|
|
3290
|
+
"""
|
|
3291
|
+
merchantName: String
|
|
3292
|
+
"""
|
|
3293
|
+
Origin of the payment gateway this transaction must be paid at, e.g.
|
|
3294
|
+
"https://mystore.vtexpayments.com.br" — the base the browser's
|
|
3295
|
+
direct-to-gateway send-payments POST appends its own path to. Origin only:
|
|
3296
|
+
VTEX's own receiver path is the split-payment endpoint, not the
|
|
3297
|
+
per-transaction one. Always an https origin inside vtexpayments.com.br: an
|
|
3298
|
+
upstream receiver URI that is neither is rejected in favour of the
|
|
3299
|
+
account-derived origin, since this field decides where card data is sent.
|
|
3300
|
+
Null if errors occurred.
|
|
3301
|
+
"""
|
|
3302
|
+
gatewayUrl: String
|
|
3303
|
+
"""
|
|
3304
|
+
The order group, needed for the gateway call's orderId parameter and for gatewayCallback's input.
|
|
3305
|
+
"""
|
|
3306
|
+
orderGroup: String
|
|
3307
|
+
"""The shopper's user profile id, needed for the gateway call."""
|
|
3308
|
+
userProfileId: String
|
|
3309
|
+
"""
|
|
3310
|
+
The payment amount for this transaction, as a decimal (e.g. "100.00") for
|
|
3311
|
+
display. The gateway body wants minor units — read valueInCents for that,
|
|
3312
|
+
never a client-side multiplication of this amount.
|
|
3313
|
+
"""
|
|
3314
|
+
value: Money
|
|
3315
|
+
"""
|
|
3316
|
+
The same payment amount in the currency's minor units (e.g. 10000 for
|
|
3317
|
+
"100.00"), exactly as VTEX returned it and as this mutation sent it upstream.
|
|
3318
|
+
The unit the gateway body's `value`/`installmentValue` fields expect. Null if
|
|
3319
|
+
errors occurred.
|
|
3320
|
+
"""
|
|
3321
|
+
valueInCents: Int
|
|
3322
|
+
"""
|
|
3323
|
+
Pre-interest base amount this transaction was opened against, in the
|
|
3324
|
+
currency's minor units — the gateway body's `referenceValue`. Equals
|
|
3325
|
+
valueInCents when no interest applies. Null if errors occurred.
|
|
3326
|
+
"""
|
|
3327
|
+
referenceValueInCents: Int
|
|
3328
|
+
"""Domain errors that occurred during the operation."""
|
|
3329
|
+
userErrors: [PaymentStartTransactionError!]!
|
|
3330
|
+
}
|
|
3331
|
+
|
|
3332
|
+
"""
|
|
3333
|
+
Input for finalizing a transaction after the direct-to-gateway call
|
|
3334
|
+
succeeded.
|
|
3335
|
+
"""
|
|
3336
|
+
input PaymentGatewayCallbackInput {
|
|
3337
|
+
"""The order group returned by paymentStartTransaction."""
|
|
3338
|
+
orderGroup: String!
|
|
3339
|
+
}
|
|
3340
|
+
|
|
3341
|
+
"""
|
|
3342
|
+
Error codes for the paymentGatewayCallback mutation. Login-required VTEX
|
|
3343
|
+
business codes (CHK0087, CHK003, ORD062) and generic infrastructure failures
|
|
3344
|
+
are never in this enum — per ADR-00007 they surface as top-level GraphQL
|
|
3345
|
+
errors (UNAUTHORIZED / UPSTREAM_ERROR), not userErrors.
|
|
3346
|
+
"""
|
|
3347
|
+
enum PaymentGatewayCallbackErrorCode {
|
|
3348
|
+
"""
|
|
3349
|
+
The transaction cookies (Vtex_CHKO_Auth, CheckoutDataAccess) were not present on this request — paymentStartTransaction was not called first, or the five-minute window lapsed.
|
|
3350
|
+
"""
|
|
3351
|
+
MISSING_TRANSACTION_COOKIES
|
|
3352
|
+
"""
|
|
3353
|
+
VTEX requires a redirect or out-of-band flow to complete this payment. Phase 2; not supported in v1.
|
|
3354
|
+
"""
|
|
3355
|
+
REDIRECT_REQUIRED
|
|
3356
|
+
}
|
|
3357
|
+
|
|
3358
|
+
"""A domain error returned from the paymentGatewayCallback mutation."""
|
|
3359
|
+
type PaymentGatewayCallbackError {
|
|
3360
|
+
"""Machine-readable error code."""
|
|
3361
|
+
code: PaymentGatewayCallbackErrorCode!
|
|
3362
|
+
"""Human-readable error message."""
|
|
3363
|
+
message: String!
|
|
3364
|
+
}
|
|
3365
|
+
|
|
3366
|
+
"""Payload returned by the paymentGatewayCallback mutation."""
|
|
3367
|
+
type PaymentGatewayCallbackPayload {
|
|
3368
|
+
"""
|
|
3369
|
+
The finalized order group, echoed back on success. Null if errors occurred.
|
|
3370
|
+
"""
|
|
3371
|
+
orderId: String
|
|
3372
|
+
"""Domain errors that occurred during the operation."""
|
|
3373
|
+
userErrors: [PaymentGatewayCallbackError!]!
|
|
3374
|
+
}
|
|
3375
|
+
|
|
3376
|
+
"""
|
|
3377
|
+
The installment plan a settled order was charged in. Projected from the
|
|
3378
|
+
placed-order payment record, which carries the count and the settled total
|
|
3379
|
+
only — never a per-installment amount and never an interest rate, unlike the
|
|
3380
|
+
live order form behind `Payment.selectedInstallment`. That asymmetry is
|
|
3381
|
+
upstream and permanent (see specs/settle-and-project-the-placed-order.md,
|
|
3382
|
+
Decision 2).
|
|
3383
|
+
"""
|
|
3384
|
+
type OrderInstallment @cacheControl(maxAge: 0, scope: PRIVATE) {
|
|
3385
|
+
"""Number of installments the order was charged in. 1 = single payment."""
|
|
3386
|
+
count: Int!
|
|
3387
|
+
"""
|
|
3388
|
+
Total charged across all installments, including any interest. Null when the
|
|
3389
|
+
settled record carries no amount, or no currency to denominate it in.
|
|
3390
|
+
"""
|
|
3391
|
+
total: Money
|
|
3392
|
+
}
|
|
3393
|
+
|
|
3394
|
+
"""
|
|
3395
|
+
A settled order's payment recap. Read-only; projected from VTEX's
|
|
3396
|
+
settled-order source rather than the live order form, so it keeps resolving
|
|
3397
|
+
after the order form itself stops existing. Carries no sensitive field: no
|
|
3398
|
+
full card number or CVV is ever read for this projection (RFC D13).
|
|
3399
|
+
"""
|
|
3400
|
+
type Order implements Node @cacheControl(maxAge: 0, scope: PRIVATE) {
|
|
3401
|
+
"""
|
|
3402
|
+
Globally unique identifier (Relay Node ID), encoded from the order group.
|
|
3403
|
+
"""
|
|
3404
|
+
id: ID!
|
|
3405
|
+
"""
|
|
3406
|
+
Card network / payment-system display name (e.g. "Visa", or a non-card
|
|
3407
|
+
method's own name such as "Boleto Bancário"). Null when the settled order
|
|
3408
|
+
carries no payment record to project one from.
|
|
3409
|
+
"""
|
|
3410
|
+
network: String
|
|
3411
|
+
"""
|
|
3412
|
+
Last four digits of the card used, when the payment method was a card.
|
|
3413
|
+
Present for both a saved and a freshly-entered card — unlike Payment (T1),
|
|
3414
|
+
where last four is a saved-card-only field. Null for a non-card method or
|
|
3415
|
+
when no payment record exists to project one from.
|
|
3416
|
+
"""
|
|
3417
|
+
lastFourDigits: String
|
|
3418
|
+
"""
|
|
3419
|
+
Shopper-assigned custom label for the saved card used, when one was set.
|
|
3420
|
+
Null for a freshly-entered (unsaved) card, a non-card method, or when no
|
|
3421
|
+
payment record exists to project one from (see specs/order-read-model.md,
|
|
3422
|
+
Decision 5).
|
|
3423
|
+
"""
|
|
3424
|
+
label: String
|
|
3425
|
+
"""
|
|
3426
|
+
The installment plan this order was charged in. Null when the settled record
|
|
3427
|
+
reports none.
|
|
3428
|
+
"""
|
|
3429
|
+
installment: OrderInstallment
|
|
3430
|
+
}
|
|
3431
|
+
|
|
2694
3432
|
"""
|
|
2695
3433
|
The authentication methods an account enables, read before rendering a sign-in form.
|
|
2696
3434
|
"""
|