Introduce Payment Schedule Capture, Billing Reschedule, SMS Consent, & Errors

6/16/2026, 12:00:49 AM

The admin‑GraphQL API now supports a new "paymentScheduleCapture" mutation that initiates an asynchronous capture of a due payment schedule; it returns a Job object, an OrderCreateMandatePaymentJobResult for status polling, a paymentReferenceId and a list of user errors.

A new "subscriptionContractBillingCycleReschedule" mutation lets you modify the billing date for specific cycles in a subscription contract and returns the updated cycle and potential errors.

SMS marketing consent is now represented by a dedicated CustomerSmsMarketingConsent type, accessible through a new "smsMarketingConsent" field on CustomerPhoneNumber and updatable via the customerSmsMarketingConsentUpdate mutation.

OrderCreateMandatePaymentPayload receives an added "jobResult" of type OrderCreateMandatePaymentJobResult, which uses the new OrderCreateMandatePaymentStatus enum.

Collection source deletion payloads have been refactored: the old deletedId field was removed and a new jobId field is supplied; app fields on collection sources now note the creating app.

Channel.activeRegions description was clarified and Order.channelInformation is now deprecated in favor of the newer attribution field.

Several enums are extended, adding values for CartTransformCreateUserErrorCode, MarketUserErrorCode (adaptive pricing issues), TaxExemption (Canadian reseller exemptions), and WebhookSubscriptionTopic (billing cycles reschedule).

Error types were added for payment capture and billing cycle reschedule operations, providing specific error codes and field paths for better debugging.

Mutation Changes

βž• Added Mutations (2)

paymentScheduleCapture

Captures payment for a due PaymentSchedule using the vaulted payment method associated with the order.

The mutation resolves the order and mandate from the given payment schedule, then initiates
an asynchronous payment capture. Use the returned jobResult to poll for the status of the
payment capture.

subscriptionContractBillingCycleReschedule

Reschedules the billing date for a selected and subsequent billing cycles within a subscription contract.

πŸ”„ Modified Mutations (1)

collectionConditionsSourceDelete

Deletes a shareable collection source owned by the calling app.

Type Changes

βž• Added Types (9)

πŸ—οΈCustomerSmsMarketingConsentβž• AddedOBJECT

The SMS marketing consent information for a customer's phone number. Implements the CustomerMarketingConsent interface. Use the customerSmsMarketingConsentUpdate mutation to change it.

Fields: collectedFrom, optInLevel, sourceLocation, state, updatedAt
πŸ—οΈOrderCreateMandatePaymentJobResultβž• AddedOBJECT

A job result for tracking the status of a mandate payment request on an order.

Fields: done, errors, id, order, status
πŸ“‹OrderCreateMandatePaymentStatusβž• AddedENUM

Represents the status of a mandate payment request.

Values: STARTED, SUCCEEDED, FAILED
πŸ—οΈPaymentScheduleCapturePayloadβž• AddedOBJECT

Return type for paymentScheduleCapture mutation.

Fields: job, jobResult, paymentReferenceId, userErrors
πŸ—οΈPaymentScheduleCaptureUserErrorβž• AddedOBJECT

An error that occurs during the execution of PaymentScheduleCapture.

Fields: code, field, message
πŸ“‹PaymentScheduleCaptureUserErrorCodeβž• AddedENUM

Possible error codes that can be returned by PaymentScheduleCaptureUserError.

Values: PAYMENT_SCHEDULE_CAPTURE_ERROR_CODE
πŸ—οΈSubscriptionContractBillingCycleReschedulePayloadβž• AddedOBJECT

Return type for subscriptionContractBillingCycleReschedule mutation.

Fields: billingCycle, userErrors
πŸ—οΈSubscriptionContractBillingCycleRescheduleUserErrorβž• AddedOBJECT

An error that occurs during the execution of SubscriptionContractBillingCycleReschedule.

Fields: code, field, message
πŸ“‹SubscriptionContractBillingCycleRescheduleUserErrorCodeβž• AddedENUM

Possible error codes that can be returned by SubscriptionContractBillingCycleRescheduleUserError.

Values: INVALID

πŸ”„ Modified Types (12)

πŸ—οΈCartTransformCreateUserErrorCodeπŸ”„ Modified
βž• Enum value added: CUSTOM_APP_FUNCTION_NOT_ELIGIBLE
πŸ—οΈChannelπŸ”„ Modified
πŸ”„ Field modified: activeRegions
πŸ—οΈCollectionConditionsSourceπŸ”„ Modified
πŸ”„ Field modified: app
πŸ—οΈCollectionConditionsSourceDeletePayloadπŸ”„ Modified
βž– Field removed: deletedId
βž• Field added: jobId

The ID of the job for the source deletion.

πŸ—οΈCollectionSourceπŸ”„ Modified
πŸ”„ Field modified: app
πŸ—οΈCollectionSubCollectionSourceπŸ”„ Modified
πŸ”„ Field modified: app
πŸ—οΈCustomerPhoneNumberπŸ”„ Modified
βž• Field added: smsMarketingConsent

The SMS marketing consent information for the customer's phone number. Update with the customerSmsMarketingConsentUpdate mutation.

πŸ—οΈMarketUserErrorCodeπŸ”„ Modified
βž• Enum value added: ADAPTIVE_PRICING_REQUIRES_LOCAL_CURRENCIES
βž• Enum value added: ADAPTIVE_PRICING_REQUIRES_MANAGED_MARKETS
βž• Enum value added: ADAPTIVE_PRICING_REQUIRED_SETUP_ERROR
πŸ—οΈOrderπŸ”„ Modified
πŸ”„ Field modified: channelInformation
πŸ—οΈOrderCreateMandatePaymentPayloadπŸ”„ Modified
βž• Field added: jobResult

The job result for tracking the status of the mandate payment request.

πŸ—οΈTaxExemptionπŸ”„ Modified
βž• Enum value added: CA_SK_VPT_RESELLER_EXEMPTION
βž• Enum value added: CA_NL_VPT_RESELLER_EXEMPTION
πŸ—οΈWebhookSubscriptionTopicπŸ”„ Modified
βž• Enum value added: SUBSCRIPTION_BILLING_CYCLES_RESCHEDULE