{"version":3,"sources":["../../../src/ecom-v1-order-orders.schemas.ts"],"sourcesContent":["import * as z from 'zod';\n\nexport const PreparePaymentCollectionRequest = z.object({\n  ecomOrderId: z.string().describe('Ecom order ID.').min(1).max(100),\n  amount: z\n    .object({\n      amount: z.string().describe('Amount.').optional(),\n      formattedAmount: z\n        .string()\n        .describe('Amount formatted with currency symbol.')\n        .optional(),\n    })\n    .describe('Amount to collect'),\n  options: z\n    .object({\n      paymentGatewayOrderId: z\n        .string()\n        .describe(\n          'Optional parameter. When present, payment collection will be performed using given payment gateway order.\\nExisting payment gateway order will be updated with a new amount.\\nWhen parameter is absent, new payment gateway order will be created and used for payment collection.'\n        )\n        .optional()\n        .nullable(),\n      delayedCapture: z\n        .boolean()\n        .describe('Whether to delay capture of the payment.\\nDefault: false')\n        .optional(),\n      delayedCaptureSettings: z\n        .object({\n          scheduledAction: z.enum(['VOID', 'CAPTURE']).optional(),\n          delayDuration: z\n            .object({\n              count: z\n                .number()\n                .int()\n                .describe(\n                  'Amount of units. For example, 30 MINUTES, 1 HOURS, 7 DAYS, etc'\n                )\n                .min(1)\n                .optional(),\n              unit: z.enum(['MINUTES', 'HOURS', 'DAYS']).optional(),\n            })\n            .describe(\n              'Delay duration before execution. Optional - if not set, providers default period will be used'\n            )\n            .optional(),\n        })\n        .describe('Delayed capture payment settings')\n        .optional(),\n    })\n    .optional(),\n});\nexport const PreparePaymentCollectionResponse = z.object({\n  paymentGatewayOrderId: z\n    .string()\n    .describe('Payment gateway order id which is associated with given payment')\n    .optional(),\n});\nexport const GetPaymentCollectabilityStatusRequest = z.object({\n  ecomOrderId: z.string().describe('Ecom order ID.').min(1).max(100),\n});\nexport const GetPaymentCollectabilityStatusResponse = z.object({\n  status: z\n    .enum([\n      'UNKNOWN',\n      'COLLECTABLE',\n      'NONCOLLECTABLE_ORDER_IS_CANCELLED',\n      'NONCOLLECTABLE_ORDER_IS_PAID',\n      'NONCOLLECTABLE_MISSING_PAYMENT_METHOD',\n      'NONCOLLECTABLE_ORDER_IS_PENDING',\n      'NONCOLLECTABLE_ORDER_IS_REJECTED',\n      'NONCOLLECTABLE_ORDER_HAS_SUBSCRIPTIONS',\n      'NONCOLLECTABLE_ORDER_HAS_CHARGEBACKS',\n      'NONCOLLECTABLE_SUBSCRIPTION_CYCLE_ALREADY_PASSED',\n      'NONCOLLECTABLE_ORDER_HAS_UNSUPPORTED_SUBSCRIPTION',\n      'NONCOLLECTABLE_CUSTOM_AMOUNT_NOT_SUPPORTED',\n    ])\n    .describe('Payment collectability status')\n    .optional(),\n  amount: z\n    .object({\n      amount: z.string().describe('Amount.').optional(),\n      formattedAmount: z\n        .string()\n        .describe('Amount formatted with currency symbol.')\n        .optional(),\n    })\n    .describe('Collectable order amount')\n    .optional(),\n});\nexport const VoidAuthorizedPaymentsRequest = z.object({\n  ecomOrderId: z.string().describe('Wix eCommerce order ID').min(1).max(100),\n  paymentIds: z.array(z.string()).min(1).max(100),\n});\nexport const VoidAuthorizedPaymentsResponse = z.object({\n  orderTransactions: z\n    .object({\n      orderId: z\n        .string()\n        .describe('Order ID.')\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional(),\n      payments: z\n        .array(\n          z.intersection(\n            z.object({\n              _id: z\n                .string()\n                .describe('Payment ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              _createdDate: z\n                .date()\n                .describe(\n                  'Date and time the payment was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format. Defaults to current time when not provided.'\n                )\n                .optional()\n                .nullable(),\n              _updatedDate: z\n                .date()\n                .describe(\n                  'Date and time the payment was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                )\n                .optional()\n                .nullable(),\n              amount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Payment amount.')\n                .optional(),\n              refundDisabled: z\n                .boolean()\n                .describe(\n                  'Whether refunds for this payment are disabled.\\n+ `true`: This payment is not refundable.\\n+ `false`: This payment may be refunded. However, this ultimately depends on the payment provider.'\n                )\n                .optional(),\n            }),\n            z.xor([\n              z.object({\n                regularPaymentDetails: z.never().optional(),\n                giftcardPaymentDetails: z.never().optional(),\n              }),\n              z.object({\n                giftcardPaymentDetails: z.never().optional(),\n                regularPaymentDetails: z\n                  .intersection(\n                    z.object({\n                      paymentOrderId: z\n                        .string()\n                        .describe('Wix Payments order ID.')\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      gatewayTransactionId: z\n                        .string()\n                        .describe(\n                          \"Payment gateway's transaction ID.\\nThis field is only returned when the value of `offline_payment` is `false`.\"\n                        )\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      paymentMethod: z\n                        .string()\n                        .describe(\n                          'Payment method.\\nDeprecated. Use `paymentMethodName.buyerLanguageName` instead.\\nNon-exhaustive list of supported values:\\n+ `CreditCard`, `Alipay`, `AstropayCash`, `AstropayDBT`, `AstropayMBT`, `Bitcoin`, `BitPay`, `Cash`, `ConvenienceStore`, `EPay`, `Fake`, `Giropay`, `IDeal`, `InPerson`, `Klarna`, `MercadoPago`, `Netpay`, `NordeaSolo`, `Offline`, `PagSeguro`, `PayEasy`, `PayPal`, `Paysafecard`, `Paysafecash`, `PointOfSale`, `Poli`, `Privat24`, `Przelewy24`, `RapidTransfer`, `Sepa`, `Skrill`, `Sofort`, `Trustly`, `Neteller`, `Unionpay`, `UniPay`, `Yandex`'\n                        )\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      providerTransactionId: z\n                        .string()\n                        .describe(\n                          \"Transaction ID in the payment provider's system. For example, at PayPal, Square, Stripe, etc. Not returned for offline payments.\"\n                        )\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      offlinePayment: z\n                        .boolean()\n                        .describe(\n                          'Whether the payment was made offline. For example, when using cash or when marked as paid in the Business Manager.'\n                        )\n                        .optional(),\n                      status: z\n                        .enum([\n                          'UNDEFINED',\n                          'APPROVED',\n                          'PENDING',\n                          'PENDING_MERCHANT',\n                          'CANCELED',\n                          'DECLINED',\n                          'REFUNDED',\n                          'PARTIALLY_REFUNDED',\n                          'AUTHORIZED',\n                          'VOIDED',\n                        ])\n                        .describe('Payment status.')\n                        .optional(),\n                      savedPaymentMethod: z\n                        .boolean()\n                        .describe(\n                          'Whether there is a payment agreement that allows for future charges.'\n                        )\n                        .optional(),\n                      authorizationDetails: z\n                        .object({\n                          delayedCapture: z\n                            .boolean()\n                            .describe(\n                              'Whether the authorized payment is of a delayed capture.'\n                            )\n                            .optional(),\n                          authorizedDate: z\n                            .date()\n                            .describe(\n                              'Date and time the payment was authorized in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                            )\n                            .optional()\n                            .nullable(),\n                          captures: z\n                            .array(\n                              z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Capture ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional()\n                                  .nullable(),\n                                status: z\n                                  .enum(['PENDING', 'SUCCEEDED', 'FAILED'])\n                                  .describe('Status of this capture action')\n                                  .optional(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Amount of this capture')\n                                  .optional(),\n                                _createdDate: z\n                                  .date()\n                                  .describe(\n                                    'Date and time the capture was initiated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                                  )\n                                  .optional()\n                                  .nullable(),\n                                failureDetails: z\n                                  .object({\n                                    failureCode: z.string().max(100).optional(),\n                                  })\n                                  .describe(\n                                    'In case of status is FAILED may contain failure details'\n                                  )\n                                  .optional(),\n                              })\n                            )\n                            .max(1)\n                            .optional(),\n                          void: z\n                            .object({\n                              status: z\n                                .enum(['PENDING', 'SUCCEEDED', 'FAILED'])\n                                .describe('Status of this void action')\n                                .optional(),\n                              voidedDate: z\n                                .date()\n                                .describe(\n                                  'Date and time the void was initiated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                                )\n                                .optional()\n                                .nullable(),\n                              failureDetails: z\n                                .object({\n                                  failureCode: z.string().max(100).optional(),\n                                })\n                                .describe(\n                                  'In case of status is FAILED may contain failure details'\n                                )\n                                .optional(),\n                              reason: z\n                                .enum(['MANUAL', 'SCHEDULED'])\n                                .describe('Reason of void action')\n                                .optional(),\n                            })\n                            .describe('Void associated with payment')\n                            .optional(),\n                          scheduledAction: z\n                            .object({\n                              actionType: z\n                                .enum(['VOID', 'CAPTURE'])\n                                .describe('Type of the action.')\n                                .optional(),\n                              executionDate: z\n                                .date()\n                                .describe('The date and time of the action.')\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Scheduled action for this transaction')\n                            .optional(),\n                        })\n                        .describe('Authorization details.')\n                        .optional(),\n                      chargebacks: z\n                        .array(\n                          z.object({\n                            _id: z\n                              .string()\n                              .describe('Chargeback ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            _createdDate: z\n                              .date()\n                              .describe(\n                                'Date and time the chargeback was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format. Defaults to current time when not provided.'\n                              )\n                              .optional()\n                              .nullable(),\n                            _updatedDate: z\n                              .date()\n                              .describe(\n                                'Date and time the chargeback was updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format. Defaults to current time when not provided.'\n                              )\n                              .optional()\n                              .nullable(),\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Amount.')\n                              .optional(),\n                            reversalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Reversal amount. Present only when status is REVERSED.'\n                              )\n                              .optional(),\n                            status: z\n                              .enum(['APPROVED', 'REVERSED'])\n                              .describe('Status.\\n\\nDefault: `\"APPROVED\"`.')\n                              .optional(),\n                            externalId: z\n                              .string()\n                              .describe('External chargeback ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional()\n                              .nullable(),\n                          })\n                        )\n                        .max(6)\n                        .optional(),\n                      platformFee: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Platform fee amount associated with this payment.'\n                        )\n                        .optional(),\n                      paymentMethodName: z\n                        .object({\n                          buyerLanguageName: z\n                            .string()\n                            .describe(\n                              'Translated payment method name in buyer language.'\n                            )\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          siteLanguageName: z\n                            .string()\n                            .describe(\n                              'Translated payment method name in site owner language.'\n                            )\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          userDefinedName: z\n                            .intersection(\n                              z.object({}),\n                              z.xor([\n                                z.object({\n                                  predefined: z.never().optional(),\n                                  custom: z.never().optional(),\n                                }),\n                                z.object({\n                                  custom: z.never().optional(),\n                                  predefined: z\n                                    .enum(['CASH', 'BANK_TRANSFER', 'CHECK'])\n                                    .describe('Predefined payment method.'),\n                                }),\n                                z.object({\n                                  predefined: z.never().optional(),\n                                  custom: z\n                                    .string()\n                                    .describe(\n                                      'Custom payment method name provided by user.\\n\\nFor example, `\"Wire transfer\"`, `\"Money order\"`, `\"Venmo\"` or any other custom name.'\n                                    )\n                                    .min(1)\n                                    .max(100),\n                                }),\n                              ])\n                            )\n                            .describe(\n                              'User-provided payment method name.\\n\\nWhen set, takes precedence over `buyerLanguageName` and `siteLanguageName`.'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Payment method with buyer and optional owner translations.\\nNon-exhaustive list of supported values:\\n+ `CreditCard`, `Alipay`, `AstropayCash`, `AstropayDBT`, `AstropayMBT`, `Bitcoin`, `BitPay`, `Cash`, `ConvenienceStore`, `EPay`, `Fake`, `Giropay`, `IDeal`, `InPerson`, `Klarna`, `MercadoPago`, `Netpay`, `NordeaSolo`, `Offline`, `PagSeguro`, `PayEasy`, `PayPal`, `Paysafecard`, `Paysafecash`, `PointOfSale`, `Poli`, `Privat24`, `Przelewy24`, `RapidTransfer`, `Sepa`, `Skrill`, `Sofort`, `Trustly`, `Neteller`, `Unionpay`, `UniPay`, `Yandex`'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ creditCardDetails: z.never().optional() }),\n                      z.object({\n                        creditCardDetails: z\n                          .object({\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Credit card details.'),\n                      }),\n                    ])\n                  )\n                  .describe('Regular payment details.'),\n              }),\n              z.object({\n                regularPaymentDetails: z.never().optional(),\n                giftcardPaymentDetails: z\n                  .object({\n                    giftCardPaymentId: z\n                      .string()\n                      .describe('Gift card payment ID.')\n                      .min(1)\n                      .max(100)\n                      .optional(),\n                    appId: z\n                      .string()\n                      .describe('ID of the app that created the gift card.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    voided: z\n                      .boolean()\n                      .describe('Whether the gift card is voided.')\n                      .optional(),\n                  })\n                  .describe('Gift card payment details.'),\n              }),\n            ])\n          )\n        )\n        .max(100)\n        .optional(),\n      refunds: z\n        .array(\n          z.object({\n            _id: z\n              .string()\n              .describe('Refund ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional(),\n            transactions: z\n              .array(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe('ID of the payment associated with this refund.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                  amount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Refund amount.')\n                    .optional(),\n                  refundStatus: z\n                    .enum([\n                      'PENDING',\n                      'SUCCEEDED',\n                      'FAILED',\n                      'SCHEDULED',\n                      'STARTED',\n                    ])\n                    .describe('Refund status.')\n                    .optional(),\n                  refundStatusInfo: z\n                    .object({\n                      paymentGatewayReasonCode: z\n                        .string()\n                        .describe(\n                          \"Reason code for the refund's current status.\\n\\nLearn more about [reason codes](https://dev.wix.com/docs/rest/business-management/payments/service-plugins/payment-service-provider-service-plugin/reason-codes).\"\n                        )\n                        .min(1)\n                        .max(10)\n                        .optional()\n                        .nullable(),\n                      description: z\n                        .string()\n                        .describe(\n                          'Free text explanation of current refund status.'\n                        )\n                        .min(1)\n                        .max(1000)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Optional details of current refund status.')\n                    .optional(),\n                  gatewayRefundId: z\n                    .string()\n                    .describe(\n                      \"Payment gateway's refund ID.\\nThis field is only returned when the value of `external_refund` is `false`.\"\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  providerRefundId: z\n                    .string()\n                    .describe(\n                      \"ID of the refund in the payment provider's system. For example, at PayPal, Square, Stripe, etc. Not returned for external refunds.\"\n                    )\n                    .optional()\n                    .nullable(),\n                  externalRefund: z\n                    .boolean()\n                    .describe(\n                      \"Whether refund was made externally and manually on the payment provider's side.\"\n                    )\n                    .optional(),\n                })\n              )\n              .min(0)\n              .max(50)\n              .optional(),\n            details: z\n              .object({\n                items: z\n                  .array(\n                    z.object({\n                      lineItemId: z\n                        .string()\n                        .describe('Line item ID the refunded line item.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      quantity: z\n                        .number()\n                        .int()\n                        .describe('Line item quantity refunded.')\n                        .min(1)\n                        .max(100000)\n                        .optional(),\n                    })\n                  )\n                  .min(0)\n                  .max(300)\n                  .optional(),\n                shippingIncluded: z\n                  .boolean()\n                  .describe('Whether the shipping fee was also refunded.')\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe(\n                    'Reason for the refund, provided by customer (optional).'\n                  )\n                  .max(200)\n                  .optional()\n                  .nullable(),\n                lineItems: z\n                  .array(\n                    z.object({\n                      lineItemId: z\n                        .string()\n                        .describe('Line item ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      quantity: z\n                        .number()\n                        .int()\n                        .describe('Refund quantity.')\n                        .min(1)\n                        .max(100000)\n                        .optional(),\n                    })\n                  )\n                  .min(0)\n                  .max(300)\n                  .optional(),\n                additionalFees: z\n                  .array(\n                    z.object({\n                      additionalFeeId: z\n                        .string()\n                        .describe('Additional fee ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Refund amount.')\n                        .optional(),\n                    })\n                  )\n                  .min(0)\n                  .max(100)\n                  .optional(),\n                shipping: z\n                  .object({\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                  })\n                  .describe('Shipping amount that was refunded.')\n                  .optional(),\n              })\n              .describe('Refund business details.')\n              .optional(),\n            _createdDate: z\n              .date()\n              .describe(\n                'Date and time the refund was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format. Defaults to current time when not provided.'\n              )\n              .optional()\n              .nullable(),\n            summary: z\n              .object({\n                requestedRefund: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total amount requested for refund.')\n                  .optional(),\n                pendingRefund: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Pending refund amount - the portion of `requestedRefund` that is still pending.'\n                  )\n                  .optional(),\n                refunded: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Refunded amount - the portion of `requestedRefund` that refunded successfully.'\n                  )\n                  .optional(),\n                failedRefundAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Failed refund amount - the portion of `requestedRefund` that failed.'\n                  )\n                  .optional(),\n                pending: z\n                  .boolean()\n                  .describe(\n                    'Whether at least one refund transaction is still in `\"PENDING\"` status.'\n                  )\n                  .optional(),\n                breakdown: z\n                  .object({\n                    lineItems: z\n                      .array(\n                        z.object({\n                          lineItemId: z\n                            .string()\n                            .describe('ID of the refunded line item.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          totalRefundedAmount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe(\n                              'Total refunded amount for the line item.'\n                            )\n                            .optional(),\n                        })\n                      )\n                      .min(0)\n                      .max(300)\n                      .optional(),\n                  })\n                  .describe(\n                    'Breakdown of refunded items. Available only after refund is complete.'\n                  )\n                  .optional(),\n              })\n              .describe('Aggregated refund summary.')\n              .optional(),\n            requestingServiceAppId: z\n              .string()\n              .describe('ID of the app that initiated this refund.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n          })\n        )\n        .max(300)\n        .optional(),\n    })\n    .describe(\"All order's transactions after the void was triggered\")\n    .optional(),\n});\nexport const CaptureAuthorizedPaymentsRequest = z.object({\n  ecomOrderId: z.string().describe('Wix eCommerce order ID').min(1).max(100),\n  payments: z\n    .array(\n      z.object({\n        paymentId: z\n          .string()\n          .describe('Payment ID')\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          ),\n        amount: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Capture amount.\\nIf not provided - full authorized amount will be captured.'\n          )\n          .optional(),\n      })\n    )\n    .min(1)\n    .max(100),\n});\nexport const CaptureAuthorizedPaymentsResponse = z.object({\n  orderTransactions: z\n    .object({\n      orderId: z\n        .string()\n        .describe('Order ID.')\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional(),\n      payments: z\n        .array(\n          z.intersection(\n            z.object({\n              _id: z\n                .string()\n                .describe('Payment ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              _createdDate: z\n                .date()\n                .describe(\n                  'Date and time the payment was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format. Defaults to current time when not provided.'\n                )\n                .optional()\n                .nullable(),\n              _updatedDate: z\n                .date()\n                .describe(\n                  'Date and time the payment was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                )\n                .optional()\n                .nullable(),\n              amount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Payment amount.')\n                .optional(),\n              refundDisabled: z\n                .boolean()\n                .describe(\n                  'Whether refunds for this payment are disabled.\\n+ `true`: This payment is not refundable.\\n+ `false`: This payment may be refunded. However, this ultimately depends on the payment provider.'\n                )\n                .optional(),\n            }),\n            z.xor([\n              z.object({\n                regularPaymentDetails: z.never().optional(),\n                giftcardPaymentDetails: z.never().optional(),\n              }),\n              z.object({\n                giftcardPaymentDetails: z.never().optional(),\n                regularPaymentDetails: z\n                  .intersection(\n                    z.object({\n                      paymentOrderId: z\n                        .string()\n                        .describe('Wix Payments order ID.')\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      gatewayTransactionId: z\n                        .string()\n                        .describe(\n                          \"Payment gateway's transaction ID.\\nThis field is only returned when the value of `offline_payment` is `false`.\"\n                        )\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      paymentMethod: z\n                        .string()\n                        .describe(\n                          'Payment method.\\nDeprecated. Use `paymentMethodName.buyerLanguageName` instead.\\nNon-exhaustive list of supported values:\\n+ `CreditCard`, `Alipay`, `AstropayCash`, `AstropayDBT`, `AstropayMBT`, `Bitcoin`, `BitPay`, `Cash`, `ConvenienceStore`, `EPay`, `Fake`, `Giropay`, `IDeal`, `InPerson`, `Klarna`, `MercadoPago`, `Netpay`, `NordeaSolo`, `Offline`, `PagSeguro`, `PayEasy`, `PayPal`, `Paysafecard`, `Paysafecash`, `PointOfSale`, `Poli`, `Privat24`, `Przelewy24`, `RapidTransfer`, `Sepa`, `Skrill`, `Sofort`, `Trustly`, `Neteller`, `Unionpay`, `UniPay`, `Yandex`'\n                        )\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      providerTransactionId: z\n                        .string()\n                        .describe(\n                          \"Transaction ID in the payment provider's system. For example, at PayPal, Square, Stripe, etc. Not returned for offline payments.\"\n                        )\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      offlinePayment: z\n                        .boolean()\n                        .describe(\n                          'Whether the payment was made offline. For example, when using cash or when marked as paid in the Business Manager.'\n                        )\n                        .optional(),\n                      status: z\n                        .enum([\n                          'UNDEFINED',\n                          'APPROVED',\n                          'PENDING',\n                          'PENDING_MERCHANT',\n                          'CANCELED',\n                          'DECLINED',\n                          'REFUNDED',\n                          'PARTIALLY_REFUNDED',\n                          'AUTHORIZED',\n                          'VOIDED',\n                        ])\n                        .describe('Payment status.')\n                        .optional(),\n                      savedPaymentMethod: z\n                        .boolean()\n                        .describe(\n                          'Whether there is a payment agreement that allows for future charges.'\n                        )\n                        .optional(),\n                      authorizationDetails: z\n                        .object({\n                          delayedCapture: z\n                            .boolean()\n                            .describe(\n                              'Whether the authorized payment is of a delayed capture.'\n                            )\n                            .optional(),\n                          authorizedDate: z\n                            .date()\n                            .describe(\n                              'Date and time the payment was authorized in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                            )\n                            .optional()\n                            .nullable(),\n                          captures: z\n                            .array(\n                              z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Capture ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional()\n                                  .nullable(),\n                                status: z\n                                  .enum(['PENDING', 'SUCCEEDED', 'FAILED'])\n                                  .describe('Status of this capture action')\n                                  .optional(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Amount of this capture')\n                                  .optional(),\n                                _createdDate: z\n                                  .date()\n                                  .describe(\n                                    'Date and time the capture was initiated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                                  )\n                                  .optional()\n                                  .nullable(),\n                                failureDetails: z\n                                  .object({\n                                    failureCode: z.string().max(100).optional(),\n                                  })\n                                  .describe(\n                                    'In case of status is FAILED may contain failure details'\n                                  )\n                                  .optional(),\n                              })\n                            )\n                            .max(1)\n                            .optional(),\n                          void: z\n                            .object({\n                              status: z\n                                .enum(['PENDING', 'SUCCEEDED', 'FAILED'])\n                                .describe('Status of this void action')\n                                .optional(),\n                              voidedDate: z\n                                .date()\n                                .describe(\n                                  'Date and time the void was initiated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                                )\n                                .optional()\n                                .nullable(),\n                              failureDetails: z\n                                .object({\n                                  failureCode: z.string().max(100).optional(),\n                                })\n                                .describe(\n                                  'In case of status is FAILED may contain failure details'\n                                )\n                                .optional(),\n                              reason: z\n                                .enum(['MANUAL', 'SCHEDULED'])\n                                .describe('Reason of void action')\n                                .optional(),\n                            })\n                            .describe('Void associated with payment')\n                            .optional(),\n                          scheduledAction: z\n                            .object({\n                              actionType: z\n                                .enum(['VOID', 'CAPTURE'])\n                                .describe('Type of the action.')\n                                .optional(),\n                              executionDate: z\n                                .date()\n                                .describe('The date and time of the action.')\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Scheduled action for this transaction')\n                            .optional(),\n                        })\n                        .describe('Authorization details.')\n                        .optional(),\n                      chargebacks: z\n                        .array(\n                          z.object({\n                            _id: z\n                              .string()\n                              .describe('Chargeback ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            _createdDate: z\n                              .date()\n                              .describe(\n                                'Date and time the chargeback was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format. Defaults to current time when not provided.'\n                              )\n                              .optional()\n                              .nullable(),\n                            _updatedDate: z\n                              .date()\n                              .describe(\n                                'Date and time the chargeback was updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format. Defaults to current time when not provided.'\n                              )\n                              .optional()\n                              .nullable(),\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Amount.')\n                              .optional(),\n                            reversalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Reversal amount. Present only when status is REVERSED.'\n                              )\n                              .optional(),\n                            status: z\n                              .enum(['APPROVED', 'REVERSED'])\n                              .describe('Status.\\n\\nDefault: `\"APPROVED\"`.')\n                              .optional(),\n                            externalId: z\n                              .string()\n                              .describe('External chargeback ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional()\n                              .nullable(),\n                          })\n                        )\n                        .max(6)\n                        .optional(),\n                      platformFee: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Platform fee amount associated with this payment.'\n                        )\n                        .optional(),\n                      paymentMethodName: z\n                        .object({\n                          buyerLanguageName: z\n                            .string()\n                            .describe(\n                              'Translated payment method name in buyer language.'\n                            )\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          siteLanguageName: z\n                            .string()\n                            .describe(\n                              'Translated payment method name in site owner language.'\n                            )\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          userDefinedName: z\n                            .intersection(\n                              z.object({}),\n                              z.xor([\n                                z.object({\n                                  predefined: z.never().optional(),\n                                  custom: z.never().optional(),\n                                }),\n                                z.object({\n                                  custom: z.never().optional(),\n                                  predefined: z\n                                    .enum(['CASH', 'BANK_TRANSFER', 'CHECK'])\n                                    .describe('Predefined payment method.'),\n                                }),\n                                z.object({\n                                  predefined: z.never().optional(),\n                                  custom: z\n                                    .string()\n                                    .describe(\n                                      'Custom payment method name provided by user.\\n\\nFor example, `\"Wire transfer\"`, `\"Money order\"`, `\"Venmo\"` or any other custom name.'\n                                    )\n                                    .min(1)\n                                    .max(100),\n                                }),\n                              ])\n                            )\n                            .describe(\n                              'User-provided payment method name.\\n\\nWhen set, takes precedence over `buyerLanguageName` and `siteLanguageName`.'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Payment method with buyer and optional owner translations.\\nNon-exhaustive list of supported values:\\n+ `CreditCard`, `Alipay`, `AstropayCash`, `AstropayDBT`, `AstropayMBT`, `Bitcoin`, `BitPay`, `Cash`, `ConvenienceStore`, `EPay`, `Fake`, `Giropay`, `IDeal`, `InPerson`, `Klarna`, `MercadoPago`, `Netpay`, `NordeaSolo`, `Offline`, `PagSeguro`, `PayEasy`, `PayPal`, `Paysafecard`, `Paysafecash`, `PointOfSale`, `Poli`, `Privat24`, `Przelewy24`, `RapidTransfer`, `Sepa`, `Skrill`, `Sofort`, `Trustly`, `Neteller`, `Unionpay`, `UniPay`, `Yandex`'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ creditCardDetails: z.never().optional() }),\n                      z.object({\n                        creditCardDetails: z\n                          .object({\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Credit card details.'),\n                      }),\n                    ])\n                  )\n                  .describe('Regular payment details.'),\n              }),\n              z.object({\n                regularPaymentDetails: z.never().optional(),\n                giftcardPaymentDetails: z\n                  .object({\n                    giftCardPaymentId: z\n                      .string()\n                      .describe('Gift card payment ID.')\n                      .min(1)\n                      .max(100)\n                      .optional(),\n                    appId: z\n                      .string()\n                      .describe('ID of the app that created the gift card.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    voided: z\n                      .boolean()\n                      .describe('Whether the gift card is voided.')\n                      .optional(),\n                  })\n                  .describe('Gift card payment details.'),\n              }),\n            ])\n          )\n        )\n        .max(100)\n        .optional(),\n      refunds: z\n        .array(\n          z.object({\n            _id: z\n              .string()\n              .describe('Refund ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional(),\n            transactions: z\n              .array(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe('ID of the payment associated with this refund.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                  amount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Refund amount.')\n                    .optional(),\n                  refundStatus: z\n                    .enum([\n                      'PENDING',\n                      'SUCCEEDED',\n                      'FAILED',\n                      'SCHEDULED',\n                      'STARTED',\n                    ])\n                    .describe('Refund status.')\n                    .optional(),\n                  refundStatusInfo: z\n                    .object({\n                      paymentGatewayReasonCode: z\n                        .string()\n                        .describe(\n                          \"Reason code for the refund's current status.\\n\\nLearn more about [reason codes](https://dev.wix.com/docs/rest/business-management/payments/service-plugins/payment-service-provider-service-plugin/reason-codes).\"\n                        )\n                        .min(1)\n                        .max(10)\n                        .optional()\n                        .nullable(),\n                      description: z\n                        .string()\n                        .describe(\n                          'Free text explanation of current refund status.'\n                        )\n                        .min(1)\n                        .max(1000)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Optional details of current refund status.')\n                    .optional(),\n                  gatewayRefundId: z\n                    .string()\n                    .describe(\n                      \"Payment gateway's refund ID.\\nThis field is only returned when the value of `external_refund` is `false`.\"\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  providerRefundId: z\n                    .string()\n                    .describe(\n                      \"ID of the refund in the payment provider's system. For example, at PayPal, Square, Stripe, etc. Not returned for external refunds.\"\n                    )\n                    .optional()\n                    .nullable(),\n                  externalRefund: z\n                    .boolean()\n                    .describe(\n                      \"Whether refund was made externally and manually on the payment provider's side.\"\n                    )\n                    .optional(),\n                })\n              )\n              .min(0)\n              .max(50)\n              .optional(),\n            details: z\n              .object({\n                items: z\n                  .array(\n                    z.object({\n                      lineItemId: z\n                        .string()\n                        .describe('Line item ID the refunded line item.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      quantity: z\n                        .number()\n                        .int()\n                        .describe('Line item quantity refunded.')\n                        .min(1)\n                        .max(100000)\n                        .optional(),\n                    })\n                  )\n                  .min(0)\n                  .max(300)\n                  .optional(),\n                shippingIncluded: z\n                  .boolean()\n                  .describe('Whether the shipping fee was also refunded.')\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe(\n                    'Reason for the refund, provided by customer (optional).'\n                  )\n                  .max(200)\n                  .optional()\n                  .nullable(),\n                lineItems: z\n                  .array(\n                    z.object({\n                      lineItemId: z\n                        .string()\n                        .describe('Line item ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      quantity: z\n                        .number()\n                        .int()\n                        .describe('Refund quantity.')\n                        .min(1)\n                        .max(100000)\n                        .optional(),\n                    })\n                  )\n                  .min(0)\n                  .max(300)\n                  .optional(),\n                additionalFees: z\n                  .array(\n                    z.object({\n                      additionalFeeId: z\n                        .string()\n                        .describe('Additional fee ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Refund amount.')\n                        .optional(),\n                    })\n                  )\n                  .min(0)\n                  .max(100)\n                  .optional(),\n                shipping: z\n                  .object({\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                  })\n                  .describe('Shipping amount that was refunded.')\n                  .optional(),\n              })\n              .describe('Refund business details.')\n              .optional(),\n            _createdDate: z\n              .date()\n              .describe(\n                'Date and time the refund was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format. Defaults to current time when not provided.'\n              )\n              .optional()\n              .nullable(),\n            summary: z\n              .object({\n                requestedRefund: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total amount requested for refund.')\n                  .optional(),\n                pendingRefund: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Pending refund amount - the portion of `requestedRefund` that is still pending.'\n                  )\n                  .optional(),\n                refunded: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Refunded amount - the portion of `requestedRefund` that refunded successfully.'\n                  )\n                  .optional(),\n                failedRefundAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Failed refund amount - the portion of `requestedRefund` that failed.'\n                  )\n                  .optional(),\n                pending: z\n                  .boolean()\n                  .describe(\n                    'Whether at least one refund transaction is still in `\"PENDING\"` status.'\n                  )\n                  .optional(),\n                breakdown: z\n                  .object({\n                    lineItems: z\n                      .array(\n                        z.object({\n                          lineItemId: z\n                            .string()\n                            .describe('ID of the refunded line item.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          totalRefundedAmount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe(\n                              'Total refunded amount for the line item.'\n                            )\n                            .optional(),\n                        })\n                      )\n                      .min(0)\n                      .max(300)\n                      .optional(),\n                  })\n                  .describe(\n                    'Breakdown of refunded items. Available only after refund is complete.'\n                  )\n                  .optional(),\n              })\n              .describe('Aggregated refund summary.')\n              .optional(),\n            requestingServiceAppId: z\n              .string()\n              .describe('ID of the app that initiated this refund.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n          })\n        )\n        .max(300)\n        .optional(),\n    })\n    .describe(\"All order's transactions after the capture was triggered\")\n    .optional(),\n});\nexport const GetOrderRequest = z.object({\n  _id: z.string().describe('ID of the order to retrieve.').min(1).max(100),\n});\nexport const GetOrderResponse = z.object({\n  _id: z\n    .string()\n    .describe('Order ID.')\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    )\n    .optional()\n    .nullable(),\n  number: z\n    .string()\n    .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n    .describe(\n      \"Order number displayed in the site owner's dashboard (auto-generated).\"\n    )\n    .optional(),\n  _createdDate: z\n    .date()\n    .describe(\n      'Date and time the order was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n    )\n    .optional()\n    .nullable(),\n  _updatedDate: z\n    .date()\n    .describe(\n      'Date and time the order was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n    )\n    .optional()\n    .nullable(),\n  lineItems: z\n    .array(\n      z.object({\n        _id: z.string().describe('Line item ID.').optional(),\n        productName: z\n          .object({\n            original: z\n              .string()\n              .describe(\n                \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n              )\n              .min(1)\n              .max(200)\n              .optional(),\n            translated: z\n              .string()\n              .describe(\n                \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n              )\n              .min(1)\n              .max(400)\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Item name.\\n\\n+ Stores - `product.name`\\n+ Bookings - `service.info.name`\\n+ Events - `ticket.name`'\n          )\n          .optional(),\n        catalogReference: z\n          .object({\n            catalogItemId: z\n              .string()\n              .describe('ID of the item within the catalog it belongs to.')\n              .min(1)\n              .max(36)\n              .optional(),\n            appId: z\n              .string()\n              .describe(\n                'ID of the app providing the catalog.\\n\\nYou can get your app\\'s ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\\n\\nFor items from Wix catalogs, the following values always apply:\\n+ Wix Stores: `\"215238eb-22a5-4c36-9e7b-e7c08025e04e\"`\\n+ Wix Bookings: `\"13d21c63-b5ec-5912-8397-c3a5ddb27a97\"`\\n+ Wix Restaurants: `\"9a5d83fd-8570-482e-81ab-cfa88942ee60\"`'\n              )\n              .min(1)\n              .optional(),\n            options: z\n              .record(z.string(), z.any())\n              .describe(\n                'Additional item details in `key:value` pairs.\\n\\nUse this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items.\\n\\nFor Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration)\\nor [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction).'\n              )\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            \"References to the line item's origin catalog. Empty for custom line items.\"\n          )\n          .optional(),\n        quantity: z\n          .number()\n          .int()\n          .describe('Line item quantity.')\n          .min(1)\n          .max(100000)\n          .optional(),\n        totalDiscount: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Total discount for this line item's entire quantity.\")\n          .optional(),\n        descriptionLines: z\n          .array(\n            z.intersection(\n              z.object({\n                name: z\n                  .object({\n                    original: z\n                      .string()\n                      .describe(\n                        \"Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                      )\n                      .max(100)\n                      .optional(),\n                    translated: z\n                      .string()\n                      .describe(\n                        \"Description line name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Description line name.')\n                  .optional(),\n              }),\n              z.xor([\n                z.object({\n                  plainText: z.never().optional(),\n                  colorInfo: z.never().optional(),\n                }),\n                z.object({\n                  colorInfo: z.never().optional(),\n                  plainText: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                        )\n                        .max(600)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"Description line plain text value translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                        )\n                        .max(600)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Description line plain text value.'),\n                }),\n                z.object({\n                  plainText: z.never().optional(),\n                  colorInfo: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                        )\n                        .max(500)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"Description line color name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                        )\n                        .max(500)\n                        .optional()\n                        .nullable(),\n                      code: z\n                        .string()\n                        .describe('HEX or RGB color code for display.')\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Description line color value.'),\n                }),\n              ])\n            )\n          )\n          .min(0)\n          .max(20)\n          .optional(),\n        image: z.string().describe('Line item image.').optional(),\n        physicalProperties: z\n          .object({\n            weight: z\n              .number()\n              .describe(\n                'Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request.'\n              )\n              .optional()\n              .nullable(),\n            sku: z\n              .string()\n              .describe(\n                'Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).'\n              )\n              .max(40)\n              .optional()\n              .nullable(),\n            shippable: z\n              .boolean()\n              .describe('Whether this line item is shippable.')\n              .optional(),\n          })\n          .describe(\n            'Physical properties of the item. When relevant, contains information such as SKU and item weight.'\n          )\n          .optional(),\n        itemType: z\n          .intersection(\n            z.object({}),\n            z.xor([\n              z.object({\n                preset: z.never().optional(),\n                custom: z.never().optional(),\n              }),\n              z.object({\n                custom: z.never().optional(),\n                preset: z\n                  .enum([\n                    'UNRECOGNISED',\n                    'PHYSICAL',\n                    'DIGITAL',\n                    'GIFT_CARD',\n                    'SERVICE',\n                  ])\n                  .describe('Preset item type.'),\n              }),\n              z.object({\n                preset: z.never().optional(),\n                custom: z\n                  .string()\n                  .describe(\n                    'Custom item type. When none of the preset types are suitable, specifies the custom type.'\n                  ),\n              }),\n            ])\n          )\n          .describe('Item type. Either a preset type or custom.')\n          .optional(),\n        fulfillerId: z\n          .string()\n          .describe(\n            'Fulfiller ID. Field is empty when the line item is self-fulfilled.\\nTo get fulfillment information, pass the order ID to [List Fulfillments For Single Order](https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/order-fulfillments/list-fulfillments-for-single-order).'\n          )\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        refundQuantity: z\n          .number()\n          .int()\n          .describe('Number of items that were refunded.')\n          .min(0)\n          .max(100000)\n          .optional()\n          .nullable(),\n        restockQuantity: z\n          .number()\n          .int()\n          .describe(\n            'Number of items restocked.\\n\\nFor a per-location breakdown, see `restockLocations`.'\n          )\n          .min(0)\n          .max(100000)\n          .optional()\n          .nullable(),\n        price: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Line item price after line item discounts for display purposes.'\n          )\n          .optional(),\n        priceBeforeDiscounts: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Line item price before line item discounts for display purposes. Defaults to `price` when not provided.'\n          )\n          .optional(),\n        totalPriceBeforeTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe('Total price after discounts, and before tax.')\n          .optional(),\n        totalPriceAfterTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe('Total price after all discounts and tax.')\n          .optional(),\n        paymentOption: z\n          .enum([\n            'FULL_PAYMENT_ONLINE',\n            'FULL_PAYMENT_OFFLINE',\n            'MEMBERSHIP',\n            'DEPOSIT_ONLINE',\n            'MEMBERSHIP_OFFLINE',\n            'MEMBERSHIP_ONLINE_WITH_OFFLINE_REMAINDER',\n          ])\n          .describe(\n            'Type of selected payment option for current item.\\n\\nDefault: `FULL_PAYMENT_ONLINE`'\n          )\n          .optional(),\n        taxDetails: z\n          .object({\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Taxable amount of this line item.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe(\n                'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n              )\n              .optional(),\n            totalTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n              )\n              .optional(),\n          })\n          .describe(\n            'Deprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.\\nTax details for this line item.'\n          )\n          .optional(),\n        taxInfo: z\n          .object({\n            taxAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n              )\n              .optional(),\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Amount for which tax is calculated.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe('Tax rate %, as a decimal point.')\n              .optional()\n              .nullable(),\n            taxGroupId: z\n              .string()\n              .describe('Tax group ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            taxIncludedInPrice: z\n              .boolean()\n              .describe('Indicates whether the price already includes tax.')\n              .optional(),\n            taxBreakdown: z\n              .array(\n                z.object({\n                  jurisdiction: z\n                    .string()\n                    .describe(\n                      'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  rate: z\n                    .string()\n                    .describe(\n                      'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount of tax calculated for this line item.')\n                    .optional(),\n                  taxType: z\n                    .string()\n                    .describe(\n                      'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  taxName: z\n                    .string()\n                    .describe(\n                      'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  jurisdictionType: z\n                    .enum([\n                      'UNDEFINED',\n                      'COUNTRY',\n                      'STATE',\n                      'COUNTY',\n                      'CITY',\n                      'SPECIAL',\n                    ])\n                    .describe(\n                      'Type of jurisdiction that taxes were calculated for.'\n                    )\n                    .optional(),\n                  nonTaxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Non-taxable amount of the line item price.')\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of the line item price.')\n                    .optional(),\n                })\n              )\n              .max(7)\n              .optional(),\n          })\n          .describe(\n            'Represents all the relevant tax details for a specific line item.'\n          )\n          .optional(),\n        digitalFile: z\n          .object({\n            fileId: z\n              .string()\n              .describe('ID of the secure file in media.')\n              .min(1)\n              .max(100)\n              .optional(),\n            link: z\n              .string()\n              .describe(\n                'Link will exist after the digital links have been generated on the order.'\n              )\n              .url()\n              .min(1)\n              .max(2000)\n              .optional()\n              .nullable(),\n            expirationDate: z\n              .date()\n              .describe('Link expiration time and date.')\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Digital file identifier, relevant only for items with type DIGITAL.'\n          )\n          .optional(),\n        subscriptionInfo: z\n          .object({\n            _id: z\n              .string()\n              .describe('Subscription ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            cycleNumber: z\n              .number()\n              .int()\n              .describe(\n                'Subscription cycle. For example, if this order is for the 3rd cycle of a subscription, value will be `3`.'\n              )\n              .min(0)\n              .optional(),\n            subscriptionOptionTitle: z\n              .string()\n              .describe(\n                'Subscription option title. For example, `\"Monthly coffee Subscription\"`.'\n              )\n              .min(0)\n              .max(150)\n              .optional(),\n            subscriptionOptionDescription: z\n              .string()\n              .describe(\n                'Subscription option description. For example, `\"1kg of selected coffee, once a month\"`.'\n              )\n              .max(500)\n              .optional()\n              .nullable(),\n            subscriptionSettings: z\n              .object({\n                frequency: z\n                  .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                  .describe('Frequency of recurring payment.')\n                  .optional(),\n                interval: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Number of frequency units in a billing cycle. For example, frequency `MONTH` with interval `3` means billing every 3 months.'\n                  )\n                  .min(1)\n                  .max(3650)\n                  .optional()\n                  .nullable(),\n                autoRenewal: z\n                  .boolean()\n                  .describe(\n                    'Whether subscription is renewed automatically at the end of each period.'\n                  )\n                  .optional(),\n                billingCycles: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.'\n                  )\n                  .min(1)\n                  .optional()\n                  .nullable(),\n                enableCustomerCancellation: z\n                  .boolean()\n                  .describe(\n                    'Whether to allow the customer to cancel the subscription.'\n                  )\n                  .optional(),\n                freeTrialPeriod: z\n                  .object({\n                    frequency: z\n                      .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                      .describe(\n                        'Frequency of period. Values: DAY, WEEK, MONTH, YEAR'\n                      )\n                      .optional(),\n                    interval: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of frequency units in the free trial period. For example, frequency `MONTH` with interval `3` means a 3-month free trial.'\n                      )\n                      .min(1)\n                      .max(3650)\n                      .optional(),\n                  })\n                  .describe(\n                    'Period until first cycle starts. If None => no free trial'\n                  )\n                  .optional(),\n              })\n              .describe('Subscription detailed information.')\n              .optional(),\n            chargesDescription: z\n              .string()\n              .describe(\n                'Description of the charges that will be applied for subscription.'\n              )\n              .max(1000)\n              .optional()\n              .nullable(),\n          })\n          .describe('Subscription info.')\n          .optional(),\n        priceDescription: z\n          .object({\n            original: z\n              .string()\n              .describe(\n                \"__Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n              )\n              .min(1)\n              .max(100)\n              .optional(),\n            translated: z\n              .string()\n              .describe(\n                \"Price description translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n              )\n              .min(1)\n              .max(100)\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - \"Starts at $67\".'\n          )\n          .optional(),\n        depositAmount: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Item\\'s price amount to be charged during checkout. Relevant for items with a `paymentOption` value of `\"DEPOSIT_ONLINE\"`.'\n          )\n          .optional(),\n        locations: z\n          .array(\n            z.object({\n              _id: z\n                .string()\n                .describe('Location id in the associated owner app.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional(),\n              appId: z\n                .string()\n                .describe(\n                  'Location owner app, if not provided then the site business info locations will be used.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              quantity: z\n                .number()\n                .int()\n                .describe('Quantity for specific location.')\n                .min(1)\n                .max(100000)\n                .optional(),\n              name: z\n                .string()\n                .describe('Location name.')\n                .max(500)\n                .optional()\n                .nullable(),\n            })\n          )\n          .min(0)\n          .max(5)\n          .optional(),\n        lineItemPrice: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Total price **after** catalog discounts and line item discounts.'\n          )\n          .optional(),\n        taxableAddress: z\n          .intersection(\n            z.object({}),\n            z.xor([\n              z.object({ addressType: z.never().optional() }),\n              z.object({\n                addressType: z\n                  .enum(['BUSINESS', 'BILLING', 'SHIPPING'])\n                  .describe(\n                    'taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly.'\n                  ),\n              }),\n            ])\n          )\n          .describe('Address used for tax calculation.')\n          .optional(),\n        priceUndetermined: z\n          .boolean()\n          .describe(\n            'Whether the price is not yet defined, and will be updated after the order is created.\\n\\nDefault: `false`'\n          )\n          .optional(),\n        extendedFields: z\n          .object({\n            namespaces: z\n              .record(z.string(), z.record(z.string(), z.any()))\n              .describe(\n                'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n              )\n              .optional(),\n          })\n          .describe(\n            'Custom extended fields for the line item object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n          )\n          .optional(),\n        modifierGroups: z\n          .array(\n            z.object({\n              _id: z\n                .string()\n                .describe('Modifier group ID.')\n                .min(1)\n                .max(36)\n                .optional(),\n              name: z\n                .object({\n                  original: z\n                    .string()\n                    .describe(\n                      \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                    )\n                    .min(1)\n                    .max(200)\n                    .optional(),\n                  translated: z\n                    .string()\n                    .describe(\n                      \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                    )\n                    .min(1)\n                    .max(400)\n                    .optional()\n                    .nullable(),\n                })\n                .describe('Modifier group name.')\n                .optional(),\n              modifiers: z\n                .array(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Modifier ID.')\n                      .min(1)\n                      .max(36)\n                      .optional(),\n                    quantity: z\n                      .number()\n                      .int()\n                      .describe('The quantity of this modifier.')\n                      .min(1)\n                      .max(100000)\n                      .optional()\n                      .nullable(),\n                    label: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                          )\n                          .min(1)\n                          .max(200)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                          )\n                          .min(1)\n                          .max(400)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Primary display label for the modifier.')\n                      .optional(),\n                    details: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                          )\n                          .min(1)\n                          .max(200)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                          )\n                          .min(1)\n                          .max(400)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Additional details.')\n                      .optional(),\n                    price: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('The price of the modifier.')\n                      .optional(),\n                  })\n                )\n                .min(1)\n                .max(10)\n                .optional(),\n            })\n          )\n          .max(10)\n          .optional(),\n      })\n    )\n    .min(1)\n    .max(300)\n    .optional(),\n  buyerInfo: z\n    .intersection(\n      z.object({\n        contactId: z\n          .string()\n          .describe(\n            \"Contact ID. Automatically created if one doesn't exist. For more information, see [Contacts API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts/contact-v4/introduction).\"\n          )\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        email: z\n          .string()\n          .describe(\"Buyer's email address.\")\n          .email()\n          .optional()\n          .nullable(),\n      }),\n      z.xor([\n        z.object({\n          visitorId: z.never().optional(),\n          memberId: z.never().optional(),\n        }),\n        z.object({\n          memberId: z.never().optional(),\n          visitorId: z\n            .string()\n            .describe(\n              \"Visitor ID. Returned when the buyer isn't a logged-in site member.\"\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          visitorId: z.never().optional(),\n          memberId: z\n            .string()\n            .describe(\n              'Member ID. Returned when the buyer is a logged-in site member.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n      ])\n    )\n    .describe('Buyer information.')\n    .optional(),\n  paymentStatus: z\n    .enum([\n      'UNSPECIFIED',\n      'NOT_PAID',\n      'PAID',\n      'PARTIALLY_REFUNDED',\n      'FULLY_REFUNDED',\n      'PENDING',\n      'PARTIALLY_PAID',\n      'PENDING_MERCHANT',\n      'CANCELED',\n      'DECLINED',\n    ])\n    .describe('Order payment status.')\n    .optional(),\n  fulfillmentStatus: z\n    .enum(['NOT_FULFILLED', 'FULFILLED', 'PARTIALLY_FULFILLED'])\n    .describe('Order fulfillment status.')\n    .optional(),\n  buyerLanguage: z\n    .string()\n    .describe(\n      'Language for communication with the buyer. Defaults to the site language.\\nFor a site that supports multiple languages, this is the language the buyer selected.'\n    )\n    .optional()\n    .nullable(),\n  weightUnit: z\n    .enum(['UNSPECIFIED_WEIGHT_UNIT', 'KG', 'LB'])\n    .describe(\"Weight measurement unit - defaults to site's weight unit.\")\n    .optional(),\n  currency: z\n    .string()\n    .describe(\n      'Currency used for the pricing of this order in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.'\n    )\n    .optional()\n    .nullable(),\n  currencyConversionDetails: z\n    .object({\n      originalCurrency: z\n        .string()\n        .describe(\n          \"Currency used for the pricing of this order, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.\\n\\nThis currency is used to calculate the pricing before conversion to the buyer's payment currency.\"\n        )\n        .optional()\n        .nullable(),\n      conversionRate: z\n        .string()\n        .describe(\n          'The rate used for converting the original currency to the currency used for payment.'\n        )\n        .optional()\n        .nullable(),\n    })\n    .describe('Currency conversion details. For use with multi-currency sites.')\n    .optional(),\n  taxIncludedInPrices: z\n    .boolean()\n    .describe('Whether tax is included in line item prices.')\n    .optional(),\n  siteLanguage: z\n    .string()\n    .describe('Site language in which original values are shown.')\n    .optional()\n    .nullable(),\n  priceSummary: z\n    .object({\n      subtotal: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Subtotal of all line items, before discounts and before tax.'\n        )\n        .optional(),\n      shipping: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total shipping price, before discounts and before tax.')\n        .optional(),\n      tax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total tax applied to the order.')\n        .optional(),\n      discount: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total discount amount applied to the order.')\n        .optional(),\n      total: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\"Order's total price after discounts and tax.\")\n        .optional(),\n      totalAdditionalFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total additional fees before tax.')\n        .optional(),\n    })\n    .describe('Order price summary.')\n    .optional(),\n  billingInfo: z\n    .object({\n      address: z\n        .object({\n          streetAddress: z\n            .object({\n              name: z.string().optional(),\n              number: z.string().optional(),\n            })\n            .optional(),\n          city: z.string().optional().nullable(),\n          subdivision: z.string().optional().nullable(),\n          country: z.string().optional().nullable(),\n          postalCode: z.string().optional().nullable(),\n          addressLine2: z.string().optional().nullable(),\n        })\n        .describe('Address.')\n        .optional(),\n      contactDetails: z\n        .object({\n          firstName: z\n            .string()\n            .describe('First name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          lastName: z\n            .string()\n            .describe('Last name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          phone: z.string().describe('Phone number.').optional().nullable(),\n          company: z\n            .string()\n            .describe('Company name.')\n            .max(1000)\n            .optional()\n            .nullable(),\n          vatId: z\n            .object({\n              _id: z.string().describe(\"Customer's tax ID.\").optional(),\n              type: z\n                .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                .describe(\n                  'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                )\n                .optional(),\n            })\n            .describe(\n              'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n            )\n            .optional(),\n        })\n        .describe('Contact details.')\n        .optional(),\n    })\n    .describe('Billing address and contact details.')\n    .optional(),\n  shippingInfo: z\n    .object({\n      carrierId: z\n        .string()\n        .describe(\n          'App Def Id of external provider which was a source of shipping info'\n        )\n        .min(1)\n        .max(100)\n        .optional()\n        .nullable(),\n      code: z\n        .string()\n        .describe(\n          'Unique code (or ID) of selected shipping option. For example, `\"usps_std_overnight\"`.'\n        )\n        .min(1)\n        .max(100)\n        .optional()\n        .nullable(),\n      title: z\n        .string()\n        .describe(\n          'Shipping option title.\\nFor example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.'\n        )\n        .max(250)\n        .optional(),\n      logistics: z\n        .intersection(\n          z.object({\n            deliveryTime: z\n              .string()\n              .describe(\n                'Expected delivery time in free text. For example, `\"3-5 business days\"`.'\n              )\n              .max(500)\n              .optional()\n              .nullable(),\n            instructions: z\n              .string()\n              .describe(\n                'Instructions for the carrier. For example, `\"Please knock on the door. If unanswered, please call contact number.\"`.'\n              )\n              .max(1000)\n              .optional()\n              .nullable(),\n            deliverByDate: z\n              .date()\n              .describe(\n                'Deprecated - Latest expected delivery date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n              )\n              .optional()\n              .nullable(),\n            deliveryTimeSlot: z\n              .object({\n                from: z\n                  .date()\n                  .describe('Delivery slot starting time.')\n                  .optional()\n                  .nullable(),\n                to: z\n                  .date()\n                  .describe('Delivery slot ending time.')\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Expected delivery time slot with start and end times.')\n              .optional(),\n          }),\n          z.xor([\n            z.object({\n              shippingDestination: z.never().optional(),\n              pickupDetails: z.never().optional(),\n            }),\n            z.object({\n              pickupDetails: z.never().optional(),\n              shippingDestination: z\n                .object({\n                  address: z\n                    .object({\n                      streetAddress: z\n                        .object({\n                          name: z.string().optional(),\n                          number: z.string().optional(),\n                        })\n                        .optional(),\n                      city: z.string().optional().nullable(),\n                      subdivision: z.string().optional().nullable(),\n                      country: z.string().optional().nullable(),\n                      postalCode: z.string().optional().nullable(),\n                      addressLine2: z.string().optional().nullable(),\n                    })\n                    .describe('Address.')\n                    .optional(),\n                  contactDetails: z\n                    .object({\n                      firstName: z\n                        .string()\n                        .describe('First name.')\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      lastName: z\n                        .string()\n                        .describe('Last name.')\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      phone: z\n                        .string()\n                        .describe('Phone number.')\n                        .optional()\n                        .nullable(),\n                      company: z\n                        .string()\n                        .describe('Company name.')\n                        .max(1000)\n                        .optional()\n                        .nullable(),\n                      vatId: z\n                        .object({\n                          _id: z\n                            .string()\n                            .describe(\"Customer's tax ID.\")\n                            .optional(),\n                          type: z\n                            .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                            .describe(\n                              'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                        )\n                        .optional(),\n                    })\n                    .describe('Contact details.')\n                    .optional(),\n                })\n                .describe(\n                  \"Shipping destination address and contact details. For pickup orders, this contains the pickup location address, not the recipient's address.\"\n                ),\n            }),\n            z.object({\n              shippingDestination: z.never().optional(),\n              pickupDetails: z\n                .object({\n                  address: z\n                    .object({\n                      streetAddress: z\n                        .object({\n                          name: z.string().optional(),\n                          number: z.string().optional(),\n                        })\n                        .optional(),\n                      city: z.string().optional().nullable(),\n                      subdivision: z.string().optional().nullable(),\n                      country: z.string().optional().nullable(),\n                      postalCode: z.string().optional().nullable(),\n                      addressLine2: z.string().optional().nullable(),\n                    })\n                    .describe('Pickup address.')\n                    .optional(),\n                  pickupMethod: z\n                    .enum(['STORE_PICKUP', 'PICKUP_POINT'])\n                    .describe('Pickup method')\n                    .optional(),\n                })\n                .describe(\n                  'Pickup details for store pickup or pickup point orders.'\n                ),\n            }),\n          ])\n        )\n        .describe('Shipping logistics.')\n        .optional(),\n      cost: z\n        .object({\n          price: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Shipping price for display purposes.')\n            .optional(),\n          totalPriceBeforeTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total price of shipping after discounts (when relevant), and before tax.'\n            )\n            .optional(),\n          totalPriceAfterTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Shipping price after all discounts (if any exist), and after tax.'\n            )\n            .optional(),\n          taxDetails: z\n            .object({\n              taxableAmount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Taxable amount of this line item.')\n                .optional(),\n              taxRate: z\n                .string()\n                .describe(\n                  'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                )\n                .optional(),\n              totalTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                )\n                .optional(),\n            })\n            .describe('Tax details.')\n            .optional(),\n          taxInfo: z\n            .object({\n              taxAmount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                )\n                .optional(),\n              taxableAmount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Amount for which tax is calculated.')\n                .optional(),\n              taxRate: z\n                .string()\n                .describe('Tax rate %, as a decimal point.')\n                .optional()\n                .nullable(),\n              taxGroupId: z\n                .string()\n                .describe('Tax group ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              taxIncludedInPrice: z\n                .boolean()\n                .describe('Indicates whether the price already includes tax.')\n                .optional(),\n              taxBreakdown: z\n                .array(\n                  z.object({\n                    jurisdiction: z\n                      .string()\n                      .describe(\n                        'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    rate: z\n                      .string()\n                      .describe(\n                        'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                      )\n                      .optional()\n                      .nullable(),\n                    taxAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Amount of tax calculated for this line item.')\n                      .optional(),\n                    taxType: z\n                      .string()\n                      .describe(\n                        'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    taxName: z\n                      .string()\n                      .describe(\n                        'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    jurisdictionType: z\n                      .enum([\n                        'UNDEFINED',\n                        'COUNTRY',\n                        'STATE',\n                        'COUNTY',\n                        'CITY',\n                        'SPECIAL',\n                      ])\n                      .describe(\n                        'Type of jurisdiction that taxes were calculated for.'\n                      )\n                      .optional(),\n                    nonTaxableAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Non-taxable amount of the line item price.')\n                      .optional(),\n                    taxableAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Taxable amount of the line item price.')\n                      .optional(),\n                  })\n                )\n                .max(7)\n                .optional(),\n            })\n            .describe('Represents all the relevant tax details for a shipping.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Shipping discount before tax.')\n            .optional(),\n        })\n        .describe('Shipping costs.')\n        .optional(),\n      region: z\n        .object({\n          name: z\n            .string()\n            .describe(\n              'Name of shipping region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.'\n            )\n            .max(100)\n            .optional()\n            .nullable(),\n        })\n        .describe('Shipping region.')\n        .optional(),\n    })\n    .describe('Shipping info and selected shipping option details.')\n    .optional(),\n  buyerNote: z\n    .string()\n    .describe(\n      '[Buyer note](https://support.wix.com/en/article/wix-stores-viewing-buyer-notes) left by the customer.'\n    )\n    .max(1000)\n    .optional()\n    .nullable(),\n  status: z\n    .enum(['INITIALIZED', 'APPROVED', 'CANCELED', 'PENDING', 'REJECTED'])\n    .describe('Order status.')\n    .optional(),\n  archived: z\n    .boolean()\n    .describe('Whether order is archived.')\n    .optional()\n    .nullable(),\n  taxSummary: z\n    .object({\n      totalTax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total tax.')\n        .optional(),\n    })\n    .describe(\n      'Tax summary.\\nDeprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.'\n    )\n    .optional(),\n  taxInfo: z\n    .object({\n      totalTax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Calculated tax, added from line items.')\n        .optional(),\n      taxBreakdown: z\n        .array(\n          z.object({\n            taxName: z\n              .string()\n              .describe(\n                'The name of the tax against which this tax amount was calculated.'\n              )\n              .max(200)\n              .optional(),\n            taxType: z\n              .string()\n              .describe(\n                \"The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.\"\n              )\n              .max(200)\n              .optional(),\n            jurisdiction: z\n              .string()\n              .describe(\n                'The name of the jurisdiction in which this tax detail applies.'\n              )\n              .max(200)\n              .optional(),\n            jurisdictionType: z\n              .enum([\n                'UNDEFINED',\n                'COUNTRY',\n                'STATE',\n                'COUNTY',\n                'CITY',\n                'SPECIAL',\n              ])\n              .describe(\n                'The type of the jurisdiction in which this tax detail applies (e.g. Country,State,County,City,Special).'\n              )\n              .optional(),\n            rate: z\n              .string()\n              .describe('The rate at which this tax detail was calculated.')\n              .optional(),\n            aggregatedTaxAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'The sum of all the tax from line items that calculated by the tax identifiers.'\n              )\n              .optional(),\n          })\n        )\n        .min(0)\n        .max(50)\n        .optional(),\n      taxExempt: z\n        .boolean()\n        .describe(\n          'Whether the order is exempt from tax calculations.\\n\\nDefault: `false`'\n        )\n        .optional()\n        .nullable(),\n    })\n    .describe('Tax information.')\n    .optional(),\n  appliedDiscounts: z\n    .array(\n      z.intersection(\n        z.object({\n          discountType: z\n            .enum(['GLOBAL', 'SPECIFIC_ITEMS', 'SHIPPING'])\n            .optional(),\n          lineItemIds: z.array(z.string()).min(0).max(300).optional(),\n          _id: z\n            .string()\n            .describe('Discount ID.')\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            )\n            .optional()\n            .nullable(),\n          lineItemDiscounts: z\n            .array(\n              z.object({\n                _id: z\n                  .string()\n                  .describe('Line item ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                totalDiscount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total discount amount for this line item.')\n                  .optional(),\n              })\n            )\n            .max(300)\n            .optional(),\n        }),\n        z.xor([\n          z.object({\n            coupon: z.never().optional(),\n            merchantDiscount: z.never().optional(),\n            discountRule: z.never().optional(),\n          }),\n          z.object({\n            merchantDiscount: z.never().optional(),\n            discountRule: z.never().optional(),\n            coupon: z\n              .object({\n                _id: z.string().describe('Coupon ID.').optional(),\n                code: z.string().describe('Coupon code.').optional(),\n                name: z.string().describe('Coupon name.').optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Coupon value.')\n                  .optional(),\n              })\n              .describe('Coupon applied by the customer.'),\n          }),\n          z.object({\n            coupon: z.never().optional(),\n            discountRule: z.never().optional(),\n            merchantDiscount: z\n              .intersection(\n                z.object({\n                  amount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Discount amount.')\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({\n                    discountReason: z.never().optional(),\n                    description: z.never().optional(),\n                  }),\n                  z.object({\n                    description: z.never().optional(),\n                    discountReason: z\n                      .enum([\n                        'UNSPECIFIED',\n                        'EXCHANGED_ITEMS',\n                        'BILLING_ADJUSTMENT',\n                      ])\n                      .describe('Predefined discount reason.'),\n                  }),\n                  z.object({\n                    discountReason: z.never().optional(),\n                    description: z\n                      .string()\n                      .describe('Custom discount description as free text.')\n                      .max(200),\n                  }),\n                ])\n              )\n              .describe('Discount applied manually by the merchant.'),\n          }),\n          z.object({\n            coupon: z.never().optional(),\n            merchantDiscount: z.never().optional(),\n            discountRule: z\n              .object({\n                _id: z\n                  .string()\n                  .describe('Discount rule ID')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                name: z\n                  .object({\n                    original: z\n                      .string()\n                      .describe(\n                        \"Original discount rule name (in site's default language).\"\n                      )\n                      .min(1)\n                      .max(256)\n                      .optional(),\n                    translated: z\n                      .string()\n                      .describe(\n                        'Translated discount rule name according to buyer language. Defaults to `original` when not provided.'\n                      )\n                      .min(1)\n                      .max(500)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Discount rule name')\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Discount value.')\n                  .optional(),\n              })\n              .describe(\n                'Automatic discount applied by the system based on configured discount rules.'\n              ),\n          }),\n        ])\n      )\n    )\n    .max(320)\n    .optional(),\n  activities: z\n    .array(\n      z.intersection(\n        z.object({\n          _id: z\n            .string()\n            .describe('Activity ID.')\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            )\n            .optional()\n            .nullable(),\n          authorEmail: z\n            .string()\n            .describe(\"Activity author's email.\")\n            .email()\n            .optional()\n            .nullable(),\n          _createdDate: z\n            .date()\n            .describe('Activity creation date and time.')\n            .optional()\n            .nullable(),\n          type: z\n            .enum([\n              'ORDER_REFUNDED',\n              'ORDER_PLACED',\n              'ORDER_PAID',\n              'ORDER_FULFILLED',\n              'ORDER_NOT_FULFILLED',\n              'ORDER_CANCELED',\n              'DOWNLOAD_LINK_SENT',\n              'TRACKING_NUMBER_ADDED',\n              'TRACKING_NUMBER_EDITED',\n              'TRACKING_LINK_ADDED',\n              'SHIPPING_CONFIRMATION_EMAIL_SENT',\n              'INVOICE_ADDED',\n              'INVOICE_REMOVED',\n              'INVOICE_SENT',\n              'FULFILLER_EMAIL_SENT',\n              'SHIPPING_ADDRESS_EDITED',\n              'EMAIL_EDITED',\n              'PICKUP_READY_EMAIL_SENT',\n              'CUSTOM_ACTIVITY',\n              'MERCHANT_COMMENT',\n              'ORDER_PARTIALLY_PAID',\n              'DRAFT_ORDER_CHANGES_APPLIED',\n              'SAVED_PAYMENT_METHOD',\n              'AUTHORIZED_PAYMENT_CREATED',\n              'AUTHORIZED_PAYMENT_CAPTURED',\n              'AUTHORIZED_PAYMENT_VOIDED',\n              'REFUND_INITIATED',\n              'PAYMENT_REFUNDED',\n              'PAYMENT_REFUND_FAILED',\n              'REFUNDED_AS_STORE_CREDIT',\n              'PAYMENT_PENDING',\n              'PAYMENT_CANCELED',\n              'PAYMENT_DECLINED',\n              'ORDER_PENDING',\n              'ORDER_REJECTED',\n              'RECEIPT_CREATED',\n              'RECEIPT_SENT',\n              'CHARGEBACK_CREATED',\n              'CHARGEBACK_REVERSED',\n            ])\n            .describe('Activity type.')\n            .optional(),\n          activityType: z\n            .enum([\n              'ORDER_PLACED',\n              'ORDER_PAID',\n              'ORDER_FULFILLED',\n              'ORDER_NOT_FULFILLED',\n              'ORDER_CANCELED',\n              'DOWNLOAD_LINK_SENT',\n              'TRACKING_NUMBER_ADDED',\n              'TRACKING_NUMBER_EDITED',\n              'TRACKING_LINK_ADDED',\n              'SHIPPING_CONFIRMATION_EMAIL_SENT',\n              'INVOICE_ADDED',\n              'INVOICE_REMOVED',\n              'INVOICE_SENT',\n              'FULFILLER_EMAIL_SENT',\n              'SHIPPING_ADDRESS_EDITED',\n              'EMAIL_EDITED',\n              'PICKUP_READY_EMAIL_SENT',\n              'MERCHANT_COMMENT',\n              'ORDER_PARTIALLY_PAID',\n              'DRAFT_ORDER_CHANGES_APPLIED',\n              'SAVED_PAYMENT_METHOD',\n              'AUTHORIZED_PAYMENT_CREATED',\n              'AUTHORIZED_PAYMENT_CAPTURED',\n              'AUTHORIZED_PAYMENT_VOIDED',\n              'REFUND_INITIATED',\n              'PAYMENT_REFUNDED',\n              'PAYMENT_REFUND_FAILED',\n              'REFUNDED_AS_STORE_CREDIT',\n              'PAYMENT_PENDING',\n              'PAYMENT_CANCELED',\n              'PAYMENT_DECLINED',\n              'ORDER_PENDING',\n              'ORDER_REJECTED',\n              'RECEIPT_CREATED',\n              'RECEIPT_SENT',\n              'CHARGEBACK_CREATED',\n              'CHARGEBACK_REVERSED',\n              'ORDER_REFUNDED',\n            ])\n            .describe('Activity type.')\n            .optional(),\n        }),\n        z.xor([\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n          }),\n          z.object({\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            merchantComment: z\n              .object({\n                message: z\n                  .string()\n                  .describe('Merchant comment message.')\n                  .min(1)\n                  .max(5000)\n                  .optional(),\n              })\n              .describe(\n                'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            orderRefunded: z\n              .object({\n                manual: z\n                  .boolean()\n                  .describe(\n                    'Whether order was refunded manually. For example, via payment provider or using cash.'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Refund amount.')\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for refund.')\n                  .max(200)\n                  .optional(),\n              })\n              .describe(\n                'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            draftOrderChangesApplied: z\n              .object({\n                draftOrderId: z.string().describe('Draft order id.').optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for edit, given by user (optional).')\n                  .max(200)\n                  .optional()\n                  .nullable(),\n                changes: z\n                  .array(\n                    z.intersection(\n                      z.object({}),\n                      z.xor([\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                        }),\n                        z.object({\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          lineItemChanged: z.object({\n                            _id: z\n                              .string()\n                              .describe('Line item ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                  )\n                                  .min(1)\n                                  .max(200)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                  )\n                                  .min(1)\n                                  .max(400)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Item name after change.')\n                              .optional(),\n                            quantity: z\n                              .object({\n                                originalQuantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Item quantity before update.')\n                                  .min(0)\n                                  .max(1000000)\n                                  .optional(),\n                                newQuantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Item quantity after update.')\n                                  .min(0)\n                                  .max(1000000)\n                                  .optional(),\n                                diff: z\n                                  .number()\n                                  .int()\n                                  .describe(\n                                    'Difference between original and new quantity. Absolute value.'\n                                  )\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                                deltaType: z\n                                  .enum([\n                                    'QUANTITY_INCREASED',\n                                    'QUANTITY_DECREASED',\n                                  ])\n                                  .describe(\n                                    'Type of quantity change: increase or decrease.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Item quantity change.')\n                              .optional(),\n                            price: z\n                              .object({\n                                originalPrice: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item price before update.')\n                                  .optional(),\n                                newPrice: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item price after update.')\n                                  .optional(),\n                              })\n                              .describe('Item price change.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          lineItemAdded: z.object({\n                            _id: z\n                              .string()\n                              .describe('Line item ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                  )\n                                  .min(1)\n                                  .max(200)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                  )\n                                  .min(1)\n                                  .max(400)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Item name.')\n                              .optional(),\n                            quantity: z\n                              .number()\n                              .int()\n                              .describe('Added or removed item quantity.')\n                              .min(1)\n                              .max(1000000)\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          lineItemRemoved: z.object({\n                            _id: z\n                              .string()\n                              .describe('Line item ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                  )\n                                  .min(1)\n                                  .max(200)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                  )\n                                  .min(1)\n                                  .max(400)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Item name.')\n                              .optional(),\n                            quantity: z\n                              .number()\n                              .int()\n                              .describe('Added or removed item quantity.')\n                              .min(1)\n                              .max(1000000)\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          discountAdded: z.object({\n                            _id: z\n                              .string()\n                              .describe('Discount id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe(\n                                'Discount name: coupon name / discount rule name / merchant discount description.'\n                              )\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Discount amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          discountRemoved: z.object({\n                            _id: z\n                              .string()\n                              .describe('Discount id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe(\n                                'Discount name: coupon name / discount rule name / merchant discount description.'\n                              )\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Discount amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          additionalFeeAdded: z.object({\n                            _id: z\n                              .string()\n                              .describe('Additional fee id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Additional fee name.')\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Additional fee amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          additionalFeeRemoved: z.object({\n                            _id: z\n                              .string()\n                              .describe('Additional fee id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Additional fee name.')\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Additional fee amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          totalPriceChanged: z.object({\n                            originalTotal: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s total price after discounts and tax. Before update'\n                              )\n                              .optional(),\n                            newTotal: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s total price after discounts and tax. After update'\n                              )\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.object({\n                            originalShippingInfo: z\n                              .object({\n                                total: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Order’s shipping price.')\n                                  .optional(),\n                                shippingTitle: z\n                                  .string()\n                                  .describe('Order’s shipping title.')\n                                  .max(250)\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s Shipping Information. Before update'\n                              )\n                              .optional(),\n                            newShippingInfo: z\n                              .object({\n                                total: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Order’s shipping price.')\n                                  .optional(),\n                                shippingTitle: z\n                                  .string()\n                                  .describe('Order’s shipping title.')\n                                  .max(250)\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s Shipping Information. After update'\n                              )\n                              .optional(),\n                          }),\n                        }),\n                      ])\n                    )\n                  )\n                  .optional(),\n              })\n              .describe('Details of changes made by the Draft Orders API.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            savedPaymentMethod: z\n              .object({\n                name: z\n                  .string()\n                  .describe('Payment method name.')\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                description: z\n                  .string()\n                  .describe('Payment method description.')\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of the payment method saved for the order.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            authorizedPaymentCreated: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe(\n                    'Payment ID of payment associated with this activity.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Payment amount.')\n                  .optional(),\n                lastFourDigits: z\n                  .string()\n                  .describe('The last 4 digits of the card number.')\n                  .max(4)\n                  .optional()\n                  .nullable(),\n                brand: z\n                  .string()\n                  .describe(\"Card issuer's brand.\")\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of an authorized payment created.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            authorizedPaymentCaptured: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe(\n                    'Payment ID of payment associated with this activity.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Payment amount.')\n                  .optional(),\n                lastFourDigits: z\n                  .string()\n                  .describe('The last 4 digits of the card number.')\n                  .max(4)\n                  .optional()\n                  .nullable(),\n                brand: z\n                  .string()\n                  .describe(\"Card issuer's brand.\")\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of an authorized payment captured.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            authorizedPaymentVoided: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe(\n                    'Payment ID of payment associated with this activity.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Payment amount.')\n                  .optional(),\n                lastFourDigits: z\n                  .string()\n                  .describe('The last 4 digits of the card number.')\n                  .max(4)\n                  .optional()\n                  .nullable(),\n                brand: z\n                  .string()\n                  .describe(\"Card issuer's brand.\")\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of an authorized payment voided.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            refundInitiated: z\n              .object({\n                refundId: z\n                  .string()\n                  .describe('Refund ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Refund amount.')\n                  .optional(),\n                payments: z\n                  .array(\n                    z.intersection(\n                      z.object({\n                        paymentId: z\n                          .string()\n                          .describe('Payment ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        externalRefund: z\n                          .boolean()\n                          .describe(\n                            \"Whether refund was made externally and manually on the payment provider's side.\"\n                          )\n                          .optional(),\n                      }),\n                      z.xor([\n                        z.object({\n                          regular: z.never().optional(),\n                          giftCard: z.never().optional(),\n                          membership: z.never().optional(),\n                        }),\n                        z.object({\n                          giftCard: z.never().optional(),\n                          membership: z.never().optional(),\n                          regular: z\n                            .object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Refund amount.')\n                                .optional(),\n                              lastFourDigits: z\n                                .string()\n                                .describe(\n                                  'The last 4 digits of the card number.'\n                                )\n                                .max(4)\n                                .optional()\n                                .nullable(),\n                              brand: z\n                                .string()\n                                .describe(\"Card issuer's brand.\")\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Regular payment refund.'),\n                        }),\n                        z.object({\n                          regular: z.never().optional(),\n                          membership: z.never().optional(),\n                          giftCard: z\n                            .object({\n                              giftCardPaymentId: z\n                                .string()\n                                .describe('Gift card payment ID.')\n                                .min(1)\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Refund amount.')\n                                .optional(),\n                            })\n                            .describe('Gift card payment refund.'),\n                        }),\n                        z.object({\n                          regular: z.never().optional(),\n                          giftCard: z.never().optional(),\n                          membership: z\n                            .object({\n                              membershipId: z\n                                .string()\n                                .describe('Membership ID.')\n                                .min(1)\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Membership payment refund.'),\n                        }),\n                      ])\n                    )\n                  )\n                  .min(1)\n                  .max(50)\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for refund.')\n                  .max(200)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentRefunded: z\n              .object({\n                refundId: z\n                  .string()\n                  .describe('Refund ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                payment: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe('Payment ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      externalRefund: z\n                        .boolean()\n                        .describe(\n                          \"Whether refund was made externally and manually on the payment provider's side.\"\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                      }),\n                      z.object({\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                        regular: z\n                          .object({\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Regular payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        membership: z.never().optional(),\n                        giftCard: z\n                          .object({\n                            giftCardPaymentId: z\n                              .string()\n                              .describe('Gift card payment ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                          })\n                          .describe('Gift card payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z\n                          .object({\n                            membershipId: z\n                              .string()\n                              .describe('Membership ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Membership payment refund.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details about the refunded payment.')\n                  .optional(),\n              })\n              .describe(\n                'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentRefundFailed: z\n              .object({\n                refundId: z\n                  .string()\n                  .describe('Refund ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                payment: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe('Payment ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      externalRefund: z\n                        .boolean()\n                        .describe(\n                          \"Whether refund was made externally and manually on the payment provider's side.\"\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                      }),\n                      z.object({\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                        regular: z\n                          .object({\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Regular payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        membership: z.never().optional(),\n                        giftCard: z\n                          .object({\n                            giftCardPaymentId: z\n                              .string()\n                              .describe('Gift card payment ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                          })\n                          .describe('Gift card payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z\n                          .object({\n                            membershipId: z\n                              .string()\n                              .describe('Membership ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Membership payment refund.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details about the failed payment refund.')\n                  .optional(),\n              })\n              .describe(\n                'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            refundedAsStoreCredit: z\n              .object({\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Refund amount.')\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for refund.')\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of refund to store credit.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentPending: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({ regular: z.never().optional() }),\n                  z.object({\n                    regular: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Regular payment.'),\n                  }),\n                ])\n              )\n              .describe('Details of a pending payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentCanceled: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({ regular: z.never().optional() }),\n                  z.object({\n                    regular: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Regular payment.'),\n                  }),\n                ])\n              )\n              .describe('Details of a canceled payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentDeclined: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({ regular: z.never().optional() }),\n                  z.object({\n                    regular: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Regular payment.'),\n                  }),\n                ])\n              )\n              .describe('Details of a declined payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            receiptCreated: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z.never().optional(),\n                  }),\n                  z.object({\n                    externalReceipt: z.never().optional(),\n                    wixReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by Wix.'),\n                  }),\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .max(100)\n                          .optional()\n                          .nullable(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by an external system.'),\n                  }),\n                ])\n              )\n              .describe('Receipt was added for associated payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            receiptSent: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z.never().optional(),\n                  }),\n                  z.object({\n                    externalReceipt: z.never().optional(),\n                    wixReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by Wix.'),\n                  }),\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .max(100)\n                          .optional()\n                          .nullable(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by an external system.'),\n                  }),\n                ])\n              )\n              .describe('Receipt sent to customer.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            chargebackCreated: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe('ID of the payment that received a chargeback.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                chargebackId: z\n                  .string()\n                  .describe('Chargeback ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Chargeback amount.')\n                  .optional(),\n                paymentDetails: z\n                  .intersection(\n                    z.object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Payment amount.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ creditCardDetails: z.never().optional() }),\n                      z.object({\n                        creditCardDetails: z\n                          .object({\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Credit card details.'),\n                      }),\n                    ])\n                  )\n                  .describe('Payment details.')\n                  .optional(),\n              })\n              .describe('Order received a chargeback for one of its payments.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe('ID of the payment involved with the chargeback.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                chargebackId: z\n                  .string()\n                  .describe('Chargeback ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Chargeback amount.')\n                  .optional(),\n                reversalAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Chargeback reversal amount.')\n                  .optional(),\n                paymentDetails: z\n                  .intersection(\n                    z.object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Payment amount.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ creditCardDetails: z.never().optional() }),\n                      z.object({\n                        creditCardDetails: z\n                          .object({\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Credit card details.'),\n                      }),\n                    ])\n                  )\n                  .describe('Payment details.')\n                  .optional(),\n              })\n              .describe(\"Chargeback reversed for one of the order's payments.\"),\n          }),\n        ])\n      )\n    )\n    .max(1000)\n    .optional(),\n  attributionSource: z\n    .enum(['UNSPECIFIED', 'FACEBOOK_ADS'])\n    .describe('Order attribution source.')\n    .optional(),\n  createdBy: z\n    .intersection(\n      z.object({}),\n      z.xor([\n        z.object({\n          userId: z.never().optional(),\n          memberId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z.never().optional(),\n        }),\n        z.object({\n          memberId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z.never().optional(),\n          userId: z\n            .string()\n            .describe(\n              'User ID - when the order was created by a Wix user on behalf of a buyer.\\nFor example, via POS (point of service).'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          userId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z.never().optional(),\n          memberId: z\n            .string()\n            .describe(\n              'Member ID - when the order was created by a **logged in** site visitor.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          userId: z.never().optional(),\n          memberId: z.never().optional(),\n          appId: z.never().optional(),\n          visitorId: z\n            .string()\n            .describe(\n              'Visitor ID - when the order was created by a site visitor that was **not** logged in.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          userId: z.never().optional(),\n          memberId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z\n            .string()\n            .describe(\n              'App ID - when the order was created by an external application.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n      ])\n    )\n    .describe(\"ID of the order's initiator.\")\n    .optional(),\n  channelInfo: z\n    .object({\n      type: z\n        .enum([\n          'UNSPECIFIED',\n          'WEB',\n          'POS',\n          'EBAY',\n          'AMAZON',\n          'OTHER_PLATFORM',\n          'WIX_APP_STORE',\n          'WIX_INVOICES',\n          'BACKOFFICE_MERCHANT',\n          'WISH',\n          'CLASS_PASS',\n          'GLOBAL_E',\n          'FACEBOOK',\n          'ETSY',\n          'TIKTOK',\n          'FAIRE_COM',\n          'PAYPAL_AGENTIC_CHECKOUT',\n          'STRIPE_AGENTIC_CHECKOUT',\n        ])\n        .describe(\n          'Sales channel that submitted the order.\\n\\nWhen creating an order via the API to record an external order, use the channel type that matches the original source. If no matching type exists, use `OTHER_PLATFORM`.'\n        )\n        .optional(),\n      externalOrderId: z\n        .string()\n        .describe(\n          'Reference to an order ID from an external system. Relevant when recording orders from external platforms.'\n        )\n        .max(100)\n        .optional()\n        .nullable(),\n      externalOrderUrl: z\n        .string()\n        .describe(\n          'URL to the order in the external system. Relevant when recording orders from external platforms.'\n        )\n        .max(300)\n        .optional()\n        .nullable(),\n    })\n    .describe('Information about the sales channel that submitted this order.')\n    .optional(),\n  seenByAHuman: z\n    .boolean()\n    .describe(\n      'Whether a human has seen the order. Set when an order is clicked on in the dashboard.'\n    )\n    .optional()\n    .nullable(),\n  checkoutId: z\n    .string()\n    .describe('Checkout ID.')\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    )\n    .optional()\n    .nullable(),\n  customFields: z\n    .array(\n      z.object({\n        value: z.any().describe('Custom field value.').optional().nullable(),\n        title: z\n          .string()\n          .describe('Custom field title.')\n          .min(1)\n          .max(500)\n          .optional(),\n        translatedTitle: z\n          .string()\n          .describe('Translated custom field title.')\n          .min(1)\n          .max(500)\n          .optional()\n          .nullable(),\n      })\n    )\n    .optional(),\n  balanceSummary: z\n    .object({\n      balance: z\n        .object({\n          amount: z\n            .string()\n            .describe(\n              'Balance amount.\\n\\nA negative `amount` represents the amount to be refunded. This can happen due to overcharging or the order being modified after a payment has been made.'\n            )\n            .optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Current amount left to pay.')\n        .optional(),\n      paid: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Sum of all approved and successful payments.\\n\\nThe value includes payments that have subsequently been fully or partially refunded.'\n        )\n        .optional(),\n      refunded: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all successfully refunded payments.')\n        .optional(),\n      authorized: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all authorized payments.')\n        .optional(),\n      pendingRefund: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all pending refund transactions.')\n        .optional(),\n      pending: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all pending transactions.')\n        .optional(),\n      chargeback: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all transaction chargebacks.')\n        .optional(),\n      chargebackReversal: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all chargeback reversals.')\n        .optional(),\n      platformFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Total platform fees actually charged across all payments.\\nThis reflects amounts collected, which may differ from the expected fees in `order.platformFeeSummary`.'\n        )\n        .optional(),\n      totalMinusPlatformFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Order total after deducting platform fees. Represents the net amount payable to the merchant.'\n        )\n        .optional(),\n    })\n    .describe('Balance summary.')\n    .optional(),\n  additionalFees: z\n    .array(\n      z.object({\n        code: z\n          .string()\n          .describe(\"Additional fee's unique code for future processing.\")\n          .min(1)\n          .max(100)\n          .optional()\n          .nullable(),\n        name: z\n          .string()\n          .describe('Name of additional fee.')\n          .min(1)\n          .max(50)\n          .optional(),\n        price: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Additional fee's price.\")\n          .optional(),\n        taxDetails: z\n          .object({\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Taxable amount of this line item.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe(\n                'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n              )\n              .optional(),\n            totalTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n              )\n              .optional(),\n          })\n          .describe('Tax details.')\n          .optional(),\n        taxInfo: z\n          .object({\n            taxAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n              )\n              .optional(),\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Amount for which tax is calculated.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe('Tax rate %, as a decimal point.')\n              .optional()\n              .nullable(),\n            taxGroupId: z\n              .string()\n              .describe('Tax group ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            taxIncludedInPrice: z\n              .boolean()\n              .describe('Indicates whether the price already includes tax.')\n              .optional(),\n            taxBreakdown: z\n              .array(\n                z.object({\n                  jurisdiction: z\n                    .string()\n                    .describe(\n                      'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  rate: z\n                    .string()\n                    .describe(\n                      'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount of tax calculated for this line item.')\n                    .optional(),\n                  taxType: z\n                    .string()\n                    .describe(\n                      'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  taxName: z\n                    .string()\n                    .describe(\n                      'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  jurisdictionType: z\n                    .enum([\n                      'UNDEFINED',\n                      'COUNTRY',\n                      'STATE',\n                      'COUNTY',\n                      'CITY',\n                      'SPECIAL',\n                    ])\n                    .describe(\n                      'Type of jurisdiction that taxes were calculated for.'\n                    )\n                    .optional(),\n                  nonTaxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Non-taxable amount of the line item price.')\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of the line item price.')\n                    .optional(),\n                })\n              )\n              .max(7)\n              .optional(),\n          })\n          .describe(\n            'Represents all the relevant tax details for additional fee.'\n          )\n          .optional(),\n        providerAppId: z\n          .string()\n          .describe(\"SPI implementer's `appId`.\")\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        priceBeforeTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Additional fee's price before tax.\")\n          .optional(),\n        priceAfterTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Additional fee's price after tax.\")\n          .optional(),\n        _id: z\n          .string()\n          .describe(\"Additional fee's id.\")\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional(),\n        lineItemIds: z.array(z.string()).optional(),\n        source: z\n          .enum(['SERVICE_PLUGIN', 'ITEM', 'MANUAL', 'SHIPPING', 'PLATFORM'])\n          .describe('Specifies the entity that added the additional fee.')\n          .optional(),\n      })\n    )\n    .max(100)\n    .optional(),\n  extendedFields: z\n    .object({\n      namespaces: z\n        .record(z.string(), z.record(z.string(), z.any()))\n        .describe(\n          'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n        )\n        .optional(),\n    })\n    .describe(\n      'Custom field data for the order object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n    )\n    .optional(),\n  purchaseFlowId: z\n    .string()\n    .describe(\n      'Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.'\n    )\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    )\n    .optional()\n    .nullable(),\n  recipientInfo: z\n    .object({\n      address: z\n        .object({\n          streetAddress: z\n            .object({\n              name: z.string().optional(),\n              number: z.string().optional(),\n            })\n            .optional(),\n          city: z.string().optional().nullable(),\n          subdivision: z.string().optional().nullable(),\n          country: z.string().optional().nullable(),\n          postalCode: z.string().optional().nullable(),\n          addressLine2: z.string().optional().nullable(),\n        })\n        .describe('Address.')\n        .optional(),\n      contactDetails: z\n        .object({\n          firstName: z\n            .string()\n            .describe('First name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          lastName: z\n            .string()\n            .describe('Last name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          phone: z.string().describe('Phone number.').optional().nullable(),\n          company: z\n            .string()\n            .describe('Company name.')\n            .max(1000)\n            .optional()\n            .nullable(),\n          vatId: z\n            .object({\n              _id: z.string().describe(\"Customer's tax ID.\").optional(),\n              type: z\n                .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                .describe(\n                  'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                )\n                .optional(),\n            })\n            .describe(\n              'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n            )\n            .optional(),\n        })\n        .describe('Contact details.')\n        .optional(),\n    })\n    .describe(\n      \"Final recipient's address and contact details.\\n\\nThis field represents who will ultimately receive the order. It may differ from `shippingInfo.logistics.shippingDestination` when:\\n+ The chosen shipping option is a pickup point or store pickup, where `shippingDestination` contains the pickup location.\\n+ No shipping option is selected.\"\n    )\n    .optional(),\n  tags: z\n    .object({\n      privateTags: z\n        .object({ tagIds: z.array(z.string()).max(100).optional() })\n        .describe(\n          'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n        )\n        .optional(),\n      tags: z\n        .object({ tagIds: z.array(z.string()).max(100).optional() })\n        .describe(\n          'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n        )\n        .optional(),\n    })\n    .describe(\n      'Order tags.\\n\\n[Tags](https://dev.wix.com/docs/rest/business-management/tags/introduction) are labels attached to entities, allowing for flexible categorization and data management.'\n    )\n    .optional(),\n  purchasedDate: z\n    .date()\n    .describe(\n      'Date and time the order was originally purchased in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.\\nUsed for migration from external systems.'\n    )\n    .optional()\n    .nullable(),\n  businessLocation: z\n    .object({\n      _id: z\n        .string()\n        .describe(\n          'Location ID.\\nLearn more about the [Wix Locations API](https://dev.wix.com/docs/rest/business-management/locations/introduction).'\n        )\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional(),\n      name: z.string().describe('Location name.').min(1).max(500).optional(),\n    })\n    .describe('Order location.')\n    .optional(),\n  payAfterFreeTrial: z\n    .object({\n      subtotal: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Subtotal of all line items, before discounts and before tax.'\n        )\n        .optional(),\n      shipping: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total shipping price, before discounts and before tax.')\n        .optional(),\n      tax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total tax applied to the order.')\n        .optional(),\n      discount: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total discount amount applied to the order.')\n        .optional(),\n      total: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\"Order's total price after discounts and tax.\")\n        .optional(),\n      totalAdditionalFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total additional fees before tax.')\n        .optional(),\n    })\n    .describe(\n      'Pay after free trial price summary. Price summary that should be paid for subscriptions after free trial period.'\n    )\n    .optional(),\n  platformFeeSummary: z\n    .object({\n      total: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total sum of all platform fees.')\n        .optional(),\n      totalPassOn: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total amount of platform fees with `PASS_ON` charge type.')\n        .optional(),\n      totalAbsorbed: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total amount of platform fees with `ABSORBED` charge type.')\n        .optional(),\n      fees: z\n        .array(\n          z.object({\n            name: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                  )\n                  .min(1)\n                  .max(200)\n                  .optional(),\n                translated: z\n                  .string()\n                  .describe(\n                    \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(400)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Platform fee name.')\n              .optional(),\n            amount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Platform fee amount.')\n              .optional(),\n            lineItemId: z\n              .string()\n              .describe('ID of the line item the platform fee applies to.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional(),\n            chargeType: z\n              .enum(['PASS_ON', 'ABSORBED'])\n              .describe('Platform fee charge type.')\n              .optional(),\n            percentageRate: z\n              .string()\n              .describe(\n                'Percentage rate charged as platform fee.\\nThe fee rate percentage expressed as a decimal fraction between 0 and 1. For example, `0.05` for 5%.'\n              )\n              .optional(),\n          })\n        )\n        .max(300)\n        .optional(),\n    })\n    .describe(\n      'Summary of platform fees for this order, including totals by charge type and a breakdown of individual fees.'\n    )\n    .optional(),\n});\nexport const SearchOrdersRequest = z.object({\n  search: z\n    .object({\n      filter: z\n        .object({\n          status: z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          paymentStatus: z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          fulfillmentStatus: z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'shippingInfo.region.name': z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'shippingInfo.title': z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'channelInfo.type': z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          _createdDate: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          _updatedDate: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          number: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'priceSummary.total.amount': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'balanceSummary.authorized.amount': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'balanceSummary.pendingRefund.amount': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'balanceSummary.pending.amount': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'billingInfo.contactDetails.firstName': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'billingInfo.contactDetails.lastName': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'buyerInfo.email': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'shippingInfo.logistics.deliveryTime': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'shippingInfo.logistics.deliveryTimeSlot.from': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'shippingInfo.logistics.deliveryTimeSlot.to': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          purchasedDate: z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'businessLocation._id': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'businessLocation.name': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'taxInfo.totalTax.amount': z\n            .object({\n              $eq: z.string(),\n              $exists: z.boolean(),\n              $gt: z.string(),\n              $gte: z.string(),\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n              $in: z.array(z.string()),\n              $lt: z.string(),\n              $lte: z.string(),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'taxInfo.totalExempt.amount': z\n            .object({\n              $eq: z.any(),\n              $exists: z.boolean(),\n              $gt: z.any(),\n              $gte: z.any(),\n              $hasAll: z.array(z.any()),\n              $hasSome: z.array(z.any()),\n              $in: z.array(z.any()),\n              $lt: z.any(),\n              $lte: z.any(),\n              $ne: z.any(),\n              $nin: z.array(z.any()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          archived: z\n            .object({\n              $eq: z.boolean(),\n              $exists: z.boolean(),\n              $gt: z.boolean(),\n              $gte: z.boolean(),\n              $hasAll: z.array(z.boolean()),\n              $hasSome: z.array(z.boolean()),\n              $in: z.array(z.boolean()),\n              $lt: z.boolean(),\n              $lte: z.boolean(),\n              $ne: z.boolean(),\n              $nin: z.array(z.boolean()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          seenByAHuman: z\n            .object({\n              $eq: z.boolean(),\n              $exists: z.boolean(),\n              $gt: z.boolean(),\n              $gte: z.boolean(),\n              $hasAll: z.array(z.boolean()),\n              $hasSome: z.array(z.boolean()),\n              $in: z.array(z.boolean()),\n              $lt: z.boolean(),\n              $lte: z.boolean(),\n              $ne: z.boolean(),\n              $nin: z.array(z.boolean()),\n              $startsWith: z.string(),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          _id: z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          checkoutId: z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'buyerInfo.memberId': z\n            .object({\n              $eq: z.any(),\n              $in: z.array(z.any()),\n              $ne: z.any(),\n              $nin: z.array(z.any()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'buyerInfo.contactId': z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'channelInfo.externalOrderId': z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'createdBy.userId': z\n            .object({\n              $eq: z.any(),\n              $in: z.array(z.any()),\n              $ne: z.any(),\n              $nin: z.array(z.any()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'lineItems.subscriptionInfo._id': z\n            .object({\n              $eq: z.string(),\n              $in: z.array(z.string()),\n              $ne: z.string(),\n              $nin: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'lineItems.catalogReference.catalogItemId': z\n            .object({\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'lineItems.catalogReference.appId': z\n            .object({\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'lineItems.locations._id': z\n            .object({\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'lineItems.productName.original': z\n            .object({\n              $hasAll: z.array(z.string()),\n              $hasSome: z.array(z.string()),\n            })\n            .partial()\n            .strict()\n            .optional(),\n          'fulfillmentStatusesAggregate.statuses': z\n            .object({ $hasAll: z.array(z.any()), $hasSome: z.array(z.any()) })\n            .partial()\n            .strict()\n            .optional(),\n          $and: z.array(z.any()).optional(),\n          $or: z.array(z.any()).optional(),\n          $not: z.any().optional(),\n        })\n        .strict()\n        .optional(),\n      sort: z\n        .array(\n          z.object({\n            fieldName: z\n              .enum([\n                'status',\n                'paymentStatus',\n                'fulfillmentStatus',\n                'shippingInfo.region.name',\n                'shippingInfo.title',\n                'channelInfo.type',\n                '_createdDate',\n                '_updatedDate',\n                'number',\n                'priceSummary.total.amount',\n                'balanceSummary.authorized.amount',\n                'balanceSummary.pendingRefund.amount',\n                'balanceSummary.pending.amount',\n                'billingInfo.contactDetails.firstName',\n                'billingInfo.contactDetails.lastName',\n                'buyerInfo.email',\n                'shippingInfo.logistics.deliveryTime',\n                'shippingInfo.logistics.deliveryTimeSlot.from',\n                'shippingInfo.logistics.deliveryTimeSlot.to',\n                'purchasedDate',\n                'businessLocation._id',\n                'businessLocation.name',\n                'taxInfo.totalTax.amount',\n                'taxInfo.totalExempt.amount',\n                'lineItems.productName.original',\n                'fulfillmentStatusesAggregate.statuses',\n              ])\n              .optional(),\n            order: z.enum(['ASC', 'DESC']).optional(),\n          })\n        )\n        .optional(),\n    })\n    .catchall(z.any())\n    .describe('Search options.'),\n});\nexport const SearchOrdersResponse = z.object({\n  orders: z\n    .array(\n      z.object({\n        _id: z\n          .string()\n          .describe('Order ID.')\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        number: z\n          .string()\n          .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n          .describe(\n            \"Order number displayed in the site owner's dashboard (auto-generated).\"\n          )\n          .optional(),\n        _createdDate: z\n          .date()\n          .describe(\n            'Date and time the order was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n          )\n          .optional()\n          .nullable(),\n        _updatedDate: z\n          .date()\n          .describe(\n            'Date and time the order was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n          )\n          .optional()\n          .nullable(),\n        lineItems: z\n          .array(\n            z.object({\n              _id: z.string().describe('Line item ID.').optional(),\n              productName: z\n                .object({\n                  original: z\n                    .string()\n                    .describe(\n                      \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                    )\n                    .min(1)\n                    .max(200)\n                    .optional(),\n                  translated: z\n                    .string()\n                    .describe(\n                      \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                    )\n                    .min(1)\n                    .max(400)\n                    .optional()\n                    .nullable(),\n                })\n                .describe(\n                  'Item name.\\n\\n+ Stores - `product.name`\\n+ Bookings - `service.info.name`\\n+ Events - `ticket.name`'\n                )\n                .optional(),\n              catalogReference: z\n                .object({\n                  catalogItemId: z\n                    .string()\n                    .describe(\n                      'ID of the item within the catalog it belongs to.'\n                    )\n                    .min(1)\n                    .max(36)\n                    .optional(),\n                  appId: z\n                    .string()\n                    .describe(\n                      'ID of the app providing the catalog.\\n\\nYou can get your app\\'s ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\\n\\nFor items from Wix catalogs, the following values always apply:\\n+ Wix Stores: `\"215238eb-22a5-4c36-9e7b-e7c08025e04e\"`\\n+ Wix Bookings: `\"13d21c63-b5ec-5912-8397-c3a5ddb27a97\"`\\n+ Wix Restaurants: `\"9a5d83fd-8570-482e-81ab-cfa88942ee60\"`'\n                    )\n                    .min(1)\n                    .optional(),\n                  options: z\n                    .record(z.string(), z.any())\n                    .describe(\n                      'Additional item details in `key:value` pairs.\\n\\nUse this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items.\\n\\nFor Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration)\\nor [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction).'\n                    )\n                    .optional()\n                    .nullable(),\n                })\n                .describe(\n                  \"References to the line item's origin catalog. Empty for custom line items.\"\n                )\n                .optional(),\n              quantity: z\n                .number()\n                .int()\n                .describe('Line item quantity.')\n                .min(1)\n                .max(100000)\n                .optional(),\n              totalDiscount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  \"Total discount for this line item's entire quantity.\"\n                )\n                .optional(),\n              descriptionLines: z\n                .array(\n                  z.intersection(\n                    z.object({\n                      name: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                            )\n                            .max(100)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"Description line name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                            )\n                            .max(200)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Description line name.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        plainText: z.never().optional(),\n                        colorInfo: z.never().optional(),\n                      }),\n                      z.object({\n                        colorInfo: z.never().optional(),\n                        plainText: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                              )\n                              .max(600)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"Description line plain text value translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                              )\n                              .max(600)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Description line plain text value.'),\n                      }),\n                      z.object({\n                        plainText: z.never().optional(),\n                        colorInfo: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                              )\n                              .max(500)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"Description line color name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                              )\n                              .max(500)\n                              .optional()\n                              .nullable(),\n                            code: z\n                              .string()\n                              .describe('HEX or RGB color code for display.')\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Description line color value.'),\n                      }),\n                    ])\n                  )\n                )\n                .min(0)\n                .max(20)\n                .optional(),\n              image: z.string().describe('Line item image.').optional(),\n              physicalProperties: z\n                .object({\n                  weight: z\n                    .number()\n                    .describe(\n                      'Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request.'\n                    )\n                    .optional()\n                    .nullable(),\n                  sku: z\n                    .string()\n                    .describe(\n                      'Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).'\n                    )\n                    .max(40)\n                    .optional()\n                    .nullable(),\n                  shippable: z\n                    .boolean()\n                    .describe('Whether this line item is shippable.')\n                    .optional(),\n                })\n                .describe(\n                  'Physical properties of the item. When relevant, contains information such as SKU and item weight.'\n                )\n                .optional(),\n              itemType: z\n                .intersection(\n                  z.object({}),\n                  z.xor([\n                    z.object({\n                      preset: z.never().optional(),\n                      custom: z.never().optional(),\n                    }),\n                    z.object({\n                      custom: z.never().optional(),\n                      preset: z\n                        .enum([\n                          'UNRECOGNISED',\n                          'PHYSICAL',\n                          'DIGITAL',\n                          'GIFT_CARD',\n                          'SERVICE',\n                        ])\n                        .describe('Preset item type.'),\n                    }),\n                    z.object({\n                      preset: z.never().optional(),\n                      custom: z\n                        .string()\n                        .describe(\n                          'Custom item type. When none of the preset types are suitable, specifies the custom type.'\n                        ),\n                    }),\n                  ])\n                )\n                .describe('Item type. Either a preset type or custom.')\n                .optional(),\n              fulfillerId: z\n                .string()\n                .describe(\n                  'Fulfiller ID. Field is empty when the line item is self-fulfilled.\\nTo get fulfillment information, pass the order ID to [List Fulfillments For Single Order](https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/order-fulfillments/list-fulfillments-for-single-order).'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              refundQuantity: z\n                .number()\n                .int()\n                .describe('Number of items that were refunded.')\n                .min(0)\n                .max(100000)\n                .optional()\n                .nullable(),\n              restockQuantity: z\n                .number()\n                .int()\n                .describe(\n                  'Number of items restocked.\\n\\nFor a per-location breakdown, see `restockLocations`.'\n                )\n                .min(0)\n                .max(100000)\n                .optional()\n                .nullable(),\n              price: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Line item price after line item discounts for display purposes.'\n                )\n                .optional(),\n              priceBeforeDiscounts: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Line item price before line item discounts for display purposes. Defaults to `price` when not provided.'\n                )\n                .optional(),\n              totalPriceBeforeTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Total price after discounts, and before tax.')\n                .optional(),\n              totalPriceAfterTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Total price after all discounts and tax.')\n                .optional(),\n              paymentOption: z\n                .enum([\n                  'FULL_PAYMENT_ONLINE',\n                  'FULL_PAYMENT_OFFLINE',\n                  'MEMBERSHIP',\n                  'DEPOSIT_ONLINE',\n                  'MEMBERSHIP_OFFLINE',\n                  'MEMBERSHIP_ONLINE_WITH_OFFLINE_REMAINDER',\n                ])\n                .describe(\n                  'Type of selected payment option for current item.\\n\\nDefault: `FULL_PAYMENT_ONLINE`'\n                )\n                .optional(),\n              taxDetails: z\n                .object({\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of this line item.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe(\n                      'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                    )\n                    .optional(),\n                  totalTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                    )\n                    .optional(),\n                })\n                .describe(\n                  'Deprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.\\nTax details for this line item.'\n                )\n                .optional(),\n              taxInfo: z\n                .object({\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                    )\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount for which tax is calculated.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe('Tax rate %, as a decimal point.')\n                    .optional()\n                    .nullable(),\n                  taxGroupId: z\n                    .string()\n                    .describe('Tax group ID.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxIncludedInPrice: z\n                    .boolean()\n                    .describe(\n                      'Indicates whether the price already includes tax.'\n                    )\n                    .optional(),\n                  taxBreakdown: z\n                    .array(\n                      z.object({\n                        jurisdiction: z\n                          .string()\n                          .describe(\n                            'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        rate: z\n                          .string()\n                          .describe(\n                            'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                          )\n                          .optional()\n                          .nullable(),\n                        taxAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Amount of tax calculated for this line item.'\n                          )\n                          .optional(),\n                        taxType: z\n                          .string()\n                          .describe(\n                            'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        taxName: z\n                          .string()\n                          .describe(\n                            'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        jurisdictionType: z\n                          .enum([\n                            'UNDEFINED',\n                            'COUNTRY',\n                            'STATE',\n                            'COUNTY',\n                            'CITY',\n                            'SPECIAL',\n                          ])\n                          .describe(\n                            'Type of jurisdiction that taxes were calculated for.'\n                          )\n                          .optional(),\n                        nonTaxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Non-taxable amount of the line item price.'\n                          )\n                          .optional(),\n                        taxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Taxable amount of the line item price.')\n                          .optional(),\n                      })\n                    )\n                    .max(7)\n                    .optional(),\n                })\n                .describe(\n                  'Represents all the relevant tax details for a specific line item.'\n                )\n                .optional(),\n              digitalFile: z\n                .object({\n                  fileId: z\n                    .string()\n                    .describe('ID of the secure file in media.')\n                    .min(1)\n                    .max(100)\n                    .optional(),\n                  link: z\n                    .string()\n                    .describe(\n                      'Link will exist after the digital links have been generated on the order.'\n                    )\n                    .url()\n                    .min(1)\n                    .max(2000)\n                    .optional()\n                    .nullable(),\n                  expirationDate: z\n                    .date()\n                    .describe('Link expiration time and date.')\n                    .optional()\n                    .nullable(),\n                })\n                .describe(\n                  'Digital file identifier, relevant only for items with type DIGITAL.'\n                )\n                .optional(),\n              subscriptionInfo: z\n                .object({\n                  _id: z\n                    .string()\n                    .describe('Subscription ID.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  cycleNumber: z\n                    .number()\n                    .int()\n                    .describe(\n                      'Subscription cycle. For example, if this order is for the 3rd cycle of a subscription, value will be `3`.'\n                    )\n                    .min(0)\n                    .optional(),\n                  subscriptionOptionTitle: z\n                    .string()\n                    .describe(\n                      'Subscription option title. For example, `\"Monthly coffee Subscription\"`.'\n                    )\n                    .min(0)\n                    .max(150)\n                    .optional(),\n                  subscriptionOptionDescription: z\n                    .string()\n                    .describe(\n                      'Subscription option description. For example, `\"1kg of selected coffee, once a month\"`.'\n                    )\n                    .max(500)\n                    .optional()\n                    .nullable(),\n                  subscriptionSettings: z\n                    .object({\n                      frequency: z\n                        .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                        .describe('Frequency of recurring payment.')\n                        .optional(),\n                      interval: z\n                        .number()\n                        .int()\n                        .describe(\n                          'Number of frequency units in a billing cycle. For example, frequency `MONTH` with interval `3` means billing every 3 months.'\n                        )\n                        .min(1)\n                        .max(3650)\n                        .optional()\n                        .nullable(),\n                      autoRenewal: z\n                        .boolean()\n                        .describe(\n                          'Whether subscription is renewed automatically at the end of each period.'\n                        )\n                        .optional(),\n                      billingCycles: z\n                        .number()\n                        .int()\n                        .describe(\n                          'Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.'\n                        )\n                        .min(1)\n                        .optional()\n                        .nullable(),\n                      enableCustomerCancellation: z\n                        .boolean()\n                        .describe(\n                          'Whether to allow the customer to cancel the subscription.'\n                        )\n                        .optional(),\n                      freeTrialPeriod: z\n                        .object({\n                          frequency: z\n                            .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                            .describe(\n                              'Frequency of period. Values: DAY, WEEK, MONTH, YEAR'\n                            )\n                            .optional(),\n                          interval: z\n                            .number()\n                            .int()\n                            .describe(\n                              'Number of frequency units in the free trial period. For example, frequency `MONTH` with interval `3` means a 3-month free trial.'\n                            )\n                            .min(1)\n                            .max(3650)\n                            .optional(),\n                        })\n                        .describe(\n                          'Period until first cycle starts. If None => no free trial'\n                        )\n                        .optional(),\n                    })\n                    .describe('Subscription detailed information.')\n                    .optional(),\n                  chargesDescription: z\n                    .string()\n                    .describe(\n                      'Description of the charges that will be applied for subscription.'\n                    )\n                    .max(1000)\n                    .optional()\n                    .nullable(),\n                })\n                .describe('Subscription info.')\n                .optional(),\n              priceDescription: z\n                .object({\n                  original: z\n                    .string()\n                    .describe(\n                      \"__Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                    )\n                    .min(1)\n                    .max(100)\n                    .optional(),\n                  translated: z\n                    .string()\n                    .describe(\n                      \"Price description translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                    )\n                    .min(1)\n                    .max(100)\n                    .optional()\n                    .nullable(),\n                })\n                .describe(\n                  'Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - \"Starts at $67\".'\n                )\n                .optional(),\n              depositAmount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Item\\'s price amount to be charged during checkout. Relevant for items with a `paymentOption` value of `\"DEPOSIT_ONLINE\"`.'\n                )\n                .optional(),\n              locations: z\n                .array(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Location id in the associated owner app.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    appId: z\n                      .string()\n                      .describe(\n                        'Location owner app, if not provided then the site business info locations will be used.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional()\n                      .nullable(),\n                    quantity: z\n                      .number()\n                      .int()\n                      .describe('Quantity for specific location.')\n                      .min(1)\n                      .max(100000)\n                      .optional(),\n                    name: z\n                      .string()\n                      .describe('Location name.')\n                      .max(500)\n                      .optional()\n                      .nullable(),\n                  })\n                )\n                .min(0)\n                .max(5)\n                .optional(),\n              lineItemPrice: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Total price **after** catalog discounts and line item discounts.'\n                )\n                .optional(),\n              taxableAddress: z\n                .intersection(\n                  z.object({}),\n                  z.xor([\n                    z.object({ addressType: z.never().optional() }),\n                    z.object({\n                      addressType: z\n                        .enum(['BUSINESS', 'BILLING', 'SHIPPING'])\n                        .describe(\n                          'taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly.'\n                        ),\n                    }),\n                  ])\n                )\n                .describe('Address used for tax calculation.')\n                .optional(),\n              priceUndetermined: z\n                .boolean()\n                .describe(\n                  'Whether the price is not yet defined, and will be updated after the order is created.\\n\\nDefault: `false`'\n                )\n                .optional(),\n              extendedFields: z\n                .object({\n                  namespaces: z\n                    .record(z.string(), z.record(z.string(), z.any()))\n                    .describe(\n                      'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n                    )\n                    .optional(),\n                })\n                .describe(\n                  'Custom extended fields for the line item object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n                )\n                .optional(),\n              modifierGroups: z\n                .array(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Modifier group ID.')\n                      .min(1)\n                      .max(36)\n                      .optional(),\n                    name: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                          )\n                          .min(1)\n                          .max(200)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                          )\n                          .min(1)\n                          .max(400)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Modifier group name.')\n                      .optional(),\n                    modifiers: z\n                      .array(\n                        z.object({\n                          _id: z\n                            .string()\n                            .describe('Modifier ID.')\n                            .min(1)\n                            .max(36)\n                            .optional(),\n                          quantity: z\n                            .number()\n                            .int()\n                            .describe('The quantity of this modifier.')\n                            .min(1)\n                            .max(100000)\n                            .optional()\n                            .nullable(),\n                          label: z\n                            .object({\n                              original: z\n                                .string()\n                                .describe(\n                                  \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                )\n                                .min(1)\n                                .max(200)\n                                .optional(),\n                              translated: z\n                                .string()\n                                .describe(\n                                  \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                )\n                                .min(1)\n                                .max(400)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Primary display label for the modifier.')\n                            .optional(),\n                          details: z\n                            .object({\n                              original: z\n                                .string()\n                                .describe(\n                                  \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                )\n                                .min(1)\n                                .max(200)\n                                .optional(),\n                              translated: z\n                                .string()\n                                .describe(\n                                  \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                )\n                                .min(1)\n                                .max(400)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Additional details.')\n                            .optional(),\n                          price: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('The price of the modifier.')\n                            .optional(),\n                        })\n                      )\n                      .min(1)\n                      .max(10)\n                      .optional(),\n                  })\n                )\n                .max(10)\n                .optional(),\n            })\n          )\n          .min(1)\n          .max(300)\n          .optional(),\n        buyerInfo: z\n          .intersection(\n            z.object({\n              contactId: z\n                .string()\n                .describe(\n                  \"Contact ID. Automatically created if one doesn't exist. For more information, see [Contacts API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts/contact-v4/introduction).\"\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              email: z\n                .string()\n                .describe(\"Buyer's email address.\")\n                .email()\n                .optional()\n                .nullable(),\n            }),\n            z.xor([\n              z.object({\n                visitorId: z.never().optional(),\n                memberId: z.never().optional(),\n              }),\n              z.object({\n                memberId: z.never().optional(),\n                visitorId: z\n                  .string()\n                  .describe(\n                    \"Visitor ID. Returned when the buyer isn't a logged-in site member.\"\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  ),\n              }),\n              z.object({\n                visitorId: z.never().optional(),\n                memberId: z\n                  .string()\n                  .describe(\n                    'Member ID. Returned when the buyer is a logged-in site member.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  ),\n              }),\n            ])\n          )\n          .describe('Buyer information.')\n          .optional(),\n        paymentStatus: z\n          .enum([\n            'UNSPECIFIED',\n            'NOT_PAID',\n            'PAID',\n            'PARTIALLY_REFUNDED',\n            'FULLY_REFUNDED',\n            'PENDING',\n            'PARTIALLY_PAID',\n            'PENDING_MERCHANT',\n            'CANCELED',\n            'DECLINED',\n          ])\n          .describe('Order payment status.')\n          .optional(),\n        fulfillmentStatus: z\n          .enum(['NOT_FULFILLED', 'FULFILLED', 'PARTIALLY_FULFILLED'])\n          .describe('Order fulfillment status.')\n          .optional(),\n        buyerLanguage: z\n          .string()\n          .describe(\n            'Language for communication with the buyer. Defaults to the site language.\\nFor a site that supports multiple languages, this is the language the buyer selected.'\n          )\n          .optional()\n          .nullable(),\n        weightUnit: z\n          .enum(['UNSPECIFIED_WEIGHT_UNIT', 'KG', 'LB'])\n          .describe(\"Weight measurement unit - defaults to site's weight unit.\")\n          .optional(),\n        currency: z\n          .string()\n          .describe(\n            'Currency used for the pricing of this order in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.'\n          )\n          .optional()\n          .nullable(),\n        currencyConversionDetails: z\n          .object({\n            originalCurrency: z\n              .string()\n              .describe(\n                \"Currency used for the pricing of this order, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.\\n\\nThis currency is used to calculate the pricing before conversion to the buyer's payment currency.\"\n              )\n              .optional()\n              .nullable(),\n            conversionRate: z\n              .string()\n              .describe(\n                'The rate used for converting the original currency to the currency used for payment.'\n              )\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Currency conversion details. For use with multi-currency sites.'\n          )\n          .optional(),\n        taxIncludedInPrices: z\n          .boolean()\n          .describe('Whether tax is included in line item prices.')\n          .optional(),\n        siteLanguage: z\n          .string()\n          .describe('Site language in which original values are shown.')\n          .optional()\n          .nullable(),\n        priceSummary: z\n          .object({\n            subtotal: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Subtotal of all line items, before discounts and before tax.'\n              )\n              .optional(),\n            shipping: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Total shipping price, before discounts and before tax.'\n              )\n              .optional(),\n            tax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total tax applied to the order.')\n              .optional(),\n            discount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total discount amount applied to the order.')\n              .optional(),\n            total: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Order's total price after discounts and tax.\")\n              .optional(),\n            totalAdditionalFees: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total additional fees before tax.')\n              .optional(),\n          })\n          .describe('Order price summary.')\n          .optional(),\n        billingInfo: z\n          .object({\n            address: z\n              .object({\n                streetAddress: z\n                  .object({\n                    name: z.string().optional(),\n                    number: z.string().optional(),\n                  })\n                  .optional(),\n                city: z.string().optional().nullable(),\n                subdivision: z.string().optional().nullable(),\n                country: z.string().optional().nullable(),\n                postalCode: z.string().optional().nullable(),\n                addressLine2: z.string().optional().nullable(),\n              })\n              .describe('Address.')\n              .optional(),\n            contactDetails: z\n              .object({\n                firstName: z\n                  .string()\n                  .describe('First name.')\n                  .max(100)\n                  .optional()\n                  .nullable(),\n                lastName: z\n                  .string()\n                  .describe('Last name.')\n                  .max(100)\n                  .optional()\n                  .nullable(),\n                phone: z\n                  .string()\n                  .describe('Phone number.')\n                  .optional()\n                  .nullable(),\n                company: z\n                  .string()\n                  .describe('Company name.')\n                  .max(1000)\n                  .optional()\n                  .nullable(),\n                vatId: z\n                  .object({\n                    _id: z.string().describe(\"Customer's tax ID.\").optional(),\n                    type: z\n                      .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                      .describe(\n                        'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                      )\n                      .optional(),\n                  })\n                  .describe(\n                    'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                  )\n                  .optional(),\n              })\n              .describe('Contact details.')\n              .optional(),\n          })\n          .describe('Billing address and contact details.')\n          .optional(),\n        shippingInfo: z\n          .object({\n            carrierId: z\n              .string()\n              .describe(\n                'App Def Id of external provider which was a source of shipping info'\n              )\n              .min(1)\n              .max(100)\n              .optional()\n              .nullable(),\n            code: z\n              .string()\n              .describe(\n                'Unique code (or ID) of selected shipping option. For example, `\"usps_std_overnight\"`.'\n              )\n              .min(1)\n              .max(100)\n              .optional()\n              .nullable(),\n            title: z\n              .string()\n              .describe(\n                'Shipping option title.\\nFor example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.'\n              )\n              .max(250)\n              .optional(),\n            logistics: z\n              .intersection(\n                z.object({\n                  deliveryTime: z\n                    .string()\n                    .describe(\n                      'Expected delivery time in free text. For example, `\"3-5 business days\"`.'\n                    )\n                    .max(500)\n                    .optional()\n                    .nullable(),\n                  instructions: z\n                    .string()\n                    .describe(\n                      'Instructions for the carrier. For example, `\"Please knock on the door. If unanswered, please call contact number.\"`.'\n                    )\n                    .max(1000)\n                    .optional()\n                    .nullable(),\n                  deliverByDate: z\n                    .date()\n                    .describe(\n                      'Deprecated - Latest expected delivery date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                    )\n                    .optional()\n                    .nullable(),\n                  deliveryTimeSlot: z\n                    .object({\n                      from: z\n                        .date()\n                        .describe('Delivery slot starting time.')\n                        .optional()\n                        .nullable(),\n                      to: z\n                        .date()\n                        .describe('Delivery slot ending time.')\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      'Expected delivery time slot with start and end times.'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({\n                    shippingDestination: z.never().optional(),\n                    pickupDetails: z.never().optional(),\n                  }),\n                  z.object({\n                    pickupDetails: z.never().optional(),\n                    shippingDestination: z\n                      .object({\n                        address: z\n                          .object({\n                            streetAddress: z\n                              .object({\n                                name: z.string().optional(),\n                                number: z.string().optional(),\n                              })\n                              .optional(),\n                            city: z.string().optional().nullable(),\n                            subdivision: z.string().optional().nullable(),\n                            country: z.string().optional().nullable(),\n                            postalCode: z.string().optional().nullable(),\n                            addressLine2: z.string().optional().nullable(),\n                          })\n                          .describe('Address.')\n                          .optional(),\n                        contactDetails: z\n                          .object({\n                            firstName: z\n                              .string()\n                              .describe('First name.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            lastName: z\n                              .string()\n                              .describe('Last name.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            phone: z\n                              .string()\n                              .describe('Phone number.')\n                              .optional()\n                              .nullable(),\n                            company: z\n                              .string()\n                              .describe('Company name.')\n                              .max(1000)\n                              .optional()\n                              .nullable(),\n                            vatId: z\n                              .object({\n                                _id: z\n                                  .string()\n                                  .describe(\"Customer's tax ID.\")\n                                  .optional(),\n                                type: z\n                                  .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                                  .describe(\n                                    'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Contact details.')\n                          .optional(),\n                      })\n                      .describe(\n                        \"Shipping destination address and contact details. For pickup orders, this contains the pickup location address, not the recipient's address.\"\n                      ),\n                  }),\n                  z.object({\n                    shippingDestination: z.never().optional(),\n                    pickupDetails: z\n                      .object({\n                        address: z\n                          .object({\n                            streetAddress: z\n                              .object({\n                                name: z.string().optional(),\n                                number: z.string().optional(),\n                              })\n                              .optional(),\n                            city: z.string().optional().nullable(),\n                            subdivision: z.string().optional().nullable(),\n                            country: z.string().optional().nullable(),\n                            postalCode: z.string().optional().nullable(),\n                            addressLine2: z.string().optional().nullable(),\n                          })\n                          .describe('Pickup address.')\n                          .optional(),\n                        pickupMethod: z\n                          .enum(['STORE_PICKUP', 'PICKUP_POINT'])\n                          .describe('Pickup method')\n                          .optional(),\n                      })\n                      .describe(\n                        'Pickup details for store pickup or pickup point orders.'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Shipping logistics.')\n              .optional(),\n            cost: z\n              .object({\n                price: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Shipping price for display purposes.')\n                  .optional(),\n                totalPriceBeforeTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total price of shipping after discounts (when relevant), and before tax.'\n                  )\n                  .optional(),\n                totalPriceAfterTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Shipping price after all discounts (if any exist), and after tax.'\n                  )\n                  .optional(),\n                taxDetails: z\n                  .object({\n                    taxableAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Taxable amount of this line item.')\n                      .optional(),\n                    taxRate: z\n                      .string()\n                      .describe(\n                        'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                      )\n                      .optional(),\n                    totalTax: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe(\n                        'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                      )\n                      .optional(),\n                  })\n                  .describe('Tax details.')\n                  .optional(),\n                taxInfo: z\n                  .object({\n                    taxAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe(\n                        'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                      )\n                      .optional(),\n                    taxableAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Amount for which tax is calculated.')\n                      .optional(),\n                    taxRate: z\n                      .string()\n                      .describe('Tax rate %, as a decimal point.')\n                      .optional()\n                      .nullable(),\n                    taxGroupId: z\n                      .string()\n                      .describe('Tax group ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional()\n                      .nullable(),\n                    taxIncludedInPrice: z\n                      .boolean()\n                      .describe(\n                        'Indicates whether the price already includes tax.'\n                      )\n                      .optional(),\n                    taxBreakdown: z\n                      .array(\n                        z.object({\n                          jurisdiction: z\n                            .string()\n                            .describe(\n                              'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                            )\n                            .max(200)\n                            .optional()\n                            .nullable(),\n                          rate: z\n                            .string()\n                            .describe(\n                              'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                            )\n                            .optional()\n                            .nullable(),\n                          taxAmount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe(\n                              'Amount of tax calculated for this line item.'\n                            )\n                            .optional(),\n                          taxType: z\n                            .string()\n                            .describe(\n                              'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                            )\n                            .max(200)\n                            .optional()\n                            .nullable(),\n                          taxName: z\n                            .string()\n                            .describe(\n                              'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                            )\n                            .max(200)\n                            .optional()\n                            .nullable(),\n                          jurisdictionType: z\n                            .enum([\n                              'UNDEFINED',\n                              'COUNTRY',\n                              'STATE',\n                              'COUNTY',\n                              'CITY',\n                              'SPECIAL',\n                            ])\n                            .describe(\n                              'Type of jurisdiction that taxes were calculated for.'\n                            )\n                            .optional(),\n                          nonTaxableAmount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe(\n                              'Non-taxable amount of the line item price.'\n                            )\n                            .optional(),\n                          taxableAmount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Taxable amount of the line item price.')\n                            .optional(),\n                        })\n                      )\n                      .max(7)\n                      .optional(),\n                  })\n                  .describe(\n                    'Represents all the relevant tax details for a shipping.'\n                  )\n                  .optional(),\n                discount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Shipping discount before tax.')\n                  .optional(),\n              })\n              .describe('Shipping costs.')\n              .optional(),\n            region: z\n              .object({\n                name: z\n                  .string()\n                  .describe(\n                    'Name of shipping region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.'\n                  )\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Shipping region.')\n              .optional(),\n          })\n          .describe('Shipping info and selected shipping option details.')\n          .optional(),\n        buyerNote: z\n          .string()\n          .describe(\n            '[Buyer note](https://support.wix.com/en/article/wix-stores-viewing-buyer-notes) left by the customer.'\n          )\n          .max(1000)\n          .optional()\n          .nullable(),\n        status: z\n          .enum(['INITIALIZED', 'APPROVED', 'CANCELED', 'PENDING', 'REJECTED'])\n          .describe('Order status.')\n          .optional(),\n        archived: z\n          .boolean()\n          .describe('Whether order is archived.')\n          .optional()\n          .nullable(),\n        taxSummary: z\n          .object({\n            totalTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total tax.')\n              .optional(),\n          })\n          .describe(\n            'Tax summary.\\nDeprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.'\n          )\n          .optional(),\n        taxInfo: z\n          .object({\n            totalTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Calculated tax, added from line items.')\n              .optional(),\n            taxBreakdown: z\n              .array(\n                z.object({\n                  taxName: z\n                    .string()\n                    .describe(\n                      'The name of the tax against which this tax amount was calculated.'\n                    )\n                    .max(200)\n                    .optional(),\n                  taxType: z\n                    .string()\n                    .describe(\n                      \"The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.\"\n                    )\n                    .max(200)\n                    .optional(),\n                  jurisdiction: z\n                    .string()\n                    .describe(\n                      'The name of the jurisdiction in which this tax detail applies.'\n                    )\n                    .max(200)\n                    .optional(),\n                  jurisdictionType: z\n                    .enum([\n                      'UNDEFINED',\n                      'COUNTRY',\n                      'STATE',\n                      'COUNTY',\n                      'CITY',\n                      'SPECIAL',\n                    ])\n                    .describe(\n                      'The type of the jurisdiction in which this tax detail applies (e.g. Country,State,County,City,Special).'\n                    )\n                    .optional(),\n                  rate: z\n                    .string()\n                    .describe(\n                      'The rate at which this tax detail was calculated.'\n                    )\n                    .optional(),\n                  aggregatedTaxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'The sum of all the tax from line items that calculated by the tax identifiers.'\n                    )\n                    .optional(),\n                })\n              )\n              .min(0)\n              .max(50)\n              .optional(),\n            taxExempt: z\n              .boolean()\n              .describe(\n                'Whether the order is exempt from tax calculations.\\n\\nDefault: `false`'\n              )\n              .optional()\n              .nullable(),\n          })\n          .describe('Tax information.')\n          .optional(),\n        appliedDiscounts: z\n          .array(\n            z.intersection(\n              z.object({\n                discountType: z\n                  .enum(['GLOBAL', 'SPECIFIC_ITEMS', 'SHIPPING'])\n                  .optional(),\n                lineItemIds: z.array(z.string()).min(0).max(300).optional(),\n                _id: z\n                  .string()\n                  .describe('Discount ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                lineItemDiscounts: z\n                  .array(\n                    z.object({\n                      _id: z\n                        .string()\n                        .describe('Line item ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      totalDiscount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Total discount amount for this line item.')\n                        .optional(),\n                    })\n                  )\n                  .max(300)\n                  .optional(),\n              }),\n              z.xor([\n                z.object({\n                  coupon: z.never().optional(),\n                  merchantDiscount: z.never().optional(),\n                  discountRule: z.never().optional(),\n                }),\n                z.object({\n                  merchantDiscount: z.never().optional(),\n                  discountRule: z.never().optional(),\n                  coupon: z\n                    .object({\n                      _id: z.string().describe('Coupon ID.').optional(),\n                      code: z.string().describe('Coupon code.').optional(),\n                      name: z.string().describe('Coupon name.').optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Coupon value.')\n                        .optional(),\n                    })\n                    .describe('Coupon applied by the customer.'),\n                }),\n                z.object({\n                  coupon: z.never().optional(),\n                  discountRule: z.never().optional(),\n                  merchantDiscount: z\n                    .intersection(\n                      z.object({\n                        amount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Discount amount.')\n                          .optional(),\n                      }),\n                      z.xor([\n                        z.object({\n                          discountReason: z.never().optional(),\n                          description: z.never().optional(),\n                        }),\n                        z.object({\n                          description: z.never().optional(),\n                          discountReason: z\n                            .enum([\n                              'UNSPECIFIED',\n                              'EXCHANGED_ITEMS',\n                              'BILLING_ADJUSTMENT',\n                            ])\n                            .describe('Predefined discount reason.'),\n                        }),\n                        z.object({\n                          discountReason: z.never().optional(),\n                          description: z\n                            .string()\n                            .describe(\n                              'Custom discount description as free text.'\n                            )\n                            .max(200),\n                        }),\n                      ])\n                    )\n                    .describe('Discount applied manually by the merchant.'),\n                }),\n                z.object({\n                  coupon: z.never().optional(),\n                  merchantDiscount: z.never().optional(),\n                  discountRule: z\n                    .object({\n                      _id: z\n                        .string()\n                        .describe('Discount rule ID')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      name: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"Original discount rule name (in site's default language).\"\n                            )\n                            .min(1)\n                            .max(256)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              'Translated discount rule name according to buyer language. Defaults to `original` when not provided.'\n                            )\n                            .min(1)\n                            .max(500)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Discount rule name')\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Discount value.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Automatic discount applied by the system based on configured discount rules.'\n                    ),\n                }),\n              ])\n            )\n          )\n          .max(320)\n          .optional(),\n        activities: z\n          .array(\n            z.intersection(\n              z.object({\n                _id: z\n                  .string()\n                  .describe('Activity ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                authorEmail: z\n                  .string()\n                  .describe(\"Activity author's email.\")\n                  .email()\n                  .optional()\n                  .nullable(),\n                _createdDate: z\n                  .date()\n                  .describe('Activity creation date and time.')\n                  .optional()\n                  .nullable(),\n                type: z\n                  .enum([\n                    'ORDER_REFUNDED',\n                    'ORDER_PLACED',\n                    'ORDER_PAID',\n                    'ORDER_FULFILLED',\n                    'ORDER_NOT_FULFILLED',\n                    'ORDER_CANCELED',\n                    'DOWNLOAD_LINK_SENT',\n                    'TRACKING_NUMBER_ADDED',\n                    'TRACKING_NUMBER_EDITED',\n                    'TRACKING_LINK_ADDED',\n                    'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                    'INVOICE_ADDED',\n                    'INVOICE_REMOVED',\n                    'INVOICE_SENT',\n                    'FULFILLER_EMAIL_SENT',\n                    'SHIPPING_ADDRESS_EDITED',\n                    'EMAIL_EDITED',\n                    'PICKUP_READY_EMAIL_SENT',\n                    'CUSTOM_ACTIVITY',\n                    'MERCHANT_COMMENT',\n                    'ORDER_PARTIALLY_PAID',\n                    'DRAFT_ORDER_CHANGES_APPLIED',\n                    'SAVED_PAYMENT_METHOD',\n                    'AUTHORIZED_PAYMENT_CREATED',\n                    'AUTHORIZED_PAYMENT_CAPTURED',\n                    'AUTHORIZED_PAYMENT_VOIDED',\n                    'REFUND_INITIATED',\n                    'PAYMENT_REFUNDED',\n                    'PAYMENT_REFUND_FAILED',\n                    'REFUNDED_AS_STORE_CREDIT',\n                    'PAYMENT_PENDING',\n                    'PAYMENT_CANCELED',\n                    'PAYMENT_DECLINED',\n                    'ORDER_PENDING',\n                    'ORDER_REJECTED',\n                    'RECEIPT_CREATED',\n                    'RECEIPT_SENT',\n                    'CHARGEBACK_CREATED',\n                    'CHARGEBACK_REVERSED',\n                  ])\n                  .describe('Activity type.')\n                  .optional(),\n                activityType: z\n                  .enum([\n                    'ORDER_PLACED',\n                    'ORDER_PAID',\n                    'ORDER_FULFILLED',\n                    'ORDER_NOT_FULFILLED',\n                    'ORDER_CANCELED',\n                    'DOWNLOAD_LINK_SENT',\n                    'TRACKING_NUMBER_ADDED',\n                    'TRACKING_NUMBER_EDITED',\n                    'TRACKING_LINK_ADDED',\n                    'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                    'INVOICE_ADDED',\n                    'INVOICE_REMOVED',\n                    'INVOICE_SENT',\n                    'FULFILLER_EMAIL_SENT',\n                    'SHIPPING_ADDRESS_EDITED',\n                    'EMAIL_EDITED',\n                    'PICKUP_READY_EMAIL_SENT',\n                    'MERCHANT_COMMENT',\n                    'ORDER_PARTIALLY_PAID',\n                    'DRAFT_ORDER_CHANGES_APPLIED',\n                    'SAVED_PAYMENT_METHOD',\n                    'AUTHORIZED_PAYMENT_CREATED',\n                    'AUTHORIZED_PAYMENT_CAPTURED',\n                    'AUTHORIZED_PAYMENT_VOIDED',\n                    'REFUND_INITIATED',\n                    'PAYMENT_REFUNDED',\n                    'PAYMENT_REFUND_FAILED',\n                    'REFUNDED_AS_STORE_CREDIT',\n                    'PAYMENT_PENDING',\n                    'PAYMENT_CANCELED',\n                    'PAYMENT_DECLINED',\n                    'ORDER_PENDING',\n                    'ORDER_REJECTED',\n                    'RECEIPT_CREATED',\n                    'RECEIPT_SENT',\n                    'CHARGEBACK_CREATED',\n                    'CHARGEBACK_REVERSED',\n                    'ORDER_REFUNDED',\n                  ])\n                  .describe('Activity type.')\n                  .optional(),\n              }),\n              z.xor([\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                }),\n                z.object({\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  merchantComment: z\n                    .object({\n                      message: z\n                        .string()\n                        .describe('Merchant comment message.')\n                        .min(1)\n                        .max(5000)\n                        .optional(),\n                    })\n                    .describe(\n                      'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n                    ),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  orderRefunded: z\n                    .object({\n                      manual: z\n                        .boolean()\n                        .describe(\n                          'Whether order was refunded manually. For example, via payment provider or using cash.'\n                        )\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Refund amount.')\n                        .optional(),\n                      reason: z\n                        .string()\n                        .describe('Reason for refund.')\n                        .max(200)\n                        .optional(),\n                    })\n                    .describe(\n                      'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n                    ),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  draftOrderChangesApplied: z\n                    .object({\n                      draftOrderId: z\n                        .string()\n                        .describe('Draft order id.')\n                        .optional(),\n                      reason: z\n                        .string()\n                        .describe('Reason for edit, given by user (optional).')\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      changes: z\n                        .array(\n                          z.intersection(\n                            z.object({}),\n                            z.xor([\n                              z.object({\n                                lineItemChanged: z.never().optional(),\n                                lineItemAdded: z.never().optional(),\n                                lineItemRemoved: z.never().optional(),\n                                discountAdded: z.never().optional(),\n                                discountRemoved: z.never().optional(),\n                                additionalFeeAdded: z.never().optional(),\n                                additionalFeeRemoved: z.never().optional(),\n                                totalPriceChanged: z.never().optional(),\n                                shippingInformationChanged: z\n                                  .never()\n                                  .optional(),\n                              }),\n                              z.object({\n                                lineItemAdded: z.never().optional(),\n                                lineItemRemoved: z.never().optional(),\n                                discountAdded: z.never().optional(),\n                                discountRemoved: z.never().optional(),\n                                additionalFeeAdded: z.never().optional(),\n                                additionalFeeRemoved: z.never().optional(),\n                                totalPriceChanged: z.never().optional(),\n                                shippingInformationChanged: z\n                                  .never()\n                                  .optional(),\n                                lineItemChanged: z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Line item ID.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name after change.')\n                                    .optional(),\n                                  quantity: z\n                                    .object({\n                                      originalQuantity: z\n                                        .number()\n                                        .int()\n                                        .describe(\n                                          'Item quantity before update.'\n                                        )\n                                        .min(0)\n                                        .max(1000000)\n                                        .optional(),\n                                      newQuantity: z\n                                        .number()\n                                        .int()\n                                        .describe('Item quantity after update.')\n                                        .min(0)\n                                        .max(1000000)\n                                        .optional(),\n                                      diff: z\n                                        .number()\n                                        .int()\n                                        .describe(\n                                          'Difference between original and new quantity. Absolute value.'\n                                        )\n                                        .min(1)\n                                        .max(1000000)\n                                        .optional(),\n                                      deltaType: z\n                                        .enum([\n                                          'QUANTITY_INCREASED',\n                                          'QUANTITY_DECREASED',\n                                        ])\n                                        .describe(\n                                          'Type of quantity change: increase or decrease.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Item quantity change.')\n                                    .optional(),\n                                  price: z\n                                    .object({\n                                      originalPrice: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Item price before update.')\n                                        .optional(),\n                                      newPrice: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Item price after update.')\n                                        .optional(),\n                                    })\n                                    .describe('Item price change.')\n                                    .optional(),\n                                }),\n                              }),\n                              z.object({\n                                lineItemChanged: z.never().optional(),\n                                lineItemRemoved: z.never().optional(),\n                                discountAdded: z.never().optional(),\n                                discountRemoved: z.never().optional(),\n                                additionalFeeAdded: z.never().optional(),\n                                additionalFeeRemoved: z.never().optional(),\n                                totalPriceChanged: z.never().optional(),\n                                shippingInformationChanged: z\n                                  .never()\n                                  .optional(),\n                                lineItemAdded: z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Line item ID.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  quantity: z\n                                    .number()\n                                    .int()\n                                    .describe('Added or removed item quantity.')\n                                    .min(1)\n                                    .max(1000000)\n                                    .optional(),\n                                }),\n                              }),\n                              z.object({\n                                lineItemChanged: z.never().optional(),\n                                lineItemAdded: z.never().optional(),\n                                discountAdded: z.never().optional(),\n                                discountRemoved: z.never().optional(),\n                                additionalFeeAdded: z.never().optional(),\n                                additionalFeeRemoved: z.never().optional(),\n                                totalPriceChanged: z.never().optional(),\n                                shippingInformationChanged: z\n                                  .never()\n                                  .optional(),\n                                lineItemRemoved: z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Line item ID.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  quantity: z\n                                    .number()\n                                    .int()\n                                    .describe('Added or removed item quantity.')\n                                    .min(1)\n                                    .max(1000000)\n                                    .optional(),\n                                }),\n                              }),\n                              z.object({\n                                lineItemChanged: z.never().optional(),\n                                lineItemAdded: z.never().optional(),\n                                lineItemRemoved: z.never().optional(),\n                                discountRemoved: z.never().optional(),\n                                additionalFeeAdded: z.never().optional(),\n                                additionalFeeRemoved: z.never().optional(),\n                                totalPriceChanged: z.never().optional(),\n                                shippingInformationChanged: z\n                                  .never()\n                                  .optional(),\n                                discountAdded: z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Discount id.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          'Value in site default language.'\n                                        )\n                                        .min(1)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe('Translated value.')\n                                        .min(1)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe(\n                                      'Discount name: coupon name / discount rule name / merchant discount description.'\n                                    )\n                                    .optional(),\n                                  affectedLineItems: z\n                                    .array(\n                                      z.object({\n                                        _id: z\n                                          .string()\n                                          .describe('Order line item id')\n                                          .regex(\n                                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                            'Must be a valid GUID'\n                                          )\n                                          .optional(),\n                                        name: z\n                                          .object({\n                                            original: z\n                                              .string()\n                                              .describe(\n                                                \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                              )\n                                              .min(1)\n                                              .max(200)\n                                              .optional(),\n                                            translated: z\n                                              .string()\n                                              .describe(\n                                                \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                              )\n                                              .min(1)\n                                              .max(400)\n                                              .optional()\n                                              .nullable(),\n                                          })\n                                          .describe('Item name.')\n                                          .optional(),\n                                        amount: z\n                                          .object({\n                                            amount: z\n                                              .string()\n                                              .describe('Amount.')\n                                              .optional(),\n                                            formattedAmount: z\n                                              .string()\n                                              .describe(\n                                                'Amount formatted with currency symbol.'\n                                              )\n                                              .optional(),\n                                          })\n                                          .describe(\n                                            'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                          )\n                                          .optional(),\n                                      })\n                                    )\n                                    .min(0)\n                                    .optional(),\n                                  totalAmount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Discount amount.')\n                                    .optional(),\n                                }),\n                              }),\n                              z.object({\n                                lineItemChanged: z.never().optional(),\n                                lineItemAdded: z.never().optional(),\n                                lineItemRemoved: z.never().optional(),\n                                discountAdded: z.never().optional(),\n                                additionalFeeAdded: z.never().optional(),\n                                additionalFeeRemoved: z.never().optional(),\n                                totalPriceChanged: z.never().optional(),\n                                shippingInformationChanged: z\n                                  .never()\n                                  .optional(),\n                                discountRemoved: z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Discount id.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          'Value in site default language.'\n                                        )\n                                        .min(1)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe('Translated value.')\n                                        .min(1)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe(\n                                      'Discount name: coupon name / discount rule name / merchant discount description.'\n                                    )\n                                    .optional(),\n                                  affectedLineItems: z\n                                    .array(\n                                      z.object({\n                                        _id: z\n                                          .string()\n                                          .describe('Order line item id')\n                                          .regex(\n                                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                            'Must be a valid GUID'\n                                          )\n                                          .optional(),\n                                        name: z\n                                          .object({\n                                            original: z\n                                              .string()\n                                              .describe(\n                                                \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                              )\n                                              .min(1)\n                                              .max(200)\n                                              .optional(),\n                                            translated: z\n                                              .string()\n                                              .describe(\n                                                \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                              )\n                                              .min(1)\n                                              .max(400)\n                                              .optional()\n                                              .nullable(),\n                                          })\n                                          .describe('Item name.')\n                                          .optional(),\n                                        amount: z\n                                          .object({\n                                            amount: z\n                                              .string()\n                                              .describe('Amount.')\n                                              .optional(),\n                                            formattedAmount: z\n                                              .string()\n                                              .describe(\n                                                'Amount formatted with currency symbol.'\n                                              )\n                                              .optional(),\n                                          })\n                                          .describe(\n                                            'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                          )\n                                          .optional(),\n                                      })\n                                    )\n                                    .min(0)\n                                    .optional(),\n                                  totalAmount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Discount amount.')\n                                    .optional(),\n                                }),\n                              }),\n                              z.object({\n                                lineItemChanged: z.never().optional(),\n                                lineItemAdded: z.never().optional(),\n                                lineItemRemoved: z.never().optional(),\n                                discountAdded: z.never().optional(),\n                                discountRemoved: z.never().optional(),\n                                additionalFeeRemoved: z.never().optional(),\n                                totalPriceChanged: z.never().optional(),\n                                shippingInformationChanged: z\n                                  .never()\n                                  .optional(),\n                                additionalFeeAdded: z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Additional fee id.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          'Value in site default language.'\n                                        )\n                                        .min(1)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe('Translated value.')\n                                        .min(1)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Additional fee name.')\n                                    .optional(),\n                                  affectedLineItems: z\n                                    .array(\n                                      z.object({\n                                        _id: z\n                                          .string()\n                                          .describe('Order line item id')\n                                          .regex(\n                                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                            'Must be a valid GUID'\n                                          )\n                                          .optional(),\n                                        name: z\n                                          .object({\n                                            original: z\n                                              .string()\n                                              .describe(\n                                                \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                              )\n                                              .min(1)\n                                              .max(200)\n                                              .optional(),\n                                            translated: z\n                                              .string()\n                                              .describe(\n                                                \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                              )\n                                              .min(1)\n                                              .max(400)\n                                              .optional()\n                                              .nullable(),\n                                          })\n                                          .describe('Item name.')\n                                          .optional(),\n                                        amount: z\n                                          .object({\n                                            amount: z\n                                              .string()\n                                              .describe('Amount.')\n                                              .optional(),\n                                            formattedAmount: z\n                                              .string()\n                                              .describe(\n                                                'Amount formatted with currency symbol.'\n                                              )\n                                              .optional(),\n                                          })\n                                          .describe(\n                                            'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                          )\n                                          .optional(),\n                                      })\n                                    )\n                                    .min(0)\n                                    .optional(),\n                                  totalAmount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Additional fee amount.')\n                                    .optional(),\n                                }),\n                              }),\n                              z.object({\n                                lineItemChanged: z.never().optional(),\n                                lineItemAdded: z.never().optional(),\n                                lineItemRemoved: z.never().optional(),\n                                discountAdded: z.never().optional(),\n                                discountRemoved: z.never().optional(),\n                                additionalFeeAdded: z.never().optional(),\n                                totalPriceChanged: z.never().optional(),\n                                shippingInformationChanged: z\n                                  .never()\n                                  .optional(),\n                                additionalFeeRemoved: z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Additional fee id.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          'Value in site default language.'\n                                        )\n                                        .min(1)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe('Translated value.')\n                                        .min(1)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Additional fee name.')\n                                    .optional(),\n                                  affectedLineItems: z\n                                    .array(\n                                      z.object({\n                                        _id: z\n                                          .string()\n                                          .describe('Order line item id')\n                                          .regex(\n                                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                            'Must be a valid GUID'\n                                          )\n                                          .optional(),\n                                        name: z\n                                          .object({\n                                            original: z\n                                              .string()\n                                              .describe(\n                                                \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                              )\n                                              .min(1)\n                                              .max(200)\n                                              .optional(),\n                                            translated: z\n                                              .string()\n                                              .describe(\n                                                \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                              )\n                                              .min(1)\n                                              .max(400)\n                                              .optional()\n                                              .nullable(),\n                                          })\n                                          .describe('Item name.')\n                                          .optional(),\n                                        amount: z\n                                          .object({\n                                            amount: z\n                                              .string()\n                                              .describe('Amount.')\n                                              .optional(),\n                                            formattedAmount: z\n                                              .string()\n                                              .describe(\n                                                'Amount formatted with currency symbol.'\n                                              )\n                                              .optional(),\n                                          })\n                                          .describe(\n                                            'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                          )\n                                          .optional(),\n                                      })\n                                    )\n                                    .min(0)\n                                    .optional(),\n                                  totalAmount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Additional fee amount.')\n                                    .optional(),\n                                }),\n                              }),\n                              z.object({\n                                lineItemChanged: z.never().optional(),\n                                lineItemAdded: z.never().optional(),\n                                lineItemRemoved: z.never().optional(),\n                                discountAdded: z.never().optional(),\n                                discountRemoved: z.never().optional(),\n                                additionalFeeAdded: z.never().optional(),\n                                additionalFeeRemoved: z.never().optional(),\n                                shippingInformationChanged: z\n                                  .never()\n                                  .optional(),\n                                totalPriceChanged: z.object({\n                                  originalTotal: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Order’s total price after discounts and tax. Before update'\n                                    )\n                                    .optional(),\n                                  newTotal: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Order’s total price after discounts and tax. After update'\n                                    )\n                                    .optional(),\n                                }),\n                              }),\n                              z.object({\n                                lineItemChanged: z.never().optional(),\n                                lineItemAdded: z.never().optional(),\n                                lineItemRemoved: z.never().optional(),\n                                discountAdded: z.never().optional(),\n                                discountRemoved: z.never().optional(),\n                                additionalFeeAdded: z.never().optional(),\n                                additionalFeeRemoved: z.never().optional(),\n                                totalPriceChanged: z.never().optional(),\n                                shippingInformationChanged: z.object({\n                                  originalShippingInfo: z\n                                    .object({\n                                      total: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Order’s shipping price.')\n                                        .optional(),\n                                      shippingTitle: z\n                                        .string()\n                                        .describe('Order’s shipping title.')\n                                        .max(250)\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Order’s Shipping Information. Before update'\n                                    )\n                                    .optional(),\n                                  newShippingInfo: z\n                                    .object({\n                                      total: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Order’s shipping price.')\n                                        .optional(),\n                                      shippingTitle: z\n                                        .string()\n                                        .describe('Order’s shipping title.')\n                                        .max(250)\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Order’s Shipping Information. After update'\n                                    )\n                                    .optional(),\n                                }),\n                              }),\n                            ])\n                          )\n                        )\n                        .optional(),\n                    })\n                    .describe(\n                      'Details of changes made by the Draft Orders API.'\n                    ),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  savedPaymentMethod: z\n                    .object({\n                      name: z\n                        .string()\n                        .describe('Payment method name.')\n                        .min(1)\n                        .max(100)\n                        .optional(),\n                      description: z\n                        .string()\n                        .describe('Payment method description.')\n                        .min(1)\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      'Details of the payment method saved for the order.'\n                    ),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  authorizedPaymentCreated: z\n                    .object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Payment amount.')\n                        .optional(),\n                      lastFourDigits: z\n                        .string()\n                        .describe('The last 4 digits of the card number.')\n                        .max(4)\n                        .optional()\n                        .nullable(),\n                      brand: z\n                        .string()\n                        .describe(\"Card issuer's brand.\")\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Details of an authorized payment created.'),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  authorizedPaymentCaptured: z\n                    .object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Payment amount.')\n                        .optional(),\n                      lastFourDigits: z\n                        .string()\n                        .describe('The last 4 digits of the card number.')\n                        .max(4)\n                        .optional()\n                        .nullable(),\n                      brand: z\n                        .string()\n                        .describe(\"Card issuer's brand.\")\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Details of an authorized payment captured.'),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  authorizedPaymentVoided: z\n                    .object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Payment amount.')\n                        .optional(),\n                      lastFourDigits: z\n                        .string()\n                        .describe('The last 4 digits of the card number.')\n                        .max(4)\n                        .optional()\n                        .nullable(),\n                      brand: z\n                        .string()\n                        .describe(\"Card issuer's brand.\")\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Details of an authorized payment voided.'),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  refundInitiated: z\n                    .object({\n                      refundId: z\n                        .string()\n                        .describe('Refund ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Refund amount.')\n                        .optional(),\n                      payments: z\n                        .array(\n                          z.intersection(\n                            z.object({\n                              paymentId: z\n                                .string()\n                                .describe('Payment ID.')\n                                .regex(\n                                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                  'Must be a valid GUID'\n                                )\n                                .optional(),\n                              externalRefund: z\n                                .boolean()\n                                .describe(\n                                  \"Whether refund was made externally and manually on the payment provider's side.\"\n                                )\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                regular: z.never().optional(),\n                                giftCard: z.never().optional(),\n                                membership: z.never().optional(),\n                              }),\n                              z.object({\n                                giftCard: z.never().optional(),\n                                membership: z.never().optional(),\n                                regular: z\n                                  .object({\n                                    amount: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Refund amount.')\n                                      .optional(),\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Regular payment refund.'),\n                              }),\n                              z.object({\n                                regular: z.never().optional(),\n                                membership: z.never().optional(),\n                                giftCard: z\n                                  .object({\n                                    giftCardPaymentId: z\n                                      .string()\n                                      .describe('Gift card payment ID.')\n                                      .min(1)\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                    amount: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Refund amount.')\n                                      .optional(),\n                                  })\n                                  .describe('Gift card payment refund.'),\n                              }),\n                              z.object({\n                                regular: z.never().optional(),\n                                giftCard: z.never().optional(),\n                                membership: z\n                                  .object({\n                                    membershipId: z\n                                      .string()\n                                      .describe('Membership ID.')\n                                      .min(1)\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Membership payment refund.'),\n                              }),\n                            ])\n                          )\n                        )\n                        .min(1)\n                        .max(50)\n                        .optional(),\n                      reason: z\n                        .string()\n                        .describe('Reason for refund.')\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                    ),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  paymentRefunded: z\n                    .object({\n                      refundId: z\n                        .string()\n                        .describe('Refund ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      payment: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe('Payment ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            externalRefund: z\n                              .boolean()\n                              .describe(\n                                \"Whether refund was made externally and manually on the payment provider's side.\"\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                            }),\n                            z.object({\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                              regular: z\n                                .object({\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                  lastFourDigits: z\n                                    .string()\n                                    .describe(\n                                      'The last 4 digits of the card number.'\n                                    )\n                                    .max(4)\n                                    .optional()\n                                    .nullable(),\n                                  brand: z\n                                    .string()\n                                    .describe(\"Card issuer's brand.\")\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Regular payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              membership: z.never().optional(),\n                              giftCard: z\n                                .object({\n                                  giftCardPaymentId: z\n                                    .string()\n                                    .describe('Gift card payment ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                })\n                                .describe('Gift card payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z\n                                .object({\n                                  membershipId: z\n                                    .string()\n                                    .describe('Membership ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Membership payment refund.'),\n                            }),\n                          ])\n                        )\n                        .describe('Details about the refunded payment.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                    ),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  paymentRefundFailed: z\n                    .object({\n                      refundId: z\n                        .string()\n                        .describe('Refund ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      payment: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe('Payment ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            externalRefund: z\n                              .boolean()\n                              .describe(\n                                \"Whether refund was made externally and manually on the payment provider's side.\"\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                            }),\n                            z.object({\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                              regular: z\n                                .object({\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                  lastFourDigits: z\n                                    .string()\n                                    .describe(\n                                      'The last 4 digits of the card number.'\n                                    )\n                                    .max(4)\n                                    .optional()\n                                    .nullable(),\n                                  brand: z\n                                    .string()\n                                    .describe(\"Card issuer's brand.\")\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Regular payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              membership: z.never().optional(),\n                              giftCard: z\n                                .object({\n                                  giftCardPaymentId: z\n                                    .string()\n                                    .describe('Gift card payment ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                })\n                                .describe('Gift card payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z\n                                .object({\n                                  membershipId: z\n                                    .string()\n                                    .describe('Membership ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Membership payment refund.'),\n                            }),\n                          ])\n                        )\n                        .describe('Details about the failed payment refund.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                    ),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  refundedAsStoreCredit: z\n                    .object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Refund amount.')\n                        .optional(),\n                      reason: z\n                        .string()\n                        .describe('Reason for refund.')\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Details of refund to store credit.'),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  paymentPending: z\n                    .intersection(\n                      z.object({\n                        paymentId: z\n                          .string()\n                          .describe(\n                            'Payment ID of payment associated with this activity.'\n                          )\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                      }),\n                      z.xor([\n                        z.object({ regular: z.never().optional() }),\n                        z.object({\n                          regular: z\n                            .intersection(\n                              z.object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Payment amount.')\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  creditCardDetails: z.never().optional(),\n                                }),\n                                z.object({\n                                  creditCardDetails: z\n                                    .object({\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Credit card details.'),\n                                }),\n                              ])\n                            )\n                            .describe('Regular payment.'),\n                        }),\n                      ])\n                    )\n                    .describe('Details of a pending payment.'),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  paymentCanceled: z\n                    .intersection(\n                      z.object({\n                        paymentId: z\n                          .string()\n                          .describe(\n                            'Payment ID of payment associated with this activity.'\n                          )\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                      }),\n                      z.xor([\n                        z.object({ regular: z.never().optional() }),\n                        z.object({\n                          regular: z\n                            .intersection(\n                              z.object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Payment amount.')\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  creditCardDetails: z.never().optional(),\n                                }),\n                                z.object({\n                                  creditCardDetails: z\n                                    .object({\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Credit card details.'),\n                                }),\n                              ])\n                            )\n                            .describe('Regular payment.'),\n                        }),\n                      ])\n                    )\n                    .describe('Details of a canceled payment.'),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  paymentDeclined: z\n                    .intersection(\n                      z.object({\n                        paymentId: z\n                          .string()\n                          .describe(\n                            'Payment ID of payment associated with this activity.'\n                          )\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                      }),\n                      z.xor([\n                        z.object({ regular: z.never().optional() }),\n                        z.object({\n                          regular: z\n                            .intersection(\n                              z.object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Payment amount.')\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  creditCardDetails: z.never().optional(),\n                                }),\n                                z.object({\n                                  creditCardDetails: z\n                                    .object({\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Credit card details.'),\n                                }),\n                              ])\n                            )\n                            .describe('Regular payment.'),\n                        }),\n                      ])\n                    )\n                    .describe('Details of a declined payment.'),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  receiptCreated: z\n                    .intersection(\n                      z.object({\n                        paymentId: z\n                          .string()\n                          .describe(\n                            'Payment ID of payment associated with this activity.'\n                          )\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                      }),\n                      z.xor([\n                        z.object({\n                          wixReceipt: z.never().optional(),\n                          externalReceipt: z.never().optional(),\n                        }),\n                        z.object({\n                          externalReceipt: z.never().optional(),\n                          wixReceipt: z\n                            .object({\n                              receiptId: z\n                                .string()\n                                .describe('Receipt ID.')\n                                .regex(\n                                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                  'Must be a valid GUID'\n                                )\n                                .optional(),\n                              displayNumber: z\n                                .string()\n                                .describe('Display number of receipt.')\n                                .min(1)\n                                .max(40)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Receipt created by Wix.'),\n                        }),\n                        z.object({\n                          wixReceipt: z.never().optional(),\n                          externalReceipt: z\n                            .object({\n                              receiptId: z\n                                .string()\n                                .describe('Receipt ID.')\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                              displayNumber: z\n                                .string()\n                                .describe('Display number of receipt.')\n                                .min(1)\n                                .max(40)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Receipt created by an external system.'),\n                        }),\n                      ])\n                    )\n                    .describe('Receipt was added for associated payment.'),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  receiptSent: z\n                    .intersection(\n                      z.object({\n                        paymentId: z\n                          .string()\n                          .describe(\n                            'Payment ID of payment associated with this activity.'\n                          )\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                      }),\n                      z.xor([\n                        z.object({\n                          wixReceipt: z.never().optional(),\n                          externalReceipt: z.never().optional(),\n                        }),\n                        z.object({\n                          externalReceipt: z.never().optional(),\n                          wixReceipt: z\n                            .object({\n                              receiptId: z\n                                .string()\n                                .describe('Receipt ID.')\n                                .regex(\n                                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                  'Must be a valid GUID'\n                                )\n                                .optional(),\n                              displayNumber: z\n                                .string()\n                                .describe('Display number of receipt.')\n                                .min(1)\n                                .max(40)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Receipt created by Wix.'),\n                        }),\n                        z.object({\n                          wixReceipt: z.never().optional(),\n                          externalReceipt: z\n                            .object({\n                              receiptId: z\n                                .string()\n                                .describe('Receipt ID.')\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                              displayNumber: z\n                                .string()\n                                .describe('Display number of receipt.')\n                                .min(1)\n                                .max(40)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Receipt created by an external system.'),\n                        }),\n                      ])\n                    )\n                    .describe('Receipt sent to customer.'),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackReversed: z.never().optional(),\n                  chargebackCreated: z\n                    .object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'ID of the payment that received a chargeback.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      chargebackId: z\n                        .string()\n                        .describe('Chargeback ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Chargeback amount.')\n                        .optional(),\n                      paymentDetails: z\n                        .intersection(\n                          z.object({\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Payment amount.')\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              creditCardDetails: z.never().optional(),\n                            }),\n                            z.object({\n                              creditCardDetails: z\n                                .object({\n                                  lastFourDigits: z\n                                    .string()\n                                    .describe(\n                                      'The last 4 digits of the card number.'\n                                    )\n                                    .max(4)\n                                    .optional()\n                                    .nullable(),\n                                  brand: z\n                                    .string()\n                                    .describe(\"Card issuer's brand.\")\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Credit card details.'),\n                            }),\n                          ])\n                        )\n                        .describe('Payment details.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Order received a chargeback for one of its payments.'\n                    ),\n                }),\n                z.object({\n                  merchantComment: z.never().optional(),\n                  orderRefunded: z.never().optional(),\n                  draftOrderChangesApplied: z.never().optional(),\n                  savedPaymentMethod: z.never().optional(),\n                  authorizedPaymentCreated: z.never().optional(),\n                  authorizedPaymentCaptured: z.never().optional(),\n                  authorizedPaymentVoided: z.never().optional(),\n                  refundInitiated: z.never().optional(),\n                  paymentRefunded: z.never().optional(),\n                  paymentRefundFailed: z.never().optional(),\n                  refundedAsStoreCredit: z.never().optional(),\n                  paymentPending: z.never().optional(),\n                  paymentCanceled: z.never().optional(),\n                  paymentDeclined: z.never().optional(),\n                  receiptCreated: z.never().optional(),\n                  receiptSent: z.never().optional(),\n                  chargebackCreated: z.never().optional(),\n                  chargebackReversed: z\n                    .object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'ID of the payment involved with the chargeback.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      chargebackId: z\n                        .string()\n                        .describe('Chargeback ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Chargeback amount.')\n                        .optional(),\n                      reversalAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Chargeback reversal amount.')\n                        .optional(),\n                      paymentDetails: z\n                        .intersection(\n                          z.object({\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Payment amount.')\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              creditCardDetails: z.never().optional(),\n                            }),\n                            z.object({\n                              creditCardDetails: z\n                                .object({\n                                  lastFourDigits: z\n                                    .string()\n                                    .describe(\n                                      'The last 4 digits of the card number.'\n                                    )\n                                    .max(4)\n                                    .optional()\n                                    .nullable(),\n                                  brand: z\n                                    .string()\n                                    .describe(\"Card issuer's brand.\")\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Credit card details.'),\n                            }),\n                          ])\n                        )\n                        .describe('Payment details.')\n                        .optional(),\n                    })\n                    .describe(\n                      \"Chargeback reversed for one of the order's payments.\"\n                    ),\n                }),\n              ])\n            )\n          )\n          .max(1000)\n          .optional(),\n        attributionSource: z\n          .enum(['UNSPECIFIED', 'FACEBOOK_ADS'])\n          .describe('Order attribution source.')\n          .optional(),\n        createdBy: z\n          .intersection(\n            z.object({}),\n            z.xor([\n              z.object({\n                userId: z.never().optional(),\n                memberId: z.never().optional(),\n                visitorId: z.never().optional(),\n                appId: z.never().optional(),\n              }),\n              z.object({\n                memberId: z.never().optional(),\n                visitorId: z.never().optional(),\n                appId: z.never().optional(),\n                userId: z\n                  .string()\n                  .describe(\n                    'User ID - when the order was created by a Wix user on behalf of a buyer.\\nFor example, via POS (point of service).'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  ),\n              }),\n              z.object({\n                userId: z.never().optional(),\n                visitorId: z.never().optional(),\n                appId: z.never().optional(),\n                memberId: z\n                  .string()\n                  .describe(\n                    'Member ID - when the order was created by a **logged in** site visitor.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  ),\n              }),\n              z.object({\n                userId: z.never().optional(),\n                memberId: z.never().optional(),\n                appId: z.never().optional(),\n                visitorId: z\n                  .string()\n                  .describe(\n                    'Visitor ID - when the order was created by a site visitor that was **not** logged in.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  ),\n              }),\n              z.object({\n                userId: z.never().optional(),\n                memberId: z.never().optional(),\n                visitorId: z.never().optional(),\n                appId: z\n                  .string()\n                  .describe(\n                    'App ID - when the order was created by an external application.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  ),\n              }),\n            ])\n          )\n          .describe(\"ID of the order's initiator.\")\n          .optional(),\n        channelInfo: z\n          .object({\n            type: z\n              .enum([\n                'UNSPECIFIED',\n                'WEB',\n                'POS',\n                'EBAY',\n                'AMAZON',\n                'OTHER_PLATFORM',\n                'WIX_APP_STORE',\n                'WIX_INVOICES',\n                'BACKOFFICE_MERCHANT',\n                'WISH',\n                'CLASS_PASS',\n                'GLOBAL_E',\n                'FACEBOOK',\n                'ETSY',\n                'TIKTOK',\n                'FAIRE_COM',\n                'PAYPAL_AGENTIC_CHECKOUT',\n                'STRIPE_AGENTIC_CHECKOUT',\n              ])\n              .describe(\n                'Sales channel that submitted the order.\\n\\nWhen creating an order via the API to record an external order, use the channel type that matches the original source. If no matching type exists, use `OTHER_PLATFORM`.'\n              )\n              .optional(),\n            externalOrderId: z\n              .string()\n              .describe(\n                'Reference to an order ID from an external system. Relevant when recording orders from external platforms.'\n              )\n              .max(100)\n              .optional()\n              .nullable(),\n            externalOrderUrl: z\n              .string()\n              .describe(\n                'URL to the order in the external system. Relevant when recording orders from external platforms.'\n              )\n              .max(300)\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Information about the sales channel that submitted this order.'\n          )\n          .optional(),\n        seenByAHuman: z\n          .boolean()\n          .describe(\n            'Whether a human has seen the order. Set when an order is clicked on in the dashboard.'\n          )\n          .optional()\n          .nullable(),\n        checkoutId: z\n          .string()\n          .describe('Checkout ID.')\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        customFields: z\n          .array(\n            z.object({\n              value: z\n                .any()\n                .describe('Custom field value.')\n                .optional()\n                .nullable(),\n              title: z\n                .string()\n                .describe('Custom field title.')\n                .min(1)\n                .max(500)\n                .optional(),\n              translatedTitle: z\n                .string()\n                .describe('Translated custom field title.')\n                .min(1)\n                .max(500)\n                .optional()\n                .nullable(),\n            })\n          )\n          .optional(),\n        balanceSummary: z\n          .object({\n            balance: z\n              .object({\n                amount: z\n                  .string()\n                  .describe(\n                    'Balance amount.\\n\\nA negative `amount` represents the amount to be refunded. This can happen due to overcharging or the order being modified after a payment has been made.'\n                  )\n                  .optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Current amount left to pay.')\n              .optional(),\n            paid: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Sum of all approved and successful payments.\\n\\nThe value includes payments that have subsequently been fully or partially refunded.'\n              )\n              .optional(),\n            refunded: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Sum of all successfully refunded payments.')\n              .optional(),\n            authorized: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Sum of all authorized payments.')\n              .optional(),\n            pendingRefund: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Sum of all pending refund transactions.')\n              .optional(),\n            pending: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Sum of all pending transactions.')\n              .optional(),\n            chargeback: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Sum of all transaction chargebacks.')\n              .optional(),\n            chargebackReversal: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Sum of all chargeback reversals.')\n              .optional(),\n            platformFees: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Total platform fees actually charged across all payments.\\nThis reflects amounts collected, which may differ from the expected fees in `order.platformFeeSummary`.'\n              )\n              .optional(),\n            totalMinusPlatformFees: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Order total after deducting platform fees. Represents the net amount payable to the merchant.'\n              )\n              .optional(),\n          })\n          .describe('Balance summary.')\n          .optional(),\n        additionalFees: z\n          .array(\n            z.object({\n              code: z\n                .string()\n                .describe(\"Additional fee's unique code for future processing.\")\n                .min(1)\n                .max(100)\n                .optional()\n                .nullable(),\n              name: z\n                .string()\n                .describe('Name of additional fee.')\n                .min(1)\n                .max(50)\n                .optional(),\n              price: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\"Additional fee's price.\")\n                .optional(),\n              taxDetails: z\n                .object({\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of this line item.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe(\n                      'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                    )\n                    .optional(),\n                  totalTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                    )\n                    .optional(),\n                })\n                .describe('Tax details.')\n                .optional(),\n              taxInfo: z\n                .object({\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                    )\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount for which tax is calculated.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe('Tax rate %, as a decimal point.')\n                    .optional()\n                    .nullable(),\n                  taxGroupId: z\n                    .string()\n                    .describe('Tax group ID.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxIncludedInPrice: z\n                    .boolean()\n                    .describe(\n                      'Indicates whether the price already includes tax.'\n                    )\n                    .optional(),\n                  taxBreakdown: z\n                    .array(\n                      z.object({\n                        jurisdiction: z\n                          .string()\n                          .describe(\n                            'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        rate: z\n                          .string()\n                          .describe(\n                            'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                          )\n                          .optional()\n                          .nullable(),\n                        taxAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Amount of tax calculated for this line item.'\n                          )\n                          .optional(),\n                        taxType: z\n                          .string()\n                          .describe(\n                            'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        taxName: z\n                          .string()\n                          .describe(\n                            'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        jurisdictionType: z\n                          .enum([\n                            'UNDEFINED',\n                            'COUNTRY',\n                            'STATE',\n                            'COUNTY',\n                            'CITY',\n                            'SPECIAL',\n                          ])\n                          .describe(\n                            'Type of jurisdiction that taxes were calculated for.'\n                          )\n                          .optional(),\n                        nonTaxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Non-taxable amount of the line item price.'\n                          )\n                          .optional(),\n                        taxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Taxable amount of the line item price.')\n                          .optional(),\n                      })\n                    )\n                    .max(7)\n                    .optional(),\n                })\n                .describe(\n                  'Represents all the relevant tax details for additional fee.'\n                )\n                .optional(),\n              providerAppId: z\n                .string()\n                .describe(\"SPI implementer's `appId`.\")\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              priceBeforeTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\"Additional fee's price before tax.\")\n                .optional(),\n              priceAfterTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\"Additional fee's price after tax.\")\n                .optional(),\n              _id: z\n                .string()\n                .describe(\"Additional fee's id.\")\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional(),\n              lineItemIds: z.array(z.string()).optional(),\n              source: z\n                .enum([\n                  'SERVICE_PLUGIN',\n                  'ITEM',\n                  'MANUAL',\n                  'SHIPPING',\n                  'PLATFORM',\n                ])\n                .describe('Specifies the entity that added the additional fee.')\n                .optional(),\n            })\n          )\n          .max(100)\n          .optional(),\n        extendedFields: z\n          .object({\n            namespaces: z\n              .record(z.string(), z.record(z.string(), z.any()))\n              .describe(\n                'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n              )\n              .optional(),\n          })\n          .describe(\n            'Custom field data for the order object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n          )\n          .optional(),\n        purchaseFlowId: z\n          .string()\n          .describe(\n            'Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.'\n          )\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        recipientInfo: z\n          .object({\n            address: z\n              .object({\n                streetAddress: z\n                  .object({\n                    name: z.string().optional(),\n                    number: z.string().optional(),\n                  })\n                  .optional(),\n                city: z.string().optional().nullable(),\n                subdivision: z.string().optional().nullable(),\n                country: z.string().optional().nullable(),\n                postalCode: z.string().optional().nullable(),\n                addressLine2: z.string().optional().nullable(),\n              })\n              .describe('Address.')\n              .optional(),\n            contactDetails: z\n              .object({\n                firstName: z\n                  .string()\n                  .describe('First name.')\n                  .max(100)\n                  .optional()\n                  .nullable(),\n                lastName: z\n                  .string()\n                  .describe('Last name.')\n                  .max(100)\n                  .optional()\n                  .nullable(),\n                phone: z\n                  .string()\n                  .describe('Phone number.')\n                  .optional()\n                  .nullable(),\n                company: z\n                  .string()\n                  .describe('Company name.')\n                  .max(1000)\n                  .optional()\n                  .nullable(),\n                vatId: z\n                  .object({\n                    _id: z.string().describe(\"Customer's tax ID.\").optional(),\n                    type: z\n                      .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                      .describe(\n                        'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                      )\n                      .optional(),\n                  })\n                  .describe(\n                    'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                  )\n                  .optional(),\n              })\n              .describe('Contact details.')\n              .optional(),\n          })\n          .describe(\n            \"Final recipient's address and contact details.\\n\\nThis field represents who will ultimately receive the order. It may differ from `shippingInfo.logistics.shippingDestination` when:\\n+ The chosen shipping option is a pickup point or store pickup, where `shippingDestination` contains the pickup location.\\n+ No shipping option is selected.\"\n          )\n          .optional(),\n        tags: z\n          .object({\n            privateTags: z\n              .object({ tagIds: z.array(z.string()).max(100).optional() })\n              .describe(\n                'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n              )\n              .optional(),\n            tags: z\n              .object({ tagIds: z.array(z.string()).max(100).optional() })\n              .describe(\n                'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n              )\n              .optional(),\n          })\n          .describe(\n            'Order tags.\\n\\n[Tags](https://dev.wix.com/docs/rest/business-management/tags/introduction) are labels attached to entities, allowing for flexible categorization and data management.'\n          )\n          .optional(),\n        purchasedDate: z\n          .date()\n          .describe(\n            'Date and time the order was originally purchased in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.\\nUsed for migration from external systems.'\n          )\n          .optional()\n          .nullable(),\n        businessLocation: z\n          .object({\n            _id: z\n              .string()\n              .describe(\n                'Location ID.\\nLearn more about the [Wix Locations API](https://dev.wix.com/docs/rest/business-management/locations/introduction).'\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional(),\n            name: z\n              .string()\n              .describe('Location name.')\n              .min(1)\n              .max(500)\n              .optional(),\n          })\n          .describe('Order location.')\n          .optional(),\n        payAfterFreeTrial: z\n          .object({\n            subtotal: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Subtotal of all line items, before discounts and before tax.'\n              )\n              .optional(),\n            shipping: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Total shipping price, before discounts and before tax.'\n              )\n              .optional(),\n            tax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total tax applied to the order.')\n              .optional(),\n            discount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total discount amount applied to the order.')\n              .optional(),\n            total: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Order's total price after discounts and tax.\")\n              .optional(),\n            totalAdditionalFees: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total additional fees before tax.')\n              .optional(),\n          })\n          .describe(\n            'Pay after free trial price summary. Price summary that should be paid for subscriptions after free trial period.'\n          )\n          .optional(),\n        platformFeeSummary: z\n          .object({\n            total: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total sum of all platform fees.')\n              .optional(),\n            totalPassOn: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Total amount of platform fees with `PASS_ON` charge type.'\n              )\n              .optional(),\n            totalAbsorbed: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Total amount of platform fees with `ABSORBED` charge type.'\n              )\n              .optional(),\n            fees: z\n              .array(\n                z.object({\n                  name: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                        )\n                        .min(1)\n                        .max(200)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                        )\n                        .min(1)\n                        .max(400)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Platform fee name.')\n                    .optional(),\n                  amount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Platform fee amount.')\n                    .optional(),\n                  lineItemId: z\n                    .string()\n                    .describe(\n                      'ID of the line item the platform fee applies to.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                  chargeType: z\n                    .enum(['PASS_ON', 'ABSORBED'])\n                    .describe('Platform fee charge type.')\n                    .optional(),\n                  percentageRate: z\n                    .string()\n                    .describe(\n                      'Percentage rate charged as platform fee.\\nThe fee rate percentage expressed as a decimal fraction between 0 and 1. For example, `0.05` for 5%.'\n                    )\n                    .optional(),\n                })\n              )\n              .max(300)\n              .optional(),\n          })\n          .describe(\n            'Summary of platform fees for this order, including totals by charge type and a breakdown of individual fees.'\n          )\n          .optional(),\n      })\n    )\n    .optional(),\n  metadata: z\n    .object({\n      count: z\n        .number()\n        .int()\n        .describe('Number of items returned in current page.')\n        .optional()\n        .nullable(),\n      cursors: z\n        .object({\n          next: z\n            .string()\n            .describe(\n              'Cursor string pointing to the next page in the list of results.'\n            )\n            .max(16000)\n            .optional()\n            .nullable(),\n          prev: z\n            .string()\n            .describe(\n              'Cursor pointing to the previous page in the list of results.'\n            )\n            .max(16000)\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Cursor strings that point to the next page, previous page, or both.'\n        )\n        .optional(),\n      hasNext: z\n        .boolean()\n        .describe(\n          'Whether there are more pages to retrieve following the current page.\\n\\n+ `true`: Another page of results can be retrieved.\\n+ `false`: This is the last page.'\n        )\n        .optional()\n        .nullable(),\n    })\n    .describe('Details on the paged set of results returned.')\n    .optional(),\n});\nexport const CreateOrderRequest = z.object({\n  order: z\n    .object({\n      _id: z\n        .string()\n        .describe('Order ID.')\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      number: z\n        .string()\n        .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n        .describe(\n          \"Order number displayed in the site owner's dashboard (auto-generated).\"\n        )\n        .optional(),\n      _createdDate: z\n        .date()\n        .describe(\n          'Date and time the order was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n        )\n        .optional()\n        .nullable(),\n      _updatedDate: z\n        .date()\n        .describe(\n          'Date and time the order was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n        )\n        .optional()\n        .nullable(),\n      lineItems: z\n        .array(\n          z.object({\n            _id: z.string().describe('Line item ID.').optional(),\n            productName: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                  )\n                  .min(1)\n                  .max(200),\n                translated: z\n                  .string()\n                  .describe(\n                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(400)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Item name.\\n\\n+ Stores - `product.name`\\n+ Bookings - `service.info.name`\\n+ Events - `ticket.name`'\n              ),\n            catalogReference: z\n              .object({\n                catalogItemId: z\n                  .string()\n                  .describe('ID of the item within the catalog it belongs to.')\n                  .min(1)\n                  .max(36),\n                appId: z\n                  .string()\n                  .describe(\n                    'ID of the app providing the catalog.\\n\\nYou can get your app\\'s ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\\n\\nFor items from Wix catalogs, the following values always apply:\\n+ Wix Stores: `\"215238eb-22a5-4c36-9e7b-e7c08025e04e\"`\\n+ Wix Bookings: `\"13d21c63-b5ec-5912-8397-c3a5ddb27a97\"`\\n+ Wix Restaurants: `\"9a5d83fd-8570-482e-81ab-cfa88942ee60\"`'\n                  )\n                  .min(1),\n                options: z\n                  .record(z.string(), z.any())\n                  .describe(\n                    'Additional item details in `key:value` pairs.\\n\\nUse this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items.\\n\\nFor Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration)\\nor [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction).'\n                  )\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                \"References to the line item's origin catalog. Empty for custom line items.\"\n              )\n              .optional(),\n            quantity: z\n              .number()\n              .int()\n              .describe('Line item quantity.')\n              .min(1)\n              .max(100000),\n            totalDiscount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Total discount for this line item's entire quantity.\")\n              .optional(),\n            descriptionLines: z\n              .array(\n                z.intersection(\n                  z.object({\n                    name: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                          )\n                          .max(100)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"Description line name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Description line name.')\n                      .optional(),\n                  }),\n                  z.xor([\n                    z.object({\n                      plainText: z.never().optional(),\n                      colorInfo: z.never().optional(),\n                    }),\n                    z.object({\n                      colorInfo: z.never().optional(),\n                      plainText: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                            )\n                            .max(600)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"Description line plain text value translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                            )\n                            .max(600)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Description line plain text value.'),\n                    }),\n                    z.object({\n                      plainText: z.never().optional(),\n                      colorInfo: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                            )\n                            .max(500)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"Description line color name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                            )\n                            .max(500)\n                            .optional()\n                            .nullable(),\n                          code: z\n                            .string()\n                            .describe('HEX or RGB color code for display.')\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Description line color value.'),\n                    }),\n                  ])\n                )\n              )\n              .min(0)\n              .max(20)\n              .optional(),\n            image: z.string().describe('Line item image.').optional(),\n            physicalProperties: z\n              .object({\n                weight: z\n                  .number()\n                  .describe(\n                    'Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request.'\n                  )\n                  .optional()\n                  .nullable(),\n                sku: z\n                  .string()\n                  .describe(\n                    'Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).'\n                  )\n                  .max(40)\n                  .optional()\n                  .nullable(),\n                shippable: z\n                  .boolean()\n                  .describe('Whether this line item is shippable.')\n                  .optional(),\n              })\n              .describe(\n                'Physical properties of the item. When relevant, contains information such as SKU and item weight.'\n              )\n              .optional(),\n            itemType: z\n              .intersection(\n                z.object({}),\n                z.xor([\n                  z.object({\n                    preset: z.never().optional(),\n                    custom: z.never().optional(),\n                  }),\n                  z.object({\n                    custom: z.never().optional(),\n                    preset: z\n                      .enum([\n                        'UNRECOGNISED',\n                        'PHYSICAL',\n                        'DIGITAL',\n                        'GIFT_CARD',\n                        'SERVICE',\n                      ])\n                      .describe('Preset item type.'),\n                  }),\n                  z.object({\n                    preset: z.never().optional(),\n                    custom: z\n                      .string()\n                      .describe(\n                        'Custom item type. When none of the preset types are suitable, specifies the custom type.'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Item type. Either a preset type or custom.'),\n            fulfillerId: z\n              .string()\n              .describe(\n                'Fulfiller ID. Field is empty when the line item is self-fulfilled.\\nTo get fulfillment information, pass the order ID to [List Fulfillments For Single Order](https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/order-fulfillments/list-fulfillments-for-single-order).'\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            refundQuantity: z\n              .number()\n              .int()\n              .describe('Number of items that were refunded.')\n              .min(0)\n              .max(100000)\n              .optional()\n              .nullable(),\n            restockQuantity: z\n              .number()\n              .int()\n              .describe(\n                'Number of items restocked.\\n\\nFor a per-location breakdown, see `restockLocations`.'\n              )\n              .min(0)\n              .max(100000)\n              .optional()\n              .nullable(),\n            price: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Line item price after line item discounts for display purposes.'\n              ),\n            priceBeforeDiscounts: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Line item price before line item discounts for display purposes. Defaults to `price` when not provided.'\n              )\n              .optional(),\n            totalPriceBeforeTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total price after discounts, and before tax.')\n              .optional(),\n            totalPriceAfterTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total price after all discounts and tax.')\n              .optional(),\n            paymentOption: z\n              .enum([\n                'FULL_PAYMENT_ONLINE',\n                'FULL_PAYMENT_OFFLINE',\n                'MEMBERSHIP',\n                'DEPOSIT_ONLINE',\n                'MEMBERSHIP_OFFLINE',\n                'MEMBERSHIP_ONLINE_WITH_OFFLINE_REMAINDER',\n              ])\n              .optional(),\n            taxDetails: z\n              .object({\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Taxable amount of this line item.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe(\n                    'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                  )\n                  .optional(),\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Deprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.\\nTax details for this line item.'\n              )\n              .optional(),\n            taxInfo: z\n              .object({\n                taxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                  )\n                  .optional(),\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Amount for which tax is calculated.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe('Tax rate %, as a decimal point.')\n                  .optional()\n                  .nullable(),\n                taxGroupId: z\n                  .string()\n                  .describe('Tax group ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                taxIncludedInPrice: z\n                  .boolean()\n                  .describe('Indicates whether the price already includes tax.')\n                  .optional(),\n                taxBreakdown: z\n                  .array(\n                    z.object({\n                      jurisdiction: z\n                        .string()\n                        .describe(\n                          'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      rate: z\n                        .string()\n                        .describe(\n                          'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Amount of tax calculated for this line item.'\n                        )\n                        .optional(),\n                      taxType: z\n                        .string()\n                        .describe(\n                          'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      taxName: z\n                        .string()\n                        .describe(\n                          'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      jurisdictionType: z\n                        .enum([\n                          'UNDEFINED',\n                          'COUNTRY',\n                          'STATE',\n                          'COUNTY',\n                          'CITY',\n                          'SPECIAL',\n                        ])\n                        .optional(),\n                      nonTaxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Non-taxable amount of the line item price.')\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of the line item price.')\n                        .optional(),\n                    })\n                  )\n                  .max(7)\n                  .optional(),\n              })\n              .describe(\n                'Represents all the relevant tax details for a specific line item.'\n              )\n              .optional(),\n            digitalFile: z\n              .object({\n                fileId: z\n                  .string()\n                  .describe('ID of the secure file in media.')\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                link: z\n                  .string()\n                  .describe(\n                    'Link will exist after the digital links have been generated on the order.'\n                  )\n                  .url()\n                  .min(1)\n                  .max(2000)\n                  .optional()\n                  .nullable(),\n                expirationDate: z\n                  .date()\n                  .describe('Link expiration time and date.')\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Digital file identifier, relevant only for items with type DIGITAL.'\n              )\n              .optional(),\n            subscriptionInfo: z\n              .object({\n                _id: z\n                  .string()\n                  .describe('Subscription ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                cycleNumber: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Subscription cycle. For example, if this order is for the 3rd cycle of a subscription, value will be `3`.'\n                  )\n                  .min(0)\n                  .optional(),\n                subscriptionOptionTitle: z\n                  .string()\n                  .describe(\n                    'Subscription option title. For example, `\"Monthly coffee Subscription\"`.'\n                  )\n                  .min(0)\n                  .max(150)\n                  .optional(),\n                subscriptionOptionDescription: z\n                  .string()\n                  .describe(\n                    'Subscription option description. For example, `\"1kg of selected coffee, once a month\"`.'\n                  )\n                  .max(500)\n                  .optional()\n                  .nullable(),\n                subscriptionSettings: z\n                  .object({\n                    frequency: z\n                      .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                      .optional(),\n                    interval: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of frequency units in a billing cycle. For example, frequency `MONTH` with interval `3` means billing every 3 months.'\n                      )\n                      .min(1)\n                      .max(3650)\n                      .optional()\n                      .nullable(),\n                    autoRenewal: z\n                      .boolean()\n                      .describe(\n                        'Whether subscription is renewed automatically at the end of each period.'\n                      )\n                      .optional(),\n                    billingCycles: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.'\n                      )\n                      .min(1)\n                      .optional()\n                      .nullable(),\n                    enableCustomerCancellation: z\n                      .boolean()\n                      .describe(\n                        'Whether to allow the customer to cancel the subscription.'\n                      )\n                      .optional(),\n                    freeTrialPeriod: z\n                      .object({\n                        frequency: z\n                          .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                          .optional(),\n                        interval: z\n                          .number()\n                          .int()\n                          .describe(\n                            'Number of frequency units in the free trial period. For example, frequency `MONTH` with interval `3` means a 3-month free trial.'\n                          )\n                          .min(1)\n                          .max(3650)\n                          .optional(),\n                      })\n                      .describe(\n                        'Period until first cycle starts. If None => no free trial'\n                      )\n                      .optional(),\n                  })\n                  .describe('Subscription detailed information.')\n                  .optional(),\n                chargesDescription: z\n                  .string()\n                  .describe(\n                    'Description of the charges that will be applied for subscription.'\n                  )\n                  .max(1000)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Subscription info.')\n              .optional(),\n            priceDescription: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                translated: z\n                  .string()\n                  .describe(\n                    \"Price description translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - \"Starts at $67\".'\n              )\n              .optional(),\n            depositAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Item\\'s price amount to be charged during checkout. Relevant for items with a `paymentOption` value of `\"DEPOSIT_ONLINE\"`.'\n              )\n              .optional(),\n            locations: z\n              .array(\n                z.object({\n                  _id: z\n                    .string()\n                    .describe('Location id in the associated owner app.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                  appId: z\n                    .string()\n                    .describe(\n                      'Location owner app, if not provided then the site business info locations will be used.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  quantity: z\n                    .number()\n                    .int()\n                    .describe('Quantity for specific location.')\n                    .min(1)\n                    .max(100000)\n                    .optional(),\n                  name: z\n                    .string()\n                    .describe('Location name.')\n                    .max(500)\n                    .optional()\n                    .nullable(),\n                })\n              )\n              .min(0)\n              .max(5)\n              .optional(),\n            lineItemPrice: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Total price **after** catalog discounts and line item discounts.'\n              )\n              .optional(),\n            taxableAddress: z\n              .intersection(\n                z.object({}),\n                z.xor([\n                  z.object({ addressType: z.never().optional() }),\n                  z.object({\n                    addressType: z\n                      .enum(['BUSINESS', 'BILLING', 'SHIPPING'])\n                      .describe(\n                        'taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly.'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Address used for tax calculation.')\n              .optional(),\n            priceUndetermined: z\n              .boolean()\n              .describe(\n                'Whether the price is not yet defined, and will be updated after the order is created.\\n\\nDefault: `false`'\n              )\n              .optional(),\n            extendedFields: z\n              .object({\n                namespaces: z\n                  .record(z.string(), z.record(z.string(), z.any()))\n                  .describe(\n                    'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Custom extended fields for the line item object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n              )\n              .optional(),\n            modifierGroups: z\n              .array(\n                z.object({\n                  _id: z\n                    .string()\n                    .describe('Modifier group ID.')\n                    .min(1)\n                    .max(36)\n                    .optional(),\n                  name: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                        )\n                        .min(1)\n                        .max(200)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                        )\n                        .min(1)\n                        .max(400)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Modifier group name.')\n                    .optional(),\n                  modifiers: z\n                    .array(\n                      z.object({\n                        _id: z\n                          .string()\n                          .describe('Modifier ID.')\n                          .min(1)\n                          .max(36)\n                          .optional(),\n                        quantity: z\n                          .number()\n                          .int()\n                          .describe('The quantity of this modifier.')\n                          .min(1)\n                          .max(100000)\n                          .optional()\n                          .nullable(),\n                        label: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                              )\n                              .min(1)\n                              .max(200)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                              )\n                              .min(1)\n                              .max(400)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Primary display label for the modifier.')\n                          .optional(),\n                        details: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                              )\n                              .min(1)\n                              .max(200)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                              )\n                              .min(1)\n                              .max(400)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Additional details.')\n                          .optional(),\n                        price: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('The price of the modifier.')\n                          .optional(),\n                      })\n                    )\n                    .min(1)\n                    .max(10)\n                    .optional(),\n                })\n              )\n              .max(10)\n              .optional(),\n          })\n        )\n        .min(1)\n        .max(300),\n      buyerInfo: z\n        .intersection(\n          z.object({\n            contactId: z\n              .string()\n              .describe(\n                \"Contact ID. Automatically created if one doesn't exist. For more information, see [Contacts API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts/contact-v4/introduction).\"\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            email: z\n              .string()\n              .describe(\"Buyer's email address.\")\n              .email()\n              .optional()\n              .nullable(),\n          }),\n          z.xor([\n            z.object({\n              visitorId: z.never().optional(),\n              memberId: z.never().optional(),\n            }),\n            z.object({\n              memberId: z.never().optional(),\n              visitorId: z\n                .string()\n                .describe(\n                  \"Visitor ID. Returned when the buyer isn't a logged-in site member.\"\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              visitorId: z.never().optional(),\n              memberId: z\n                .string()\n                .describe(\n                  'Member ID. Returned when the buyer is a logged-in site member.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n          ])\n        )\n        .describe('Buyer information.')\n        .optional(),\n      paymentStatus: z\n        .enum([\n          'UNSPECIFIED',\n          'NOT_PAID',\n          'PAID',\n          'PARTIALLY_REFUNDED',\n          'FULLY_REFUNDED',\n          'PENDING',\n          'PARTIALLY_PAID',\n          'PENDING_MERCHANT',\n          'CANCELED',\n          'DECLINED',\n        ])\n        .optional(),\n      fulfillmentStatus: z\n        .enum(['NOT_FULFILLED', 'FULFILLED', 'PARTIALLY_FULFILLED'])\n        .optional(),\n      buyerLanguage: z\n        .string()\n        .describe(\n          'Language for communication with the buyer. Defaults to the site language.\\nFor a site that supports multiple languages, this is the language the buyer selected.'\n        )\n        .optional()\n        .nullable(),\n      weightUnit: z.enum(['UNSPECIFIED_WEIGHT_UNIT', 'KG', 'LB']).optional(),\n      currency: z\n        .string()\n        .describe(\n          'Currency used for the pricing of this order in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.'\n        )\n        .optional()\n        .nullable(),\n      currencyConversionDetails: z\n        .object({\n          originalCurrency: z\n            .string()\n            .describe(\n              \"Currency used for the pricing of this order, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.\\n\\nThis currency is used to calculate the pricing before conversion to the buyer's payment currency.\"\n            ),\n          conversionRate: z\n            .string()\n            .describe(\n              'The rate used for converting the original currency to the currency used for payment.'\n            ),\n        })\n        .describe(\n          'Currency conversion details. For use with multi-currency sites.'\n        )\n        .optional(),\n      taxIncludedInPrices: z\n        .boolean()\n        .describe('Whether tax is included in line item prices.')\n        .optional(),\n      siteLanguage: z\n        .string()\n        .describe('Site language in which original values are shown.')\n        .optional()\n        .nullable(),\n      priceSummary: z\n        .object({\n          subtotal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Subtotal of all line items, before discounts and before tax.'\n            )\n            .optional(),\n          shipping: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total shipping price, before discounts and before tax.')\n            .optional(),\n          tax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax applied to the order.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total discount amount applied to the order.')\n            .optional(),\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\"Order's total price after discounts and tax.\")\n            .optional(),\n          totalAdditionalFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total additional fees before tax.')\n            .optional(),\n        })\n        .describe('Order price summary.'),\n      billingInfo: z\n        .object({\n          address: z\n            .object({\n              streetAddress: z\n                .object({\n                  name: z.string().optional(),\n                  number: z.string().optional(),\n                })\n                .optional(),\n              city: z.string().optional().nullable(),\n              subdivision: z.string().optional().nullable(),\n              country: z.string().optional().nullable(),\n              postalCode: z.string().optional().nullable(),\n              addressLine2: z.string().optional().nullable(),\n            })\n            .describe('Address.')\n            .optional(),\n          contactDetails: z\n            .object({\n              firstName: z\n                .string()\n                .describe('First name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              lastName: z\n                .string()\n                .describe('Last name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              phone: z.string().describe('Phone number.').optional().nullable(),\n              company: z\n                .string()\n                .describe('Company name.')\n                .max(1000)\n                .optional()\n                .nullable(),\n              vatId: z\n                .object({\n                  _id: z.string().describe(\"Customer's tax ID.\").optional(),\n                  type: z.enum(['UNSPECIFIED', 'CPF', 'CNPJ']).optional(),\n                })\n                .describe(\n                  'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                )\n                .optional(),\n            })\n            .describe('Contact details.')\n            .optional(),\n        })\n        .describe('Billing address and contact details.')\n        .optional(),\n      shippingInfo: z\n        .object({\n          carrierId: z\n            .string()\n            .describe(\n              'App Def Id of external provider which was a source of shipping info'\n            )\n            .min(1)\n            .max(100)\n            .optional()\n            .nullable(),\n          code: z\n            .string()\n            .describe(\n              'Unique code (or ID) of selected shipping option. For example, `\"usps_std_overnight\"`.'\n            )\n            .min(1)\n            .max(100)\n            .optional()\n            .nullable(),\n          title: z\n            .string()\n            .describe(\n              'Shipping option title.\\nFor example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.'\n            )\n            .max(250)\n            .optional(),\n          logistics: z\n            .intersection(\n              z.object({\n                deliveryTime: z\n                  .string()\n                  .describe(\n                    'Expected delivery time in free text. For example, `\"3-5 business days\"`.'\n                  )\n                  .max(500)\n                  .optional()\n                  .nullable(),\n                instructions: z\n                  .string()\n                  .describe(\n                    'Instructions for the carrier. For example, `\"Please knock on the door. If unanswered, please call contact number.\"`.'\n                  )\n                  .max(1000)\n                  .optional()\n                  .nullable(),\n                deliverByDate: z\n                  .date()\n                  .describe(\n                    'Deprecated - Latest expected delivery date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                  )\n                  .optional()\n                  .nullable(),\n                deliveryTimeSlot: z\n                  .object({\n                    from: z\n                      .date()\n                      .describe('Delivery slot starting time.')\n                      .optional()\n                      .nullable(),\n                    to: z\n                      .date()\n                      .describe('Delivery slot ending time.')\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Expected delivery time slot with start and end times.'\n                  )\n                  .optional(),\n              }),\n              z.xor([\n                z.object({\n                  shippingDestination: z.never().optional(),\n                  pickupDetails: z.never().optional(),\n                }),\n                z.object({\n                  pickupDetails: z.never().optional(),\n                  shippingDestination: z\n                    .object({\n                      address: z\n                        .object({\n                          streetAddress: z\n                            .object({\n                              name: z.string().optional(),\n                              number: z.string().optional(),\n                            })\n                            .optional(),\n                          city: z.string().optional().nullable(),\n                          subdivision: z.string().optional().nullable(),\n                          country: z.string().optional().nullable(),\n                          postalCode: z.string().optional().nullable(),\n                          addressLine2: z.string().optional().nullable(),\n                        })\n                        .describe('Address.')\n                        .optional(),\n                      contactDetails: z\n                        .object({\n                          firstName: z\n                            .string()\n                            .describe('First name.')\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          lastName: z\n                            .string()\n                            .describe('Last name.')\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          phone: z\n                            .string()\n                            .describe('Phone number.')\n                            .optional()\n                            .nullable(),\n                          company: z\n                            .string()\n                            .describe('Company name.')\n                            .max(1000)\n                            .optional()\n                            .nullable(),\n                          vatId: z\n                            .object({\n                              _id: z\n                                .string()\n                                .describe(\"Customer's tax ID.\")\n                                .optional(),\n                              type: z\n                                .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                                .optional(),\n                            })\n                            .describe(\n                              'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                            )\n                            .optional(),\n                        })\n                        .describe('Contact details.')\n                        .optional(),\n                    })\n                    .describe(\n                      \"Shipping destination address and contact details. For pickup orders, this contains the pickup location address, not the recipient's address.\"\n                    ),\n                }),\n                z.object({\n                  shippingDestination: z.never().optional(),\n                  pickupDetails: z\n                    .object({\n                      address: z\n                        .object({\n                          streetAddress: z\n                            .object({\n                              name: z.string().optional(),\n                              number: z.string().optional(),\n                            })\n                            .optional(),\n                          city: z.string().optional().nullable(),\n                          subdivision: z.string().optional().nullable(),\n                          country: z.string().optional().nullable(),\n                          postalCode: z.string().optional().nullable(),\n                          addressLine2: z.string().optional().nullable(),\n                        })\n                        .describe('Pickup address.')\n                        .optional(),\n                      pickupMethod: z\n                        .enum(['STORE_PICKUP', 'PICKUP_POINT'])\n                        .describe('Pickup method')\n                        .optional(),\n                    })\n                    .describe(\n                      'Pickup details for store pickup or pickup point orders.'\n                    ),\n                }),\n              ])\n            )\n            .describe('Shipping logistics.')\n            .optional(),\n          cost: z\n            .object({\n              price: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Shipping price for display purposes.')\n                .optional(),\n              totalPriceBeforeTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Total price of shipping after discounts (when relevant), and before tax.'\n                )\n                .optional(),\n              totalPriceAfterTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Shipping price after all discounts (if any exist), and after tax.'\n                )\n                .optional(),\n              taxDetails: z\n                .object({\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of this line item.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe(\n                      'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                    )\n                    .optional(),\n                  totalTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                    )\n                    .optional(),\n                })\n                .describe('Tax details.')\n                .optional(),\n              taxInfo: z\n                .object({\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                    )\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount for which tax is calculated.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe('Tax rate %, as a decimal point.')\n                    .optional()\n                    .nullable(),\n                  taxGroupId: z\n                    .string()\n                    .describe('Tax group ID.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxIncludedInPrice: z\n                    .boolean()\n                    .describe(\n                      'Indicates whether the price already includes tax.'\n                    )\n                    .optional(),\n                  taxBreakdown: z\n                    .array(\n                      z.object({\n                        jurisdiction: z\n                          .string()\n                          .describe(\n                            'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        rate: z\n                          .string()\n                          .describe(\n                            'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                          )\n                          .optional()\n                          .nullable(),\n                        taxAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Amount of tax calculated for this line item.'\n                          )\n                          .optional(),\n                        taxType: z\n                          .string()\n                          .describe(\n                            'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        taxName: z\n                          .string()\n                          .describe(\n                            'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        jurisdictionType: z\n                          .enum([\n                            'UNDEFINED',\n                            'COUNTRY',\n                            'STATE',\n                            'COUNTY',\n                            'CITY',\n                            'SPECIAL',\n                          ])\n                          .optional(),\n                        nonTaxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Non-taxable amount of the line item price.'\n                          )\n                          .optional(),\n                        taxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Taxable amount of the line item price.')\n                          .optional(),\n                      })\n                    )\n                    .max(7)\n                    .optional(),\n                })\n                .describe(\n                  'Represents all the relevant tax details for a shipping.'\n                )\n                .optional(),\n              discount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Shipping discount before tax.')\n                .optional(),\n            })\n            .describe('Shipping costs.')\n            .optional(),\n          region: z\n            .object({\n              name: z\n                .string()\n                .describe(\n                  'Name of shipping region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.'\n                )\n                .max(100)\n                .optional()\n                .nullable(),\n            })\n            .describe('Shipping region.')\n            .optional(),\n        })\n        .describe('Shipping info and selected shipping option details.')\n        .optional(),\n      buyerNote: z\n        .string()\n        .describe(\n          '[Buyer note](https://support.wix.com/en/article/wix-stores-viewing-buyer-notes) left by the customer.'\n        )\n        .max(1000)\n        .optional()\n        .nullable(),\n      status: z\n        .enum(['INITIALIZED', 'APPROVED', 'CANCELED', 'PENDING', 'REJECTED'])\n        .optional(),\n      archived: z\n        .boolean()\n        .describe('Whether order is archived.')\n        .optional()\n        .nullable(),\n      taxSummary: z\n        .object({\n          totalTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax.')\n            .optional(),\n        })\n        .describe(\n          'Tax summary.\\nDeprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.'\n        )\n        .optional(),\n      taxInfo: z\n        .object({\n          totalTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Calculated tax, added from line items.')\n            .optional(),\n          taxBreakdown: z\n            .array(\n              z.object({\n                taxName: z\n                  .string()\n                  .describe(\n                    'The name of the tax against which this tax amount was calculated.'\n                  )\n                  .max(200)\n                  .optional(),\n                taxType: z\n                  .string()\n                  .describe(\n                    \"The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.\"\n                  )\n                  .max(200)\n                  .optional(),\n                jurisdiction: z\n                  .string()\n                  .describe(\n                    'The name of the jurisdiction in which this tax detail applies.'\n                  )\n                  .max(200)\n                  .optional(),\n                jurisdictionType: z\n                  .enum([\n                    'UNDEFINED',\n                    'COUNTRY',\n                    'STATE',\n                    'COUNTY',\n                    'CITY',\n                    'SPECIAL',\n                  ])\n                  .optional(),\n                rate: z\n                  .string()\n                  .describe('The rate at which this tax detail was calculated.')\n                  .optional(),\n                aggregatedTaxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The sum of all the tax from line items that calculated by the tax identifiers.'\n                  )\n                  .optional(),\n              })\n            )\n            .min(0)\n            .max(50)\n            .optional(),\n          taxExempt: z\n            .boolean()\n            .describe(\n              'Whether the order is exempt from tax calculations.\\n\\nDefault: `false`'\n            )\n            .optional()\n            .nullable(),\n        })\n        .describe('Tax information.')\n        .optional(),\n      appliedDiscounts: z\n        .array(\n          z.intersection(\n            z.object({\n              discountType: z\n                .enum(['GLOBAL', 'SPECIFIC_ITEMS', 'SHIPPING'])\n                .optional(),\n              lineItemIds: z.array(z.string()).min(0).max(300).optional(),\n              _id: z\n                .string()\n                .describe('Discount ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              lineItemDiscounts: z\n                .array(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Line item ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    totalDiscount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Total discount amount for this line item.')\n                      .optional(),\n                  })\n                )\n                .max(300)\n                .optional(),\n            }),\n            z.xor([\n              z.object({\n                coupon: z.never().optional(),\n                merchantDiscount: z.never().optional(),\n                discountRule: z.never().optional(),\n              }),\n              z.object({\n                merchantDiscount: z.never().optional(),\n                discountRule: z.never().optional(),\n                coupon: z\n                  .object({\n                    _id: z.string().describe('Coupon ID.').optional(),\n                    code: z.string().describe('Coupon code.').optional(),\n                    name: z.string().describe('Coupon name.').optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Coupon value.')\n                      .optional(),\n                  })\n                  .describe('Coupon applied by the customer.'),\n              }),\n              z.object({\n                coupon: z.never().optional(),\n                discountRule: z.never().optional(),\n                merchantDiscount: z\n                  .intersection(\n                    z.object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Discount amount.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        discountReason: z.never().optional(),\n                        description: z.never().optional(),\n                      }),\n                      z.object({\n                        description: z.never().optional(),\n                        discountReason: z\n                          .enum([\n                            'UNSPECIFIED',\n                            'EXCHANGED_ITEMS',\n                            'BILLING_ADJUSTMENT',\n                          ])\n                          .describe('Predefined discount reason.'),\n                      }),\n                      z.object({\n                        discountReason: z.never().optional(),\n                        description: z\n                          .string()\n                          .describe('Custom discount description as free text.')\n                          .max(200),\n                      }),\n                    ])\n                  )\n                  .describe('Discount applied manually by the merchant.'),\n              }),\n              z.object({\n                coupon: z.never().optional(),\n                merchantDiscount: z.never().optional(),\n                discountRule: z\n                  .object({\n                    _id: z\n                      .string()\n                      .describe('Discount rule ID')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    name: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"Original discount rule name (in site's default language).\"\n                          )\n                          .min(1)\n                          .max(256)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            'Translated discount rule name according to buyer language. Defaults to `original` when not provided.'\n                          )\n                          .min(1)\n                          .max(500)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Discount rule name')\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Discount value.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Automatic discount applied by the system based on configured discount rules.'\n                  ),\n              }),\n            ])\n          )\n        )\n        .max(320)\n        .optional(),\n      activities: z\n        .array(\n          z.intersection(\n            z.object({\n              _id: z\n                .string()\n                .describe('Activity ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              authorEmail: z\n                .string()\n                .describe(\"Activity author's email.\")\n                .email()\n                .optional()\n                .nullable(),\n              _createdDate: z\n                .date()\n                .describe('Activity creation date and time.')\n                .optional()\n                .nullable(),\n              type: z\n                .enum([\n                  'ORDER_REFUNDED',\n                  'ORDER_PLACED',\n                  'ORDER_PAID',\n                  'ORDER_FULFILLED',\n                  'ORDER_NOT_FULFILLED',\n                  'ORDER_CANCELED',\n                  'DOWNLOAD_LINK_SENT',\n                  'TRACKING_NUMBER_ADDED',\n                  'TRACKING_NUMBER_EDITED',\n                  'TRACKING_LINK_ADDED',\n                  'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                  'INVOICE_ADDED',\n                  'INVOICE_REMOVED',\n                  'INVOICE_SENT',\n                  'FULFILLER_EMAIL_SENT',\n                  'SHIPPING_ADDRESS_EDITED',\n                  'EMAIL_EDITED',\n                  'PICKUP_READY_EMAIL_SENT',\n                  'CUSTOM_ACTIVITY',\n                  'MERCHANT_COMMENT',\n                  'ORDER_PARTIALLY_PAID',\n                  'DRAFT_ORDER_CHANGES_APPLIED',\n                  'SAVED_PAYMENT_METHOD',\n                  'AUTHORIZED_PAYMENT_CREATED',\n                  'AUTHORIZED_PAYMENT_CAPTURED',\n                  'AUTHORIZED_PAYMENT_VOIDED',\n                  'REFUND_INITIATED',\n                  'PAYMENT_REFUNDED',\n                  'PAYMENT_REFUND_FAILED',\n                  'REFUNDED_AS_STORE_CREDIT',\n                  'PAYMENT_PENDING',\n                  'PAYMENT_CANCELED',\n                  'PAYMENT_DECLINED',\n                  'ORDER_PENDING',\n                  'ORDER_REJECTED',\n                  'RECEIPT_CREATED',\n                  'RECEIPT_SENT',\n                  'CHARGEBACK_CREATED',\n                  'CHARGEBACK_REVERSED',\n                ])\n                .optional(),\n              activityType: z\n                .enum([\n                  'ORDER_PLACED',\n                  'ORDER_PAID',\n                  'ORDER_FULFILLED',\n                  'ORDER_NOT_FULFILLED',\n                  'ORDER_CANCELED',\n                  'DOWNLOAD_LINK_SENT',\n                  'TRACKING_NUMBER_ADDED',\n                  'TRACKING_NUMBER_EDITED',\n                  'TRACKING_LINK_ADDED',\n                  'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                  'INVOICE_ADDED',\n                  'INVOICE_REMOVED',\n                  'INVOICE_SENT',\n                  'FULFILLER_EMAIL_SENT',\n                  'SHIPPING_ADDRESS_EDITED',\n                  'EMAIL_EDITED',\n                  'PICKUP_READY_EMAIL_SENT',\n                  'MERCHANT_COMMENT',\n                  'ORDER_PARTIALLY_PAID',\n                  'DRAFT_ORDER_CHANGES_APPLIED',\n                  'SAVED_PAYMENT_METHOD',\n                  'AUTHORIZED_PAYMENT_CREATED',\n                  'AUTHORIZED_PAYMENT_CAPTURED',\n                  'AUTHORIZED_PAYMENT_VOIDED',\n                  'REFUND_INITIATED',\n                  'PAYMENT_REFUNDED',\n                  'PAYMENT_REFUND_FAILED',\n                  'REFUNDED_AS_STORE_CREDIT',\n                  'PAYMENT_PENDING',\n                  'PAYMENT_CANCELED',\n                  'PAYMENT_DECLINED',\n                  'ORDER_PENDING',\n                  'ORDER_REJECTED',\n                  'RECEIPT_CREATED',\n                  'RECEIPT_SENT',\n                  'CHARGEBACK_CREATED',\n                  'CHARGEBACK_REVERSED',\n                  'ORDER_REFUNDED',\n                ])\n                .optional(),\n            }),\n            z.xor([\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n              }),\n              z.object({\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                merchantComment: z\n                  .object({\n                    message: z\n                      .string()\n                      .describe('Merchant comment message.')\n                      .min(1)\n                      .max(5000)\n                      .optional(),\n                  })\n                  .describe(\n                    'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                orderRefunded: z\n                  .object({\n                    manual: z\n                      .boolean()\n                      .describe(\n                        'Whether order was refunded manually. For example, via payment provider or using cash.'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(200)\n                      .optional(),\n                  })\n                  .describe(\n                    'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                draftOrderChangesApplied: z\n                  .object({\n                    draftOrderId: z\n                      .string()\n                      .describe('Draft order id.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for edit, given by user (optional).')\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    changes: z\n                      .array(\n                        z.intersection(\n                          z.object({}),\n                          z.xor([\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                            }),\n                            z.object({\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemChanged: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name after change.')\n                                  .optional(),\n                                quantity: z\n                                  .object({\n                                    originalQuantity: z\n                                      .number()\n                                      .int()\n                                      .describe('Item quantity before update.')\n                                      .min(0)\n                                      .max(1000000)\n                                      .optional(),\n                                    newQuantity: z\n                                      .number()\n                                      .int()\n                                      .describe('Item quantity after update.')\n                                      .min(0)\n                                      .max(1000000)\n                                      .optional(),\n                                    diff: z\n                                      .number()\n                                      .int()\n                                      .describe(\n                                        'Difference between original and new quantity. Absolute value.'\n                                      )\n                                      .min(1)\n                                      .max(1000000)\n                                      .optional(),\n                                    deltaType: z\n                                      .enum([\n                                        'QUANTITY_INCREASED',\n                                        'QUANTITY_DECREASED',\n                                      ])\n                                      .describe(\n                                        'Type of quantity change: increase or decrease.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item quantity change.')\n                                  .optional(),\n                                price: z\n                                  .object({\n                                    originalPrice: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Item price before update.')\n                                      .optional(),\n                                    newPrice: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Item price after update.')\n                                      .optional(),\n                                  })\n                                  .describe('Item price change.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name.')\n                                  .optional(),\n                                quantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Added or removed item quantity.')\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name.')\n                                  .optional(),\n                                quantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Added or removed item quantity.')\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              discountAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Discount id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe(\n                                    'Discount name: coupon name / discount rule name / merchant discount description.'\n                                  )\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Discount amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              discountRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Discount id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe(\n                                    'Discount name: coupon name / discount rule name / merchant discount description.'\n                                  )\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Discount amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              additionalFeeAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Additional fee id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Additional fee name.')\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Additional fee amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              additionalFeeRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Additional fee id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Additional fee name.')\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Additional fee amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              totalPriceChanged: z.object({\n                                originalTotal: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s total price after discounts and tax. Before update'\n                                  )\n                                  .optional(),\n                                newTotal: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s total price after discounts and tax. After update'\n                                  )\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.object({\n                                originalShippingInfo: z\n                                  .object({\n                                    total: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Order’s shipping price.')\n                                      .optional(),\n                                    shippingTitle: z\n                                      .string()\n                                      .describe('Order’s shipping title.')\n                                      .max(250)\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s Shipping Information. Before update'\n                                  )\n                                  .optional(),\n                                newShippingInfo: z\n                                  .object({\n                                    total: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Order’s shipping price.')\n                                      .optional(),\n                                    shippingTitle: z\n                                      .string()\n                                      .describe('Order’s shipping title.')\n                                      .max(250)\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s Shipping Information. After update'\n                                  )\n                                  .optional(),\n                              }),\n                            }),\n                          ])\n                        )\n                      )\n                      .optional(),\n                  })\n                  .describe('Details of changes made by the Draft Orders API.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                savedPaymentMethod: z\n                  .object({\n                    name: z\n                      .string()\n                      .describe('Payment method name.')\n                      .min(1)\n                      .max(100)\n                      .optional(),\n                    description: z\n                      .string()\n                      .describe('Payment method description.')\n                      .min(1)\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Details of the payment method saved for the order.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentCreated: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment created.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentCaptured: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment captured.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentVoided: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment voided.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                refundInitiated: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    payments: z\n                      .array(\n                        z.intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe('Payment ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            externalRefund: z\n                              .boolean()\n                              .describe(\n                                \"Whether refund was made externally and manually on the payment provider's side.\"\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                            }),\n                            z.object({\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                              regular: z\n                                .object({\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                  lastFourDigits: z\n                                    .string()\n                                    .describe(\n                                      'The last 4 digits of the card number.'\n                                    )\n                                    .max(4)\n                                    .optional()\n                                    .nullable(),\n                                  brand: z\n                                    .string()\n                                    .describe(\"Card issuer's brand.\")\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Regular payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              membership: z.never().optional(),\n                              giftCard: z\n                                .object({\n                                  giftCardPaymentId: z\n                                    .string()\n                                    .describe('Gift card payment ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                })\n                                .describe('Gift card payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z\n                                .object({\n                                  membershipId: z\n                                    .string()\n                                    .describe('Membership ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Membership payment refund.'),\n                            }),\n                          ])\n                        )\n                      )\n                      .min(1)\n                      .max(50)\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentRefunded: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    payment: z\n                      .intersection(\n                        z.object({\n                          paymentId: z\n                            .string()\n                            .describe('Payment ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          externalRefund: z\n                            .boolean()\n                            .describe(\n                              \"Whether refund was made externally and manually on the payment provider's side.\"\n                            )\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                          }),\n                          z.object({\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                            regular: z\n                              .object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Regular payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            membership: z.never().optional(),\n                            giftCard: z\n                              .object({\n                                giftCardPaymentId: z\n                                  .string()\n                                  .describe('Gift card payment ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                              })\n                              .describe('Gift card payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z\n                              .object({\n                                membershipId: z\n                                  .string()\n                                  .describe('Membership ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Membership payment refund.'),\n                          }),\n                        ])\n                      )\n                      .describe('Details about the refunded payment.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentRefundFailed: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    payment: z\n                      .intersection(\n                        z.object({\n                          paymentId: z\n                            .string()\n                            .describe('Payment ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          externalRefund: z\n                            .boolean()\n                            .describe(\n                              \"Whether refund was made externally and manually on the payment provider's side.\"\n                            )\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                          }),\n                          z.object({\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                            regular: z\n                              .object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Regular payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            membership: z.never().optional(),\n                            giftCard: z\n                              .object({\n                                giftCardPaymentId: z\n                                  .string()\n                                  .describe('Gift card payment ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                              })\n                              .describe('Gift card payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z\n                              .object({\n                                membershipId: z\n                                  .string()\n                                  .describe('Membership ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Membership payment refund.'),\n                          }),\n                        ])\n                      )\n                      .describe('Details about the failed payment refund.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                refundedAsStoreCredit: z\n                  .object({\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of refund to store credit.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentPending: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a pending payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentCanceled: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a canceled payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentDeclined: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a declined payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                receiptCreated: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z.never().optional(),\n                      }),\n                      z.object({\n                        externalReceipt: z.never().optional(),\n                        wixReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by Wix.'),\n                      }),\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by an external system.'),\n                      }),\n                    ])\n                  )\n                  .describe('Receipt was added for associated payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                receiptSent: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z.never().optional(),\n                      }),\n                      z.object({\n                        externalReceipt: z.never().optional(),\n                        wixReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by Wix.'),\n                      }),\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by an external system.'),\n                      }),\n                    ])\n                  )\n                  .describe('Receipt sent to customer.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                chargebackCreated: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe('ID of the payment that received a chargeback.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    chargebackId: z\n                      .string()\n                      .describe('Chargeback ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback amount.')\n                      .optional(),\n                    paymentDetails: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Payment details.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Order received a chargeback for one of its payments.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'ID of the payment involved with the chargeback.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    chargebackId: z\n                      .string()\n                      .describe('Chargeback ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback amount.')\n                      .optional(),\n                    reversalAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback reversal amount.')\n                      .optional(),\n                    paymentDetails: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Payment details.')\n                      .optional(),\n                  })\n                  .describe(\n                    \"Chargeback reversed for one of the order's payments.\"\n                  ),\n              }),\n            ])\n          )\n        )\n        .max(1000)\n        .optional(),\n      attributionSource: z.enum(['UNSPECIFIED', 'FACEBOOK_ADS']).optional(),\n      createdBy: z\n        .intersection(\n          z.object({}),\n          z.xor([\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n            }),\n            z.object({\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n              userId: z\n                .string()\n                .describe(\n                  'User ID - when the order was created by a Wix user on behalf of a buyer.\\nFor example, via POS (point of service).'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n              memberId: z\n                .string()\n                .describe(\n                  'Member ID - when the order was created by a **logged in** site visitor.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              appId: z.never().optional(),\n              visitorId: z\n                .string()\n                .describe(\n                  'Visitor ID - when the order was created by a site visitor that was **not** logged in.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z\n                .string()\n                .describe(\n                  'App ID - when the order was created by an external application.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n          ])\n        )\n        .describe(\"ID of the order's initiator.\")\n        .optional(),\n      channelInfo: z\n        .object({\n          type: z\n            .enum([\n              'UNSPECIFIED',\n              'WEB',\n              'POS',\n              'EBAY',\n              'AMAZON',\n              'OTHER_PLATFORM',\n              'WIX_APP_STORE',\n              'WIX_INVOICES',\n              'BACKOFFICE_MERCHANT',\n              'WISH',\n              'CLASS_PASS',\n              'GLOBAL_E',\n              'FACEBOOK',\n              'ETSY',\n              'TIKTOK',\n              'FAIRE_COM',\n              'PAYPAL_AGENTIC_CHECKOUT',\n              'STRIPE_AGENTIC_CHECKOUT',\n            ])\n            .optional(),\n          externalOrderId: z\n            .string()\n            .describe(\n              'Reference to an order ID from an external system. Relevant when recording orders from external platforms.'\n            )\n            .max(100)\n            .optional()\n            .nullable(),\n          externalOrderUrl: z\n            .string()\n            .describe(\n              'URL to the order in the external system. Relevant when recording orders from external platforms.'\n            )\n            .max(300)\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Information about the sales channel that submitted this order.'\n        ),\n      seenByAHuman: z\n        .boolean()\n        .describe(\n          'Whether a human has seen the order. Set when an order is clicked on in the dashboard.'\n        )\n        .optional()\n        .nullable(),\n      checkoutId: z\n        .string()\n        .describe('Checkout ID.')\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      customFields: z\n        .array(\n          z.object({\n            value: z\n              .any()\n              .describe('Custom field value.')\n              .optional()\n              .nullable(),\n            title: z\n              .string()\n              .describe('Custom field title.')\n              .min(1)\n              .max(500)\n              .optional(),\n            translatedTitle: z\n              .string()\n              .describe('Translated custom field title.')\n              .min(1)\n              .max(500)\n              .optional()\n              .nullable(),\n          })\n        )\n        .optional(),\n      balanceSummary: z\n        .object({\n          balance: z\n            .object({\n              amount: z\n                .string()\n                .describe(\n                  'Balance amount.\\n\\nA negative `amount` represents the amount to be refunded. This can happen due to overcharging or the order being modified after a payment has been made.'\n                )\n                .optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Current amount left to pay.')\n            .optional(),\n          paid: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Sum of all approved and successful payments.\\n\\nThe value includes payments that have subsequently been fully or partially refunded.'\n            )\n            .optional(),\n          refunded: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all successfully refunded payments.')\n            .optional(),\n          authorized: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all authorized payments.')\n            .optional(),\n          pendingRefund: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all pending refund transactions.')\n            .optional(),\n          pending: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all pending transactions.')\n            .optional(),\n          chargeback: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all transaction chargebacks.')\n            .optional(),\n          chargebackReversal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all chargeback reversals.')\n            .optional(),\n          platformFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total platform fees actually charged across all payments.\\nThis reflects amounts collected, which may differ from the expected fees in `order.platformFeeSummary`.'\n            )\n            .optional(),\n          totalMinusPlatformFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Order total after deducting platform fees. Represents the net amount payable to the merchant.'\n            )\n            .optional(),\n        })\n        .describe('Balance summary.')\n        .optional(),\n      additionalFees: z\n        .array(\n          z.object({\n            code: z\n              .string()\n              .describe(\"Additional fee's unique code for future processing.\")\n              .min(1)\n              .max(100)\n              .optional()\n              .nullable(),\n            name: z\n              .string()\n              .describe('Name of additional fee.')\n              .min(1)\n              .max(50)\n              .optional(),\n            price: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price.\")\n              .optional(),\n            taxDetails: z\n              .object({\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Taxable amount of this line item.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe(\n                    'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                  )\n                  .optional(),\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                  )\n                  .optional(),\n              })\n              .describe('Tax details.')\n              .optional(),\n            taxInfo: z\n              .object({\n                taxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                  )\n                  .optional(),\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Amount for which tax is calculated.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe('Tax rate %, as a decimal point.')\n                  .optional()\n                  .nullable(),\n                taxGroupId: z\n                  .string()\n                  .describe('Tax group ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                taxIncludedInPrice: z\n                  .boolean()\n                  .describe('Indicates whether the price already includes tax.')\n                  .optional(),\n                taxBreakdown: z\n                  .array(\n                    z.object({\n                      jurisdiction: z\n                        .string()\n                        .describe(\n                          'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      rate: z\n                        .string()\n                        .describe(\n                          'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Amount of tax calculated for this line item.'\n                        )\n                        .optional(),\n                      taxType: z\n                        .string()\n                        .describe(\n                          'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      taxName: z\n                        .string()\n                        .describe(\n                          'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      jurisdictionType: z\n                        .enum([\n                          'UNDEFINED',\n                          'COUNTRY',\n                          'STATE',\n                          'COUNTY',\n                          'CITY',\n                          'SPECIAL',\n                        ])\n                        .optional(),\n                      nonTaxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Non-taxable amount of the line item price.')\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of the line item price.')\n                        .optional(),\n                    })\n                  )\n                  .max(7)\n                  .optional(),\n              })\n              .describe(\n                'Represents all the relevant tax details for additional fee.'\n              )\n              .optional(),\n            providerAppId: z\n              .string()\n              .describe(\"SPI implementer's `appId`.\")\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            priceBeforeTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price before tax.\")\n              .optional(),\n            priceAfterTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price after tax.\")\n              .optional(),\n            _id: z\n              .string()\n              .describe(\"Additional fee's id.\")\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional(),\n            lineItemIds: z.array(z.string()).optional(),\n            source: z\n              .enum([\n                'SERVICE_PLUGIN',\n                'ITEM',\n                'MANUAL',\n                'SHIPPING',\n                'PLATFORM',\n              ])\n              .optional(),\n          })\n        )\n        .max(100)\n        .optional(),\n      extendedFields: z\n        .object({\n          namespaces: z\n            .record(z.string(), z.record(z.string(), z.any()))\n            .describe(\n              'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n            )\n            .optional(),\n        })\n        .describe(\n          'Custom field data for the order object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n        )\n        .optional(),\n      purchaseFlowId: z\n        .string()\n        .describe(\n          'Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.'\n        )\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      recipientInfo: z\n        .object({\n          address: z\n            .object({\n              streetAddress: z\n                .object({\n                  name: z.string().optional(),\n                  number: z.string().optional(),\n                })\n                .optional(),\n              city: z.string().optional().nullable(),\n              subdivision: z.string().optional().nullable(),\n              country: z.string().optional().nullable(),\n              postalCode: z.string().optional().nullable(),\n              addressLine2: z.string().optional().nullable(),\n            })\n            .describe('Address.')\n            .optional(),\n          contactDetails: z\n            .object({\n              firstName: z\n                .string()\n                .describe('First name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              lastName: z\n                .string()\n                .describe('Last name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              phone: z.string().describe('Phone number.').optional().nullable(),\n              company: z\n                .string()\n                .describe('Company name.')\n                .max(1000)\n                .optional()\n                .nullable(),\n              vatId: z\n                .object({\n                  _id: z.string().describe(\"Customer's tax ID.\").optional(),\n                  type: z.enum(['UNSPECIFIED', 'CPF', 'CNPJ']).optional(),\n                })\n                .describe(\n                  'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                )\n                .optional(),\n            })\n            .describe('Contact details.')\n            .optional(),\n        })\n        .describe(\n          \"Final recipient's address and contact details.\\n\\nThis field represents who will ultimately receive the order. It may differ from `shippingInfo.logistics.shippingDestination` when:\\n+ The chosen shipping option is a pickup point or store pickup, where `shippingDestination` contains the pickup location.\\n+ No shipping option is selected.\"\n        )\n        .optional(),\n      tags: z\n        .object({\n          privateTags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n            )\n            .optional(),\n          tags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n            )\n            .optional(),\n        })\n        .describe(\n          'Order tags.\\n\\n[Tags](https://dev.wix.com/docs/rest/business-management/tags/introduction) are labels attached to entities, allowing for flexible categorization and data management.'\n        )\n        .optional(),\n      purchasedDate: z\n        .date()\n        .describe(\n          'Date and time the order was originally purchased in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.\\nUsed for migration from external systems.'\n        )\n        .optional()\n        .nullable(),\n      businessLocation: z\n        .object({\n          _id: z\n            .string()\n            .describe(\n              'Location ID.\\nLearn more about the [Wix Locations API](https://dev.wix.com/docs/rest/business-management/locations/introduction).'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            )\n            .optional(),\n          name: z\n            .string()\n            .describe('Location name.')\n            .min(1)\n            .max(500)\n            .optional(),\n        })\n        .describe('Order location.')\n        .optional(),\n      payAfterFreeTrial: z\n        .object({\n          subtotal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Subtotal of all line items, before discounts and before tax.'\n            )\n            .optional(),\n          shipping: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total shipping price, before discounts and before tax.')\n            .optional(),\n          tax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax applied to the order.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total discount amount applied to the order.')\n            .optional(),\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\"Order's total price after discounts and tax.\")\n            .optional(),\n          totalAdditionalFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total additional fees before tax.')\n            .optional(),\n        })\n        .describe(\n          'Pay after free trial price summary. Price summary that should be paid for subscriptions after free trial period.'\n        )\n        .optional(),\n      platformFeeSummary: z\n        .object({\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total sum of all platform fees.')\n            .optional(),\n          totalPassOn: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total amount of platform fees with `PASS_ON` charge type.'\n            )\n            .optional(),\n          totalAbsorbed: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total amount of platform fees with `ABSORBED` charge type.'\n            )\n            .optional(),\n          fees: z\n            .array(\n              z.object({\n                name: z\n                  .object({\n                    original: z\n                      .string()\n                      .describe(\n                        \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                      )\n                      .min(1)\n                      .max(200)\n                      .optional(),\n                    translated: z\n                      .string()\n                      .describe(\n                        \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                      )\n                      .min(1)\n                      .max(400)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Platform fee name.')\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Platform fee amount.')\n                  .optional(),\n                lineItemId: z\n                  .string()\n                  .describe('ID of the line item the platform fee applies to.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                chargeType: z.enum(['PASS_ON', 'ABSORBED']).optional(),\n                percentageRate: z\n                  .string()\n                  .describe(\n                    'Percentage rate charged as platform fee.\\nThe fee rate percentage expressed as a decimal fraction between 0 and 1. For example, `0.05` for 5%.'\n                  )\n                  .optional(),\n              })\n            )\n            .max(300)\n            .optional(),\n        })\n        .describe(\n          'Summary of platform fees for this order, including totals by charge type and a breakdown of individual fees.'\n        )\n        .optional(),\n    })\n    .describe('Order info.'),\n  options: z\n    .object({\n      settings: z\n        .object({\n          orderApprovalStrategy: z\n            .enum(['DEFAULT', 'PAYMENT_RECEIVED', 'PAYMENT_METHOD_SAVED'])\n            .optional(),\n          notifications: z\n            .object({\n              sendNotificationToBuyer: z\n                .boolean()\n                .describe(\n                  'Whether to send notification to the buyer.\\n\\nDefault: `true`'\n                )\n                .optional()\n                .nullable(),\n              sendNotificationsToBusiness: z\n                .boolean()\n                .describe(\n                  'Whether to send notifications to the business.\\n\\nDefault: `true`'\n                )\n                .optional()\n                .nullable(),\n            })\n            .describe('Notification settings to be applied on order creation')\n            .optional(),\n        })\n        .describe('Determine order lifecycle')\n        .optional(),\n    })\n    .optional(),\n});\nexport const CreateOrderResponse = z.object({\n  _id: z\n    .string()\n    .describe('Order ID.')\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    )\n    .optional()\n    .nullable(),\n  number: z\n    .string()\n    .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n    .describe(\n      \"Order number displayed in the site owner's dashboard (auto-generated).\"\n    )\n    .optional(),\n  _createdDate: z\n    .date()\n    .describe(\n      'Date and time the order was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n    )\n    .optional()\n    .nullable(),\n  _updatedDate: z\n    .date()\n    .describe(\n      'Date and time the order was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n    )\n    .optional()\n    .nullable(),\n  lineItems: z\n    .array(\n      z.object({\n        _id: z.string().describe('Line item ID.').optional(),\n        productName: z\n          .object({\n            original: z\n              .string()\n              .describe(\n                \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n              )\n              .min(1)\n              .max(200)\n              .optional(),\n            translated: z\n              .string()\n              .describe(\n                \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n              )\n              .min(1)\n              .max(400)\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Item name.\\n\\n+ Stores - `product.name`\\n+ Bookings - `service.info.name`\\n+ Events - `ticket.name`'\n          )\n          .optional(),\n        catalogReference: z\n          .object({\n            catalogItemId: z\n              .string()\n              .describe('ID of the item within the catalog it belongs to.')\n              .min(1)\n              .max(36)\n              .optional(),\n            appId: z\n              .string()\n              .describe(\n                'ID of the app providing the catalog.\\n\\nYou can get your app\\'s ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\\n\\nFor items from Wix catalogs, the following values always apply:\\n+ Wix Stores: `\"215238eb-22a5-4c36-9e7b-e7c08025e04e\"`\\n+ Wix Bookings: `\"13d21c63-b5ec-5912-8397-c3a5ddb27a97\"`\\n+ Wix Restaurants: `\"9a5d83fd-8570-482e-81ab-cfa88942ee60\"`'\n              )\n              .min(1)\n              .optional(),\n            options: z\n              .record(z.string(), z.any())\n              .describe(\n                'Additional item details in `key:value` pairs.\\n\\nUse this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items.\\n\\nFor Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration)\\nor [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction).'\n              )\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            \"References to the line item's origin catalog. Empty for custom line items.\"\n          )\n          .optional(),\n        quantity: z\n          .number()\n          .int()\n          .describe('Line item quantity.')\n          .min(1)\n          .max(100000)\n          .optional(),\n        totalDiscount: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Total discount for this line item's entire quantity.\")\n          .optional(),\n        descriptionLines: z\n          .array(\n            z.intersection(\n              z.object({\n                name: z\n                  .object({\n                    original: z\n                      .string()\n                      .describe(\n                        \"Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                      )\n                      .max(100)\n                      .optional(),\n                    translated: z\n                      .string()\n                      .describe(\n                        \"Description line name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Description line name.')\n                  .optional(),\n              }),\n              z.xor([\n                z.object({\n                  plainText: z.never().optional(),\n                  colorInfo: z.never().optional(),\n                }),\n                z.object({\n                  colorInfo: z.never().optional(),\n                  plainText: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                        )\n                        .max(600)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"Description line plain text value translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                        )\n                        .max(600)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Description line plain text value.'),\n                }),\n                z.object({\n                  plainText: z.never().optional(),\n                  colorInfo: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                        )\n                        .max(500)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"Description line color name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                        )\n                        .max(500)\n                        .optional()\n                        .nullable(),\n                      code: z\n                        .string()\n                        .describe('HEX or RGB color code for display.')\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Description line color value.'),\n                }),\n              ])\n            )\n          )\n          .min(0)\n          .max(20)\n          .optional(),\n        image: z.string().describe('Line item image.').optional(),\n        physicalProperties: z\n          .object({\n            weight: z\n              .number()\n              .describe(\n                'Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request.'\n              )\n              .optional()\n              .nullable(),\n            sku: z\n              .string()\n              .describe(\n                'Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).'\n              )\n              .max(40)\n              .optional()\n              .nullable(),\n            shippable: z\n              .boolean()\n              .describe('Whether this line item is shippable.')\n              .optional(),\n          })\n          .describe(\n            'Physical properties of the item. When relevant, contains information such as SKU and item weight.'\n          )\n          .optional(),\n        itemType: z\n          .intersection(\n            z.object({}),\n            z.xor([\n              z.object({\n                preset: z.never().optional(),\n                custom: z.never().optional(),\n              }),\n              z.object({\n                custom: z.never().optional(),\n                preset: z\n                  .enum([\n                    'UNRECOGNISED',\n                    'PHYSICAL',\n                    'DIGITAL',\n                    'GIFT_CARD',\n                    'SERVICE',\n                  ])\n                  .describe('Preset item type.'),\n              }),\n              z.object({\n                preset: z.never().optional(),\n                custom: z\n                  .string()\n                  .describe(\n                    'Custom item type. When none of the preset types are suitable, specifies the custom type.'\n                  ),\n              }),\n            ])\n          )\n          .describe('Item type. Either a preset type or custom.')\n          .optional(),\n        fulfillerId: z\n          .string()\n          .describe(\n            'Fulfiller ID. Field is empty when the line item is self-fulfilled.\\nTo get fulfillment information, pass the order ID to [List Fulfillments For Single Order](https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/order-fulfillments/list-fulfillments-for-single-order).'\n          )\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        refundQuantity: z\n          .number()\n          .int()\n          .describe('Number of items that were refunded.')\n          .min(0)\n          .max(100000)\n          .optional()\n          .nullable(),\n        restockQuantity: z\n          .number()\n          .int()\n          .describe(\n            'Number of items restocked.\\n\\nFor a per-location breakdown, see `restockLocations`.'\n          )\n          .min(0)\n          .max(100000)\n          .optional()\n          .nullable(),\n        price: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Line item price after line item discounts for display purposes.'\n          )\n          .optional(),\n        priceBeforeDiscounts: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Line item price before line item discounts for display purposes. Defaults to `price` when not provided.'\n          )\n          .optional(),\n        totalPriceBeforeTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe('Total price after discounts, and before tax.')\n          .optional(),\n        totalPriceAfterTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe('Total price after all discounts and tax.')\n          .optional(),\n        paymentOption: z\n          .enum([\n            'FULL_PAYMENT_ONLINE',\n            'FULL_PAYMENT_OFFLINE',\n            'MEMBERSHIP',\n            'DEPOSIT_ONLINE',\n            'MEMBERSHIP_OFFLINE',\n            'MEMBERSHIP_ONLINE_WITH_OFFLINE_REMAINDER',\n          ])\n          .describe(\n            'Type of selected payment option for current item.\\n\\nDefault: `FULL_PAYMENT_ONLINE`'\n          )\n          .optional(),\n        taxDetails: z\n          .object({\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Taxable amount of this line item.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe(\n                'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n              )\n              .optional(),\n            totalTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n              )\n              .optional(),\n          })\n          .describe(\n            'Deprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.\\nTax details for this line item.'\n          )\n          .optional(),\n        taxInfo: z\n          .object({\n            taxAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n              )\n              .optional(),\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Amount for which tax is calculated.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe('Tax rate %, as a decimal point.')\n              .optional()\n              .nullable(),\n            taxGroupId: z\n              .string()\n              .describe('Tax group ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            taxIncludedInPrice: z\n              .boolean()\n              .describe('Indicates whether the price already includes tax.')\n              .optional(),\n            taxBreakdown: z\n              .array(\n                z.object({\n                  jurisdiction: z\n                    .string()\n                    .describe(\n                      'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  rate: z\n                    .string()\n                    .describe(\n                      'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount of tax calculated for this line item.')\n                    .optional(),\n                  taxType: z\n                    .string()\n                    .describe(\n                      'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  taxName: z\n                    .string()\n                    .describe(\n                      'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  jurisdictionType: z\n                    .enum([\n                      'UNDEFINED',\n                      'COUNTRY',\n                      'STATE',\n                      'COUNTY',\n                      'CITY',\n                      'SPECIAL',\n                    ])\n                    .describe(\n                      'Type of jurisdiction that taxes were calculated for.'\n                    )\n                    .optional(),\n                  nonTaxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Non-taxable amount of the line item price.')\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of the line item price.')\n                    .optional(),\n                })\n              )\n              .max(7)\n              .optional(),\n          })\n          .describe(\n            'Represents all the relevant tax details for a specific line item.'\n          )\n          .optional(),\n        digitalFile: z\n          .object({\n            fileId: z\n              .string()\n              .describe('ID of the secure file in media.')\n              .min(1)\n              .max(100)\n              .optional(),\n            link: z\n              .string()\n              .describe(\n                'Link will exist after the digital links have been generated on the order.'\n              )\n              .url()\n              .min(1)\n              .max(2000)\n              .optional()\n              .nullable(),\n            expirationDate: z\n              .date()\n              .describe('Link expiration time and date.')\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Digital file identifier, relevant only for items with type DIGITAL.'\n          )\n          .optional(),\n        subscriptionInfo: z\n          .object({\n            _id: z\n              .string()\n              .describe('Subscription ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            cycleNumber: z\n              .number()\n              .int()\n              .describe(\n                'Subscription cycle. For example, if this order is for the 3rd cycle of a subscription, value will be `3`.'\n              )\n              .min(0)\n              .optional(),\n            subscriptionOptionTitle: z\n              .string()\n              .describe(\n                'Subscription option title. For example, `\"Monthly coffee Subscription\"`.'\n              )\n              .min(0)\n              .max(150)\n              .optional(),\n            subscriptionOptionDescription: z\n              .string()\n              .describe(\n                'Subscription option description. For example, `\"1kg of selected coffee, once a month\"`.'\n              )\n              .max(500)\n              .optional()\n              .nullable(),\n            subscriptionSettings: z\n              .object({\n                frequency: z\n                  .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                  .describe('Frequency of recurring payment.')\n                  .optional(),\n                interval: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Number of frequency units in a billing cycle. For example, frequency `MONTH` with interval `3` means billing every 3 months.'\n                  )\n                  .min(1)\n                  .max(3650)\n                  .optional()\n                  .nullable(),\n                autoRenewal: z\n                  .boolean()\n                  .describe(\n                    'Whether subscription is renewed automatically at the end of each period.'\n                  )\n                  .optional(),\n                billingCycles: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.'\n                  )\n                  .min(1)\n                  .optional()\n                  .nullable(),\n                enableCustomerCancellation: z\n                  .boolean()\n                  .describe(\n                    'Whether to allow the customer to cancel the subscription.'\n                  )\n                  .optional(),\n                freeTrialPeriod: z\n                  .object({\n                    frequency: z\n                      .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                      .describe(\n                        'Frequency of period. Values: DAY, WEEK, MONTH, YEAR'\n                      )\n                      .optional(),\n                    interval: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of frequency units in the free trial period. For example, frequency `MONTH` with interval `3` means a 3-month free trial.'\n                      )\n                      .min(1)\n                      .max(3650)\n                      .optional(),\n                  })\n                  .describe(\n                    'Period until first cycle starts. If None => no free trial'\n                  )\n                  .optional(),\n              })\n              .describe('Subscription detailed information.')\n              .optional(),\n            chargesDescription: z\n              .string()\n              .describe(\n                'Description of the charges that will be applied for subscription.'\n              )\n              .max(1000)\n              .optional()\n              .nullable(),\n          })\n          .describe('Subscription info.')\n          .optional(),\n        priceDescription: z\n          .object({\n            original: z\n              .string()\n              .describe(\n                \"__Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n              )\n              .min(1)\n              .max(100)\n              .optional(),\n            translated: z\n              .string()\n              .describe(\n                \"Price description translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n              )\n              .min(1)\n              .max(100)\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - \"Starts at $67\".'\n          )\n          .optional(),\n        depositAmount: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Item\\'s price amount to be charged during checkout. Relevant for items with a `paymentOption` value of `\"DEPOSIT_ONLINE\"`.'\n          )\n          .optional(),\n        locations: z\n          .array(\n            z.object({\n              _id: z\n                .string()\n                .describe('Location id in the associated owner app.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional(),\n              appId: z\n                .string()\n                .describe(\n                  'Location owner app, if not provided then the site business info locations will be used.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              quantity: z\n                .number()\n                .int()\n                .describe('Quantity for specific location.')\n                .min(1)\n                .max(100000)\n                .optional(),\n              name: z\n                .string()\n                .describe('Location name.')\n                .max(500)\n                .optional()\n                .nullable(),\n            })\n          )\n          .min(0)\n          .max(5)\n          .optional(),\n        lineItemPrice: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Total price **after** catalog discounts and line item discounts.'\n          )\n          .optional(),\n        taxableAddress: z\n          .intersection(\n            z.object({}),\n            z.xor([\n              z.object({ addressType: z.never().optional() }),\n              z.object({\n                addressType: z\n                  .enum(['BUSINESS', 'BILLING', 'SHIPPING'])\n                  .describe(\n                    'taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly.'\n                  ),\n              }),\n            ])\n          )\n          .describe('Address used for tax calculation.')\n          .optional(),\n        priceUndetermined: z\n          .boolean()\n          .describe(\n            'Whether the price is not yet defined, and will be updated after the order is created.\\n\\nDefault: `false`'\n          )\n          .optional(),\n        extendedFields: z\n          .object({\n            namespaces: z\n              .record(z.string(), z.record(z.string(), z.any()))\n              .describe(\n                'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n              )\n              .optional(),\n          })\n          .describe(\n            'Custom extended fields for the line item object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n          )\n          .optional(),\n        modifierGroups: z\n          .array(\n            z.object({\n              _id: z\n                .string()\n                .describe('Modifier group ID.')\n                .min(1)\n                .max(36)\n                .optional(),\n              name: z\n                .object({\n                  original: z\n                    .string()\n                    .describe(\n                      \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                    )\n                    .min(1)\n                    .max(200)\n                    .optional(),\n                  translated: z\n                    .string()\n                    .describe(\n                      \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                    )\n                    .min(1)\n                    .max(400)\n                    .optional()\n                    .nullable(),\n                })\n                .describe('Modifier group name.')\n                .optional(),\n              modifiers: z\n                .array(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Modifier ID.')\n                      .min(1)\n                      .max(36)\n                      .optional(),\n                    quantity: z\n                      .number()\n                      .int()\n                      .describe('The quantity of this modifier.')\n                      .min(1)\n                      .max(100000)\n                      .optional()\n                      .nullable(),\n                    label: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                          )\n                          .min(1)\n                          .max(200)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                          )\n                          .min(1)\n                          .max(400)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Primary display label for the modifier.')\n                      .optional(),\n                    details: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                          )\n                          .min(1)\n                          .max(200)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                          )\n                          .min(1)\n                          .max(400)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Additional details.')\n                      .optional(),\n                    price: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('The price of the modifier.')\n                      .optional(),\n                  })\n                )\n                .min(1)\n                .max(10)\n                .optional(),\n            })\n          )\n          .max(10)\n          .optional(),\n      })\n    )\n    .min(1)\n    .max(300)\n    .optional(),\n  buyerInfo: z\n    .intersection(\n      z.object({\n        contactId: z\n          .string()\n          .describe(\n            \"Contact ID. Automatically created if one doesn't exist. For more information, see [Contacts API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts/contact-v4/introduction).\"\n          )\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        email: z\n          .string()\n          .describe(\"Buyer's email address.\")\n          .email()\n          .optional()\n          .nullable(),\n      }),\n      z.xor([\n        z.object({\n          visitorId: z.never().optional(),\n          memberId: z.never().optional(),\n        }),\n        z.object({\n          memberId: z.never().optional(),\n          visitorId: z\n            .string()\n            .describe(\n              \"Visitor ID. Returned when the buyer isn't a logged-in site member.\"\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          visitorId: z.never().optional(),\n          memberId: z\n            .string()\n            .describe(\n              'Member ID. Returned when the buyer is a logged-in site member.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n      ])\n    )\n    .describe('Buyer information.')\n    .optional(),\n  paymentStatus: z\n    .enum([\n      'UNSPECIFIED',\n      'NOT_PAID',\n      'PAID',\n      'PARTIALLY_REFUNDED',\n      'FULLY_REFUNDED',\n      'PENDING',\n      'PARTIALLY_PAID',\n      'PENDING_MERCHANT',\n      'CANCELED',\n      'DECLINED',\n    ])\n    .describe('Order payment status.')\n    .optional(),\n  fulfillmentStatus: z\n    .enum(['NOT_FULFILLED', 'FULFILLED', 'PARTIALLY_FULFILLED'])\n    .describe('Order fulfillment status.')\n    .optional(),\n  buyerLanguage: z\n    .string()\n    .describe(\n      'Language for communication with the buyer. Defaults to the site language.\\nFor a site that supports multiple languages, this is the language the buyer selected.'\n    )\n    .optional()\n    .nullable(),\n  weightUnit: z\n    .enum(['UNSPECIFIED_WEIGHT_UNIT', 'KG', 'LB'])\n    .describe(\"Weight measurement unit - defaults to site's weight unit.\")\n    .optional(),\n  currency: z\n    .string()\n    .describe(\n      'Currency used for the pricing of this order in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.'\n    )\n    .optional()\n    .nullable(),\n  currencyConversionDetails: z\n    .object({\n      originalCurrency: z\n        .string()\n        .describe(\n          \"Currency used for the pricing of this order, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.\\n\\nThis currency is used to calculate the pricing before conversion to the buyer's payment currency.\"\n        )\n        .optional()\n        .nullable(),\n      conversionRate: z\n        .string()\n        .describe(\n          'The rate used for converting the original currency to the currency used for payment.'\n        )\n        .optional()\n        .nullable(),\n    })\n    .describe('Currency conversion details. For use with multi-currency sites.')\n    .optional(),\n  taxIncludedInPrices: z\n    .boolean()\n    .describe('Whether tax is included in line item prices.')\n    .optional(),\n  siteLanguage: z\n    .string()\n    .describe('Site language in which original values are shown.')\n    .optional()\n    .nullable(),\n  priceSummary: z\n    .object({\n      subtotal: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Subtotal of all line items, before discounts and before tax.'\n        )\n        .optional(),\n      shipping: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total shipping price, before discounts and before tax.')\n        .optional(),\n      tax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total tax applied to the order.')\n        .optional(),\n      discount: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total discount amount applied to the order.')\n        .optional(),\n      total: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\"Order's total price after discounts and tax.\")\n        .optional(),\n      totalAdditionalFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total additional fees before tax.')\n        .optional(),\n    })\n    .describe('Order price summary.')\n    .optional(),\n  billingInfo: z\n    .object({\n      address: z\n        .object({\n          streetAddress: z\n            .object({\n              name: z.string().optional(),\n              number: z.string().optional(),\n            })\n            .optional(),\n          city: z.string().optional().nullable(),\n          subdivision: z.string().optional().nullable(),\n          country: z.string().optional().nullable(),\n          postalCode: z.string().optional().nullable(),\n          addressLine2: z.string().optional().nullable(),\n        })\n        .describe('Address.')\n        .optional(),\n      contactDetails: z\n        .object({\n          firstName: z\n            .string()\n            .describe('First name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          lastName: z\n            .string()\n            .describe('Last name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          phone: z.string().describe('Phone number.').optional().nullable(),\n          company: z\n            .string()\n            .describe('Company name.')\n            .max(1000)\n            .optional()\n            .nullable(),\n          vatId: z\n            .object({\n              _id: z.string().describe(\"Customer's tax ID.\").optional(),\n              type: z\n                .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                .describe(\n                  'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                )\n                .optional(),\n            })\n            .describe(\n              'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n            )\n            .optional(),\n        })\n        .describe('Contact details.')\n        .optional(),\n    })\n    .describe('Billing address and contact details.')\n    .optional(),\n  shippingInfo: z\n    .object({\n      carrierId: z\n        .string()\n        .describe(\n          'App Def Id of external provider which was a source of shipping info'\n        )\n        .min(1)\n        .max(100)\n        .optional()\n        .nullable(),\n      code: z\n        .string()\n        .describe(\n          'Unique code (or ID) of selected shipping option. For example, `\"usps_std_overnight\"`.'\n        )\n        .min(1)\n        .max(100)\n        .optional()\n        .nullable(),\n      title: z\n        .string()\n        .describe(\n          'Shipping option title.\\nFor example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.'\n        )\n        .max(250)\n        .optional(),\n      logistics: z\n        .intersection(\n          z.object({\n            deliveryTime: z\n              .string()\n              .describe(\n                'Expected delivery time in free text. For example, `\"3-5 business days\"`.'\n              )\n              .max(500)\n              .optional()\n              .nullable(),\n            instructions: z\n              .string()\n              .describe(\n                'Instructions for the carrier. For example, `\"Please knock on the door. If unanswered, please call contact number.\"`.'\n              )\n              .max(1000)\n              .optional()\n              .nullable(),\n            deliverByDate: z\n              .date()\n              .describe(\n                'Deprecated - Latest expected delivery date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n              )\n              .optional()\n              .nullable(),\n            deliveryTimeSlot: z\n              .object({\n                from: z\n                  .date()\n                  .describe('Delivery slot starting time.')\n                  .optional()\n                  .nullable(),\n                to: z\n                  .date()\n                  .describe('Delivery slot ending time.')\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Expected delivery time slot with start and end times.')\n              .optional(),\n          }),\n          z.xor([\n            z.object({\n              shippingDestination: z.never().optional(),\n              pickupDetails: z.never().optional(),\n            }),\n            z.object({\n              pickupDetails: z.never().optional(),\n              shippingDestination: z\n                .object({\n                  address: z\n                    .object({\n                      streetAddress: z\n                        .object({\n                          name: z.string().optional(),\n                          number: z.string().optional(),\n                        })\n                        .optional(),\n                      city: z.string().optional().nullable(),\n                      subdivision: z.string().optional().nullable(),\n                      country: z.string().optional().nullable(),\n                      postalCode: z.string().optional().nullable(),\n                      addressLine2: z.string().optional().nullable(),\n                    })\n                    .describe('Address.')\n                    .optional(),\n                  contactDetails: z\n                    .object({\n                      firstName: z\n                        .string()\n                        .describe('First name.')\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      lastName: z\n                        .string()\n                        .describe('Last name.')\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      phone: z\n                        .string()\n                        .describe('Phone number.')\n                        .optional()\n                        .nullable(),\n                      company: z\n                        .string()\n                        .describe('Company name.')\n                        .max(1000)\n                        .optional()\n                        .nullable(),\n                      vatId: z\n                        .object({\n                          _id: z\n                            .string()\n                            .describe(\"Customer's tax ID.\")\n                            .optional(),\n                          type: z\n                            .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                            .describe(\n                              'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                        )\n                        .optional(),\n                    })\n                    .describe('Contact details.')\n                    .optional(),\n                })\n                .describe(\n                  \"Shipping destination address and contact details. For pickup orders, this contains the pickup location address, not the recipient's address.\"\n                ),\n            }),\n            z.object({\n              shippingDestination: z.never().optional(),\n              pickupDetails: z\n                .object({\n                  address: z\n                    .object({\n                      streetAddress: z\n                        .object({\n                          name: z.string().optional(),\n                          number: z.string().optional(),\n                        })\n                        .optional(),\n                      city: z.string().optional().nullable(),\n                      subdivision: z.string().optional().nullable(),\n                      country: z.string().optional().nullable(),\n                      postalCode: z.string().optional().nullable(),\n                      addressLine2: z.string().optional().nullable(),\n                    })\n                    .describe('Pickup address.')\n                    .optional(),\n                  pickupMethod: z\n                    .enum(['STORE_PICKUP', 'PICKUP_POINT'])\n                    .describe('Pickup method')\n                    .optional(),\n                })\n                .describe(\n                  'Pickup details for store pickup or pickup point orders.'\n                ),\n            }),\n          ])\n        )\n        .describe('Shipping logistics.')\n        .optional(),\n      cost: z\n        .object({\n          price: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Shipping price for display purposes.')\n            .optional(),\n          totalPriceBeforeTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total price of shipping after discounts (when relevant), and before tax.'\n            )\n            .optional(),\n          totalPriceAfterTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Shipping price after all discounts (if any exist), and after tax.'\n            )\n            .optional(),\n          taxDetails: z\n            .object({\n              taxableAmount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Taxable amount of this line item.')\n                .optional(),\n              taxRate: z\n                .string()\n                .describe(\n                  'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                )\n                .optional(),\n              totalTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                )\n                .optional(),\n            })\n            .describe('Tax details.')\n            .optional(),\n          taxInfo: z\n            .object({\n              taxAmount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                )\n                .optional(),\n              taxableAmount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Amount for which tax is calculated.')\n                .optional(),\n              taxRate: z\n                .string()\n                .describe('Tax rate %, as a decimal point.')\n                .optional()\n                .nullable(),\n              taxGroupId: z\n                .string()\n                .describe('Tax group ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              taxIncludedInPrice: z\n                .boolean()\n                .describe('Indicates whether the price already includes tax.')\n                .optional(),\n              taxBreakdown: z\n                .array(\n                  z.object({\n                    jurisdiction: z\n                      .string()\n                      .describe(\n                        'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    rate: z\n                      .string()\n                      .describe(\n                        'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                      )\n                      .optional()\n                      .nullable(),\n                    taxAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Amount of tax calculated for this line item.')\n                      .optional(),\n                    taxType: z\n                      .string()\n                      .describe(\n                        'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    taxName: z\n                      .string()\n                      .describe(\n                        'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    jurisdictionType: z\n                      .enum([\n                        'UNDEFINED',\n                        'COUNTRY',\n                        'STATE',\n                        'COUNTY',\n                        'CITY',\n                        'SPECIAL',\n                      ])\n                      .describe(\n                        'Type of jurisdiction that taxes were calculated for.'\n                      )\n                      .optional(),\n                    nonTaxableAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Non-taxable amount of the line item price.')\n                      .optional(),\n                    taxableAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Taxable amount of the line item price.')\n                      .optional(),\n                  })\n                )\n                .max(7)\n                .optional(),\n            })\n            .describe('Represents all the relevant tax details for a shipping.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Shipping discount before tax.')\n            .optional(),\n        })\n        .describe('Shipping costs.')\n        .optional(),\n      region: z\n        .object({\n          name: z\n            .string()\n            .describe(\n              'Name of shipping region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.'\n            )\n            .max(100)\n            .optional()\n            .nullable(),\n        })\n        .describe('Shipping region.')\n        .optional(),\n    })\n    .describe('Shipping info and selected shipping option details.')\n    .optional(),\n  buyerNote: z\n    .string()\n    .describe(\n      '[Buyer note](https://support.wix.com/en/article/wix-stores-viewing-buyer-notes) left by the customer.'\n    )\n    .max(1000)\n    .optional()\n    .nullable(),\n  status: z\n    .enum(['INITIALIZED', 'APPROVED', 'CANCELED', 'PENDING', 'REJECTED'])\n    .describe('Order status.')\n    .optional(),\n  archived: z\n    .boolean()\n    .describe('Whether order is archived.')\n    .optional()\n    .nullable(),\n  taxSummary: z\n    .object({\n      totalTax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total tax.')\n        .optional(),\n    })\n    .describe(\n      'Tax summary.\\nDeprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.'\n    )\n    .optional(),\n  taxInfo: z\n    .object({\n      totalTax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Calculated tax, added from line items.')\n        .optional(),\n      taxBreakdown: z\n        .array(\n          z.object({\n            taxName: z\n              .string()\n              .describe(\n                'The name of the tax against which this tax amount was calculated.'\n              )\n              .max(200)\n              .optional(),\n            taxType: z\n              .string()\n              .describe(\n                \"The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.\"\n              )\n              .max(200)\n              .optional(),\n            jurisdiction: z\n              .string()\n              .describe(\n                'The name of the jurisdiction in which this tax detail applies.'\n              )\n              .max(200)\n              .optional(),\n            jurisdictionType: z\n              .enum([\n                'UNDEFINED',\n                'COUNTRY',\n                'STATE',\n                'COUNTY',\n                'CITY',\n                'SPECIAL',\n              ])\n              .describe(\n                'The type of the jurisdiction in which this tax detail applies (e.g. Country,State,County,City,Special).'\n              )\n              .optional(),\n            rate: z\n              .string()\n              .describe('The rate at which this tax detail was calculated.')\n              .optional(),\n            aggregatedTaxAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'The sum of all the tax from line items that calculated by the tax identifiers.'\n              )\n              .optional(),\n          })\n        )\n        .min(0)\n        .max(50)\n        .optional(),\n      taxExempt: z\n        .boolean()\n        .describe(\n          'Whether the order is exempt from tax calculations.\\n\\nDefault: `false`'\n        )\n        .optional()\n        .nullable(),\n    })\n    .describe('Tax information.')\n    .optional(),\n  appliedDiscounts: z\n    .array(\n      z.intersection(\n        z.object({\n          discountType: z\n            .enum(['GLOBAL', 'SPECIFIC_ITEMS', 'SHIPPING'])\n            .optional(),\n          lineItemIds: z.array(z.string()).min(0).max(300).optional(),\n          _id: z\n            .string()\n            .describe('Discount ID.')\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            )\n            .optional()\n            .nullable(),\n          lineItemDiscounts: z\n            .array(\n              z.object({\n                _id: z\n                  .string()\n                  .describe('Line item ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                totalDiscount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total discount amount for this line item.')\n                  .optional(),\n              })\n            )\n            .max(300)\n            .optional(),\n        }),\n        z.xor([\n          z.object({\n            coupon: z.never().optional(),\n            merchantDiscount: z.never().optional(),\n            discountRule: z.never().optional(),\n          }),\n          z.object({\n            merchantDiscount: z.never().optional(),\n            discountRule: z.never().optional(),\n            coupon: z\n              .object({\n                _id: z.string().describe('Coupon ID.').optional(),\n                code: z.string().describe('Coupon code.').optional(),\n                name: z.string().describe('Coupon name.').optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Coupon value.')\n                  .optional(),\n              })\n              .describe('Coupon applied by the customer.'),\n          }),\n          z.object({\n            coupon: z.never().optional(),\n            discountRule: z.never().optional(),\n            merchantDiscount: z\n              .intersection(\n                z.object({\n                  amount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Discount amount.')\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({\n                    discountReason: z.never().optional(),\n                    description: z.never().optional(),\n                  }),\n                  z.object({\n                    description: z.never().optional(),\n                    discountReason: z\n                      .enum([\n                        'UNSPECIFIED',\n                        'EXCHANGED_ITEMS',\n                        'BILLING_ADJUSTMENT',\n                      ])\n                      .describe('Predefined discount reason.'),\n                  }),\n                  z.object({\n                    discountReason: z.never().optional(),\n                    description: z\n                      .string()\n                      .describe('Custom discount description as free text.')\n                      .max(200),\n                  }),\n                ])\n              )\n              .describe('Discount applied manually by the merchant.'),\n          }),\n          z.object({\n            coupon: z.never().optional(),\n            merchantDiscount: z.never().optional(),\n            discountRule: z\n              .object({\n                _id: z\n                  .string()\n                  .describe('Discount rule ID')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                name: z\n                  .object({\n                    original: z\n                      .string()\n                      .describe(\n                        \"Original discount rule name (in site's default language).\"\n                      )\n                      .min(1)\n                      .max(256)\n                      .optional(),\n                    translated: z\n                      .string()\n                      .describe(\n                        'Translated discount rule name according to buyer language. Defaults to `original` when not provided.'\n                      )\n                      .min(1)\n                      .max(500)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Discount rule name')\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Discount value.')\n                  .optional(),\n              })\n              .describe(\n                'Automatic discount applied by the system based on configured discount rules.'\n              ),\n          }),\n        ])\n      )\n    )\n    .max(320)\n    .optional(),\n  activities: z\n    .array(\n      z.intersection(\n        z.object({\n          _id: z\n            .string()\n            .describe('Activity ID.')\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            )\n            .optional()\n            .nullable(),\n          authorEmail: z\n            .string()\n            .describe(\"Activity author's email.\")\n            .email()\n            .optional()\n            .nullable(),\n          _createdDate: z\n            .date()\n            .describe('Activity creation date and time.')\n            .optional()\n            .nullable(),\n          type: z\n            .enum([\n              'ORDER_REFUNDED',\n              'ORDER_PLACED',\n              'ORDER_PAID',\n              'ORDER_FULFILLED',\n              'ORDER_NOT_FULFILLED',\n              'ORDER_CANCELED',\n              'DOWNLOAD_LINK_SENT',\n              'TRACKING_NUMBER_ADDED',\n              'TRACKING_NUMBER_EDITED',\n              'TRACKING_LINK_ADDED',\n              'SHIPPING_CONFIRMATION_EMAIL_SENT',\n              'INVOICE_ADDED',\n              'INVOICE_REMOVED',\n              'INVOICE_SENT',\n              'FULFILLER_EMAIL_SENT',\n              'SHIPPING_ADDRESS_EDITED',\n              'EMAIL_EDITED',\n              'PICKUP_READY_EMAIL_SENT',\n              'CUSTOM_ACTIVITY',\n              'MERCHANT_COMMENT',\n              'ORDER_PARTIALLY_PAID',\n              'DRAFT_ORDER_CHANGES_APPLIED',\n              'SAVED_PAYMENT_METHOD',\n              'AUTHORIZED_PAYMENT_CREATED',\n              'AUTHORIZED_PAYMENT_CAPTURED',\n              'AUTHORIZED_PAYMENT_VOIDED',\n              'REFUND_INITIATED',\n              'PAYMENT_REFUNDED',\n              'PAYMENT_REFUND_FAILED',\n              'REFUNDED_AS_STORE_CREDIT',\n              'PAYMENT_PENDING',\n              'PAYMENT_CANCELED',\n              'PAYMENT_DECLINED',\n              'ORDER_PENDING',\n              'ORDER_REJECTED',\n              'RECEIPT_CREATED',\n              'RECEIPT_SENT',\n              'CHARGEBACK_CREATED',\n              'CHARGEBACK_REVERSED',\n            ])\n            .describe('Activity type.')\n            .optional(),\n          activityType: z\n            .enum([\n              'ORDER_PLACED',\n              'ORDER_PAID',\n              'ORDER_FULFILLED',\n              'ORDER_NOT_FULFILLED',\n              'ORDER_CANCELED',\n              'DOWNLOAD_LINK_SENT',\n              'TRACKING_NUMBER_ADDED',\n              'TRACKING_NUMBER_EDITED',\n              'TRACKING_LINK_ADDED',\n              'SHIPPING_CONFIRMATION_EMAIL_SENT',\n              'INVOICE_ADDED',\n              'INVOICE_REMOVED',\n              'INVOICE_SENT',\n              'FULFILLER_EMAIL_SENT',\n              'SHIPPING_ADDRESS_EDITED',\n              'EMAIL_EDITED',\n              'PICKUP_READY_EMAIL_SENT',\n              'MERCHANT_COMMENT',\n              'ORDER_PARTIALLY_PAID',\n              'DRAFT_ORDER_CHANGES_APPLIED',\n              'SAVED_PAYMENT_METHOD',\n              'AUTHORIZED_PAYMENT_CREATED',\n              'AUTHORIZED_PAYMENT_CAPTURED',\n              'AUTHORIZED_PAYMENT_VOIDED',\n              'REFUND_INITIATED',\n              'PAYMENT_REFUNDED',\n              'PAYMENT_REFUND_FAILED',\n              'REFUNDED_AS_STORE_CREDIT',\n              'PAYMENT_PENDING',\n              'PAYMENT_CANCELED',\n              'PAYMENT_DECLINED',\n              'ORDER_PENDING',\n              'ORDER_REJECTED',\n              'RECEIPT_CREATED',\n              'RECEIPT_SENT',\n              'CHARGEBACK_CREATED',\n              'CHARGEBACK_REVERSED',\n              'ORDER_REFUNDED',\n            ])\n            .describe('Activity type.')\n            .optional(),\n        }),\n        z.xor([\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n          }),\n          z.object({\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            merchantComment: z\n              .object({\n                message: z\n                  .string()\n                  .describe('Merchant comment message.')\n                  .min(1)\n                  .max(5000)\n                  .optional(),\n              })\n              .describe(\n                'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            orderRefunded: z\n              .object({\n                manual: z\n                  .boolean()\n                  .describe(\n                    'Whether order was refunded manually. For example, via payment provider or using cash.'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Refund amount.')\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for refund.')\n                  .max(200)\n                  .optional(),\n              })\n              .describe(\n                'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            draftOrderChangesApplied: z\n              .object({\n                draftOrderId: z.string().describe('Draft order id.').optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for edit, given by user (optional).')\n                  .max(200)\n                  .optional()\n                  .nullable(),\n                changes: z\n                  .array(\n                    z.intersection(\n                      z.object({}),\n                      z.xor([\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                        }),\n                        z.object({\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          lineItemChanged: z.object({\n                            _id: z\n                              .string()\n                              .describe('Line item ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                  )\n                                  .min(1)\n                                  .max(200)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                  )\n                                  .min(1)\n                                  .max(400)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Item name after change.')\n                              .optional(),\n                            quantity: z\n                              .object({\n                                originalQuantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Item quantity before update.')\n                                  .min(0)\n                                  .max(1000000)\n                                  .optional(),\n                                newQuantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Item quantity after update.')\n                                  .min(0)\n                                  .max(1000000)\n                                  .optional(),\n                                diff: z\n                                  .number()\n                                  .int()\n                                  .describe(\n                                    'Difference between original and new quantity. Absolute value.'\n                                  )\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                                deltaType: z\n                                  .enum([\n                                    'QUANTITY_INCREASED',\n                                    'QUANTITY_DECREASED',\n                                  ])\n                                  .describe(\n                                    'Type of quantity change: increase or decrease.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Item quantity change.')\n                              .optional(),\n                            price: z\n                              .object({\n                                originalPrice: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item price before update.')\n                                  .optional(),\n                                newPrice: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item price after update.')\n                                  .optional(),\n                              })\n                              .describe('Item price change.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          lineItemAdded: z.object({\n                            _id: z\n                              .string()\n                              .describe('Line item ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                  )\n                                  .min(1)\n                                  .max(200)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                  )\n                                  .min(1)\n                                  .max(400)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Item name.')\n                              .optional(),\n                            quantity: z\n                              .number()\n                              .int()\n                              .describe('Added or removed item quantity.')\n                              .min(1)\n                              .max(1000000)\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          lineItemRemoved: z.object({\n                            _id: z\n                              .string()\n                              .describe('Line item ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                  )\n                                  .min(1)\n                                  .max(200)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                  )\n                                  .min(1)\n                                  .max(400)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Item name.')\n                              .optional(),\n                            quantity: z\n                              .number()\n                              .int()\n                              .describe('Added or removed item quantity.')\n                              .min(1)\n                              .max(1000000)\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          discountAdded: z.object({\n                            _id: z\n                              .string()\n                              .describe('Discount id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe(\n                                'Discount name: coupon name / discount rule name / merchant discount description.'\n                              )\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Discount amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          discountRemoved: z.object({\n                            _id: z\n                              .string()\n                              .describe('Discount id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe(\n                                'Discount name: coupon name / discount rule name / merchant discount description.'\n                              )\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Discount amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          additionalFeeAdded: z.object({\n                            _id: z\n                              .string()\n                              .describe('Additional fee id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Additional fee name.')\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Additional fee amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          additionalFeeRemoved: z.object({\n                            _id: z\n                              .string()\n                              .describe('Additional fee id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Additional fee name.')\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Additional fee amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          totalPriceChanged: z.object({\n                            originalTotal: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s total price after discounts and tax. Before update'\n                              )\n                              .optional(),\n                            newTotal: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s total price after discounts and tax. After update'\n                              )\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.object({\n                            originalShippingInfo: z\n                              .object({\n                                total: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Order’s shipping price.')\n                                  .optional(),\n                                shippingTitle: z\n                                  .string()\n                                  .describe('Order’s shipping title.')\n                                  .max(250)\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s Shipping Information. Before update'\n                              )\n                              .optional(),\n                            newShippingInfo: z\n                              .object({\n                                total: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Order’s shipping price.')\n                                  .optional(),\n                                shippingTitle: z\n                                  .string()\n                                  .describe('Order’s shipping title.')\n                                  .max(250)\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s Shipping Information. After update'\n                              )\n                              .optional(),\n                          }),\n                        }),\n                      ])\n                    )\n                  )\n                  .optional(),\n              })\n              .describe('Details of changes made by the Draft Orders API.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            savedPaymentMethod: z\n              .object({\n                name: z\n                  .string()\n                  .describe('Payment method name.')\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                description: z\n                  .string()\n                  .describe('Payment method description.')\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of the payment method saved for the order.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            authorizedPaymentCreated: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe(\n                    'Payment ID of payment associated with this activity.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Payment amount.')\n                  .optional(),\n                lastFourDigits: z\n                  .string()\n                  .describe('The last 4 digits of the card number.')\n                  .max(4)\n                  .optional()\n                  .nullable(),\n                brand: z\n                  .string()\n                  .describe(\"Card issuer's brand.\")\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of an authorized payment created.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            authorizedPaymentCaptured: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe(\n                    'Payment ID of payment associated with this activity.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Payment amount.')\n                  .optional(),\n                lastFourDigits: z\n                  .string()\n                  .describe('The last 4 digits of the card number.')\n                  .max(4)\n                  .optional()\n                  .nullable(),\n                brand: z\n                  .string()\n                  .describe(\"Card issuer's brand.\")\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of an authorized payment captured.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            authorizedPaymentVoided: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe(\n                    'Payment ID of payment associated with this activity.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Payment amount.')\n                  .optional(),\n                lastFourDigits: z\n                  .string()\n                  .describe('The last 4 digits of the card number.')\n                  .max(4)\n                  .optional()\n                  .nullable(),\n                brand: z\n                  .string()\n                  .describe(\"Card issuer's brand.\")\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of an authorized payment voided.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            refundInitiated: z\n              .object({\n                refundId: z\n                  .string()\n                  .describe('Refund ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Refund amount.')\n                  .optional(),\n                payments: z\n                  .array(\n                    z.intersection(\n                      z.object({\n                        paymentId: z\n                          .string()\n                          .describe('Payment ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        externalRefund: z\n                          .boolean()\n                          .describe(\n                            \"Whether refund was made externally and manually on the payment provider's side.\"\n                          )\n                          .optional(),\n                      }),\n                      z.xor([\n                        z.object({\n                          regular: z.never().optional(),\n                          giftCard: z.never().optional(),\n                          membership: z.never().optional(),\n                        }),\n                        z.object({\n                          giftCard: z.never().optional(),\n                          membership: z.never().optional(),\n                          regular: z\n                            .object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Refund amount.')\n                                .optional(),\n                              lastFourDigits: z\n                                .string()\n                                .describe(\n                                  'The last 4 digits of the card number.'\n                                )\n                                .max(4)\n                                .optional()\n                                .nullable(),\n                              brand: z\n                                .string()\n                                .describe(\"Card issuer's brand.\")\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Regular payment refund.'),\n                        }),\n                        z.object({\n                          regular: z.never().optional(),\n                          membership: z.never().optional(),\n                          giftCard: z\n                            .object({\n                              giftCardPaymentId: z\n                                .string()\n                                .describe('Gift card payment ID.')\n                                .min(1)\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Refund amount.')\n                                .optional(),\n                            })\n                            .describe('Gift card payment refund.'),\n                        }),\n                        z.object({\n                          regular: z.never().optional(),\n                          giftCard: z.never().optional(),\n                          membership: z\n                            .object({\n                              membershipId: z\n                                .string()\n                                .describe('Membership ID.')\n                                .min(1)\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Membership payment refund.'),\n                        }),\n                      ])\n                    )\n                  )\n                  .min(1)\n                  .max(50)\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for refund.')\n                  .max(200)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentRefunded: z\n              .object({\n                refundId: z\n                  .string()\n                  .describe('Refund ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                payment: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe('Payment ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      externalRefund: z\n                        .boolean()\n                        .describe(\n                          \"Whether refund was made externally and manually on the payment provider's side.\"\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                      }),\n                      z.object({\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                        regular: z\n                          .object({\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Regular payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        membership: z.never().optional(),\n                        giftCard: z\n                          .object({\n                            giftCardPaymentId: z\n                              .string()\n                              .describe('Gift card payment ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                          })\n                          .describe('Gift card payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z\n                          .object({\n                            membershipId: z\n                              .string()\n                              .describe('Membership ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Membership payment refund.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details about the refunded payment.')\n                  .optional(),\n              })\n              .describe(\n                'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentRefundFailed: z\n              .object({\n                refundId: z\n                  .string()\n                  .describe('Refund ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                payment: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe('Payment ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      externalRefund: z\n                        .boolean()\n                        .describe(\n                          \"Whether refund was made externally and manually on the payment provider's side.\"\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                      }),\n                      z.object({\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                        regular: z\n                          .object({\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Regular payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        membership: z.never().optional(),\n                        giftCard: z\n                          .object({\n                            giftCardPaymentId: z\n                              .string()\n                              .describe('Gift card payment ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                          })\n                          .describe('Gift card payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z\n                          .object({\n                            membershipId: z\n                              .string()\n                              .describe('Membership ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Membership payment refund.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details about the failed payment refund.')\n                  .optional(),\n              })\n              .describe(\n                'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            refundedAsStoreCredit: z\n              .object({\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Refund amount.')\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for refund.')\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of refund to store credit.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentPending: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({ regular: z.never().optional() }),\n                  z.object({\n                    regular: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Regular payment.'),\n                  }),\n                ])\n              )\n              .describe('Details of a pending payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentCanceled: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({ regular: z.never().optional() }),\n                  z.object({\n                    regular: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Regular payment.'),\n                  }),\n                ])\n              )\n              .describe('Details of a canceled payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentDeclined: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({ regular: z.never().optional() }),\n                  z.object({\n                    regular: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Regular payment.'),\n                  }),\n                ])\n              )\n              .describe('Details of a declined payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            receiptCreated: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z.never().optional(),\n                  }),\n                  z.object({\n                    externalReceipt: z.never().optional(),\n                    wixReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by Wix.'),\n                  }),\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .max(100)\n                          .optional()\n                          .nullable(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by an external system.'),\n                  }),\n                ])\n              )\n              .describe('Receipt was added for associated payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            receiptSent: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z.never().optional(),\n                  }),\n                  z.object({\n                    externalReceipt: z.never().optional(),\n                    wixReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by Wix.'),\n                  }),\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .max(100)\n                          .optional()\n                          .nullable(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by an external system.'),\n                  }),\n                ])\n              )\n              .describe('Receipt sent to customer.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            chargebackCreated: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe('ID of the payment that received a chargeback.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                chargebackId: z\n                  .string()\n                  .describe('Chargeback ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Chargeback amount.')\n                  .optional(),\n                paymentDetails: z\n                  .intersection(\n                    z.object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Payment amount.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ creditCardDetails: z.never().optional() }),\n                      z.object({\n                        creditCardDetails: z\n                          .object({\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Credit card details.'),\n                      }),\n                    ])\n                  )\n                  .describe('Payment details.')\n                  .optional(),\n              })\n              .describe('Order received a chargeback for one of its payments.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe('ID of the payment involved with the chargeback.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                chargebackId: z\n                  .string()\n                  .describe('Chargeback ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Chargeback amount.')\n                  .optional(),\n                reversalAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Chargeback reversal amount.')\n                  .optional(),\n                paymentDetails: z\n                  .intersection(\n                    z.object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Payment amount.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ creditCardDetails: z.never().optional() }),\n                      z.object({\n                        creditCardDetails: z\n                          .object({\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Credit card details.'),\n                      }),\n                    ])\n                  )\n                  .describe('Payment details.')\n                  .optional(),\n              })\n              .describe(\"Chargeback reversed for one of the order's payments.\"),\n          }),\n        ])\n      )\n    )\n    .max(1000)\n    .optional(),\n  attributionSource: z\n    .enum(['UNSPECIFIED', 'FACEBOOK_ADS'])\n    .describe('Order attribution source.')\n    .optional(),\n  createdBy: z\n    .intersection(\n      z.object({}),\n      z.xor([\n        z.object({\n          userId: z.never().optional(),\n          memberId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z.never().optional(),\n        }),\n        z.object({\n          memberId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z.never().optional(),\n          userId: z\n            .string()\n            .describe(\n              'User ID - when the order was created by a Wix user on behalf of a buyer.\\nFor example, via POS (point of service).'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          userId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z.never().optional(),\n          memberId: z\n            .string()\n            .describe(\n              'Member ID - when the order was created by a **logged in** site visitor.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          userId: z.never().optional(),\n          memberId: z.never().optional(),\n          appId: z.never().optional(),\n          visitorId: z\n            .string()\n            .describe(\n              'Visitor ID - when the order was created by a site visitor that was **not** logged in.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          userId: z.never().optional(),\n          memberId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z\n            .string()\n            .describe(\n              'App ID - when the order was created by an external application.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n      ])\n    )\n    .describe(\"ID of the order's initiator.\")\n    .optional(),\n  channelInfo: z\n    .object({\n      type: z\n        .enum([\n          'UNSPECIFIED',\n          'WEB',\n          'POS',\n          'EBAY',\n          'AMAZON',\n          'OTHER_PLATFORM',\n          'WIX_APP_STORE',\n          'WIX_INVOICES',\n          'BACKOFFICE_MERCHANT',\n          'WISH',\n          'CLASS_PASS',\n          'GLOBAL_E',\n          'FACEBOOK',\n          'ETSY',\n          'TIKTOK',\n          'FAIRE_COM',\n          'PAYPAL_AGENTIC_CHECKOUT',\n          'STRIPE_AGENTIC_CHECKOUT',\n        ])\n        .describe(\n          'Sales channel that submitted the order.\\n\\nWhen creating an order via the API to record an external order, use the channel type that matches the original source. If no matching type exists, use `OTHER_PLATFORM`.'\n        )\n        .optional(),\n      externalOrderId: z\n        .string()\n        .describe(\n          'Reference to an order ID from an external system. Relevant when recording orders from external platforms.'\n        )\n        .max(100)\n        .optional()\n        .nullable(),\n      externalOrderUrl: z\n        .string()\n        .describe(\n          'URL to the order in the external system. Relevant when recording orders from external platforms.'\n        )\n        .max(300)\n        .optional()\n        .nullable(),\n    })\n    .describe('Information about the sales channel that submitted this order.')\n    .optional(),\n  seenByAHuman: z\n    .boolean()\n    .describe(\n      'Whether a human has seen the order. Set when an order is clicked on in the dashboard.'\n    )\n    .optional()\n    .nullable(),\n  checkoutId: z\n    .string()\n    .describe('Checkout ID.')\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    )\n    .optional()\n    .nullable(),\n  customFields: z\n    .array(\n      z.object({\n        value: z.any().describe('Custom field value.').optional().nullable(),\n        title: z\n          .string()\n          .describe('Custom field title.')\n          .min(1)\n          .max(500)\n          .optional(),\n        translatedTitle: z\n          .string()\n          .describe('Translated custom field title.')\n          .min(1)\n          .max(500)\n          .optional()\n          .nullable(),\n      })\n    )\n    .optional(),\n  balanceSummary: z\n    .object({\n      balance: z\n        .object({\n          amount: z\n            .string()\n            .describe(\n              'Balance amount.\\n\\nA negative `amount` represents the amount to be refunded. This can happen due to overcharging or the order being modified after a payment has been made.'\n            )\n            .optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Current amount left to pay.')\n        .optional(),\n      paid: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Sum of all approved and successful payments.\\n\\nThe value includes payments that have subsequently been fully or partially refunded.'\n        )\n        .optional(),\n      refunded: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all successfully refunded payments.')\n        .optional(),\n      authorized: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all authorized payments.')\n        .optional(),\n      pendingRefund: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all pending refund transactions.')\n        .optional(),\n      pending: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all pending transactions.')\n        .optional(),\n      chargeback: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all transaction chargebacks.')\n        .optional(),\n      chargebackReversal: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all chargeback reversals.')\n        .optional(),\n      platformFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Total platform fees actually charged across all payments.\\nThis reflects amounts collected, which may differ from the expected fees in `order.platformFeeSummary`.'\n        )\n        .optional(),\n      totalMinusPlatformFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Order total after deducting platform fees. Represents the net amount payable to the merchant.'\n        )\n        .optional(),\n    })\n    .describe('Balance summary.')\n    .optional(),\n  additionalFees: z\n    .array(\n      z.object({\n        code: z\n          .string()\n          .describe(\"Additional fee's unique code for future processing.\")\n          .min(1)\n          .max(100)\n          .optional()\n          .nullable(),\n        name: z\n          .string()\n          .describe('Name of additional fee.')\n          .min(1)\n          .max(50)\n          .optional(),\n        price: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Additional fee's price.\")\n          .optional(),\n        taxDetails: z\n          .object({\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Taxable amount of this line item.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe(\n                'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n              )\n              .optional(),\n            totalTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n              )\n              .optional(),\n          })\n          .describe('Tax details.')\n          .optional(),\n        taxInfo: z\n          .object({\n            taxAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n              )\n              .optional(),\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Amount for which tax is calculated.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe('Tax rate %, as a decimal point.')\n              .optional()\n              .nullable(),\n            taxGroupId: z\n              .string()\n              .describe('Tax group ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            taxIncludedInPrice: z\n              .boolean()\n              .describe('Indicates whether the price already includes tax.')\n              .optional(),\n            taxBreakdown: z\n              .array(\n                z.object({\n                  jurisdiction: z\n                    .string()\n                    .describe(\n                      'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  rate: z\n                    .string()\n                    .describe(\n                      'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount of tax calculated for this line item.')\n                    .optional(),\n                  taxType: z\n                    .string()\n                    .describe(\n                      'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  taxName: z\n                    .string()\n                    .describe(\n                      'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  jurisdictionType: z\n                    .enum([\n                      'UNDEFINED',\n                      'COUNTRY',\n                      'STATE',\n                      'COUNTY',\n                      'CITY',\n                      'SPECIAL',\n                    ])\n                    .describe(\n                      'Type of jurisdiction that taxes were calculated for.'\n                    )\n                    .optional(),\n                  nonTaxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Non-taxable amount of the line item price.')\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of the line item price.')\n                    .optional(),\n                })\n              )\n              .max(7)\n              .optional(),\n          })\n          .describe(\n            'Represents all the relevant tax details for additional fee.'\n          )\n          .optional(),\n        providerAppId: z\n          .string()\n          .describe(\"SPI implementer's `appId`.\")\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        priceBeforeTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Additional fee's price before tax.\")\n          .optional(),\n        priceAfterTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Additional fee's price after tax.\")\n          .optional(),\n        _id: z\n          .string()\n          .describe(\"Additional fee's id.\")\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional(),\n        lineItemIds: z.array(z.string()).optional(),\n        source: z\n          .enum(['SERVICE_PLUGIN', 'ITEM', 'MANUAL', 'SHIPPING', 'PLATFORM'])\n          .describe('Specifies the entity that added the additional fee.')\n          .optional(),\n      })\n    )\n    .max(100)\n    .optional(),\n  extendedFields: z\n    .object({\n      namespaces: z\n        .record(z.string(), z.record(z.string(), z.any()))\n        .describe(\n          'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n        )\n        .optional(),\n    })\n    .describe(\n      'Custom field data for the order object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n    )\n    .optional(),\n  purchaseFlowId: z\n    .string()\n    .describe(\n      'Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.'\n    )\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    )\n    .optional()\n    .nullable(),\n  recipientInfo: z\n    .object({\n      address: z\n        .object({\n          streetAddress: z\n            .object({\n              name: z.string().optional(),\n              number: z.string().optional(),\n            })\n            .optional(),\n          city: z.string().optional().nullable(),\n          subdivision: z.string().optional().nullable(),\n          country: z.string().optional().nullable(),\n          postalCode: z.string().optional().nullable(),\n          addressLine2: z.string().optional().nullable(),\n        })\n        .describe('Address.')\n        .optional(),\n      contactDetails: z\n        .object({\n          firstName: z\n            .string()\n            .describe('First name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          lastName: z\n            .string()\n            .describe('Last name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          phone: z.string().describe('Phone number.').optional().nullable(),\n          company: z\n            .string()\n            .describe('Company name.')\n            .max(1000)\n            .optional()\n            .nullable(),\n          vatId: z\n            .object({\n              _id: z.string().describe(\"Customer's tax ID.\").optional(),\n              type: z\n                .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                .describe(\n                  'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                )\n                .optional(),\n            })\n            .describe(\n              'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n            )\n            .optional(),\n        })\n        .describe('Contact details.')\n        .optional(),\n    })\n    .describe(\n      \"Final recipient's address and contact details.\\n\\nThis field represents who will ultimately receive the order. It may differ from `shippingInfo.logistics.shippingDestination` when:\\n+ The chosen shipping option is a pickup point or store pickup, where `shippingDestination` contains the pickup location.\\n+ No shipping option is selected.\"\n    )\n    .optional(),\n  tags: z\n    .object({\n      privateTags: z\n        .object({ tagIds: z.array(z.string()).max(100).optional() })\n        .describe(\n          'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n        )\n        .optional(),\n      tags: z\n        .object({ tagIds: z.array(z.string()).max(100).optional() })\n        .describe(\n          'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n        )\n        .optional(),\n    })\n    .describe(\n      'Order tags.\\n\\n[Tags](https://dev.wix.com/docs/rest/business-management/tags/introduction) are labels attached to entities, allowing for flexible categorization and data management.'\n    )\n    .optional(),\n  purchasedDate: z\n    .date()\n    .describe(\n      'Date and time the order was originally purchased in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.\\nUsed for migration from external systems.'\n    )\n    .optional()\n    .nullable(),\n  businessLocation: z\n    .object({\n      _id: z\n        .string()\n        .describe(\n          'Location ID.\\nLearn more about the [Wix Locations API](https://dev.wix.com/docs/rest/business-management/locations/introduction).'\n        )\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional(),\n      name: z.string().describe('Location name.').min(1).max(500).optional(),\n    })\n    .describe('Order location.')\n    .optional(),\n  payAfterFreeTrial: z\n    .object({\n      subtotal: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Subtotal of all line items, before discounts and before tax.'\n        )\n        .optional(),\n      shipping: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total shipping price, before discounts and before tax.')\n        .optional(),\n      tax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total tax applied to the order.')\n        .optional(),\n      discount: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total discount amount applied to the order.')\n        .optional(),\n      total: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\"Order's total price after discounts and tax.\")\n        .optional(),\n      totalAdditionalFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total additional fees before tax.')\n        .optional(),\n    })\n    .describe(\n      'Pay after free trial price summary. Price summary that should be paid for subscriptions after free trial period.'\n    )\n    .optional(),\n  platformFeeSummary: z\n    .object({\n      total: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total sum of all platform fees.')\n        .optional(),\n      totalPassOn: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total amount of platform fees with `PASS_ON` charge type.')\n        .optional(),\n      totalAbsorbed: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total amount of platform fees with `ABSORBED` charge type.')\n        .optional(),\n      fees: z\n        .array(\n          z.object({\n            name: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                  )\n                  .min(1)\n                  .max(200)\n                  .optional(),\n                translated: z\n                  .string()\n                  .describe(\n                    \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(400)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Platform fee name.')\n              .optional(),\n            amount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Platform fee amount.')\n              .optional(),\n            lineItemId: z\n              .string()\n              .describe('ID of the line item the platform fee applies to.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional(),\n            chargeType: z\n              .enum(['PASS_ON', 'ABSORBED'])\n              .describe('Platform fee charge type.')\n              .optional(),\n            percentageRate: z\n              .string()\n              .describe(\n                'Percentage rate charged as platform fee.\\nThe fee rate percentage expressed as a decimal fraction between 0 and 1. For example, `0.05` for 5%.'\n              )\n              .optional(),\n          })\n        )\n        .max(300)\n        .optional(),\n    })\n    .describe(\n      'Summary of platform fees for this order, including totals by charge type and a breakdown of individual fees.'\n    )\n    .optional(),\n});\nexport const UpdateOrderRequest = z.object({\n  _id: z\n    .string()\n    .describe('Order ID.')\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    ),\n  order: z\n    .object({\n      _id: z\n        .string()\n        .describe('Order ID.')\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      number: z\n        .string()\n        .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n        .describe(\n          \"Order number displayed in the site owner's dashboard (auto-generated).\"\n        )\n        .optional(),\n      _createdDate: z\n        .date()\n        .describe(\n          'Date and time the order was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n        )\n        .optional()\n        .nullable(),\n      _updatedDate: z\n        .date()\n        .describe(\n          'Date and time the order was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n        )\n        .optional()\n        .nullable(),\n      lineItems: z\n        .array(\n          z.object({\n            _id: z.string().describe('Line item ID.').optional(),\n            productName: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                  )\n                  .min(1)\n                  .max(200)\n                  .optional(),\n                translated: z\n                  .string()\n                  .describe(\n                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(400)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Item name.\\n\\n+ Stores - `product.name`\\n+ Bookings - `service.info.name`\\n+ Events - `ticket.name`'\n              )\n              .optional(),\n            catalogReference: z\n              .object({\n                catalogItemId: z\n                  .string()\n                  .describe('ID of the item within the catalog it belongs to.')\n                  .min(1)\n                  .max(36)\n                  .optional(),\n                appId: z\n                  .string()\n                  .describe(\n                    'ID of the app providing the catalog.\\n\\nYou can get your app\\'s ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\\n\\nFor items from Wix catalogs, the following values always apply:\\n+ Wix Stores: `\"215238eb-22a5-4c36-9e7b-e7c08025e04e\"`\\n+ Wix Bookings: `\"13d21c63-b5ec-5912-8397-c3a5ddb27a97\"`\\n+ Wix Restaurants: `\"9a5d83fd-8570-482e-81ab-cfa88942ee60\"`'\n                  )\n                  .min(1)\n                  .optional(),\n                options: z\n                  .record(z.string(), z.any())\n                  .describe(\n                    'Additional item details in `key:value` pairs.\\n\\nUse this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items.\\n\\nFor Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration)\\nor [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction).'\n                  )\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                \"References to the line item's origin catalog. Empty for custom line items.\"\n              )\n              .optional(),\n            quantity: z\n              .number()\n              .int()\n              .describe('Line item quantity.')\n              .min(1)\n              .max(100000)\n              .optional(),\n            totalDiscount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Total discount for this line item's entire quantity.\")\n              .optional(),\n            descriptionLines: z\n              .array(\n                z.intersection(\n                  z.object({\n                    name: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                          )\n                          .max(100)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"Description line name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Description line name.')\n                      .optional(),\n                  }),\n                  z.xor([\n                    z.object({\n                      plainText: z.never().optional(),\n                      colorInfo: z.never().optional(),\n                    }),\n                    z.object({\n                      colorInfo: z.never().optional(),\n                      plainText: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                            )\n                            .max(600)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"Description line plain text value translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                            )\n                            .max(600)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Description line plain text value.'),\n                    }),\n                    z.object({\n                      plainText: z.never().optional(),\n                      colorInfo: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                            )\n                            .max(500)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"Description line color name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                            )\n                            .max(500)\n                            .optional()\n                            .nullable(),\n                          code: z\n                            .string()\n                            .describe('HEX or RGB color code for display.')\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Description line color value.'),\n                    }),\n                  ])\n                )\n              )\n              .min(0)\n              .max(20)\n              .optional(),\n            image: z.string().describe('Line item image.').optional(),\n            physicalProperties: z\n              .object({\n                weight: z\n                  .number()\n                  .describe(\n                    'Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request.'\n                  )\n                  .optional()\n                  .nullable(),\n                sku: z\n                  .string()\n                  .describe(\n                    'Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).'\n                  )\n                  .max(40)\n                  .optional()\n                  .nullable(),\n                shippable: z\n                  .boolean()\n                  .describe('Whether this line item is shippable.')\n                  .optional(),\n              })\n              .describe(\n                'Physical properties of the item. When relevant, contains information such as SKU and item weight.'\n              )\n              .optional(),\n            itemType: z\n              .intersection(\n                z.object({}),\n                z.xor([\n                  z.object({\n                    preset: z.never().optional(),\n                    custom: z.never().optional(),\n                  }),\n                  z.object({\n                    custom: z.never().optional(),\n                    preset: z\n                      .enum([\n                        'UNRECOGNISED',\n                        'PHYSICAL',\n                        'DIGITAL',\n                        'GIFT_CARD',\n                        'SERVICE',\n                      ])\n                      .describe('Preset item type.'),\n                  }),\n                  z.object({\n                    preset: z.never().optional(),\n                    custom: z\n                      .string()\n                      .describe(\n                        'Custom item type. When none of the preset types are suitable, specifies the custom type.'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Item type. Either a preset type or custom.')\n              .optional(),\n            fulfillerId: z\n              .string()\n              .describe(\n                'Fulfiller ID. Field is empty when the line item is self-fulfilled.\\nTo get fulfillment information, pass the order ID to [List Fulfillments For Single Order](https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/order-fulfillments/list-fulfillments-for-single-order).'\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            refundQuantity: z\n              .number()\n              .int()\n              .describe('Number of items that were refunded.')\n              .min(0)\n              .max(100000)\n              .optional()\n              .nullable(),\n            restockQuantity: z\n              .number()\n              .int()\n              .describe(\n                'Number of items restocked.\\n\\nFor a per-location breakdown, see `restockLocations`.'\n              )\n              .min(0)\n              .max(100000)\n              .optional()\n              .nullable(),\n            price: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Line item price after line item discounts for display purposes.'\n              )\n              .optional(),\n            priceBeforeDiscounts: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Line item price before line item discounts for display purposes. Defaults to `price` when not provided.'\n              )\n              .optional(),\n            totalPriceBeforeTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total price after discounts, and before tax.')\n              .optional(),\n            totalPriceAfterTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total price after all discounts and tax.')\n              .optional(),\n            paymentOption: z\n              .enum([\n                'FULL_PAYMENT_ONLINE',\n                'FULL_PAYMENT_OFFLINE',\n                'MEMBERSHIP',\n                'DEPOSIT_ONLINE',\n                'MEMBERSHIP_OFFLINE',\n                'MEMBERSHIP_ONLINE_WITH_OFFLINE_REMAINDER',\n              ])\n              .optional(),\n            taxDetails: z\n              .object({\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Taxable amount of this line item.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe(\n                    'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                  )\n                  .optional(),\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Deprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.\\nTax details for this line item.'\n              )\n              .optional(),\n            taxInfo: z\n              .object({\n                taxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                  )\n                  .optional(),\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Amount for which tax is calculated.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe('Tax rate %, as a decimal point.')\n                  .optional()\n                  .nullable(),\n                taxGroupId: z\n                  .string()\n                  .describe('Tax group ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                taxIncludedInPrice: z\n                  .boolean()\n                  .describe('Indicates whether the price already includes tax.')\n                  .optional(),\n                taxBreakdown: z\n                  .array(\n                    z.object({\n                      jurisdiction: z\n                        .string()\n                        .describe(\n                          'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      rate: z\n                        .string()\n                        .describe(\n                          'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Amount of tax calculated for this line item.'\n                        )\n                        .optional(),\n                      taxType: z\n                        .string()\n                        .describe(\n                          'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      taxName: z\n                        .string()\n                        .describe(\n                          'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      jurisdictionType: z\n                        .enum([\n                          'UNDEFINED',\n                          'COUNTRY',\n                          'STATE',\n                          'COUNTY',\n                          'CITY',\n                          'SPECIAL',\n                        ])\n                        .optional(),\n                      nonTaxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Non-taxable amount of the line item price.')\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of the line item price.')\n                        .optional(),\n                    })\n                  )\n                  .max(7)\n                  .optional(),\n              })\n              .describe(\n                'Represents all the relevant tax details for a specific line item.'\n              )\n              .optional(),\n            digitalFile: z\n              .object({\n                fileId: z\n                  .string()\n                  .describe('ID of the secure file in media.')\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                link: z\n                  .string()\n                  .describe(\n                    'Link will exist after the digital links have been generated on the order.'\n                  )\n                  .url()\n                  .min(1)\n                  .max(2000)\n                  .optional()\n                  .nullable(),\n                expirationDate: z\n                  .date()\n                  .describe('Link expiration time and date.')\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Digital file identifier, relevant only for items with type DIGITAL.'\n              )\n              .optional(),\n            subscriptionInfo: z\n              .object({\n                _id: z\n                  .string()\n                  .describe('Subscription ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                cycleNumber: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Subscription cycle. For example, if this order is for the 3rd cycle of a subscription, value will be `3`.'\n                  )\n                  .min(0)\n                  .optional(),\n                subscriptionOptionTitle: z\n                  .string()\n                  .describe(\n                    'Subscription option title. For example, `\"Monthly coffee Subscription\"`.'\n                  )\n                  .min(0)\n                  .max(150)\n                  .optional(),\n                subscriptionOptionDescription: z\n                  .string()\n                  .describe(\n                    'Subscription option description. For example, `\"1kg of selected coffee, once a month\"`.'\n                  )\n                  .max(500)\n                  .optional()\n                  .nullable(),\n                subscriptionSettings: z\n                  .object({\n                    frequency: z\n                      .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                      .optional(),\n                    interval: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of frequency units in a billing cycle. For example, frequency `MONTH` with interval `3` means billing every 3 months.'\n                      )\n                      .min(1)\n                      .max(3650)\n                      .optional()\n                      .nullable(),\n                    autoRenewal: z\n                      .boolean()\n                      .describe(\n                        'Whether subscription is renewed automatically at the end of each period.'\n                      )\n                      .optional(),\n                    billingCycles: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.'\n                      )\n                      .min(1)\n                      .optional()\n                      .nullable(),\n                    enableCustomerCancellation: z\n                      .boolean()\n                      .describe(\n                        'Whether to allow the customer to cancel the subscription.'\n                      )\n                      .optional(),\n                    freeTrialPeriod: z\n                      .object({\n                        frequency: z\n                          .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                          .optional(),\n                        interval: z\n                          .number()\n                          .int()\n                          .describe(\n                            'Number of frequency units in the free trial period. For example, frequency `MONTH` with interval `3` means a 3-month free trial.'\n                          )\n                          .min(1)\n                          .max(3650)\n                          .optional(),\n                      })\n                      .describe(\n                        'Period until first cycle starts. If None => no free trial'\n                      )\n                      .optional(),\n                  })\n                  .describe('Subscription detailed information.')\n                  .optional(),\n                chargesDescription: z\n                  .string()\n                  .describe(\n                    'Description of the charges that will be applied for subscription.'\n                  )\n                  .max(1000)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Subscription info.')\n              .optional(),\n            priceDescription: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                translated: z\n                  .string()\n                  .describe(\n                    \"Price description translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - \"Starts at $67\".'\n              )\n              .optional(),\n            depositAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Item\\'s price amount to be charged during checkout. Relevant for items with a `paymentOption` value of `\"DEPOSIT_ONLINE\"`.'\n              )\n              .optional(),\n            locations: z\n              .array(\n                z.object({\n                  _id: z\n                    .string()\n                    .describe('Location id in the associated owner app.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                  appId: z\n                    .string()\n                    .describe(\n                      'Location owner app, if not provided then the site business info locations will be used.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  quantity: z\n                    .number()\n                    .int()\n                    .describe('Quantity for specific location.')\n                    .min(1)\n                    .max(100000)\n                    .optional(),\n                  name: z\n                    .string()\n                    .describe('Location name.')\n                    .max(500)\n                    .optional()\n                    .nullable(),\n                })\n              )\n              .min(0)\n              .max(5)\n              .optional(),\n            lineItemPrice: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Total price **after** catalog discounts and line item discounts.'\n              )\n              .optional(),\n            taxableAddress: z\n              .intersection(\n                z.object({}),\n                z.xor([\n                  z.object({ addressType: z.never().optional() }),\n                  z.object({\n                    addressType: z\n                      .enum(['BUSINESS', 'BILLING', 'SHIPPING'])\n                      .describe(\n                        'taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly.'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Address used for tax calculation.')\n              .optional(),\n            priceUndetermined: z\n              .boolean()\n              .describe(\n                'Whether the price is not yet defined, and will be updated after the order is created.\\n\\nDefault: `false`'\n              )\n              .optional(),\n            extendedFields: z\n              .object({\n                namespaces: z\n                  .record(z.string(), z.record(z.string(), z.any()))\n                  .describe(\n                    'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Custom extended fields for the line item object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n              )\n              .optional(),\n            modifierGroups: z\n              .array(\n                z.object({\n                  _id: z\n                    .string()\n                    .describe('Modifier group ID.')\n                    .min(1)\n                    .max(36)\n                    .optional(),\n                  name: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                        )\n                        .min(1)\n                        .max(200)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                        )\n                        .min(1)\n                        .max(400)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Modifier group name.')\n                    .optional(),\n                  modifiers: z\n                    .array(\n                      z.object({\n                        _id: z\n                          .string()\n                          .describe('Modifier ID.')\n                          .min(1)\n                          .max(36)\n                          .optional(),\n                        quantity: z\n                          .number()\n                          .int()\n                          .describe('The quantity of this modifier.')\n                          .min(1)\n                          .max(100000)\n                          .optional()\n                          .nullable(),\n                        label: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                              )\n                              .min(1)\n                              .max(200)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                              )\n                              .min(1)\n                              .max(400)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Primary display label for the modifier.')\n                          .optional(),\n                        details: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                              )\n                              .min(1)\n                              .max(200)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                              )\n                              .min(1)\n                              .max(400)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Additional details.')\n                          .optional(),\n                        price: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('The price of the modifier.')\n                          .optional(),\n                      })\n                    )\n                    .min(1)\n                    .max(10)\n                    .optional(),\n                })\n              )\n              .max(10)\n              .optional(),\n          })\n        )\n        .min(1)\n        .max(300)\n        .optional(),\n      buyerInfo: z\n        .intersection(\n          z.object({\n            contactId: z\n              .string()\n              .describe(\n                \"Contact ID. Automatically created if one doesn't exist. For more information, see [Contacts API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts/contact-v4/introduction).\"\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            email: z\n              .string()\n              .describe(\"Buyer's email address.\")\n              .email()\n              .optional()\n              .nullable(),\n          }),\n          z.xor([\n            z.object({\n              visitorId: z.never().optional(),\n              memberId: z.never().optional(),\n            }),\n            z.object({\n              memberId: z.never().optional(),\n              visitorId: z\n                .string()\n                .describe(\n                  \"Visitor ID. Returned when the buyer isn't a logged-in site member.\"\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              visitorId: z.never().optional(),\n              memberId: z\n                .string()\n                .describe(\n                  'Member ID. Returned when the buyer is a logged-in site member.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n          ])\n        )\n        .describe('Buyer information.')\n        .optional(),\n      paymentStatus: z\n        .enum([\n          'UNSPECIFIED',\n          'NOT_PAID',\n          'PAID',\n          'PARTIALLY_REFUNDED',\n          'FULLY_REFUNDED',\n          'PENDING',\n          'PARTIALLY_PAID',\n          'PENDING_MERCHANT',\n          'CANCELED',\n          'DECLINED',\n        ])\n        .optional(),\n      fulfillmentStatus: z\n        .enum(['NOT_FULFILLED', 'FULFILLED', 'PARTIALLY_FULFILLED'])\n        .optional(),\n      buyerLanguage: z\n        .string()\n        .describe(\n          'Language for communication with the buyer. Defaults to the site language.\\nFor a site that supports multiple languages, this is the language the buyer selected.'\n        )\n        .optional()\n        .nullable(),\n      weightUnit: z.enum(['UNSPECIFIED_WEIGHT_UNIT', 'KG', 'LB']).optional(),\n      currency: z\n        .string()\n        .describe(\n          'Currency used for the pricing of this order in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.'\n        )\n        .optional()\n        .nullable(),\n      currencyConversionDetails: z\n        .object({\n          originalCurrency: z\n            .string()\n            .describe(\n              \"Currency used for the pricing of this order, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.\\n\\nThis currency is used to calculate the pricing before conversion to the buyer's payment currency.\"\n            )\n            .optional()\n            .nullable(),\n          conversionRate: z\n            .string()\n            .describe(\n              'The rate used for converting the original currency to the currency used for payment.'\n            )\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Currency conversion details. For use with multi-currency sites.'\n        )\n        .optional(),\n      taxIncludedInPrices: z\n        .boolean()\n        .describe('Whether tax is included in line item prices.')\n        .optional(),\n      siteLanguage: z\n        .string()\n        .describe('Site language in which original values are shown.')\n        .optional()\n        .nullable(),\n      priceSummary: z\n        .object({\n          subtotal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Subtotal of all line items, before discounts and before tax.'\n            )\n            .optional(),\n          shipping: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total shipping price, before discounts and before tax.')\n            .optional(),\n          tax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax applied to the order.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total discount amount applied to the order.')\n            .optional(),\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\"Order's total price after discounts and tax.\")\n            .optional(),\n          totalAdditionalFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total additional fees before tax.')\n            .optional(),\n        })\n        .describe('Order price summary.')\n        .optional(),\n      billingInfo: z\n        .object({\n          address: z\n            .object({\n              streetAddress: z\n                .object({\n                  name: z.string().optional(),\n                  number: z.string().optional(),\n                })\n                .optional(),\n              city: z.string().optional().nullable(),\n              subdivision: z.string().optional().nullable(),\n              country: z.string().optional().nullable(),\n              postalCode: z.string().optional().nullable(),\n              addressLine2: z.string().optional().nullable(),\n            })\n            .describe('Address.')\n            .optional(),\n          contactDetails: z\n            .object({\n              firstName: z\n                .string()\n                .describe('First name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              lastName: z\n                .string()\n                .describe('Last name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              phone: z.string().describe('Phone number.').optional().nullable(),\n              company: z\n                .string()\n                .describe('Company name.')\n                .max(1000)\n                .optional()\n                .nullable(),\n              vatId: z\n                .object({\n                  _id: z.string().describe(\"Customer's tax ID.\").optional(),\n                  type: z.enum(['UNSPECIFIED', 'CPF', 'CNPJ']).optional(),\n                })\n                .describe(\n                  'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                )\n                .optional(),\n            })\n            .describe('Contact details.')\n            .optional(),\n        })\n        .describe('Billing address and contact details.')\n        .optional(),\n      shippingInfo: z\n        .object({\n          carrierId: z\n            .string()\n            .describe(\n              'App Def Id of external provider which was a source of shipping info'\n            )\n            .min(1)\n            .max(100)\n            .optional()\n            .nullable(),\n          code: z\n            .string()\n            .describe(\n              'Unique code (or ID) of selected shipping option. For example, `\"usps_std_overnight\"`.'\n            )\n            .min(1)\n            .max(100)\n            .optional()\n            .nullable(),\n          title: z\n            .string()\n            .describe(\n              'Shipping option title.\\nFor example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.'\n            )\n            .max(250)\n            .optional(),\n          logistics: z\n            .intersection(\n              z.object({\n                deliveryTime: z\n                  .string()\n                  .describe(\n                    'Expected delivery time in free text. For example, `\"3-5 business days\"`.'\n                  )\n                  .max(500)\n                  .optional()\n                  .nullable(),\n                instructions: z\n                  .string()\n                  .describe(\n                    'Instructions for the carrier. For example, `\"Please knock on the door. If unanswered, please call contact number.\"`.'\n                  )\n                  .max(1000)\n                  .optional()\n                  .nullable(),\n                deliverByDate: z\n                  .date()\n                  .describe(\n                    'Deprecated - Latest expected delivery date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                  )\n                  .optional()\n                  .nullable(),\n                deliveryTimeSlot: z\n                  .object({\n                    from: z\n                      .date()\n                      .describe('Delivery slot starting time.')\n                      .optional()\n                      .nullable(),\n                    to: z\n                      .date()\n                      .describe('Delivery slot ending time.')\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Expected delivery time slot with start and end times.'\n                  )\n                  .optional(),\n              }),\n              z.xor([\n                z.object({\n                  shippingDestination: z.never().optional(),\n                  pickupDetails: z.never().optional(),\n                }),\n                z.object({\n                  pickupDetails: z.never().optional(),\n                  shippingDestination: z\n                    .object({\n                      address: z\n                        .object({\n                          streetAddress: z\n                            .object({\n                              name: z.string().optional(),\n                              number: z.string().optional(),\n                            })\n                            .optional(),\n                          city: z.string().optional().nullable(),\n                          subdivision: z.string().optional().nullable(),\n                          country: z.string().optional().nullable(),\n                          postalCode: z.string().optional().nullable(),\n                          addressLine2: z.string().optional().nullable(),\n                        })\n                        .describe('Address.')\n                        .optional(),\n                      contactDetails: z\n                        .object({\n                          firstName: z\n                            .string()\n                            .describe('First name.')\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          lastName: z\n                            .string()\n                            .describe('Last name.')\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          phone: z\n                            .string()\n                            .describe('Phone number.')\n                            .optional()\n                            .nullable(),\n                          company: z\n                            .string()\n                            .describe('Company name.')\n                            .max(1000)\n                            .optional()\n                            .nullable(),\n                          vatId: z\n                            .object({\n                              _id: z\n                                .string()\n                                .describe(\"Customer's tax ID.\")\n                                .optional(),\n                              type: z\n                                .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                                .optional(),\n                            })\n                            .describe(\n                              'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                            )\n                            .optional(),\n                        })\n                        .describe('Contact details.')\n                        .optional(),\n                    })\n                    .describe(\n                      \"Shipping destination address and contact details. For pickup orders, this contains the pickup location address, not the recipient's address.\"\n                    ),\n                }),\n                z.object({\n                  shippingDestination: z.never().optional(),\n                  pickupDetails: z\n                    .object({\n                      address: z\n                        .object({\n                          streetAddress: z\n                            .object({\n                              name: z.string().optional(),\n                              number: z.string().optional(),\n                            })\n                            .optional(),\n                          city: z.string().optional().nullable(),\n                          subdivision: z.string().optional().nullable(),\n                          country: z.string().optional().nullable(),\n                          postalCode: z.string().optional().nullable(),\n                          addressLine2: z.string().optional().nullable(),\n                        })\n                        .describe('Pickup address.')\n                        .optional(),\n                      pickupMethod: z\n                        .enum(['STORE_PICKUP', 'PICKUP_POINT'])\n                        .describe('Pickup method')\n                        .optional(),\n                    })\n                    .describe(\n                      'Pickup details for store pickup or pickup point orders.'\n                    ),\n                }),\n              ])\n            )\n            .describe('Shipping logistics.')\n            .optional(),\n          cost: z\n            .object({\n              price: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Shipping price for display purposes.')\n                .optional(),\n              totalPriceBeforeTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Total price of shipping after discounts (when relevant), and before tax.'\n                )\n                .optional(),\n              totalPriceAfterTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Shipping price after all discounts (if any exist), and after tax.'\n                )\n                .optional(),\n              taxDetails: z\n                .object({\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of this line item.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe(\n                      'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                    )\n                    .optional(),\n                  totalTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                    )\n                    .optional(),\n                })\n                .describe('Tax details.')\n                .optional(),\n              taxInfo: z\n                .object({\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                    )\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount for which tax is calculated.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe('Tax rate %, as a decimal point.')\n                    .optional()\n                    .nullable(),\n                  taxGroupId: z\n                    .string()\n                    .describe('Tax group ID.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxIncludedInPrice: z\n                    .boolean()\n                    .describe(\n                      'Indicates whether the price already includes tax.'\n                    )\n                    .optional(),\n                  taxBreakdown: z\n                    .array(\n                      z.object({\n                        jurisdiction: z\n                          .string()\n                          .describe(\n                            'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        rate: z\n                          .string()\n                          .describe(\n                            'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                          )\n                          .optional()\n                          .nullable(),\n                        taxAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Amount of tax calculated for this line item.'\n                          )\n                          .optional(),\n                        taxType: z\n                          .string()\n                          .describe(\n                            'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        taxName: z\n                          .string()\n                          .describe(\n                            'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        jurisdictionType: z\n                          .enum([\n                            'UNDEFINED',\n                            'COUNTRY',\n                            'STATE',\n                            'COUNTY',\n                            'CITY',\n                            'SPECIAL',\n                          ])\n                          .optional(),\n                        nonTaxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Non-taxable amount of the line item price.'\n                          )\n                          .optional(),\n                        taxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Taxable amount of the line item price.')\n                          .optional(),\n                      })\n                    )\n                    .max(7)\n                    .optional(),\n                })\n                .describe(\n                  'Represents all the relevant tax details for a shipping.'\n                )\n                .optional(),\n              discount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Shipping discount before tax.')\n                .optional(),\n            })\n            .describe('Shipping costs.')\n            .optional(),\n          region: z\n            .object({\n              name: z\n                .string()\n                .describe(\n                  'Name of shipping region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.'\n                )\n                .max(100)\n                .optional()\n                .nullable(),\n            })\n            .describe('Shipping region.')\n            .optional(),\n        })\n        .describe('Shipping info and selected shipping option details.')\n        .optional(),\n      buyerNote: z\n        .string()\n        .describe(\n          '[Buyer note](https://support.wix.com/en/article/wix-stores-viewing-buyer-notes) left by the customer.'\n        )\n        .max(1000)\n        .optional()\n        .nullable(),\n      status: z\n        .enum(['INITIALIZED', 'APPROVED', 'CANCELED', 'PENDING', 'REJECTED'])\n        .optional(),\n      archived: z\n        .boolean()\n        .describe('Whether order is archived.')\n        .optional()\n        .nullable(),\n      taxSummary: z\n        .object({\n          totalTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax.')\n            .optional(),\n        })\n        .describe(\n          'Tax summary.\\nDeprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.'\n        )\n        .optional(),\n      taxInfo: z\n        .object({\n          totalTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Calculated tax, added from line items.')\n            .optional(),\n          taxBreakdown: z\n            .array(\n              z.object({\n                taxName: z\n                  .string()\n                  .describe(\n                    'The name of the tax against which this tax amount was calculated.'\n                  )\n                  .max(200)\n                  .optional(),\n                taxType: z\n                  .string()\n                  .describe(\n                    \"The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.\"\n                  )\n                  .max(200)\n                  .optional(),\n                jurisdiction: z\n                  .string()\n                  .describe(\n                    'The name of the jurisdiction in which this tax detail applies.'\n                  )\n                  .max(200)\n                  .optional(),\n                jurisdictionType: z\n                  .enum([\n                    'UNDEFINED',\n                    'COUNTRY',\n                    'STATE',\n                    'COUNTY',\n                    'CITY',\n                    'SPECIAL',\n                  ])\n                  .optional(),\n                rate: z\n                  .string()\n                  .describe('The rate at which this tax detail was calculated.')\n                  .optional(),\n                aggregatedTaxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The sum of all the tax from line items that calculated by the tax identifiers.'\n                  )\n                  .optional(),\n              })\n            )\n            .min(0)\n            .max(50)\n            .optional(),\n          taxExempt: z\n            .boolean()\n            .describe(\n              'Whether the order is exempt from tax calculations.\\n\\nDefault: `false`'\n            )\n            .optional()\n            .nullable(),\n        })\n        .describe('Tax information.')\n        .optional(),\n      appliedDiscounts: z\n        .array(\n          z.intersection(\n            z.object({\n              discountType: z\n                .enum(['GLOBAL', 'SPECIFIC_ITEMS', 'SHIPPING'])\n                .optional(),\n              lineItemIds: z.array(z.string()).min(0).max(300).optional(),\n              _id: z\n                .string()\n                .describe('Discount ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              lineItemDiscounts: z\n                .array(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Line item ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    totalDiscount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Total discount amount for this line item.')\n                      .optional(),\n                  })\n                )\n                .max(300)\n                .optional(),\n            }),\n            z.xor([\n              z.object({\n                coupon: z.never().optional(),\n                merchantDiscount: z.never().optional(),\n                discountRule: z.never().optional(),\n              }),\n              z.object({\n                merchantDiscount: z.never().optional(),\n                discountRule: z.never().optional(),\n                coupon: z\n                  .object({\n                    _id: z.string().describe('Coupon ID.').optional(),\n                    code: z.string().describe('Coupon code.').optional(),\n                    name: z.string().describe('Coupon name.').optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Coupon value.')\n                      .optional(),\n                  })\n                  .describe('Coupon applied by the customer.'),\n              }),\n              z.object({\n                coupon: z.never().optional(),\n                discountRule: z.never().optional(),\n                merchantDiscount: z\n                  .intersection(\n                    z.object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Discount amount.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        discountReason: z.never().optional(),\n                        description: z.never().optional(),\n                      }),\n                      z.object({\n                        description: z.never().optional(),\n                        discountReason: z\n                          .enum([\n                            'UNSPECIFIED',\n                            'EXCHANGED_ITEMS',\n                            'BILLING_ADJUSTMENT',\n                          ])\n                          .describe('Predefined discount reason.'),\n                      }),\n                      z.object({\n                        discountReason: z.never().optional(),\n                        description: z\n                          .string()\n                          .describe('Custom discount description as free text.')\n                          .max(200),\n                      }),\n                    ])\n                  )\n                  .describe('Discount applied manually by the merchant.'),\n              }),\n              z.object({\n                coupon: z.never().optional(),\n                merchantDiscount: z.never().optional(),\n                discountRule: z\n                  .object({\n                    _id: z\n                      .string()\n                      .describe('Discount rule ID')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    name: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"Original discount rule name (in site's default language).\"\n                          )\n                          .min(1)\n                          .max(256)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            'Translated discount rule name according to buyer language. Defaults to `original` when not provided.'\n                          )\n                          .min(1)\n                          .max(500)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Discount rule name')\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Discount value.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Automatic discount applied by the system based on configured discount rules.'\n                  ),\n              }),\n            ])\n          )\n        )\n        .max(320)\n        .optional(),\n      activities: z\n        .array(\n          z.intersection(\n            z.object({\n              _id: z\n                .string()\n                .describe('Activity ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              authorEmail: z\n                .string()\n                .describe(\"Activity author's email.\")\n                .email()\n                .optional()\n                .nullable(),\n              _createdDate: z\n                .date()\n                .describe('Activity creation date and time.')\n                .optional()\n                .nullable(),\n              type: z\n                .enum([\n                  'ORDER_REFUNDED',\n                  'ORDER_PLACED',\n                  'ORDER_PAID',\n                  'ORDER_FULFILLED',\n                  'ORDER_NOT_FULFILLED',\n                  'ORDER_CANCELED',\n                  'DOWNLOAD_LINK_SENT',\n                  'TRACKING_NUMBER_ADDED',\n                  'TRACKING_NUMBER_EDITED',\n                  'TRACKING_LINK_ADDED',\n                  'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                  'INVOICE_ADDED',\n                  'INVOICE_REMOVED',\n                  'INVOICE_SENT',\n                  'FULFILLER_EMAIL_SENT',\n                  'SHIPPING_ADDRESS_EDITED',\n                  'EMAIL_EDITED',\n                  'PICKUP_READY_EMAIL_SENT',\n                  'CUSTOM_ACTIVITY',\n                  'MERCHANT_COMMENT',\n                  'ORDER_PARTIALLY_PAID',\n                  'DRAFT_ORDER_CHANGES_APPLIED',\n                  'SAVED_PAYMENT_METHOD',\n                  'AUTHORIZED_PAYMENT_CREATED',\n                  'AUTHORIZED_PAYMENT_CAPTURED',\n                  'AUTHORIZED_PAYMENT_VOIDED',\n                  'REFUND_INITIATED',\n                  'PAYMENT_REFUNDED',\n                  'PAYMENT_REFUND_FAILED',\n                  'REFUNDED_AS_STORE_CREDIT',\n                  'PAYMENT_PENDING',\n                  'PAYMENT_CANCELED',\n                  'PAYMENT_DECLINED',\n                  'ORDER_PENDING',\n                  'ORDER_REJECTED',\n                  'RECEIPT_CREATED',\n                  'RECEIPT_SENT',\n                  'CHARGEBACK_CREATED',\n                  'CHARGEBACK_REVERSED',\n                ])\n                .optional(),\n              activityType: z\n                .enum([\n                  'ORDER_PLACED',\n                  'ORDER_PAID',\n                  'ORDER_FULFILLED',\n                  'ORDER_NOT_FULFILLED',\n                  'ORDER_CANCELED',\n                  'DOWNLOAD_LINK_SENT',\n                  'TRACKING_NUMBER_ADDED',\n                  'TRACKING_NUMBER_EDITED',\n                  'TRACKING_LINK_ADDED',\n                  'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                  'INVOICE_ADDED',\n                  'INVOICE_REMOVED',\n                  'INVOICE_SENT',\n                  'FULFILLER_EMAIL_SENT',\n                  'SHIPPING_ADDRESS_EDITED',\n                  'EMAIL_EDITED',\n                  'PICKUP_READY_EMAIL_SENT',\n                  'MERCHANT_COMMENT',\n                  'ORDER_PARTIALLY_PAID',\n                  'DRAFT_ORDER_CHANGES_APPLIED',\n                  'SAVED_PAYMENT_METHOD',\n                  'AUTHORIZED_PAYMENT_CREATED',\n                  'AUTHORIZED_PAYMENT_CAPTURED',\n                  'AUTHORIZED_PAYMENT_VOIDED',\n                  'REFUND_INITIATED',\n                  'PAYMENT_REFUNDED',\n                  'PAYMENT_REFUND_FAILED',\n                  'REFUNDED_AS_STORE_CREDIT',\n                  'PAYMENT_PENDING',\n                  'PAYMENT_CANCELED',\n                  'PAYMENT_DECLINED',\n                  'ORDER_PENDING',\n                  'ORDER_REJECTED',\n                  'RECEIPT_CREATED',\n                  'RECEIPT_SENT',\n                  'CHARGEBACK_CREATED',\n                  'CHARGEBACK_REVERSED',\n                  'ORDER_REFUNDED',\n                ])\n                .optional(),\n            }),\n            z.xor([\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n              }),\n              z.object({\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                merchantComment: z\n                  .object({\n                    message: z\n                      .string()\n                      .describe('Merchant comment message.')\n                      .min(1)\n                      .max(5000)\n                      .optional(),\n                  })\n                  .describe(\n                    'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                orderRefunded: z\n                  .object({\n                    manual: z\n                      .boolean()\n                      .describe(\n                        'Whether order was refunded manually. For example, via payment provider or using cash.'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(200)\n                      .optional(),\n                  })\n                  .describe(\n                    'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                draftOrderChangesApplied: z\n                  .object({\n                    draftOrderId: z\n                      .string()\n                      .describe('Draft order id.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for edit, given by user (optional).')\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    changes: z\n                      .array(\n                        z.intersection(\n                          z.object({}),\n                          z.xor([\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                            }),\n                            z.object({\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemChanged: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name after change.')\n                                  .optional(),\n                                quantity: z\n                                  .object({\n                                    originalQuantity: z\n                                      .number()\n                                      .int()\n                                      .describe('Item quantity before update.')\n                                      .min(0)\n                                      .max(1000000)\n                                      .optional(),\n                                    newQuantity: z\n                                      .number()\n                                      .int()\n                                      .describe('Item quantity after update.')\n                                      .min(0)\n                                      .max(1000000)\n                                      .optional(),\n                                    diff: z\n                                      .number()\n                                      .int()\n                                      .describe(\n                                        'Difference between original and new quantity. Absolute value.'\n                                      )\n                                      .min(1)\n                                      .max(1000000)\n                                      .optional(),\n                                    deltaType: z\n                                      .enum([\n                                        'QUANTITY_INCREASED',\n                                        'QUANTITY_DECREASED',\n                                      ])\n                                      .describe(\n                                        'Type of quantity change: increase or decrease.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item quantity change.')\n                                  .optional(),\n                                price: z\n                                  .object({\n                                    originalPrice: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Item price before update.')\n                                      .optional(),\n                                    newPrice: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Item price after update.')\n                                      .optional(),\n                                  })\n                                  .describe('Item price change.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name.')\n                                  .optional(),\n                                quantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Added or removed item quantity.')\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name.')\n                                  .optional(),\n                                quantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Added or removed item quantity.')\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              discountAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Discount id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe(\n                                    'Discount name: coupon name / discount rule name / merchant discount description.'\n                                  )\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        ),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Discount amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              discountRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Discount id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe(\n                                    'Discount name: coupon name / discount rule name / merchant discount description.'\n                                  )\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        ),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Discount amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              additionalFeeAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Additional fee id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Additional fee name.')\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        ),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Additional fee amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              additionalFeeRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Additional fee id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Additional fee name.')\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        ),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Additional fee amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              totalPriceChanged: z.object({\n                                originalTotal: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s total price after discounts and tax. Before update'\n                                  )\n                                  .optional(),\n                                newTotal: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s total price after discounts and tax. After update'\n                                  )\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.object({\n                                originalShippingInfo: z\n                                  .object({\n                                    total: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Order’s shipping price.')\n                                      .optional(),\n                                    shippingTitle: z\n                                      .string()\n                                      .describe('Order’s shipping title.')\n                                      .max(250)\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s Shipping Information. Before update'\n                                  )\n                                  .optional(),\n                                newShippingInfo: z\n                                  .object({\n                                    total: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Order’s shipping price.')\n                                      .optional(),\n                                    shippingTitle: z\n                                      .string()\n                                      .describe('Order’s shipping title.')\n                                      .max(250)\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s Shipping Information. After update'\n                                  )\n                                  .optional(),\n                              }),\n                            }),\n                          ])\n                        )\n                      )\n                      .optional(),\n                  })\n                  .describe('Details of changes made by the Draft Orders API.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                savedPaymentMethod: z\n                  .object({\n                    name: z\n                      .string()\n                      .describe('Payment method name.')\n                      .min(1)\n                      .max(100)\n                      .optional(),\n                    description: z\n                      .string()\n                      .describe('Payment method description.')\n                      .min(1)\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Details of the payment method saved for the order.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentCreated: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment created.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentCaptured: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment captured.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentVoided: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment voided.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                refundInitiated: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    payments: z\n                      .array(\n                        z.intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe('Payment ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            externalRefund: z\n                              .boolean()\n                              .describe(\n                                \"Whether refund was made externally and manually on the payment provider's side.\"\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                            }),\n                            z.object({\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                              regular: z\n                                .object({\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                  lastFourDigits: z\n                                    .string()\n                                    .describe(\n                                      'The last 4 digits of the card number.'\n                                    )\n                                    .max(4)\n                                    .optional()\n                                    .nullable(),\n                                  brand: z\n                                    .string()\n                                    .describe(\"Card issuer's brand.\")\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Regular payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              membership: z.never().optional(),\n                              giftCard: z\n                                .object({\n                                  giftCardPaymentId: z\n                                    .string()\n                                    .describe('Gift card payment ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                })\n                                .describe('Gift card payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z\n                                .object({\n                                  membershipId: z\n                                    .string()\n                                    .describe('Membership ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Membership payment refund.'),\n                            }),\n                          ])\n                        )\n                      )\n                      .min(1)\n                      .max(50)\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentRefunded: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    payment: z\n                      .intersection(\n                        z.object({\n                          paymentId: z\n                            .string()\n                            .describe('Payment ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          externalRefund: z\n                            .boolean()\n                            .describe(\n                              \"Whether refund was made externally and manually on the payment provider's side.\"\n                            )\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                          }),\n                          z.object({\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                            regular: z\n                              .object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Regular payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            membership: z.never().optional(),\n                            giftCard: z\n                              .object({\n                                giftCardPaymentId: z\n                                  .string()\n                                  .describe('Gift card payment ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                              })\n                              .describe('Gift card payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z\n                              .object({\n                                membershipId: z\n                                  .string()\n                                  .describe('Membership ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Membership payment refund.'),\n                          }),\n                        ])\n                      )\n                      .describe('Details about the refunded payment.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentRefundFailed: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    payment: z\n                      .intersection(\n                        z.object({\n                          paymentId: z\n                            .string()\n                            .describe('Payment ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          externalRefund: z\n                            .boolean()\n                            .describe(\n                              \"Whether refund was made externally and manually on the payment provider's side.\"\n                            )\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                          }),\n                          z.object({\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                            regular: z\n                              .object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Regular payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            membership: z.never().optional(),\n                            giftCard: z\n                              .object({\n                                giftCardPaymentId: z\n                                  .string()\n                                  .describe('Gift card payment ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                              })\n                              .describe('Gift card payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z\n                              .object({\n                                membershipId: z\n                                  .string()\n                                  .describe('Membership ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Membership payment refund.'),\n                          }),\n                        ])\n                      )\n                      .describe('Details about the failed payment refund.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                refundedAsStoreCredit: z\n                  .object({\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of refund to store credit.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentPending: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a pending payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentCanceled: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a canceled payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentDeclined: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a declined payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                receiptCreated: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z.never().optional(),\n                      }),\n                      z.object({\n                        externalReceipt: z.never().optional(),\n                        wixReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by Wix.'),\n                      }),\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by an external system.'),\n                      }),\n                    ])\n                  )\n                  .describe('Receipt was added for associated payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                receiptSent: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z.never().optional(),\n                      }),\n                      z.object({\n                        externalReceipt: z.never().optional(),\n                        wixReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by Wix.'),\n                      }),\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by an external system.'),\n                      }),\n                    ])\n                  )\n                  .describe('Receipt sent to customer.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                chargebackCreated: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe('ID of the payment that received a chargeback.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    chargebackId: z\n                      .string()\n                      .describe('Chargeback ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback amount.')\n                      .optional(),\n                    paymentDetails: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Payment details.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Order received a chargeback for one of its payments.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'ID of the payment involved with the chargeback.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    chargebackId: z\n                      .string()\n                      .describe('Chargeback ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback amount.')\n                      .optional(),\n                    reversalAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback reversal amount.')\n                      .optional(),\n                    paymentDetails: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Payment details.')\n                      .optional(),\n                  })\n                  .describe(\n                    \"Chargeback reversed for one of the order's payments.\"\n                  ),\n              }),\n            ])\n          )\n        )\n        .max(1000)\n        .optional(),\n      attributionSource: z.enum(['UNSPECIFIED', 'FACEBOOK_ADS']).optional(),\n      createdBy: z\n        .intersection(\n          z.object({}),\n          z.xor([\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n            }),\n            z.object({\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n              userId: z\n                .string()\n                .describe(\n                  'User ID - when the order was created by a Wix user on behalf of a buyer.\\nFor example, via POS (point of service).'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n              memberId: z\n                .string()\n                .describe(\n                  'Member ID - when the order was created by a **logged in** site visitor.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              appId: z.never().optional(),\n              visitorId: z\n                .string()\n                .describe(\n                  'Visitor ID - when the order was created by a site visitor that was **not** logged in.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z\n                .string()\n                .describe(\n                  'App ID - when the order was created by an external application.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n          ])\n        )\n        .describe(\"ID of the order's initiator.\")\n        .optional(),\n      channelInfo: z\n        .object({\n          type: z\n            .enum([\n              'UNSPECIFIED',\n              'WEB',\n              'POS',\n              'EBAY',\n              'AMAZON',\n              'OTHER_PLATFORM',\n              'WIX_APP_STORE',\n              'WIX_INVOICES',\n              'BACKOFFICE_MERCHANT',\n              'WISH',\n              'CLASS_PASS',\n              'GLOBAL_E',\n              'FACEBOOK',\n              'ETSY',\n              'TIKTOK',\n              'FAIRE_COM',\n              'PAYPAL_AGENTIC_CHECKOUT',\n              'STRIPE_AGENTIC_CHECKOUT',\n            ])\n            .optional(),\n          externalOrderId: z\n            .string()\n            .describe(\n              'Reference to an order ID from an external system. Relevant when recording orders from external platforms.'\n            )\n            .max(100)\n            .optional()\n            .nullable(),\n          externalOrderUrl: z\n            .string()\n            .describe(\n              'URL to the order in the external system. Relevant when recording orders from external platforms.'\n            )\n            .max(300)\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Information about the sales channel that submitted this order.'\n        )\n        .optional(),\n      seenByAHuman: z\n        .boolean()\n        .describe(\n          'Whether a human has seen the order. Set when an order is clicked on in the dashboard.'\n        )\n        .optional()\n        .nullable(),\n      checkoutId: z\n        .string()\n        .describe('Checkout ID.')\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      customFields: z\n        .array(\n          z.object({\n            value: z\n              .any()\n              .describe('Custom field value.')\n              .optional()\n              .nullable(),\n            title: z\n              .string()\n              .describe('Custom field title.')\n              .min(1)\n              .max(500)\n              .optional(),\n            translatedTitle: z\n              .string()\n              .describe('Translated custom field title.')\n              .min(1)\n              .max(500)\n              .optional()\n              .nullable(),\n          })\n        )\n        .optional(),\n      balanceSummary: z\n        .object({\n          balance: z\n            .object({\n              amount: z\n                .string()\n                .describe(\n                  'Balance amount.\\n\\nA negative `amount` represents the amount to be refunded. This can happen due to overcharging or the order being modified after a payment has been made.'\n                )\n                .optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Current amount left to pay.')\n            .optional(),\n          paid: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Sum of all approved and successful payments.\\n\\nThe value includes payments that have subsequently been fully or partially refunded.'\n            )\n            .optional(),\n          refunded: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all successfully refunded payments.')\n            .optional(),\n          authorized: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all authorized payments.')\n            .optional(),\n          pendingRefund: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all pending refund transactions.')\n            .optional(),\n          pending: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all pending transactions.')\n            .optional(),\n          chargeback: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all transaction chargebacks.')\n            .optional(),\n          chargebackReversal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all chargeback reversals.')\n            .optional(),\n          platformFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total platform fees actually charged across all payments.\\nThis reflects amounts collected, which may differ from the expected fees in `order.platformFeeSummary`.'\n            )\n            .optional(),\n          totalMinusPlatformFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Order total after deducting platform fees. Represents the net amount payable to the merchant.'\n            )\n            .optional(),\n        })\n        .describe('Balance summary.')\n        .optional(),\n      additionalFees: z\n        .array(\n          z.object({\n            code: z\n              .string()\n              .describe(\"Additional fee's unique code for future processing.\")\n              .min(1)\n              .max(100)\n              .optional()\n              .nullable(),\n            name: z\n              .string()\n              .describe('Name of additional fee.')\n              .min(1)\n              .max(50)\n              .optional(),\n            price: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price.\")\n              .optional(),\n            taxDetails: z\n              .object({\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Taxable amount of this line item.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe(\n                    'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                  )\n                  .optional(),\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                  )\n                  .optional(),\n              })\n              .describe('Tax details.')\n              .optional(),\n            taxInfo: z\n              .object({\n                taxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                  )\n                  .optional(),\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Amount for which tax is calculated.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe('Tax rate %, as a decimal point.')\n                  .optional()\n                  .nullable(),\n                taxGroupId: z\n                  .string()\n                  .describe('Tax group ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                taxIncludedInPrice: z\n                  .boolean()\n                  .describe('Indicates whether the price already includes tax.')\n                  .optional(),\n                taxBreakdown: z\n                  .array(\n                    z.object({\n                      jurisdiction: z\n                        .string()\n                        .describe(\n                          'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      rate: z\n                        .string()\n                        .describe(\n                          'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Amount of tax calculated for this line item.'\n                        )\n                        .optional(),\n                      taxType: z\n                        .string()\n                        .describe(\n                          'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      taxName: z\n                        .string()\n                        .describe(\n                          'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      jurisdictionType: z\n                        .enum([\n                          'UNDEFINED',\n                          'COUNTRY',\n                          'STATE',\n                          'COUNTY',\n                          'CITY',\n                          'SPECIAL',\n                        ])\n                        .optional(),\n                      nonTaxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Non-taxable amount of the line item price.')\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of the line item price.')\n                        .optional(),\n                    })\n                  )\n                  .max(7)\n                  .optional(),\n              })\n              .describe(\n                'Represents all the relevant tax details for additional fee.'\n              )\n              .optional(),\n            providerAppId: z\n              .string()\n              .describe(\"SPI implementer's `appId`.\")\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            priceBeforeTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price before tax.\")\n              .optional(),\n            priceAfterTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price after tax.\")\n              .optional(),\n            _id: z\n              .string()\n              .describe(\"Additional fee's id.\")\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional(),\n            lineItemIds: z.array(z.string()).optional(),\n            source: z\n              .enum([\n                'SERVICE_PLUGIN',\n                'ITEM',\n                'MANUAL',\n                'SHIPPING',\n                'PLATFORM',\n              ])\n              .optional(),\n          })\n        )\n        .max(100)\n        .optional(),\n      extendedFields: z\n        .object({\n          namespaces: z\n            .record(z.string(), z.record(z.string(), z.any()))\n            .describe(\n              'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n            )\n            .optional(),\n        })\n        .describe(\n          'Custom field data for the order object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n        )\n        .optional(),\n      purchaseFlowId: z\n        .string()\n        .describe(\n          'Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.'\n        )\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      recipientInfo: z\n        .object({\n          address: z\n            .object({\n              streetAddress: z\n                .object({\n                  name: z.string().optional(),\n                  number: z.string().optional(),\n                })\n                .optional(),\n              city: z.string().optional().nullable(),\n              subdivision: z.string().optional().nullable(),\n              country: z.string().optional().nullable(),\n              postalCode: z.string().optional().nullable(),\n              addressLine2: z.string().optional().nullable(),\n            })\n            .describe('Address.')\n            .optional(),\n          contactDetails: z\n            .object({\n              firstName: z\n                .string()\n                .describe('First name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              lastName: z\n                .string()\n                .describe('Last name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              phone: z.string().describe('Phone number.').optional().nullable(),\n              company: z\n                .string()\n                .describe('Company name.')\n                .max(1000)\n                .optional()\n                .nullable(),\n              vatId: z\n                .object({\n                  _id: z.string().describe(\"Customer's tax ID.\").optional(),\n                  type: z.enum(['UNSPECIFIED', 'CPF', 'CNPJ']).optional(),\n                })\n                .describe(\n                  'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                )\n                .optional(),\n            })\n            .describe('Contact details.')\n            .optional(),\n        })\n        .describe(\n          \"Final recipient's address and contact details.\\n\\nThis field represents who will ultimately receive the order. It may differ from `shippingInfo.logistics.shippingDestination` when:\\n+ The chosen shipping option is a pickup point or store pickup, where `shippingDestination` contains the pickup location.\\n+ No shipping option is selected.\"\n        )\n        .optional(),\n      tags: z\n        .object({\n          privateTags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n            )\n            .optional(),\n          tags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n            )\n            .optional(),\n        })\n        .describe(\n          'Order tags.\\n\\n[Tags](https://dev.wix.com/docs/rest/business-management/tags/introduction) are labels attached to entities, allowing for flexible categorization and data management.'\n        )\n        .optional(),\n      purchasedDate: z\n        .date()\n        .describe(\n          'Date and time the order was originally purchased in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.\\nUsed for migration from external systems.'\n        )\n        .optional()\n        .nullable(),\n      businessLocation: z\n        .object({\n          _id: z\n            .string()\n            .describe(\n              'Location ID.\\nLearn more about the [Wix Locations API](https://dev.wix.com/docs/rest/business-management/locations/introduction).'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            )\n            .optional(),\n          name: z\n            .string()\n            .describe('Location name.')\n            .min(1)\n            .max(500)\n            .optional(),\n        })\n        .describe('Order location.')\n        .optional(),\n      payAfterFreeTrial: z\n        .object({\n          subtotal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Subtotal of all line items, before discounts and before tax.'\n            )\n            .optional(),\n          shipping: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total shipping price, before discounts and before tax.')\n            .optional(),\n          tax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax applied to the order.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total discount amount applied to the order.')\n            .optional(),\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\"Order's total price after discounts and tax.\")\n            .optional(),\n          totalAdditionalFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total additional fees before tax.')\n            .optional(),\n        })\n        .describe(\n          'Pay after free trial price summary. Price summary that should be paid for subscriptions after free trial period.'\n        )\n        .optional(),\n      platformFeeSummary: z\n        .object({\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total sum of all platform fees.')\n            .optional(),\n          totalPassOn: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total amount of platform fees with `PASS_ON` charge type.'\n            )\n            .optional(),\n          totalAbsorbed: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total amount of platform fees with `ABSORBED` charge type.'\n            )\n            .optional(),\n          fees: z\n            .array(\n              z.object({\n                name: z\n                  .object({\n                    original: z\n                      .string()\n                      .describe(\n                        \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                      )\n                      .min(1)\n                      .max(200)\n                      .optional(),\n                    translated: z\n                      .string()\n                      .describe(\n                        \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                      )\n                      .min(1)\n                      .max(400)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Platform fee name.')\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Platform fee amount.')\n                  .optional(),\n                lineItemId: z\n                  .string()\n                  .describe('ID of the line item the platform fee applies to.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                chargeType: z.enum(['PASS_ON', 'ABSORBED']).optional(),\n                percentageRate: z\n                  .string()\n                  .describe(\n                    'Percentage rate charged as platform fee.\\nThe fee rate percentage expressed as a decimal fraction between 0 and 1. For example, `0.05` for 5%.'\n                  )\n                  .optional(),\n              })\n            )\n            .max(300)\n            .optional(),\n        })\n        .describe(\n          'Summary of platform fees for this order, including totals by charge type and a breakdown of individual fees.'\n        )\n        .optional(),\n    })\n    .describe('Order to be updated.'),\n});\nexport const UpdateOrderResponse = z.object({\n  _id: z\n    .string()\n    .describe('Order ID.')\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    )\n    .optional()\n    .nullable(),\n  number: z\n    .string()\n    .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n    .describe(\n      \"Order number displayed in the site owner's dashboard (auto-generated).\"\n    )\n    .optional(),\n  _createdDate: z\n    .date()\n    .describe(\n      'Date and time the order was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n    )\n    .optional()\n    .nullable(),\n  _updatedDate: z\n    .date()\n    .describe(\n      'Date and time the order was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n    )\n    .optional()\n    .nullable(),\n  lineItems: z\n    .array(\n      z.object({\n        _id: z.string().describe('Line item ID.').optional(),\n        productName: z\n          .object({\n            original: z\n              .string()\n              .describe(\n                \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n              )\n              .min(1)\n              .max(200)\n              .optional(),\n            translated: z\n              .string()\n              .describe(\n                \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n              )\n              .min(1)\n              .max(400)\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Item name.\\n\\n+ Stores - `product.name`\\n+ Bookings - `service.info.name`\\n+ Events - `ticket.name`'\n          )\n          .optional(),\n        catalogReference: z\n          .object({\n            catalogItemId: z\n              .string()\n              .describe('ID of the item within the catalog it belongs to.')\n              .min(1)\n              .max(36)\n              .optional(),\n            appId: z\n              .string()\n              .describe(\n                'ID of the app providing the catalog.\\n\\nYou can get your app\\'s ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\\n\\nFor items from Wix catalogs, the following values always apply:\\n+ Wix Stores: `\"215238eb-22a5-4c36-9e7b-e7c08025e04e\"`\\n+ Wix Bookings: `\"13d21c63-b5ec-5912-8397-c3a5ddb27a97\"`\\n+ Wix Restaurants: `\"9a5d83fd-8570-482e-81ab-cfa88942ee60\"`'\n              )\n              .min(1)\n              .optional(),\n            options: z\n              .record(z.string(), z.any())\n              .describe(\n                'Additional item details in `key:value` pairs.\\n\\nUse this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items.\\n\\nFor Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration)\\nor [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction).'\n              )\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            \"References to the line item's origin catalog. Empty for custom line items.\"\n          )\n          .optional(),\n        quantity: z\n          .number()\n          .int()\n          .describe('Line item quantity.')\n          .min(1)\n          .max(100000)\n          .optional(),\n        totalDiscount: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Total discount for this line item's entire quantity.\")\n          .optional(),\n        descriptionLines: z\n          .array(\n            z.intersection(\n              z.object({\n                name: z\n                  .object({\n                    original: z\n                      .string()\n                      .describe(\n                        \"Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                      )\n                      .max(100)\n                      .optional(),\n                    translated: z\n                      .string()\n                      .describe(\n                        \"Description line name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Description line name.')\n                  .optional(),\n              }),\n              z.xor([\n                z.object({\n                  plainText: z.never().optional(),\n                  colorInfo: z.never().optional(),\n                }),\n                z.object({\n                  colorInfo: z.never().optional(),\n                  plainText: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                        )\n                        .max(600)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"Description line plain text value translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                        )\n                        .max(600)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Description line plain text value.'),\n                }),\n                z.object({\n                  plainText: z.never().optional(),\n                  colorInfo: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                        )\n                        .max(500)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"Description line color name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                        )\n                        .max(500)\n                        .optional()\n                        .nullable(),\n                      code: z\n                        .string()\n                        .describe('HEX or RGB color code for display.')\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Description line color value.'),\n                }),\n              ])\n            )\n          )\n          .min(0)\n          .max(20)\n          .optional(),\n        image: z.string().describe('Line item image.').optional(),\n        physicalProperties: z\n          .object({\n            weight: z\n              .number()\n              .describe(\n                'Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request.'\n              )\n              .optional()\n              .nullable(),\n            sku: z\n              .string()\n              .describe(\n                'Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).'\n              )\n              .max(40)\n              .optional()\n              .nullable(),\n            shippable: z\n              .boolean()\n              .describe('Whether this line item is shippable.')\n              .optional(),\n          })\n          .describe(\n            'Physical properties of the item. When relevant, contains information such as SKU and item weight.'\n          )\n          .optional(),\n        itemType: z\n          .intersection(\n            z.object({}),\n            z.xor([\n              z.object({\n                preset: z.never().optional(),\n                custom: z.never().optional(),\n              }),\n              z.object({\n                custom: z.never().optional(),\n                preset: z\n                  .enum([\n                    'UNRECOGNISED',\n                    'PHYSICAL',\n                    'DIGITAL',\n                    'GIFT_CARD',\n                    'SERVICE',\n                  ])\n                  .describe('Preset item type.'),\n              }),\n              z.object({\n                preset: z.never().optional(),\n                custom: z\n                  .string()\n                  .describe(\n                    'Custom item type. When none of the preset types are suitable, specifies the custom type.'\n                  ),\n              }),\n            ])\n          )\n          .describe('Item type. Either a preset type or custom.')\n          .optional(),\n        fulfillerId: z\n          .string()\n          .describe(\n            'Fulfiller ID. Field is empty when the line item is self-fulfilled.\\nTo get fulfillment information, pass the order ID to [List Fulfillments For Single Order](https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/order-fulfillments/list-fulfillments-for-single-order).'\n          )\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        refundQuantity: z\n          .number()\n          .int()\n          .describe('Number of items that were refunded.')\n          .min(0)\n          .max(100000)\n          .optional()\n          .nullable(),\n        restockQuantity: z\n          .number()\n          .int()\n          .describe(\n            'Number of items restocked.\\n\\nFor a per-location breakdown, see `restockLocations`.'\n          )\n          .min(0)\n          .max(100000)\n          .optional()\n          .nullable(),\n        price: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Line item price after line item discounts for display purposes.'\n          )\n          .optional(),\n        priceBeforeDiscounts: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Line item price before line item discounts for display purposes. Defaults to `price` when not provided.'\n          )\n          .optional(),\n        totalPriceBeforeTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe('Total price after discounts, and before tax.')\n          .optional(),\n        totalPriceAfterTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe('Total price after all discounts and tax.')\n          .optional(),\n        paymentOption: z\n          .enum([\n            'FULL_PAYMENT_ONLINE',\n            'FULL_PAYMENT_OFFLINE',\n            'MEMBERSHIP',\n            'DEPOSIT_ONLINE',\n            'MEMBERSHIP_OFFLINE',\n            'MEMBERSHIP_ONLINE_WITH_OFFLINE_REMAINDER',\n          ])\n          .describe(\n            'Type of selected payment option for current item.\\n\\nDefault: `FULL_PAYMENT_ONLINE`'\n          )\n          .optional(),\n        taxDetails: z\n          .object({\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Taxable amount of this line item.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe(\n                'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n              )\n              .optional(),\n            totalTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n              )\n              .optional(),\n          })\n          .describe(\n            'Deprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.\\nTax details for this line item.'\n          )\n          .optional(),\n        taxInfo: z\n          .object({\n            taxAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n              )\n              .optional(),\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Amount for which tax is calculated.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe('Tax rate %, as a decimal point.')\n              .optional()\n              .nullable(),\n            taxGroupId: z\n              .string()\n              .describe('Tax group ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            taxIncludedInPrice: z\n              .boolean()\n              .describe('Indicates whether the price already includes tax.')\n              .optional(),\n            taxBreakdown: z\n              .array(\n                z.object({\n                  jurisdiction: z\n                    .string()\n                    .describe(\n                      'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  rate: z\n                    .string()\n                    .describe(\n                      'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount of tax calculated for this line item.')\n                    .optional(),\n                  taxType: z\n                    .string()\n                    .describe(\n                      'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  taxName: z\n                    .string()\n                    .describe(\n                      'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  jurisdictionType: z\n                    .enum([\n                      'UNDEFINED',\n                      'COUNTRY',\n                      'STATE',\n                      'COUNTY',\n                      'CITY',\n                      'SPECIAL',\n                    ])\n                    .describe(\n                      'Type of jurisdiction that taxes were calculated for.'\n                    )\n                    .optional(),\n                  nonTaxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Non-taxable amount of the line item price.')\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of the line item price.')\n                    .optional(),\n                })\n              )\n              .max(7)\n              .optional(),\n          })\n          .describe(\n            'Represents all the relevant tax details for a specific line item.'\n          )\n          .optional(),\n        digitalFile: z\n          .object({\n            fileId: z\n              .string()\n              .describe('ID of the secure file in media.')\n              .min(1)\n              .max(100)\n              .optional(),\n            link: z\n              .string()\n              .describe(\n                'Link will exist after the digital links have been generated on the order.'\n              )\n              .url()\n              .min(1)\n              .max(2000)\n              .optional()\n              .nullable(),\n            expirationDate: z\n              .date()\n              .describe('Link expiration time and date.')\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Digital file identifier, relevant only for items with type DIGITAL.'\n          )\n          .optional(),\n        subscriptionInfo: z\n          .object({\n            _id: z\n              .string()\n              .describe('Subscription ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            cycleNumber: z\n              .number()\n              .int()\n              .describe(\n                'Subscription cycle. For example, if this order is for the 3rd cycle of a subscription, value will be `3`.'\n              )\n              .min(0)\n              .optional(),\n            subscriptionOptionTitle: z\n              .string()\n              .describe(\n                'Subscription option title. For example, `\"Monthly coffee Subscription\"`.'\n              )\n              .min(0)\n              .max(150)\n              .optional(),\n            subscriptionOptionDescription: z\n              .string()\n              .describe(\n                'Subscription option description. For example, `\"1kg of selected coffee, once a month\"`.'\n              )\n              .max(500)\n              .optional()\n              .nullable(),\n            subscriptionSettings: z\n              .object({\n                frequency: z\n                  .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                  .describe('Frequency of recurring payment.')\n                  .optional(),\n                interval: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Number of frequency units in a billing cycle. For example, frequency `MONTH` with interval `3` means billing every 3 months.'\n                  )\n                  .min(1)\n                  .max(3650)\n                  .optional()\n                  .nullable(),\n                autoRenewal: z\n                  .boolean()\n                  .describe(\n                    'Whether subscription is renewed automatically at the end of each period.'\n                  )\n                  .optional(),\n                billingCycles: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.'\n                  )\n                  .min(1)\n                  .optional()\n                  .nullable(),\n                enableCustomerCancellation: z\n                  .boolean()\n                  .describe(\n                    'Whether to allow the customer to cancel the subscription.'\n                  )\n                  .optional(),\n                freeTrialPeriod: z\n                  .object({\n                    frequency: z\n                      .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                      .describe(\n                        'Frequency of period. Values: DAY, WEEK, MONTH, YEAR'\n                      )\n                      .optional(),\n                    interval: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of frequency units in the free trial period. For example, frequency `MONTH` with interval `3` means a 3-month free trial.'\n                      )\n                      .min(1)\n                      .max(3650)\n                      .optional(),\n                  })\n                  .describe(\n                    'Period until first cycle starts. If None => no free trial'\n                  )\n                  .optional(),\n              })\n              .describe('Subscription detailed information.')\n              .optional(),\n            chargesDescription: z\n              .string()\n              .describe(\n                'Description of the charges that will be applied for subscription.'\n              )\n              .max(1000)\n              .optional()\n              .nullable(),\n          })\n          .describe('Subscription info.')\n          .optional(),\n        priceDescription: z\n          .object({\n            original: z\n              .string()\n              .describe(\n                \"__Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n              )\n              .min(1)\n              .max(100)\n              .optional(),\n            translated: z\n              .string()\n              .describe(\n                \"Price description translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n              )\n              .min(1)\n              .max(100)\n              .optional()\n              .nullable(),\n          })\n          .describe(\n            'Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - \"Starts at $67\".'\n          )\n          .optional(),\n        depositAmount: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Item\\'s price amount to be charged during checkout. Relevant for items with a `paymentOption` value of `\"DEPOSIT_ONLINE\"`.'\n          )\n          .optional(),\n        locations: z\n          .array(\n            z.object({\n              _id: z\n                .string()\n                .describe('Location id in the associated owner app.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional(),\n              appId: z\n                .string()\n                .describe(\n                  'Location owner app, if not provided then the site business info locations will be used.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              quantity: z\n                .number()\n                .int()\n                .describe('Quantity for specific location.')\n                .min(1)\n                .max(100000)\n                .optional(),\n              name: z\n                .string()\n                .describe('Location name.')\n                .max(500)\n                .optional()\n                .nullable(),\n            })\n          )\n          .min(0)\n          .max(5)\n          .optional(),\n        lineItemPrice: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\n            'Total price **after** catalog discounts and line item discounts.'\n          )\n          .optional(),\n        taxableAddress: z\n          .intersection(\n            z.object({}),\n            z.xor([\n              z.object({ addressType: z.never().optional() }),\n              z.object({\n                addressType: z\n                  .enum(['BUSINESS', 'BILLING', 'SHIPPING'])\n                  .describe(\n                    'taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly.'\n                  ),\n              }),\n            ])\n          )\n          .describe('Address used for tax calculation.')\n          .optional(),\n        priceUndetermined: z\n          .boolean()\n          .describe(\n            'Whether the price is not yet defined, and will be updated after the order is created.\\n\\nDefault: `false`'\n          )\n          .optional(),\n        extendedFields: z\n          .object({\n            namespaces: z\n              .record(z.string(), z.record(z.string(), z.any()))\n              .describe(\n                'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n              )\n              .optional(),\n          })\n          .describe(\n            'Custom extended fields for the line item object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n          )\n          .optional(),\n        modifierGroups: z\n          .array(\n            z.object({\n              _id: z\n                .string()\n                .describe('Modifier group ID.')\n                .min(1)\n                .max(36)\n                .optional(),\n              name: z\n                .object({\n                  original: z\n                    .string()\n                    .describe(\n                      \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                    )\n                    .min(1)\n                    .max(200)\n                    .optional(),\n                  translated: z\n                    .string()\n                    .describe(\n                      \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                    )\n                    .min(1)\n                    .max(400)\n                    .optional()\n                    .nullable(),\n                })\n                .describe('Modifier group name.')\n                .optional(),\n              modifiers: z\n                .array(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Modifier ID.')\n                      .min(1)\n                      .max(36)\n                      .optional(),\n                    quantity: z\n                      .number()\n                      .int()\n                      .describe('The quantity of this modifier.')\n                      .min(1)\n                      .max(100000)\n                      .optional()\n                      .nullable(),\n                    label: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                          )\n                          .min(1)\n                          .max(200)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                          )\n                          .min(1)\n                          .max(400)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Primary display label for the modifier.')\n                      .optional(),\n                    details: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                          )\n                          .min(1)\n                          .max(200)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                          )\n                          .min(1)\n                          .max(400)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Additional details.')\n                      .optional(),\n                    price: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('The price of the modifier.')\n                      .optional(),\n                  })\n                )\n                .min(1)\n                .max(10)\n                .optional(),\n            })\n          )\n          .max(10)\n          .optional(),\n      })\n    )\n    .min(1)\n    .max(300)\n    .optional(),\n  buyerInfo: z\n    .intersection(\n      z.object({\n        contactId: z\n          .string()\n          .describe(\n            \"Contact ID. Automatically created if one doesn't exist. For more information, see [Contacts API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts/contact-v4/introduction).\"\n          )\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        email: z\n          .string()\n          .describe(\"Buyer's email address.\")\n          .email()\n          .optional()\n          .nullable(),\n      }),\n      z.xor([\n        z.object({\n          visitorId: z.never().optional(),\n          memberId: z.never().optional(),\n        }),\n        z.object({\n          memberId: z.never().optional(),\n          visitorId: z\n            .string()\n            .describe(\n              \"Visitor ID. Returned when the buyer isn't a logged-in site member.\"\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          visitorId: z.never().optional(),\n          memberId: z\n            .string()\n            .describe(\n              'Member ID. Returned when the buyer is a logged-in site member.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n      ])\n    )\n    .describe('Buyer information.')\n    .optional(),\n  paymentStatus: z\n    .enum([\n      'UNSPECIFIED',\n      'NOT_PAID',\n      'PAID',\n      'PARTIALLY_REFUNDED',\n      'FULLY_REFUNDED',\n      'PENDING',\n      'PARTIALLY_PAID',\n      'PENDING_MERCHANT',\n      'CANCELED',\n      'DECLINED',\n    ])\n    .describe('Order payment status.')\n    .optional(),\n  fulfillmentStatus: z\n    .enum(['NOT_FULFILLED', 'FULFILLED', 'PARTIALLY_FULFILLED'])\n    .describe('Order fulfillment status.')\n    .optional(),\n  buyerLanguage: z\n    .string()\n    .describe(\n      'Language for communication with the buyer. Defaults to the site language.\\nFor a site that supports multiple languages, this is the language the buyer selected.'\n    )\n    .optional()\n    .nullable(),\n  weightUnit: z\n    .enum(['UNSPECIFIED_WEIGHT_UNIT', 'KG', 'LB'])\n    .describe(\"Weight measurement unit - defaults to site's weight unit.\")\n    .optional(),\n  currency: z\n    .string()\n    .describe(\n      'Currency used for the pricing of this order in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.'\n    )\n    .optional()\n    .nullable(),\n  currencyConversionDetails: z\n    .object({\n      originalCurrency: z\n        .string()\n        .describe(\n          \"Currency used for the pricing of this order, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.\\n\\nThis currency is used to calculate the pricing before conversion to the buyer's payment currency.\"\n        )\n        .optional()\n        .nullable(),\n      conversionRate: z\n        .string()\n        .describe(\n          'The rate used for converting the original currency to the currency used for payment.'\n        )\n        .optional()\n        .nullable(),\n    })\n    .describe('Currency conversion details. For use with multi-currency sites.')\n    .optional(),\n  taxIncludedInPrices: z\n    .boolean()\n    .describe('Whether tax is included in line item prices.')\n    .optional(),\n  siteLanguage: z\n    .string()\n    .describe('Site language in which original values are shown.')\n    .optional()\n    .nullable(),\n  priceSummary: z\n    .object({\n      subtotal: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Subtotal of all line items, before discounts and before tax.'\n        )\n        .optional(),\n      shipping: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total shipping price, before discounts and before tax.')\n        .optional(),\n      tax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total tax applied to the order.')\n        .optional(),\n      discount: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total discount amount applied to the order.')\n        .optional(),\n      total: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\"Order's total price after discounts and tax.\")\n        .optional(),\n      totalAdditionalFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total additional fees before tax.')\n        .optional(),\n    })\n    .describe('Order price summary.')\n    .optional(),\n  billingInfo: z\n    .object({\n      address: z\n        .object({\n          streetAddress: z\n            .object({\n              name: z.string().optional(),\n              number: z.string().optional(),\n            })\n            .optional(),\n          city: z.string().optional().nullable(),\n          subdivision: z.string().optional().nullable(),\n          country: z.string().optional().nullable(),\n          postalCode: z.string().optional().nullable(),\n          addressLine2: z.string().optional().nullable(),\n        })\n        .describe('Address.')\n        .optional(),\n      contactDetails: z\n        .object({\n          firstName: z\n            .string()\n            .describe('First name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          lastName: z\n            .string()\n            .describe('Last name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          phone: z.string().describe('Phone number.').optional().nullable(),\n          company: z\n            .string()\n            .describe('Company name.')\n            .max(1000)\n            .optional()\n            .nullable(),\n          vatId: z\n            .object({\n              _id: z.string().describe(\"Customer's tax ID.\").optional(),\n              type: z\n                .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                .describe(\n                  'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                )\n                .optional(),\n            })\n            .describe(\n              'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n            )\n            .optional(),\n        })\n        .describe('Contact details.')\n        .optional(),\n    })\n    .describe('Billing address and contact details.')\n    .optional(),\n  shippingInfo: z\n    .object({\n      carrierId: z\n        .string()\n        .describe(\n          'App Def Id of external provider which was a source of shipping info'\n        )\n        .min(1)\n        .max(100)\n        .optional()\n        .nullable(),\n      code: z\n        .string()\n        .describe(\n          'Unique code (or ID) of selected shipping option. For example, `\"usps_std_overnight\"`.'\n        )\n        .min(1)\n        .max(100)\n        .optional()\n        .nullable(),\n      title: z\n        .string()\n        .describe(\n          'Shipping option title.\\nFor example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.'\n        )\n        .max(250)\n        .optional(),\n      logistics: z\n        .intersection(\n          z.object({\n            deliveryTime: z\n              .string()\n              .describe(\n                'Expected delivery time in free text. For example, `\"3-5 business days\"`.'\n              )\n              .max(500)\n              .optional()\n              .nullable(),\n            instructions: z\n              .string()\n              .describe(\n                'Instructions for the carrier. For example, `\"Please knock on the door. If unanswered, please call contact number.\"`.'\n              )\n              .max(1000)\n              .optional()\n              .nullable(),\n            deliverByDate: z\n              .date()\n              .describe(\n                'Deprecated - Latest expected delivery date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n              )\n              .optional()\n              .nullable(),\n            deliveryTimeSlot: z\n              .object({\n                from: z\n                  .date()\n                  .describe('Delivery slot starting time.')\n                  .optional()\n                  .nullable(),\n                to: z\n                  .date()\n                  .describe('Delivery slot ending time.')\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Expected delivery time slot with start and end times.')\n              .optional(),\n          }),\n          z.xor([\n            z.object({\n              shippingDestination: z.never().optional(),\n              pickupDetails: z.never().optional(),\n            }),\n            z.object({\n              pickupDetails: z.never().optional(),\n              shippingDestination: z\n                .object({\n                  address: z\n                    .object({\n                      streetAddress: z\n                        .object({\n                          name: z.string().optional(),\n                          number: z.string().optional(),\n                        })\n                        .optional(),\n                      city: z.string().optional().nullable(),\n                      subdivision: z.string().optional().nullable(),\n                      country: z.string().optional().nullable(),\n                      postalCode: z.string().optional().nullable(),\n                      addressLine2: z.string().optional().nullable(),\n                    })\n                    .describe('Address.')\n                    .optional(),\n                  contactDetails: z\n                    .object({\n                      firstName: z\n                        .string()\n                        .describe('First name.')\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      lastName: z\n                        .string()\n                        .describe('Last name.')\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                      phone: z\n                        .string()\n                        .describe('Phone number.')\n                        .optional()\n                        .nullable(),\n                      company: z\n                        .string()\n                        .describe('Company name.')\n                        .max(1000)\n                        .optional()\n                        .nullable(),\n                      vatId: z\n                        .object({\n                          _id: z\n                            .string()\n                            .describe(\"Customer's tax ID.\")\n                            .optional(),\n                          type: z\n                            .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                            .describe(\n                              'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                        )\n                        .optional(),\n                    })\n                    .describe('Contact details.')\n                    .optional(),\n                })\n                .describe(\n                  \"Shipping destination address and contact details. For pickup orders, this contains the pickup location address, not the recipient's address.\"\n                ),\n            }),\n            z.object({\n              shippingDestination: z.never().optional(),\n              pickupDetails: z\n                .object({\n                  address: z\n                    .object({\n                      streetAddress: z\n                        .object({\n                          name: z.string().optional(),\n                          number: z.string().optional(),\n                        })\n                        .optional(),\n                      city: z.string().optional().nullable(),\n                      subdivision: z.string().optional().nullable(),\n                      country: z.string().optional().nullable(),\n                      postalCode: z.string().optional().nullable(),\n                      addressLine2: z.string().optional().nullable(),\n                    })\n                    .describe('Pickup address.')\n                    .optional(),\n                  pickupMethod: z\n                    .enum(['STORE_PICKUP', 'PICKUP_POINT'])\n                    .describe('Pickup method')\n                    .optional(),\n                })\n                .describe(\n                  'Pickup details for store pickup or pickup point orders.'\n                ),\n            }),\n          ])\n        )\n        .describe('Shipping logistics.')\n        .optional(),\n      cost: z\n        .object({\n          price: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Shipping price for display purposes.')\n            .optional(),\n          totalPriceBeforeTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total price of shipping after discounts (when relevant), and before tax.'\n            )\n            .optional(),\n          totalPriceAfterTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Shipping price after all discounts (if any exist), and after tax.'\n            )\n            .optional(),\n          taxDetails: z\n            .object({\n              taxableAmount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Taxable amount of this line item.')\n                .optional(),\n              taxRate: z\n                .string()\n                .describe(\n                  'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                )\n                .optional(),\n              totalTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                )\n                .optional(),\n            })\n            .describe('Tax details.')\n            .optional(),\n          taxInfo: z\n            .object({\n              taxAmount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                )\n                .optional(),\n              taxableAmount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Amount for which tax is calculated.')\n                .optional(),\n              taxRate: z\n                .string()\n                .describe('Tax rate %, as a decimal point.')\n                .optional()\n                .nullable(),\n              taxGroupId: z\n                .string()\n                .describe('Tax group ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              taxIncludedInPrice: z\n                .boolean()\n                .describe('Indicates whether the price already includes tax.')\n                .optional(),\n              taxBreakdown: z\n                .array(\n                  z.object({\n                    jurisdiction: z\n                      .string()\n                      .describe(\n                        'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    rate: z\n                      .string()\n                      .describe(\n                        'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                      )\n                      .optional()\n                      .nullable(),\n                    taxAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Amount of tax calculated for this line item.')\n                      .optional(),\n                    taxType: z\n                      .string()\n                      .describe(\n                        'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    taxName: z\n                      .string()\n                      .describe(\n                        'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                      )\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    jurisdictionType: z\n                      .enum([\n                        'UNDEFINED',\n                        'COUNTRY',\n                        'STATE',\n                        'COUNTY',\n                        'CITY',\n                        'SPECIAL',\n                      ])\n                      .describe(\n                        'Type of jurisdiction that taxes were calculated for.'\n                      )\n                      .optional(),\n                    nonTaxableAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Non-taxable amount of the line item price.')\n                      .optional(),\n                    taxableAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Taxable amount of the line item price.')\n                      .optional(),\n                  })\n                )\n                .max(7)\n                .optional(),\n            })\n            .describe('Represents all the relevant tax details for a shipping.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Shipping discount before tax.')\n            .optional(),\n        })\n        .describe('Shipping costs.')\n        .optional(),\n      region: z\n        .object({\n          name: z\n            .string()\n            .describe(\n              'Name of shipping region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.'\n            )\n            .max(100)\n            .optional()\n            .nullable(),\n        })\n        .describe('Shipping region.')\n        .optional(),\n    })\n    .describe('Shipping info and selected shipping option details.')\n    .optional(),\n  buyerNote: z\n    .string()\n    .describe(\n      '[Buyer note](https://support.wix.com/en/article/wix-stores-viewing-buyer-notes) left by the customer.'\n    )\n    .max(1000)\n    .optional()\n    .nullable(),\n  status: z\n    .enum(['INITIALIZED', 'APPROVED', 'CANCELED', 'PENDING', 'REJECTED'])\n    .describe('Order status.')\n    .optional(),\n  archived: z\n    .boolean()\n    .describe('Whether order is archived.')\n    .optional()\n    .nullable(),\n  taxSummary: z\n    .object({\n      totalTax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total tax.')\n        .optional(),\n    })\n    .describe(\n      'Tax summary.\\nDeprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.'\n    )\n    .optional(),\n  taxInfo: z\n    .object({\n      totalTax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Calculated tax, added from line items.')\n        .optional(),\n      taxBreakdown: z\n        .array(\n          z.object({\n            taxName: z\n              .string()\n              .describe(\n                'The name of the tax against which this tax amount was calculated.'\n              )\n              .max(200)\n              .optional(),\n            taxType: z\n              .string()\n              .describe(\n                \"The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.\"\n              )\n              .max(200)\n              .optional(),\n            jurisdiction: z\n              .string()\n              .describe(\n                'The name of the jurisdiction in which this tax detail applies.'\n              )\n              .max(200)\n              .optional(),\n            jurisdictionType: z\n              .enum([\n                'UNDEFINED',\n                'COUNTRY',\n                'STATE',\n                'COUNTY',\n                'CITY',\n                'SPECIAL',\n              ])\n              .describe(\n                'The type of the jurisdiction in which this tax detail applies (e.g. Country,State,County,City,Special).'\n              )\n              .optional(),\n            rate: z\n              .string()\n              .describe('The rate at which this tax detail was calculated.')\n              .optional(),\n            aggregatedTaxAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'The sum of all the tax from line items that calculated by the tax identifiers.'\n              )\n              .optional(),\n          })\n        )\n        .min(0)\n        .max(50)\n        .optional(),\n      taxExempt: z\n        .boolean()\n        .describe(\n          'Whether the order is exempt from tax calculations.\\n\\nDefault: `false`'\n        )\n        .optional()\n        .nullable(),\n    })\n    .describe('Tax information.')\n    .optional(),\n  appliedDiscounts: z\n    .array(\n      z.intersection(\n        z.object({\n          discountType: z\n            .enum(['GLOBAL', 'SPECIFIC_ITEMS', 'SHIPPING'])\n            .optional(),\n          lineItemIds: z.array(z.string()).min(0).max(300).optional(),\n          _id: z\n            .string()\n            .describe('Discount ID.')\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            )\n            .optional()\n            .nullable(),\n          lineItemDiscounts: z\n            .array(\n              z.object({\n                _id: z\n                  .string()\n                  .describe('Line item ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                totalDiscount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total discount amount for this line item.')\n                  .optional(),\n              })\n            )\n            .max(300)\n            .optional(),\n        }),\n        z.xor([\n          z.object({\n            coupon: z.never().optional(),\n            merchantDiscount: z.never().optional(),\n            discountRule: z.never().optional(),\n          }),\n          z.object({\n            merchantDiscount: z.never().optional(),\n            discountRule: z.never().optional(),\n            coupon: z\n              .object({\n                _id: z.string().describe('Coupon ID.').optional(),\n                code: z.string().describe('Coupon code.').optional(),\n                name: z.string().describe('Coupon name.').optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Coupon value.')\n                  .optional(),\n              })\n              .describe('Coupon applied by the customer.'),\n          }),\n          z.object({\n            coupon: z.never().optional(),\n            discountRule: z.never().optional(),\n            merchantDiscount: z\n              .intersection(\n                z.object({\n                  amount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Discount amount.')\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({\n                    discountReason: z.never().optional(),\n                    description: z.never().optional(),\n                  }),\n                  z.object({\n                    description: z.never().optional(),\n                    discountReason: z\n                      .enum([\n                        'UNSPECIFIED',\n                        'EXCHANGED_ITEMS',\n                        'BILLING_ADJUSTMENT',\n                      ])\n                      .describe('Predefined discount reason.'),\n                  }),\n                  z.object({\n                    discountReason: z.never().optional(),\n                    description: z\n                      .string()\n                      .describe('Custom discount description as free text.')\n                      .max(200),\n                  }),\n                ])\n              )\n              .describe('Discount applied manually by the merchant.'),\n          }),\n          z.object({\n            coupon: z.never().optional(),\n            merchantDiscount: z.never().optional(),\n            discountRule: z\n              .object({\n                _id: z\n                  .string()\n                  .describe('Discount rule ID')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                name: z\n                  .object({\n                    original: z\n                      .string()\n                      .describe(\n                        \"Original discount rule name (in site's default language).\"\n                      )\n                      .min(1)\n                      .max(256)\n                      .optional(),\n                    translated: z\n                      .string()\n                      .describe(\n                        'Translated discount rule name according to buyer language. Defaults to `original` when not provided.'\n                      )\n                      .min(1)\n                      .max(500)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Discount rule name')\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Discount value.')\n                  .optional(),\n              })\n              .describe(\n                'Automatic discount applied by the system based on configured discount rules.'\n              ),\n          }),\n        ])\n      )\n    )\n    .max(320)\n    .optional(),\n  activities: z\n    .array(\n      z.intersection(\n        z.object({\n          _id: z\n            .string()\n            .describe('Activity ID.')\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            )\n            .optional()\n            .nullable(),\n          authorEmail: z\n            .string()\n            .describe(\"Activity author's email.\")\n            .email()\n            .optional()\n            .nullable(),\n          _createdDate: z\n            .date()\n            .describe('Activity creation date and time.')\n            .optional()\n            .nullable(),\n          type: z\n            .enum([\n              'ORDER_REFUNDED',\n              'ORDER_PLACED',\n              'ORDER_PAID',\n              'ORDER_FULFILLED',\n              'ORDER_NOT_FULFILLED',\n              'ORDER_CANCELED',\n              'DOWNLOAD_LINK_SENT',\n              'TRACKING_NUMBER_ADDED',\n              'TRACKING_NUMBER_EDITED',\n              'TRACKING_LINK_ADDED',\n              'SHIPPING_CONFIRMATION_EMAIL_SENT',\n              'INVOICE_ADDED',\n              'INVOICE_REMOVED',\n              'INVOICE_SENT',\n              'FULFILLER_EMAIL_SENT',\n              'SHIPPING_ADDRESS_EDITED',\n              'EMAIL_EDITED',\n              'PICKUP_READY_EMAIL_SENT',\n              'CUSTOM_ACTIVITY',\n              'MERCHANT_COMMENT',\n              'ORDER_PARTIALLY_PAID',\n              'DRAFT_ORDER_CHANGES_APPLIED',\n              'SAVED_PAYMENT_METHOD',\n              'AUTHORIZED_PAYMENT_CREATED',\n              'AUTHORIZED_PAYMENT_CAPTURED',\n              'AUTHORIZED_PAYMENT_VOIDED',\n              'REFUND_INITIATED',\n              'PAYMENT_REFUNDED',\n              'PAYMENT_REFUND_FAILED',\n              'REFUNDED_AS_STORE_CREDIT',\n              'PAYMENT_PENDING',\n              'PAYMENT_CANCELED',\n              'PAYMENT_DECLINED',\n              'ORDER_PENDING',\n              'ORDER_REJECTED',\n              'RECEIPT_CREATED',\n              'RECEIPT_SENT',\n              'CHARGEBACK_CREATED',\n              'CHARGEBACK_REVERSED',\n            ])\n            .describe('Activity type.')\n            .optional(),\n          activityType: z\n            .enum([\n              'ORDER_PLACED',\n              'ORDER_PAID',\n              'ORDER_FULFILLED',\n              'ORDER_NOT_FULFILLED',\n              'ORDER_CANCELED',\n              'DOWNLOAD_LINK_SENT',\n              'TRACKING_NUMBER_ADDED',\n              'TRACKING_NUMBER_EDITED',\n              'TRACKING_LINK_ADDED',\n              'SHIPPING_CONFIRMATION_EMAIL_SENT',\n              'INVOICE_ADDED',\n              'INVOICE_REMOVED',\n              'INVOICE_SENT',\n              'FULFILLER_EMAIL_SENT',\n              'SHIPPING_ADDRESS_EDITED',\n              'EMAIL_EDITED',\n              'PICKUP_READY_EMAIL_SENT',\n              'MERCHANT_COMMENT',\n              'ORDER_PARTIALLY_PAID',\n              'DRAFT_ORDER_CHANGES_APPLIED',\n              'SAVED_PAYMENT_METHOD',\n              'AUTHORIZED_PAYMENT_CREATED',\n              'AUTHORIZED_PAYMENT_CAPTURED',\n              'AUTHORIZED_PAYMENT_VOIDED',\n              'REFUND_INITIATED',\n              'PAYMENT_REFUNDED',\n              'PAYMENT_REFUND_FAILED',\n              'REFUNDED_AS_STORE_CREDIT',\n              'PAYMENT_PENDING',\n              'PAYMENT_CANCELED',\n              'PAYMENT_DECLINED',\n              'ORDER_PENDING',\n              'ORDER_REJECTED',\n              'RECEIPT_CREATED',\n              'RECEIPT_SENT',\n              'CHARGEBACK_CREATED',\n              'CHARGEBACK_REVERSED',\n              'ORDER_REFUNDED',\n            ])\n            .describe('Activity type.')\n            .optional(),\n        }),\n        z.xor([\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n          }),\n          z.object({\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            merchantComment: z\n              .object({\n                message: z\n                  .string()\n                  .describe('Merchant comment message.')\n                  .min(1)\n                  .max(5000)\n                  .optional(),\n              })\n              .describe(\n                'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            orderRefunded: z\n              .object({\n                manual: z\n                  .boolean()\n                  .describe(\n                    'Whether order was refunded manually. For example, via payment provider or using cash.'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Refund amount.')\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for refund.')\n                  .max(200)\n                  .optional(),\n              })\n              .describe(\n                'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            draftOrderChangesApplied: z\n              .object({\n                draftOrderId: z.string().describe('Draft order id.').optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for edit, given by user (optional).')\n                  .max(200)\n                  .optional()\n                  .nullable(),\n                changes: z\n                  .array(\n                    z.intersection(\n                      z.object({}),\n                      z.xor([\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                        }),\n                        z.object({\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          lineItemChanged: z.object({\n                            _id: z\n                              .string()\n                              .describe('Line item ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                  )\n                                  .min(1)\n                                  .max(200)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                  )\n                                  .min(1)\n                                  .max(400)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Item name after change.')\n                              .optional(),\n                            quantity: z\n                              .object({\n                                originalQuantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Item quantity before update.')\n                                  .min(0)\n                                  .max(1000000)\n                                  .optional(),\n                                newQuantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Item quantity after update.')\n                                  .min(0)\n                                  .max(1000000)\n                                  .optional(),\n                                diff: z\n                                  .number()\n                                  .int()\n                                  .describe(\n                                    'Difference between original and new quantity. Absolute value.'\n                                  )\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                                deltaType: z\n                                  .enum([\n                                    'QUANTITY_INCREASED',\n                                    'QUANTITY_DECREASED',\n                                  ])\n                                  .describe(\n                                    'Type of quantity change: increase or decrease.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Item quantity change.')\n                              .optional(),\n                            price: z\n                              .object({\n                                originalPrice: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item price before update.')\n                                  .optional(),\n                                newPrice: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item price after update.')\n                                  .optional(),\n                              })\n                              .describe('Item price change.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          lineItemAdded: z.object({\n                            _id: z\n                              .string()\n                              .describe('Line item ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                  )\n                                  .min(1)\n                                  .max(200)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                  )\n                                  .min(1)\n                                  .max(400)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Item name.')\n                              .optional(),\n                            quantity: z\n                              .number()\n                              .int()\n                              .describe('Added or removed item quantity.')\n                              .min(1)\n                              .max(1000000)\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          lineItemRemoved: z.object({\n                            _id: z\n                              .string()\n                              .describe('Line item ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                  )\n                                  .min(1)\n                                  .max(200)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                  )\n                                  .min(1)\n                                  .max(400)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Item name.')\n                              .optional(),\n                            quantity: z\n                              .number()\n                              .int()\n                              .describe('Added or removed item quantity.')\n                              .min(1)\n                              .max(1000000)\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          discountAdded: z.object({\n                            _id: z\n                              .string()\n                              .describe('Discount id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe(\n                                'Discount name: coupon name / discount rule name / merchant discount description.'\n                              )\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Discount amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          discountRemoved: z.object({\n                            _id: z\n                              .string()\n                              .describe('Discount id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe(\n                                'Discount name: coupon name / discount rule name / merchant discount description.'\n                              )\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Discount amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          additionalFeeAdded: z.object({\n                            _id: z\n                              .string()\n                              .describe('Additional fee id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Additional fee name.')\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Additional fee amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          additionalFeeRemoved: z.object({\n                            _id: z\n                              .string()\n                              .describe('Additional fee id.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            name: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe('Value in site default language.')\n                                  .min(1)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe('Translated value.')\n                                  .min(1)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Additional fee name.')\n                              .optional(),\n                            affectedLineItems: z\n                              .array(\n                                z.object({\n                                  _id: z\n                                    .string()\n                                    .describe('Order line item id')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  name: z\n                                    .object({\n                                      original: z\n                                        .string()\n                                        .describe(\n                                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                        )\n                                        .min(1)\n                                        .max(200)\n                                        .optional(),\n                                      translated: z\n                                        .string()\n                                        .describe(\n                                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                        )\n                                        .min(1)\n                                        .max(400)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Item name.')\n                                    .optional(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe(\n                                      'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                    )\n                                    .optional(),\n                                })\n                              )\n                              .min(0)\n                              .optional(),\n                            totalAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Additional fee amount.')\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          shippingInformationChanged: z.never().optional(),\n                          totalPriceChanged: z.object({\n                            originalTotal: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s total price after discounts and tax. Before update'\n                              )\n                              .optional(),\n                            newTotal: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s total price after discounts and tax. After update'\n                              )\n                              .optional(),\n                          }),\n                        }),\n                        z.object({\n                          lineItemChanged: z.never().optional(),\n                          lineItemAdded: z.never().optional(),\n                          lineItemRemoved: z.never().optional(),\n                          discountAdded: z.never().optional(),\n                          discountRemoved: z.never().optional(),\n                          additionalFeeAdded: z.never().optional(),\n                          additionalFeeRemoved: z.never().optional(),\n                          totalPriceChanged: z.never().optional(),\n                          shippingInformationChanged: z.object({\n                            originalShippingInfo: z\n                              .object({\n                                total: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Order’s shipping price.')\n                                  .optional(),\n                                shippingTitle: z\n                                  .string()\n                                  .describe('Order’s shipping title.')\n                                  .max(250)\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s Shipping Information. Before update'\n                              )\n                              .optional(),\n                            newShippingInfo: z\n                              .object({\n                                total: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Order’s shipping price.')\n                                  .optional(),\n                                shippingTitle: z\n                                  .string()\n                                  .describe('Order’s shipping title.')\n                                  .max(250)\n                                  .optional(),\n                              })\n                              .describe(\n                                'Order’s Shipping Information. After update'\n                              )\n                              .optional(),\n                          }),\n                        }),\n                      ])\n                    )\n                  )\n                  .optional(),\n              })\n              .describe('Details of changes made by the Draft Orders API.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            savedPaymentMethod: z\n              .object({\n                name: z\n                  .string()\n                  .describe('Payment method name.')\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                description: z\n                  .string()\n                  .describe('Payment method description.')\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of the payment method saved for the order.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            authorizedPaymentCreated: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe(\n                    'Payment ID of payment associated with this activity.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Payment amount.')\n                  .optional(),\n                lastFourDigits: z\n                  .string()\n                  .describe('The last 4 digits of the card number.')\n                  .max(4)\n                  .optional()\n                  .nullable(),\n                brand: z\n                  .string()\n                  .describe(\"Card issuer's brand.\")\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of an authorized payment created.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            authorizedPaymentCaptured: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe(\n                    'Payment ID of payment associated with this activity.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Payment amount.')\n                  .optional(),\n                lastFourDigits: z\n                  .string()\n                  .describe('The last 4 digits of the card number.')\n                  .max(4)\n                  .optional()\n                  .nullable(),\n                brand: z\n                  .string()\n                  .describe(\"Card issuer's brand.\")\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of an authorized payment captured.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            authorizedPaymentVoided: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe(\n                    'Payment ID of payment associated with this activity.'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Payment amount.')\n                  .optional(),\n                lastFourDigits: z\n                  .string()\n                  .describe('The last 4 digits of the card number.')\n                  .max(4)\n                  .optional()\n                  .nullable(),\n                brand: z\n                  .string()\n                  .describe(\"Card issuer's brand.\")\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of an authorized payment voided.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            refundInitiated: z\n              .object({\n                refundId: z\n                  .string()\n                  .describe('Refund ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Refund amount.')\n                  .optional(),\n                payments: z\n                  .array(\n                    z.intersection(\n                      z.object({\n                        paymentId: z\n                          .string()\n                          .describe('Payment ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        externalRefund: z\n                          .boolean()\n                          .describe(\n                            \"Whether refund was made externally and manually on the payment provider's side.\"\n                          )\n                          .optional(),\n                      }),\n                      z.xor([\n                        z.object({\n                          regular: z.never().optional(),\n                          giftCard: z.never().optional(),\n                          membership: z.never().optional(),\n                        }),\n                        z.object({\n                          giftCard: z.never().optional(),\n                          membership: z.never().optional(),\n                          regular: z\n                            .object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Refund amount.')\n                                .optional(),\n                              lastFourDigits: z\n                                .string()\n                                .describe(\n                                  'The last 4 digits of the card number.'\n                                )\n                                .max(4)\n                                .optional()\n                                .nullable(),\n                              brand: z\n                                .string()\n                                .describe(\"Card issuer's brand.\")\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Regular payment refund.'),\n                        }),\n                        z.object({\n                          regular: z.never().optional(),\n                          membership: z.never().optional(),\n                          giftCard: z\n                            .object({\n                              giftCardPaymentId: z\n                                .string()\n                                .describe('Gift card payment ID.')\n                                .min(1)\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Refund amount.')\n                                .optional(),\n                            })\n                            .describe('Gift card payment refund.'),\n                        }),\n                        z.object({\n                          regular: z.never().optional(),\n                          giftCard: z.never().optional(),\n                          membership: z\n                            .object({\n                              membershipId: z\n                                .string()\n                                .describe('Membership ID.')\n                                .min(1)\n                                .max(100)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Membership payment refund.'),\n                        }),\n                      ])\n                    )\n                  )\n                  .min(1)\n                  .max(50)\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for refund.')\n                  .max(200)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentRefunded: z\n              .object({\n                refundId: z\n                  .string()\n                  .describe('Refund ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                payment: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe('Payment ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      externalRefund: z\n                        .boolean()\n                        .describe(\n                          \"Whether refund was made externally and manually on the payment provider's side.\"\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                      }),\n                      z.object({\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                        regular: z\n                          .object({\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Regular payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        membership: z.never().optional(),\n                        giftCard: z\n                          .object({\n                            giftCardPaymentId: z\n                              .string()\n                              .describe('Gift card payment ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                          })\n                          .describe('Gift card payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z\n                          .object({\n                            membershipId: z\n                              .string()\n                              .describe('Membership ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Membership payment refund.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details about the refunded payment.')\n                  .optional(),\n              })\n              .describe(\n                'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentRefundFailed: z\n              .object({\n                refundId: z\n                  .string()\n                  .describe('Refund ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                payment: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe('Payment ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      externalRefund: z\n                        .boolean()\n                        .describe(\n                          \"Whether refund was made externally and manually on the payment provider's side.\"\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                      }),\n                      z.object({\n                        giftCard: z.never().optional(),\n                        membership: z.never().optional(),\n                        regular: z\n                          .object({\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Regular payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        membership: z.never().optional(),\n                        giftCard: z\n                          .object({\n                            giftCardPaymentId: z\n                              .string()\n                              .describe('Gift card payment ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Refund amount.')\n                              .optional(),\n                          })\n                          .describe('Gift card payment refund.'),\n                      }),\n                      z.object({\n                        regular: z.never().optional(),\n                        giftCard: z.never().optional(),\n                        membership: z\n                          .object({\n                            membershipId: z\n                              .string()\n                              .describe('Membership ID.')\n                              .min(1)\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Membership payment refund.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details about the failed payment refund.')\n                  .optional(),\n              })\n              .describe(\n                'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n              ),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            refundedAsStoreCredit: z\n              .object({\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Refund amount.')\n                  .optional(),\n                reason: z\n                  .string()\n                  .describe('Reason for refund.')\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details of refund to store credit.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentPending: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({ regular: z.never().optional() }),\n                  z.object({\n                    regular: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Regular payment.'),\n                  }),\n                ])\n              )\n              .describe('Details of a pending payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentCanceled: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({ regular: z.never().optional() }),\n                  z.object({\n                    regular: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Regular payment.'),\n                  }),\n                ])\n              )\n              .describe('Details of a canceled payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            paymentDeclined: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({ regular: z.never().optional() }),\n                  z.object({\n                    regular: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Regular payment.'),\n                  }),\n                ])\n              )\n              .describe('Details of a declined payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            receiptCreated: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z.never().optional(),\n                  }),\n                  z.object({\n                    externalReceipt: z.never().optional(),\n                    wixReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by Wix.'),\n                  }),\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .max(100)\n                          .optional()\n                          .nullable(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by an external system.'),\n                  }),\n                ])\n              )\n              .describe('Receipt was added for associated payment.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            receiptSent: z\n              .intersection(\n                z.object({\n                  paymentId: z\n                    .string()\n                    .describe(\n                      'Payment ID of payment associated with this activity.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                }),\n                z.xor([\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z.never().optional(),\n                  }),\n                  z.object({\n                    externalReceipt: z.never().optional(),\n                    wixReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by Wix.'),\n                  }),\n                  z.object({\n                    wixReceipt: z.never().optional(),\n                    externalReceipt: z\n                      .object({\n                        receiptId: z\n                          .string()\n                          .describe('Receipt ID.')\n                          .max(100)\n                          .optional()\n                          .nullable(),\n                        displayNumber: z\n                          .string()\n                          .describe('Display number of receipt.')\n                          .min(1)\n                          .max(40)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Receipt created by an external system.'),\n                  }),\n                ])\n              )\n              .describe('Receipt sent to customer.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackReversed: z.never().optional(),\n            chargebackCreated: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe('ID of the payment that received a chargeback.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                chargebackId: z\n                  .string()\n                  .describe('Chargeback ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Chargeback amount.')\n                  .optional(),\n                paymentDetails: z\n                  .intersection(\n                    z.object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Payment amount.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ creditCardDetails: z.never().optional() }),\n                      z.object({\n                        creditCardDetails: z\n                          .object({\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Credit card details.'),\n                      }),\n                    ])\n                  )\n                  .describe('Payment details.')\n                  .optional(),\n              })\n              .describe('Order received a chargeback for one of its payments.'),\n          }),\n          z.object({\n            merchantComment: z.never().optional(),\n            orderRefunded: z.never().optional(),\n            draftOrderChangesApplied: z.never().optional(),\n            savedPaymentMethod: z.never().optional(),\n            authorizedPaymentCreated: z.never().optional(),\n            authorizedPaymentCaptured: z.never().optional(),\n            authorizedPaymentVoided: z.never().optional(),\n            refundInitiated: z.never().optional(),\n            paymentRefunded: z.never().optional(),\n            paymentRefundFailed: z.never().optional(),\n            refundedAsStoreCredit: z.never().optional(),\n            paymentPending: z.never().optional(),\n            paymentCanceled: z.never().optional(),\n            paymentDeclined: z.never().optional(),\n            receiptCreated: z.never().optional(),\n            receiptSent: z.never().optional(),\n            chargebackCreated: z.never().optional(),\n            chargebackReversed: z\n              .object({\n                paymentId: z\n                  .string()\n                  .describe('ID of the payment involved with the chargeback.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                chargebackId: z\n                  .string()\n                  .describe('Chargeback ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Chargeback amount.')\n                  .optional(),\n                reversalAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Chargeback reversal amount.')\n                  .optional(),\n                paymentDetails: z\n                  .intersection(\n                    z.object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Payment amount.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ creditCardDetails: z.never().optional() }),\n                      z.object({\n                        creditCardDetails: z\n                          .object({\n                            lastFourDigits: z\n                              .string()\n                              .describe('The last 4 digits of the card number.')\n                              .max(4)\n                              .optional()\n                              .nullable(),\n                            brand: z\n                              .string()\n                              .describe(\"Card issuer's brand.\")\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Credit card details.'),\n                      }),\n                    ])\n                  )\n                  .describe('Payment details.')\n                  .optional(),\n              })\n              .describe(\"Chargeback reversed for one of the order's payments.\"),\n          }),\n        ])\n      )\n    )\n    .max(1000)\n    .optional(),\n  attributionSource: z\n    .enum(['UNSPECIFIED', 'FACEBOOK_ADS'])\n    .describe('Order attribution source.')\n    .optional(),\n  createdBy: z\n    .intersection(\n      z.object({}),\n      z.xor([\n        z.object({\n          userId: z.never().optional(),\n          memberId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z.never().optional(),\n        }),\n        z.object({\n          memberId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z.never().optional(),\n          userId: z\n            .string()\n            .describe(\n              'User ID - when the order was created by a Wix user on behalf of a buyer.\\nFor example, via POS (point of service).'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          userId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z.never().optional(),\n          memberId: z\n            .string()\n            .describe(\n              'Member ID - when the order was created by a **logged in** site visitor.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          userId: z.never().optional(),\n          memberId: z.never().optional(),\n          appId: z.never().optional(),\n          visitorId: z\n            .string()\n            .describe(\n              'Visitor ID - when the order was created by a site visitor that was **not** logged in.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n        z.object({\n          userId: z.never().optional(),\n          memberId: z.never().optional(),\n          visitorId: z.never().optional(),\n          appId: z\n            .string()\n            .describe(\n              'App ID - when the order was created by an external application.'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            ),\n        }),\n      ])\n    )\n    .describe(\"ID of the order's initiator.\")\n    .optional(),\n  channelInfo: z\n    .object({\n      type: z\n        .enum([\n          'UNSPECIFIED',\n          'WEB',\n          'POS',\n          'EBAY',\n          'AMAZON',\n          'OTHER_PLATFORM',\n          'WIX_APP_STORE',\n          'WIX_INVOICES',\n          'BACKOFFICE_MERCHANT',\n          'WISH',\n          'CLASS_PASS',\n          'GLOBAL_E',\n          'FACEBOOK',\n          'ETSY',\n          'TIKTOK',\n          'FAIRE_COM',\n          'PAYPAL_AGENTIC_CHECKOUT',\n          'STRIPE_AGENTIC_CHECKOUT',\n        ])\n        .describe(\n          'Sales channel that submitted the order.\\n\\nWhen creating an order via the API to record an external order, use the channel type that matches the original source. If no matching type exists, use `OTHER_PLATFORM`.'\n        )\n        .optional(),\n      externalOrderId: z\n        .string()\n        .describe(\n          'Reference to an order ID from an external system. Relevant when recording orders from external platforms.'\n        )\n        .max(100)\n        .optional()\n        .nullable(),\n      externalOrderUrl: z\n        .string()\n        .describe(\n          'URL to the order in the external system. Relevant when recording orders from external platforms.'\n        )\n        .max(300)\n        .optional()\n        .nullable(),\n    })\n    .describe('Information about the sales channel that submitted this order.')\n    .optional(),\n  seenByAHuman: z\n    .boolean()\n    .describe(\n      'Whether a human has seen the order. Set when an order is clicked on in the dashboard.'\n    )\n    .optional()\n    .nullable(),\n  checkoutId: z\n    .string()\n    .describe('Checkout ID.')\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    )\n    .optional()\n    .nullable(),\n  customFields: z\n    .array(\n      z.object({\n        value: z.any().describe('Custom field value.').optional().nullable(),\n        title: z\n          .string()\n          .describe('Custom field title.')\n          .min(1)\n          .max(500)\n          .optional(),\n        translatedTitle: z\n          .string()\n          .describe('Translated custom field title.')\n          .min(1)\n          .max(500)\n          .optional()\n          .nullable(),\n      })\n    )\n    .optional(),\n  balanceSummary: z\n    .object({\n      balance: z\n        .object({\n          amount: z\n            .string()\n            .describe(\n              'Balance amount.\\n\\nA negative `amount` represents the amount to be refunded. This can happen due to overcharging or the order being modified after a payment has been made.'\n            )\n            .optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Current amount left to pay.')\n        .optional(),\n      paid: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Sum of all approved and successful payments.\\n\\nThe value includes payments that have subsequently been fully or partially refunded.'\n        )\n        .optional(),\n      refunded: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all successfully refunded payments.')\n        .optional(),\n      authorized: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all authorized payments.')\n        .optional(),\n      pendingRefund: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all pending refund transactions.')\n        .optional(),\n      pending: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all pending transactions.')\n        .optional(),\n      chargeback: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all transaction chargebacks.')\n        .optional(),\n      chargebackReversal: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Sum of all chargeback reversals.')\n        .optional(),\n      platformFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Total platform fees actually charged across all payments.\\nThis reflects amounts collected, which may differ from the expected fees in `order.platformFeeSummary`.'\n        )\n        .optional(),\n      totalMinusPlatformFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Order total after deducting platform fees. Represents the net amount payable to the merchant.'\n        )\n        .optional(),\n    })\n    .describe('Balance summary.')\n    .optional(),\n  additionalFees: z\n    .array(\n      z.object({\n        code: z\n          .string()\n          .describe(\"Additional fee's unique code for future processing.\")\n          .min(1)\n          .max(100)\n          .optional()\n          .nullable(),\n        name: z\n          .string()\n          .describe('Name of additional fee.')\n          .min(1)\n          .max(50)\n          .optional(),\n        price: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Additional fee's price.\")\n          .optional(),\n        taxDetails: z\n          .object({\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Taxable amount of this line item.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe(\n                'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n              )\n              .optional(),\n            totalTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n              )\n              .optional(),\n          })\n          .describe('Tax details.')\n          .optional(),\n        taxInfo: z\n          .object({\n            taxAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n              )\n              .optional(),\n            taxableAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Amount for which tax is calculated.')\n              .optional(),\n            taxRate: z\n              .string()\n              .describe('Tax rate %, as a decimal point.')\n              .optional()\n              .nullable(),\n            taxGroupId: z\n              .string()\n              .describe('Tax group ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            taxIncludedInPrice: z\n              .boolean()\n              .describe('Indicates whether the price already includes tax.')\n              .optional(),\n            taxBreakdown: z\n              .array(\n                z.object({\n                  jurisdiction: z\n                    .string()\n                    .describe(\n                      'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  rate: z\n                    .string()\n                    .describe(\n                      'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount of tax calculated for this line item.')\n                    .optional(),\n                  taxType: z\n                    .string()\n                    .describe(\n                      'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  taxName: z\n                    .string()\n                    .describe(\n                      'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                    )\n                    .max(200)\n                    .optional()\n                    .nullable(),\n                  jurisdictionType: z\n                    .enum([\n                      'UNDEFINED',\n                      'COUNTRY',\n                      'STATE',\n                      'COUNTY',\n                      'CITY',\n                      'SPECIAL',\n                    ])\n                    .describe(\n                      'Type of jurisdiction that taxes were calculated for.'\n                    )\n                    .optional(),\n                  nonTaxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Non-taxable amount of the line item price.')\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of the line item price.')\n                    .optional(),\n                })\n              )\n              .max(7)\n              .optional(),\n          })\n          .describe(\n            'Represents all the relevant tax details for additional fee.'\n          )\n          .optional(),\n        providerAppId: z\n          .string()\n          .describe(\"SPI implementer's `appId`.\")\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional()\n          .nullable(),\n        priceBeforeTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Additional fee's price before tax.\")\n          .optional(),\n        priceAfterTax: z\n          .object({\n            amount: z.string().describe('Amount.').optional(),\n            formattedAmount: z\n              .string()\n              .describe('Amount formatted with currency symbol.')\n              .optional(),\n          })\n          .describe(\"Additional fee's price after tax.\")\n          .optional(),\n        _id: z\n          .string()\n          .describe(\"Additional fee's id.\")\n          .regex(\n            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n            'Must be a valid GUID'\n          )\n          .optional(),\n        lineItemIds: z.array(z.string()).optional(),\n        source: z\n          .enum(['SERVICE_PLUGIN', 'ITEM', 'MANUAL', 'SHIPPING', 'PLATFORM'])\n          .describe('Specifies the entity that added the additional fee.')\n          .optional(),\n      })\n    )\n    .max(100)\n    .optional(),\n  extendedFields: z\n    .object({\n      namespaces: z\n        .record(z.string(), z.record(z.string(), z.any()))\n        .describe(\n          'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n        )\n        .optional(),\n    })\n    .describe(\n      'Custom field data for the order object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n    )\n    .optional(),\n  purchaseFlowId: z\n    .string()\n    .describe(\n      'Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.'\n    )\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    )\n    .optional()\n    .nullable(),\n  recipientInfo: z\n    .object({\n      address: z\n        .object({\n          streetAddress: z\n            .object({\n              name: z.string().optional(),\n              number: z.string().optional(),\n            })\n            .optional(),\n          city: z.string().optional().nullable(),\n          subdivision: z.string().optional().nullable(),\n          country: z.string().optional().nullable(),\n          postalCode: z.string().optional().nullable(),\n          addressLine2: z.string().optional().nullable(),\n        })\n        .describe('Address.')\n        .optional(),\n      contactDetails: z\n        .object({\n          firstName: z\n            .string()\n            .describe('First name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          lastName: z\n            .string()\n            .describe('Last name.')\n            .max(100)\n            .optional()\n            .nullable(),\n          phone: z.string().describe('Phone number.').optional().nullable(),\n          company: z\n            .string()\n            .describe('Company name.')\n            .max(1000)\n            .optional()\n            .nullable(),\n          vatId: z\n            .object({\n              _id: z.string().describe(\"Customer's tax ID.\").optional(),\n              type: z\n                .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                .describe(\n                  'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                )\n                .optional(),\n            })\n            .describe(\n              'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n            )\n            .optional(),\n        })\n        .describe('Contact details.')\n        .optional(),\n    })\n    .describe(\n      \"Final recipient's address and contact details.\\n\\nThis field represents who will ultimately receive the order. It may differ from `shippingInfo.logistics.shippingDestination` when:\\n+ The chosen shipping option is a pickup point or store pickup, where `shippingDestination` contains the pickup location.\\n+ No shipping option is selected.\"\n    )\n    .optional(),\n  tags: z\n    .object({\n      privateTags: z\n        .object({ tagIds: z.array(z.string()).max(100).optional() })\n        .describe(\n          'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n        )\n        .optional(),\n      tags: z\n        .object({ tagIds: z.array(z.string()).max(100).optional() })\n        .describe(\n          'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n        )\n        .optional(),\n    })\n    .describe(\n      'Order tags.\\n\\n[Tags](https://dev.wix.com/docs/rest/business-management/tags/introduction) are labels attached to entities, allowing for flexible categorization and data management.'\n    )\n    .optional(),\n  purchasedDate: z\n    .date()\n    .describe(\n      'Date and time the order was originally purchased in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.\\nUsed for migration from external systems.'\n    )\n    .optional()\n    .nullable(),\n  businessLocation: z\n    .object({\n      _id: z\n        .string()\n        .describe(\n          'Location ID.\\nLearn more about the [Wix Locations API](https://dev.wix.com/docs/rest/business-management/locations/introduction).'\n        )\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional(),\n      name: z.string().describe('Location name.').min(1).max(500).optional(),\n    })\n    .describe('Order location.')\n    .optional(),\n  payAfterFreeTrial: z\n    .object({\n      subtotal: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\n          'Subtotal of all line items, before discounts and before tax.'\n        )\n        .optional(),\n      shipping: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total shipping price, before discounts and before tax.')\n        .optional(),\n      tax: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total tax applied to the order.')\n        .optional(),\n      discount: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total discount amount applied to the order.')\n        .optional(),\n      total: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe(\"Order's total price after discounts and tax.\")\n        .optional(),\n      totalAdditionalFees: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total additional fees before tax.')\n        .optional(),\n    })\n    .describe(\n      'Pay after free trial price summary. Price summary that should be paid for subscriptions after free trial period.'\n    )\n    .optional(),\n  platformFeeSummary: z\n    .object({\n      total: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total sum of all platform fees.')\n        .optional(),\n      totalPassOn: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total amount of platform fees with `PASS_ON` charge type.')\n        .optional(),\n      totalAbsorbed: z\n        .object({\n          amount: z.string().describe('Amount.').optional(),\n          formattedAmount: z\n            .string()\n            .describe('Amount formatted with currency symbol.')\n            .optional(),\n        })\n        .describe('Total amount of platform fees with `ABSORBED` charge type.')\n        .optional(),\n      fees: z\n        .array(\n          z.object({\n            name: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                  )\n                  .min(1)\n                  .max(200)\n                  .optional(),\n                translated: z\n                  .string()\n                  .describe(\n                    \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(400)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Platform fee name.')\n              .optional(),\n            amount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Platform fee amount.')\n              .optional(),\n            lineItemId: z\n              .string()\n              .describe('ID of the line item the platform fee applies to.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional(),\n            chargeType: z\n              .enum(['PASS_ON', 'ABSORBED'])\n              .describe('Platform fee charge type.')\n              .optional(),\n            percentageRate: z\n              .string()\n              .describe(\n                'Percentage rate charged as platform fee.\\nThe fee rate percentage expressed as a decimal fraction between 0 and 1. For example, `0.05` for 5%.'\n              )\n              .optional(),\n          })\n        )\n        .max(300)\n        .optional(),\n    })\n    .describe(\n      'Summary of platform fees for this order, including totals by charge type and a breakdown of individual fees.'\n    )\n    .optional(),\n});\nexport const BulkUpdateOrdersRequest = z.object({\n  orders: z\n    .array(\n      z.object({\n        order: z\n          .object({\n            _id: z\n              .string()\n              .describe('Order ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              ),\n            number: z\n              .string()\n              .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n              .describe(\n                \"Order number displayed in the site owner's dashboard (auto-generated).\"\n              )\n              .optional(),\n            _createdDate: z\n              .date()\n              .describe(\n                'Date and time the order was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n              )\n              .optional()\n              .nullable(),\n            _updatedDate: z\n              .date()\n              .describe(\n                'Date and time the order was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n              )\n              .optional()\n              .nullable(),\n            lineItems: z\n              .array(\n                z.object({\n                  _id: z.string().describe('Line item ID.').optional(),\n                  productName: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                        )\n                        .min(1)\n                        .max(200)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                        )\n                        .min(1)\n                        .max(400)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      'Item name.\\n\\n+ Stores - `product.name`\\n+ Bookings - `service.info.name`\\n+ Events - `ticket.name`'\n                    )\n                    .optional(),\n                  catalogReference: z\n                    .object({\n                      catalogItemId: z\n                        .string()\n                        .describe(\n                          'ID of the item within the catalog it belongs to.'\n                        )\n                        .min(1)\n                        .max(36)\n                        .optional(),\n                      appId: z\n                        .string()\n                        .describe(\n                          'ID of the app providing the catalog.\\n\\nYou can get your app\\'s ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\\n\\nFor items from Wix catalogs, the following values always apply:\\n+ Wix Stores: `\"215238eb-22a5-4c36-9e7b-e7c08025e04e\"`\\n+ Wix Bookings: `\"13d21c63-b5ec-5912-8397-c3a5ddb27a97\"`\\n+ Wix Restaurants: `\"9a5d83fd-8570-482e-81ab-cfa88942ee60\"`'\n                        )\n                        .min(1)\n                        .optional(),\n                      options: z\n                        .record(z.string(), z.any())\n                        .describe(\n                          'Additional item details in `key:value` pairs.\\n\\nUse this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items.\\n\\nFor Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration)\\nor [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction).'\n                        )\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      \"References to the line item's origin catalog. Empty for custom line items.\"\n                    )\n                    .optional(),\n                  quantity: z\n                    .number()\n                    .int()\n                    .describe('Line item quantity.')\n                    .min(1)\n                    .max(100000)\n                    .optional(),\n                  totalDiscount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      \"Total discount for this line item's entire quantity.\"\n                    )\n                    .optional(),\n                  descriptionLines: z\n                    .array(\n                      z.intersection(\n                        z.object({\n                          name: z\n                            .object({\n                              original: z\n                                .string()\n                                .describe(\n                                  \"Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                                )\n                                .max(100)\n                                .optional(),\n                              translated: z\n                                .string()\n                                .describe(\n                                  \"Description line name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                                )\n                                .max(200)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Description line name.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            plainText: z.never().optional(),\n                            colorInfo: z.never().optional(),\n                          }),\n                          z.object({\n                            colorInfo: z.never().optional(),\n                            plainText: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                                  )\n                                  .max(600)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Description line plain text value translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                                  )\n                                  .max(600)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Description line plain text value.'),\n                          }),\n                          z.object({\n                            plainText: z.never().optional(),\n                            colorInfo: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                                  )\n                                  .max(500)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Description line color name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                                  )\n                                  .max(500)\n                                  .optional()\n                                  .nullable(),\n                                code: z\n                                  .string()\n                                  .describe(\n                                    'HEX or RGB color code for display.'\n                                  )\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Description line color value.'),\n                          }),\n                        ])\n                      )\n                    )\n                    .min(0)\n                    .max(20)\n                    .optional(),\n                  image: z.string().describe('Line item image.').optional(),\n                  physicalProperties: z\n                    .object({\n                      weight: z\n                        .number()\n                        .describe(\n                          'Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request.'\n                        )\n                        .optional()\n                        .nullable(),\n                      sku: z\n                        .string()\n                        .describe(\n                          'Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).'\n                        )\n                        .max(40)\n                        .optional()\n                        .nullable(),\n                      shippable: z\n                        .boolean()\n                        .describe('Whether this line item is shippable.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Physical properties of the item. When relevant, contains information such as SKU and item weight.'\n                    )\n                    .optional(),\n                  itemType: z\n                    .intersection(\n                      z.object({}),\n                      z.xor([\n                        z.object({\n                          preset: z.never().optional(),\n                          custom: z.never().optional(),\n                        }),\n                        z.object({\n                          custom: z.never().optional(),\n                          preset: z\n                            .enum([\n                              'UNRECOGNISED',\n                              'PHYSICAL',\n                              'DIGITAL',\n                              'GIFT_CARD',\n                              'SERVICE',\n                            ])\n                            .describe('Preset item type.'),\n                        }),\n                        z.object({\n                          preset: z.never().optional(),\n                          custom: z\n                            .string()\n                            .describe(\n                              'Custom item type. When none of the preset types are suitable, specifies the custom type.'\n                            ),\n                        }),\n                      ])\n                    )\n                    .describe('Item type. Either a preset type or custom.')\n                    .optional(),\n                  fulfillerId: z\n                    .string()\n                    .describe(\n                      'Fulfiller ID. Field is empty when the line item is self-fulfilled.\\nTo get fulfillment information, pass the order ID to [List Fulfillments For Single Order](https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/order-fulfillments/list-fulfillments-for-single-order).'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  refundQuantity: z\n                    .number()\n                    .int()\n                    .describe('Number of items that were refunded.')\n                    .min(0)\n                    .max(100000)\n                    .optional()\n                    .nullable(),\n                  restockQuantity: z\n                    .number()\n                    .int()\n                    .describe(\n                      'Number of items restocked.\\n\\nFor a per-location breakdown, see `restockLocations`.'\n                    )\n                    .min(0)\n                    .max(100000)\n                    .optional()\n                    .nullable(),\n                  price: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Line item price after line item discounts for display purposes.'\n                    )\n                    .optional(),\n                  priceBeforeDiscounts: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Line item price before line item discounts for display purposes. Defaults to `price` when not provided.'\n                    )\n                    .optional(),\n                  totalPriceBeforeTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Total price after discounts, and before tax.')\n                    .optional(),\n                  totalPriceAfterTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Total price after all discounts and tax.')\n                    .optional(),\n                  paymentOption: z\n                    .enum([\n                      'FULL_PAYMENT_ONLINE',\n                      'FULL_PAYMENT_OFFLINE',\n                      'MEMBERSHIP',\n                      'DEPOSIT_ONLINE',\n                      'MEMBERSHIP_OFFLINE',\n                      'MEMBERSHIP_ONLINE_WITH_OFFLINE_REMAINDER',\n                    ])\n                    .optional(),\n                  taxDetails: z\n                    .object({\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of this line item.')\n                        .optional(),\n                      taxRate: z\n                        .string()\n                        .describe(\n                          'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                        )\n                        .optional(),\n                      totalTax: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                        )\n                        .optional(),\n                    })\n                    .describe(\n                      'Deprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.\\nTax details for this line item.'\n                    )\n                    .optional(),\n                  taxInfo: z\n                    .object({\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                        )\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Amount for which tax is calculated.')\n                        .optional(),\n                      taxRate: z\n                        .string()\n                        .describe('Tax rate %, as a decimal point.')\n                        .optional()\n                        .nullable(),\n                      taxGroupId: z\n                        .string()\n                        .describe('Tax group ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxIncludedInPrice: z\n                        .boolean()\n                        .describe(\n                          'Indicates whether the price already includes tax.'\n                        )\n                        .optional(),\n                      taxBreakdown: z\n                        .array(\n                          z.object({\n                            jurisdiction: z\n                              .string()\n                              .describe(\n                                'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            rate: z\n                              .string()\n                              .describe(\n                                'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                              )\n                              .optional()\n                              .nullable(),\n                            taxAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Amount of tax calculated for this line item.'\n                              )\n                              .optional(),\n                            taxType: z\n                              .string()\n                              .describe(\n                                'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            taxName: z\n                              .string()\n                              .describe(\n                                'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            jurisdictionType: z\n                              .enum([\n                                'UNDEFINED',\n                                'COUNTRY',\n                                'STATE',\n                                'COUNTY',\n                                'CITY',\n                                'SPECIAL',\n                              ])\n                              .optional(),\n                            nonTaxableAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Non-taxable amount of the line item price.'\n                              )\n                              .optional(),\n                            taxableAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Taxable amount of the line item price.'\n                              )\n                              .optional(),\n                          })\n                        )\n                        .max(7)\n                        .optional(),\n                    })\n                    .describe(\n                      'Represents all the relevant tax details for a specific line item.'\n                    )\n                    .optional(),\n                  digitalFile: z\n                    .object({\n                      fileId: z\n                        .string()\n                        .describe('ID of the secure file in media.')\n                        .min(1)\n                        .max(100)\n                        .optional(),\n                      link: z\n                        .string()\n                        .describe(\n                          'Link will exist after the digital links have been generated on the order.'\n                        )\n                        .url()\n                        .min(1)\n                        .max(2000)\n                        .optional()\n                        .nullable(),\n                      expirationDate: z\n                        .date()\n                        .describe('Link expiration time and date.')\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      'Digital file identifier, relevant only for items with type DIGITAL.'\n                    )\n                    .optional(),\n                  subscriptionInfo: z\n                    .object({\n                      _id: z\n                        .string()\n                        .describe('Subscription ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional()\n                        .nullable(),\n                      cycleNumber: z\n                        .number()\n                        .int()\n                        .describe(\n                          'Subscription cycle. For example, if this order is for the 3rd cycle of a subscription, value will be `3`.'\n                        )\n                        .min(0)\n                        .optional(),\n                      subscriptionOptionTitle: z\n                        .string()\n                        .describe(\n                          'Subscription option title. For example, `\"Monthly coffee Subscription\"`.'\n                        )\n                        .min(0)\n                        .max(150)\n                        .optional(),\n                      subscriptionOptionDescription: z\n                        .string()\n                        .describe(\n                          'Subscription option description. For example, `\"1kg of selected coffee, once a month\"`.'\n                        )\n                        .max(500)\n                        .optional()\n                        .nullable(),\n                      subscriptionSettings: z\n                        .object({\n                          frequency: z\n                            .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                            .optional(),\n                          interval: z\n                            .number()\n                            .int()\n                            .describe(\n                              'Number of frequency units in a billing cycle. For example, frequency `MONTH` with interval `3` means billing every 3 months.'\n                            )\n                            .min(1)\n                            .max(3650)\n                            .optional()\n                            .nullable(),\n                          autoRenewal: z\n                            .boolean()\n                            .describe(\n                              'Whether subscription is renewed automatically at the end of each period.'\n                            )\n                            .optional(),\n                          billingCycles: z\n                            .number()\n                            .int()\n                            .describe(\n                              'Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.'\n                            )\n                            .min(1)\n                            .optional()\n                            .nullable(),\n                          enableCustomerCancellation: z\n                            .boolean()\n                            .describe(\n                              'Whether to allow the customer to cancel the subscription.'\n                            )\n                            .optional(),\n                          freeTrialPeriod: z\n                            .object({\n                              frequency: z\n                                .enum([\n                                  'UNDEFINED',\n                                  'DAY',\n                                  'WEEK',\n                                  'MONTH',\n                                  'YEAR',\n                                ])\n                                .optional(),\n                              interval: z\n                                .number()\n                                .int()\n                                .describe(\n                                  'Number of frequency units in the free trial period. For example, frequency `MONTH` with interval `3` means a 3-month free trial.'\n                                )\n                                .min(1)\n                                .max(3650)\n                                .optional(),\n                            })\n                            .describe(\n                              'Period until first cycle starts. If None => no free trial'\n                            )\n                            .optional(),\n                        })\n                        .describe('Subscription detailed information.')\n                        .optional(),\n                      chargesDescription: z\n                        .string()\n                        .describe(\n                          'Description of the charges that will be applied for subscription.'\n                        )\n                        .max(1000)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Subscription info.')\n                    .optional(),\n                  priceDescription: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"__Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                        )\n                        .min(1)\n                        .max(100)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"Price description translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                        )\n                        .min(1)\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      'Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - \"Starts at $67\".'\n                    )\n                    .optional(),\n                  depositAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Item\\'s price amount to be charged during checkout. Relevant for items with a `paymentOption` value of `\"DEPOSIT_ONLINE\"`.'\n                    )\n                    .optional(),\n                  locations: z\n                    .array(\n                      z.object({\n                        _id: z\n                          .string()\n                          .describe('Location id in the associated owner app.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        appId: z\n                          .string()\n                          .describe(\n                            'Location owner app, if not provided then the site business info locations will be used.'\n                          )\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional()\n                          .nullable(),\n                        quantity: z\n                          .number()\n                          .int()\n                          .describe('Quantity for specific location.')\n                          .min(1)\n                          .max(100000)\n                          .optional(),\n                        name: z\n                          .string()\n                          .describe('Location name.')\n                          .max(500)\n                          .optional()\n                          .nullable(),\n                      })\n                    )\n                    .min(0)\n                    .max(5)\n                    .optional(),\n                  lineItemPrice: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Total price **after** catalog discounts and line item discounts.'\n                    )\n                    .optional(),\n                  taxableAddress: z\n                    .intersection(\n                      z.object({}),\n                      z.xor([\n                        z.object({ addressType: z.never().optional() }),\n                        z.object({\n                          addressType: z\n                            .enum(['BUSINESS', 'BILLING', 'SHIPPING'])\n                            .describe(\n                              'taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly.'\n                            ),\n                        }),\n                      ])\n                    )\n                    .describe('Address used for tax calculation.')\n                    .optional(),\n                  priceUndetermined: z\n                    .boolean()\n                    .describe(\n                      'Whether the price is not yet defined, and will be updated after the order is created.\\n\\nDefault: `false`'\n                    )\n                    .optional(),\n                  extendedFields: z\n                    .object({\n                      namespaces: z\n                        .record(z.string(), z.record(z.string(), z.any()))\n                        .describe(\n                          'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n                        )\n                        .optional(),\n                    })\n                    .describe(\n                      'Custom extended fields for the line item object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n                    )\n                    .optional(),\n                  modifierGroups: z\n                    .array(\n                      z.object({\n                        _id: z\n                          .string()\n                          .describe('Modifier group ID.')\n                          .min(1)\n                          .max(36)\n                          .optional(),\n                        name: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                              )\n                              .min(1)\n                              .max(200)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                              )\n                              .min(1)\n                              .max(400)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Modifier group name.')\n                          .optional(),\n                        modifiers: z\n                          .array(\n                            z.object({\n                              _id: z\n                                .string()\n                                .describe('Modifier ID.')\n                                .min(1)\n                                .max(36)\n                                .optional(),\n                              quantity: z\n                                .number()\n                                .int()\n                                .describe('The quantity of this modifier.')\n                                .min(1)\n                                .max(100000)\n                                .optional()\n                                .nullable(),\n                              label: z\n                                .object({\n                                  original: z\n                                    .string()\n                                    .describe(\n                                      \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                    )\n                                    .min(1)\n                                    .max(200)\n                                    .optional(),\n                                  translated: z\n                                    .string()\n                                    .describe(\n                                      \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                    )\n                                    .min(1)\n                                    .max(400)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe(\n                                  'Primary display label for the modifier.'\n                                )\n                                .optional(),\n                              details: z\n                                .object({\n                                  original: z\n                                    .string()\n                                    .describe(\n                                      \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                    )\n                                    .min(1)\n                                    .max(200)\n                                    .optional(),\n                                  translated: z\n                                    .string()\n                                    .describe(\n                                      \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                    )\n                                    .min(1)\n                                    .max(400)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Additional details.')\n                                .optional(),\n                              price: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('The price of the modifier.')\n                                .optional(),\n                            })\n                          )\n                          .min(1)\n                          .max(10)\n                          .optional(),\n                      })\n                    )\n                    .max(10)\n                    .optional(),\n                })\n              )\n              .min(1)\n              .max(300)\n              .optional(),\n            buyerInfo: z\n              .intersection(\n                z.object({\n                  contactId: z\n                    .string()\n                    .describe(\n                      \"Contact ID. Automatically created if one doesn't exist. For more information, see [Contacts API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts/contact-v4/introduction).\"\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  email: z\n                    .string()\n                    .describe(\"Buyer's email address.\")\n                    .email()\n                    .optional()\n                    .nullable(),\n                }),\n                z.xor([\n                  z.object({\n                    visitorId: z.never().optional(),\n                    memberId: z.never().optional(),\n                  }),\n                  z.object({\n                    memberId: z.never().optional(),\n                    visitorId: z\n                      .string()\n                      .describe(\n                        \"Visitor ID. Returned when the buyer isn't a logged-in site member.\"\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                  z.object({\n                    visitorId: z.never().optional(),\n                    memberId: z\n                      .string()\n                      .describe(\n                        'Member ID. Returned when the buyer is a logged-in site member.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Buyer information.')\n              .optional(),\n            paymentStatus: z\n              .enum([\n                'UNSPECIFIED',\n                'NOT_PAID',\n                'PAID',\n                'PARTIALLY_REFUNDED',\n                'FULLY_REFUNDED',\n                'PENDING',\n                'PARTIALLY_PAID',\n                'PENDING_MERCHANT',\n                'CANCELED',\n                'DECLINED',\n              ])\n              .optional(),\n            fulfillmentStatus: z\n              .enum(['NOT_FULFILLED', 'FULFILLED', 'PARTIALLY_FULFILLED'])\n              .optional(),\n            buyerLanguage: z\n              .string()\n              .describe(\n                'Language for communication with the buyer. Defaults to the site language.\\nFor a site that supports multiple languages, this is the language the buyer selected.'\n              )\n              .optional()\n              .nullable(),\n            weightUnit: z\n              .enum(['UNSPECIFIED_WEIGHT_UNIT', 'KG', 'LB'])\n              .optional(),\n            currency: z\n              .string()\n              .describe(\n                'Currency used for the pricing of this order in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.'\n              )\n              .optional()\n              .nullable(),\n            currencyConversionDetails: z\n              .object({\n                originalCurrency: z\n                  .string()\n                  .describe(\n                    \"Currency used for the pricing of this order, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.\\n\\nThis currency is used to calculate the pricing before conversion to the buyer's payment currency.\"\n                  )\n                  .optional()\n                  .nullable(),\n                conversionRate: z\n                  .string()\n                  .describe(\n                    'The rate used for converting the original currency to the currency used for payment.'\n                  )\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Currency conversion details. For use with multi-currency sites.'\n              )\n              .optional(),\n            taxIncludedInPrices: z\n              .boolean()\n              .describe('Whether tax is included in line item prices.')\n              .optional(),\n            siteLanguage: z\n              .string()\n              .describe('Site language in which original values are shown.')\n              .optional()\n              .nullable(),\n            priceSummary: z\n              .object({\n                subtotal: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Subtotal of all line items, before discounts and before tax.'\n                  )\n                  .optional(),\n                shipping: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total shipping price, before discounts and before tax.'\n                  )\n                  .optional(),\n                tax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total tax applied to the order.')\n                  .optional(),\n                discount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total discount amount applied to the order.')\n                  .optional(),\n                total: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\"Order's total price after discounts and tax.\")\n                  .optional(),\n                totalAdditionalFees: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total additional fees before tax.')\n                  .optional(),\n              })\n              .describe('Order price summary.')\n              .optional(),\n            billingInfo: z\n              .object({\n                address: z\n                  .object({\n                    streetAddress: z\n                      .object({\n                        name: z.string().optional(),\n                        number: z.string().optional(),\n                      })\n                      .optional(),\n                    city: z.string().optional().nullable(),\n                    subdivision: z.string().optional().nullable(),\n                    country: z.string().optional().nullable(),\n                    postalCode: z.string().optional().nullable(),\n                    addressLine2: z.string().optional().nullable(),\n                  })\n                  .describe('Address.')\n                  .optional(),\n                contactDetails: z\n                  .object({\n                    firstName: z\n                      .string()\n                      .describe('First name.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                    lastName: z\n                      .string()\n                      .describe('Last name.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                    phone: z\n                      .string()\n                      .describe('Phone number.')\n                      .optional()\n                      .nullable(),\n                    company: z\n                      .string()\n                      .describe('Company name.')\n                      .max(1000)\n                      .optional()\n                      .nullable(),\n                    vatId: z\n                      .object({\n                        _id: z\n                          .string()\n                          .describe(\"Customer's tax ID.\")\n                          .optional(),\n                        type: z.enum(['UNSPECIFIED', 'CPF', 'CNPJ']).optional(),\n                      })\n                      .describe(\n                        'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                      )\n                      .optional(),\n                  })\n                  .describe('Contact details.')\n                  .optional(),\n              })\n              .describe('Billing address and contact details.')\n              .optional(),\n            shippingInfo: z\n              .object({\n                carrierId: z\n                  .string()\n                  .describe(\n                    'App Def Id of external provider which was a source of shipping info'\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n                code: z\n                  .string()\n                  .describe(\n                    'Unique code (or ID) of selected shipping option. For example, `\"usps_std_overnight\"`.'\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n                title: z\n                  .string()\n                  .describe(\n                    'Shipping option title.\\nFor example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.'\n                  )\n                  .max(250)\n                  .optional(),\n                logistics: z\n                  .intersection(\n                    z.object({\n                      deliveryTime: z\n                        .string()\n                        .describe(\n                          'Expected delivery time in free text. For example, `\"3-5 business days\"`.'\n                        )\n                        .max(500)\n                        .optional()\n                        .nullable(),\n                      instructions: z\n                        .string()\n                        .describe(\n                          'Instructions for the carrier. For example, `\"Please knock on the door. If unanswered, please call contact number.\"`.'\n                        )\n                        .max(1000)\n                        .optional()\n                        .nullable(),\n                      deliverByDate: z\n                        .date()\n                        .describe(\n                          'Deprecated - Latest expected delivery date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                        )\n                        .optional()\n                        .nullable(),\n                      deliveryTimeSlot: z\n                        .object({\n                          from: z\n                            .date()\n                            .describe('Delivery slot starting time.')\n                            .optional()\n                            .nullable(),\n                          to: z\n                            .date()\n                            .describe('Delivery slot ending time.')\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe(\n                          'Expected delivery time slot with start and end times.'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        shippingDestination: z.never().optional(),\n                        pickupDetails: z.never().optional(),\n                      }),\n                      z.object({\n                        pickupDetails: z.never().optional(),\n                        shippingDestination: z\n                          .object({\n                            address: z\n                              .object({\n                                streetAddress: z\n                                  .object({\n                                    name: z.string().optional(),\n                                    number: z.string().optional(),\n                                  })\n                                  .optional(),\n                                city: z.string().optional().nullable(),\n                                subdivision: z.string().optional().nullable(),\n                                country: z.string().optional().nullable(),\n                                postalCode: z.string().optional().nullable(),\n                                addressLine2: z.string().optional().nullable(),\n                              })\n                              .describe('Address.')\n                              .optional(),\n                            contactDetails: z\n                              .object({\n                                firstName: z\n                                  .string()\n                                  .describe('First name.')\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                lastName: z\n                                  .string()\n                                  .describe('Last name.')\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                phone: z\n                                  .string()\n                                  .describe('Phone number.')\n                                  .optional()\n                                  .nullable(),\n                                company: z\n                                  .string()\n                                  .describe('Company name.')\n                                  .max(1000)\n                                  .optional()\n                                  .nullable(),\n                                vatId: z\n                                  .object({\n                                    _id: z\n                                      .string()\n                                      .describe(\"Customer's tax ID.\")\n                                      .optional(),\n                                    type: z\n                                      .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Contact details.')\n                              .optional(),\n                          })\n                          .describe(\n                            \"Shipping destination address and contact details. For pickup orders, this contains the pickup location address, not the recipient's address.\"\n                          ),\n                      }),\n                      z.object({\n                        shippingDestination: z.never().optional(),\n                        pickupDetails: z\n                          .object({\n                            address: z\n                              .object({\n                                streetAddress: z\n                                  .object({\n                                    name: z.string().optional(),\n                                    number: z.string().optional(),\n                                  })\n                                  .optional(),\n                                city: z.string().optional().nullable(),\n                                subdivision: z.string().optional().nullable(),\n                                country: z.string().optional().nullable(),\n                                postalCode: z.string().optional().nullable(),\n                                addressLine2: z.string().optional().nullable(),\n                              })\n                              .describe('Pickup address.')\n                              .optional(),\n                            pickupMethod: z\n                              .enum(['STORE_PICKUP', 'PICKUP_POINT'])\n                              .describe('Pickup method')\n                              .optional(),\n                          })\n                          .describe(\n                            'Pickup details for store pickup or pickup point orders.'\n                          ),\n                      }),\n                    ])\n                  )\n                  .describe('Shipping logistics.')\n                  .optional(),\n                cost: z\n                  .object({\n                    price: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Shipping price for display purposes.')\n                      .optional(),\n                    totalPriceBeforeTax: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe(\n                        'Total price of shipping after discounts (when relevant), and before tax.'\n                      )\n                      .optional(),\n                    totalPriceAfterTax: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe(\n                        'Shipping price after all discounts (if any exist), and after tax.'\n                      )\n                      .optional(),\n                    taxDetails: z\n                      .object({\n                        taxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Taxable amount of this line item.')\n                          .optional(),\n                        taxRate: z\n                          .string()\n                          .describe(\n                            'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                          )\n                          .optional(),\n                        totalTax: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                          )\n                          .optional(),\n                      })\n                      .describe('Tax details.')\n                      .optional(),\n                    taxInfo: z\n                      .object({\n                        taxAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                          )\n                          .optional(),\n                        taxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Amount for which tax is calculated.')\n                          .optional(),\n                        taxRate: z\n                          .string()\n                          .describe('Tax rate %, as a decimal point.')\n                          .optional()\n                          .nullable(),\n                        taxGroupId: z\n                          .string()\n                          .describe('Tax group ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional()\n                          .nullable(),\n                        taxIncludedInPrice: z\n                          .boolean()\n                          .describe(\n                            'Indicates whether the price already includes tax.'\n                          )\n                          .optional(),\n                        taxBreakdown: z\n                          .array(\n                            z.object({\n                              jurisdiction: z\n                                .string()\n                                .describe(\n                                  'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                                )\n                                .max(200)\n                                .optional()\n                                .nullable(),\n                              rate: z\n                                .string()\n                                .describe(\n                                  'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                                )\n                                .optional()\n                                .nullable(),\n                              taxAmount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe(\n                                  'Amount of tax calculated for this line item.'\n                                )\n                                .optional(),\n                              taxType: z\n                                .string()\n                                .describe(\n                                  'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                                )\n                                .max(200)\n                                .optional()\n                                .nullable(),\n                              taxName: z\n                                .string()\n                                .describe(\n                                  'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                                )\n                                .max(200)\n                                .optional()\n                                .nullable(),\n                              jurisdictionType: z\n                                .enum([\n                                  'UNDEFINED',\n                                  'COUNTRY',\n                                  'STATE',\n                                  'COUNTY',\n                                  'CITY',\n                                  'SPECIAL',\n                                ])\n                                .optional(),\n                              nonTaxableAmount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe(\n                                  'Non-taxable amount of the line item price.'\n                                )\n                                .optional(),\n                              taxableAmount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe(\n                                  'Taxable amount of the line item price.'\n                                )\n                                .optional(),\n                            })\n                          )\n                          .max(7)\n                          .optional(),\n                      })\n                      .describe(\n                        'Represents all the relevant tax details for a shipping.'\n                      )\n                      .optional(),\n                    discount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Shipping discount before tax.')\n                      .optional(),\n                  })\n                  .describe('Shipping costs.')\n                  .optional(),\n                region: z\n                  .object({\n                    name: z\n                      .string()\n                      .describe(\n                        'Name of shipping region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.'\n                      )\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Shipping region.')\n                  .optional(),\n              })\n              .describe('Shipping info and selected shipping option details.')\n              .optional(),\n            buyerNote: z\n              .string()\n              .describe(\n                '[Buyer note](https://support.wix.com/en/article/wix-stores-viewing-buyer-notes) left by the customer.'\n              )\n              .max(1000)\n              .optional()\n              .nullable(),\n            status: z\n              .enum([\n                'INITIALIZED',\n                'APPROVED',\n                'CANCELED',\n                'PENDING',\n                'REJECTED',\n              ])\n              .optional(),\n            archived: z\n              .boolean()\n              .describe('Whether order is archived.')\n              .optional()\n              .nullable(),\n            taxSummary: z\n              .object({\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total tax.')\n                  .optional(),\n              })\n              .describe(\n                'Tax summary.\\nDeprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.'\n              )\n              .optional(),\n            taxInfo: z\n              .object({\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Calculated tax, added from line items.')\n                  .optional(),\n                taxBreakdown: z\n                  .array(\n                    z.object({\n                      taxName: z\n                        .string()\n                        .describe(\n                          'The name of the tax against which this tax amount was calculated.'\n                        )\n                        .max(200)\n                        .optional(),\n                      taxType: z\n                        .string()\n                        .describe(\n                          \"The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.\"\n                        )\n                        .max(200)\n                        .optional(),\n                      jurisdiction: z\n                        .string()\n                        .describe(\n                          'The name of the jurisdiction in which this tax detail applies.'\n                        )\n                        .max(200)\n                        .optional(),\n                      jurisdictionType: z\n                        .enum([\n                          'UNDEFINED',\n                          'COUNTRY',\n                          'STATE',\n                          'COUNTY',\n                          'CITY',\n                          'SPECIAL',\n                        ])\n                        .optional(),\n                      rate: z\n                        .string()\n                        .describe(\n                          'The rate at which this tax detail was calculated.'\n                        )\n                        .optional(),\n                      aggregatedTaxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'The sum of all the tax from line items that calculated by the tax identifiers.'\n                        )\n                        .optional(),\n                    })\n                  )\n                  .min(0)\n                  .max(50)\n                  .optional(),\n                taxExempt: z\n                  .boolean()\n                  .describe(\n                    'Whether the order is exempt from tax calculations.\\n\\nDefault: `false`'\n                  )\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Tax information.')\n              .optional(),\n            appliedDiscounts: z\n              .array(\n                z.intersection(\n                  z.object({\n                    discountType: z\n                      .enum(['GLOBAL', 'SPECIFIC_ITEMS', 'SHIPPING'])\n                      .optional(),\n                    lineItemIds: z.array(z.string()).min(0).max(300).optional(),\n                    _id: z\n                      .string()\n                      .describe('Discount ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional()\n                      .nullable(),\n                    lineItemDiscounts: z\n                      .array(\n                        z.object({\n                          _id: z\n                            .string()\n                            .describe('Line item ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          totalDiscount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe(\n                              'Total discount amount for this line item.'\n                            )\n                            .optional(),\n                        })\n                      )\n                      .max(300)\n                      .optional(),\n                  }),\n                  z.xor([\n                    z.object({\n                      coupon: z.never().optional(),\n                      merchantDiscount: z.never().optional(),\n                      discountRule: z.never().optional(),\n                    }),\n                    z.object({\n                      merchantDiscount: z.never().optional(),\n                      discountRule: z.never().optional(),\n                      coupon: z\n                        .object({\n                          _id: z.string().describe('Coupon ID.').optional(),\n                          code: z.string().describe('Coupon code.').optional(),\n                          name: z.string().describe('Coupon name.').optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Coupon value.')\n                            .optional(),\n                        })\n                        .describe('Coupon applied by the customer.'),\n                    }),\n                    z.object({\n                      coupon: z.never().optional(),\n                      discountRule: z.never().optional(),\n                      merchantDiscount: z\n                        .intersection(\n                          z.object({\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Discount amount.')\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              discountReason: z.never().optional(),\n                              description: z.never().optional(),\n                            }),\n                            z.object({\n                              description: z.never().optional(),\n                              discountReason: z\n                                .enum([\n                                  'UNSPECIFIED',\n                                  'EXCHANGED_ITEMS',\n                                  'BILLING_ADJUSTMENT',\n                                ])\n                                .describe('Predefined discount reason.'),\n                            }),\n                            z.object({\n                              discountReason: z.never().optional(),\n                              description: z\n                                .string()\n                                .describe(\n                                  'Custom discount description as free text.'\n                                )\n                                .max(200),\n                            }),\n                          ])\n                        )\n                        .describe('Discount applied manually by the merchant.'),\n                    }),\n                    z.object({\n                      coupon: z.never().optional(),\n                      merchantDiscount: z.never().optional(),\n                      discountRule: z\n                        .object({\n                          _id: z\n                            .string()\n                            .describe('Discount rule ID')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          name: z\n                            .object({\n                              original: z\n                                .string()\n                                .describe(\n                                  \"Original discount rule name (in site's default language).\"\n                                )\n                                .min(1)\n                                .max(256)\n                                .optional(),\n                              translated: z\n                                .string()\n                                .describe(\n                                  'Translated discount rule name according to buyer language. Defaults to `original` when not provided.'\n                                )\n                                .min(1)\n                                .max(500)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Discount rule name')\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Discount value.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Automatic discount applied by the system based on configured discount rules.'\n                        ),\n                    }),\n                  ])\n                )\n              )\n              .max(320)\n              .optional(),\n            activities: z\n              .array(\n                z.intersection(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Activity ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional()\n                      .nullable(),\n                    authorEmail: z\n                      .string()\n                      .describe(\"Activity author's email.\")\n                      .email()\n                      .optional()\n                      .nullable(),\n                    _createdDate: z\n                      .date()\n                      .describe('Activity creation date and time.')\n                      .optional()\n                      .nullable(),\n                    type: z\n                      .enum([\n                        'ORDER_REFUNDED',\n                        'ORDER_PLACED',\n                        'ORDER_PAID',\n                        'ORDER_FULFILLED',\n                        'ORDER_NOT_FULFILLED',\n                        'ORDER_CANCELED',\n                        'DOWNLOAD_LINK_SENT',\n                        'TRACKING_NUMBER_ADDED',\n                        'TRACKING_NUMBER_EDITED',\n                        'TRACKING_LINK_ADDED',\n                        'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                        'INVOICE_ADDED',\n                        'INVOICE_REMOVED',\n                        'INVOICE_SENT',\n                        'FULFILLER_EMAIL_SENT',\n                        'SHIPPING_ADDRESS_EDITED',\n                        'EMAIL_EDITED',\n                        'PICKUP_READY_EMAIL_SENT',\n                        'CUSTOM_ACTIVITY',\n                        'MERCHANT_COMMENT',\n                        'ORDER_PARTIALLY_PAID',\n                        'DRAFT_ORDER_CHANGES_APPLIED',\n                        'SAVED_PAYMENT_METHOD',\n                        'AUTHORIZED_PAYMENT_CREATED',\n                        'AUTHORIZED_PAYMENT_CAPTURED',\n                        'AUTHORIZED_PAYMENT_VOIDED',\n                        'REFUND_INITIATED',\n                        'PAYMENT_REFUNDED',\n                        'PAYMENT_REFUND_FAILED',\n                        'REFUNDED_AS_STORE_CREDIT',\n                        'PAYMENT_PENDING',\n                        'PAYMENT_CANCELED',\n                        'PAYMENT_DECLINED',\n                        'ORDER_PENDING',\n                        'ORDER_REJECTED',\n                        'RECEIPT_CREATED',\n                        'RECEIPT_SENT',\n                        'CHARGEBACK_CREATED',\n                        'CHARGEBACK_REVERSED',\n                      ])\n                      .optional(),\n                    activityType: z\n                      .enum([\n                        'ORDER_PLACED',\n                        'ORDER_PAID',\n                        'ORDER_FULFILLED',\n                        'ORDER_NOT_FULFILLED',\n                        'ORDER_CANCELED',\n                        'DOWNLOAD_LINK_SENT',\n                        'TRACKING_NUMBER_ADDED',\n                        'TRACKING_NUMBER_EDITED',\n                        'TRACKING_LINK_ADDED',\n                        'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                        'INVOICE_ADDED',\n                        'INVOICE_REMOVED',\n                        'INVOICE_SENT',\n                        'FULFILLER_EMAIL_SENT',\n                        'SHIPPING_ADDRESS_EDITED',\n                        'EMAIL_EDITED',\n                        'PICKUP_READY_EMAIL_SENT',\n                        'MERCHANT_COMMENT',\n                        'ORDER_PARTIALLY_PAID',\n                        'DRAFT_ORDER_CHANGES_APPLIED',\n                        'SAVED_PAYMENT_METHOD',\n                        'AUTHORIZED_PAYMENT_CREATED',\n                        'AUTHORIZED_PAYMENT_CAPTURED',\n                        'AUTHORIZED_PAYMENT_VOIDED',\n                        'REFUND_INITIATED',\n                        'PAYMENT_REFUNDED',\n                        'PAYMENT_REFUND_FAILED',\n                        'REFUNDED_AS_STORE_CREDIT',\n                        'PAYMENT_PENDING',\n                        'PAYMENT_CANCELED',\n                        'PAYMENT_DECLINED',\n                        'ORDER_PENDING',\n                        'ORDER_REJECTED',\n                        'RECEIPT_CREATED',\n                        'RECEIPT_SENT',\n                        'CHARGEBACK_CREATED',\n                        'CHARGEBACK_REVERSED',\n                        'ORDER_REFUNDED',\n                      ])\n                      .optional(),\n                  }),\n                  z.xor([\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                    }),\n                    z.object({\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      merchantComment: z\n                        .object({\n                          message: z\n                            .string()\n                            .describe('Merchant comment message.')\n                            .min(1)\n                            .max(5000)\n                            .optional(),\n                        })\n                        .describe(\n                          'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      orderRefunded: z\n                        .object({\n                          manual: z\n                            .boolean()\n                            .describe(\n                              'Whether order was refunded manually. For example, via payment provider or using cash.'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Refund amount.')\n                            .optional(),\n                          reason: z\n                            .string()\n                            .describe('Reason for refund.')\n                            .max(200)\n                            .optional(),\n                        })\n                        .describe(\n                          'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      draftOrderChangesApplied: z\n                        .object({\n                          draftOrderId: z\n                            .string()\n                            .describe('Draft order id.')\n                            .optional(),\n                          reason: z\n                            .string()\n                            .describe(\n                              'Reason for edit, given by user (optional).'\n                            )\n                            .max(200)\n                            .optional()\n                            .nullable(),\n                          changes: z\n                            .array(\n                              z.intersection(\n                                z.object({}),\n                                z.xor([\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                  }),\n                                  z.object({\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    lineItemChanged: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Line item ID.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name after change.')\n                                        .optional(),\n                                      quantity: z\n                                        .object({\n                                          originalQuantity: z\n                                            .number()\n                                            .int()\n                                            .describe(\n                                              'Item quantity before update.'\n                                            )\n                                            .min(0)\n                                            .max(1000000)\n                                            .optional(),\n                                          newQuantity: z\n                                            .number()\n                                            .int()\n                                            .describe(\n                                              'Item quantity after update.'\n                                            )\n                                            .min(0)\n                                            .max(1000000)\n                                            .optional(),\n                                          diff: z\n                                            .number()\n                                            .int()\n                                            .describe(\n                                              'Difference between original and new quantity. Absolute value.'\n                                            )\n                                            .min(1)\n                                            .max(1000000)\n                                            .optional(),\n                                          deltaType: z\n                                            .enum([\n                                              'QUANTITY_INCREASED',\n                                              'QUANTITY_DECREASED',\n                                            ])\n                                            .describe(\n                                              'Type of quantity change: increase or decrease.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Item quantity change.')\n                                        .optional(),\n                                      price: z\n                                        .object({\n                                          originalPrice: z\n                                            .object({\n                                              amount: z\n                                                .string()\n                                                .describe('Amount.')\n                                                .optional(),\n                                              formattedAmount: z\n                                                .string()\n                                                .describe(\n                                                  'Amount formatted with currency symbol.'\n                                                )\n                                                .optional(),\n                                            })\n                                            .describe(\n                                              'Item price before update.'\n                                            )\n                                            .optional(),\n                                          newPrice: z\n                                            .object({\n                                              amount: z\n                                                .string()\n                                                .describe('Amount.')\n                                                .optional(),\n                                              formattedAmount: z\n                                                .string()\n                                                .describe(\n                                                  'Amount formatted with currency symbol.'\n                                                )\n                                                .optional(),\n                                            })\n                                            .describe(\n                                              'Item price after update.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Item price change.')\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    lineItemAdded: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Line item ID.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      quantity: z\n                                        .number()\n                                        .int()\n                                        .describe(\n                                          'Added or removed item quantity.'\n                                        )\n                                        .min(1)\n                                        .max(1000000)\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    lineItemRemoved: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Line item ID.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      quantity: z\n                                        .number()\n                                        .int()\n                                        .describe(\n                                          'Added or removed item quantity.'\n                                        )\n                                        .min(1)\n                                        .max(1000000)\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    discountAdded: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Discount id.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              'Value in site default language.'\n                                            )\n                                            .min(1)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe('Translated value.')\n                                            .min(1)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe(\n                                          'Discount name: coupon name / discount rule name / merchant discount description.'\n                                        )\n                                        .optional(),\n                                      affectedLineItems: z\n                                        .array(\n                                          z.object({\n                                            _id: z\n                                              .string()\n                                              .describe('Order line item id')\n                                              .regex(\n                                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                                'Must be a valid GUID'\n                                              )\n                                              .optional(),\n                                            name: z\n                                              .object({\n                                                original: z\n                                                  .string()\n                                                  .describe(\n                                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(200)\n                                                  .optional(),\n                                                translated: z\n                                                  .string()\n                                                  .describe(\n                                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(400)\n                                                  .optional()\n                                                  .nullable(),\n                                              })\n                                              .describe('Item name.')\n                                              .optional(),\n                                            amount: z\n                                              .object({\n                                                amount: z\n                                                  .string()\n                                                  .describe('Amount.')\n                                                  .optional(),\n                                                formattedAmount: z\n                                                  .string()\n                                                  .describe(\n                                                    'Amount formatted with currency symbol.'\n                                                  )\n                                                  .optional(),\n                                              })\n                                              .describe(\n                                                'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                              )\n                                              .optional(),\n                                          })\n                                        )\n                                        .min(0)\n                                        .optional(),\n                                      totalAmount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Discount amount.')\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    discountRemoved: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Discount id.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              'Value in site default language.'\n                                            )\n                                            .min(1)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe('Translated value.')\n                                            .min(1)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe(\n                                          'Discount name: coupon name / discount rule name / merchant discount description.'\n                                        )\n                                        .optional(),\n                                      affectedLineItems: z\n                                        .array(\n                                          z.object({\n                                            _id: z\n                                              .string()\n                                              .describe('Order line item id')\n                                              .regex(\n                                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                                'Must be a valid GUID'\n                                              )\n                                              .optional(),\n                                            name: z\n                                              .object({\n                                                original: z\n                                                  .string()\n                                                  .describe(\n                                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(200)\n                                                  .optional(),\n                                                translated: z\n                                                  .string()\n                                                  .describe(\n                                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(400)\n                                                  .optional()\n                                                  .nullable(),\n                                              })\n                                              .describe('Item name.')\n                                              .optional(),\n                                            amount: z\n                                              .object({\n                                                amount: z\n                                                  .string()\n                                                  .describe('Amount.')\n                                                  .optional(),\n                                                formattedAmount: z\n                                                  .string()\n                                                  .describe(\n                                                    'Amount formatted with currency symbol.'\n                                                  )\n                                                  .optional(),\n                                              })\n                                              .describe(\n                                                'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                              )\n                                              .optional(),\n                                          })\n                                        )\n                                        .min(0)\n                                        .optional(),\n                                      totalAmount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Discount amount.')\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    additionalFeeAdded: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Additional fee id.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              'Value in site default language.'\n                                            )\n                                            .min(1)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe('Translated value.')\n                                            .min(1)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Additional fee name.')\n                                        .optional(),\n                                      affectedLineItems: z\n                                        .array(\n                                          z.object({\n                                            _id: z\n                                              .string()\n                                              .describe('Order line item id')\n                                              .regex(\n                                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                                'Must be a valid GUID'\n                                              )\n                                              .optional(),\n                                            name: z\n                                              .object({\n                                                original: z\n                                                  .string()\n                                                  .describe(\n                                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(200)\n                                                  .optional(),\n                                                translated: z\n                                                  .string()\n                                                  .describe(\n                                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(400)\n                                                  .optional()\n                                                  .nullable(),\n                                              })\n                                              .describe('Item name.')\n                                              .optional(),\n                                            amount: z\n                                              .object({\n                                                amount: z\n                                                  .string()\n                                                  .describe('Amount.')\n                                                  .optional(),\n                                                formattedAmount: z\n                                                  .string()\n                                                  .describe(\n                                                    'Amount formatted with currency symbol.'\n                                                  )\n                                                  .optional(),\n                                              })\n                                              .describe(\n                                                'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                              )\n                                              .optional(),\n                                          })\n                                        )\n                                        .min(0)\n                                        .optional(),\n                                      totalAmount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Additional fee amount.')\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    additionalFeeRemoved: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Additional fee id.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              'Value in site default language.'\n                                            )\n                                            .min(1)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe('Translated value.')\n                                            .min(1)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Additional fee name.')\n                                        .optional(),\n                                      affectedLineItems: z\n                                        .array(\n                                          z.object({\n                                            _id: z\n                                              .string()\n                                              .describe('Order line item id')\n                                              .regex(\n                                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                                'Must be a valid GUID'\n                                              )\n                                              .optional(),\n                                            name: z\n                                              .object({\n                                                original: z\n                                                  .string()\n                                                  .describe(\n                                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(200)\n                                                  .optional(),\n                                                translated: z\n                                                  .string()\n                                                  .describe(\n                                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(400)\n                                                  .optional()\n                                                  .nullable(),\n                                              })\n                                              .describe('Item name.')\n                                              .optional(),\n                                            amount: z\n                                              .object({\n                                                amount: z\n                                                  .string()\n                                                  .describe('Amount.')\n                                                  .optional(),\n                                                formattedAmount: z\n                                                  .string()\n                                                  .describe(\n                                                    'Amount formatted with currency symbol.'\n                                                  )\n                                                  .optional(),\n                                              })\n                                              .describe(\n                                                'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                              )\n                                              .optional(),\n                                          })\n                                        )\n                                        .min(0)\n                                        .optional(),\n                                      totalAmount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Additional fee amount.')\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    totalPriceChanged: z.object({\n                                      originalTotal: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Order’s total price after discounts and tax. Before update'\n                                        )\n                                        .optional(),\n                                      newTotal: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Order’s total price after discounts and tax. After update'\n                                        )\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z.object({\n                                      originalShippingInfo: z\n                                        .object({\n                                          total: z\n                                            .object({\n                                              amount: z\n                                                .string()\n                                                .describe('Amount.')\n                                                .optional(),\n                                              formattedAmount: z\n                                                .string()\n                                                .describe(\n                                                  'Amount formatted with currency symbol.'\n                                                )\n                                                .optional(),\n                                            })\n                                            .describe('Order’s shipping price.')\n                                            .optional(),\n                                          shippingTitle: z\n                                            .string()\n                                            .describe('Order’s shipping title.')\n                                            .max(250)\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Order’s Shipping Information. Before update'\n                                        )\n                                        .optional(),\n                                      newShippingInfo: z\n                                        .object({\n                                          total: z\n                                            .object({\n                                              amount: z\n                                                .string()\n                                                .describe('Amount.')\n                                                .optional(),\n                                              formattedAmount: z\n                                                .string()\n                                                .describe(\n                                                  'Amount formatted with currency symbol.'\n                                                )\n                                                .optional(),\n                                            })\n                                            .describe('Order’s shipping price.')\n                                            .optional(),\n                                          shippingTitle: z\n                                            .string()\n                                            .describe('Order’s shipping title.')\n                                            .max(250)\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Order’s Shipping Information. After update'\n                                        )\n                                        .optional(),\n                                    }),\n                                  }),\n                                ])\n                              )\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Details of changes made by the Draft Orders API.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      savedPaymentMethod: z\n                        .object({\n                          name: z\n                            .string()\n                            .describe('Payment method name.')\n                            .min(1)\n                            .max(100)\n                            .optional(),\n                          description: z\n                            .string()\n                            .describe('Payment method description.')\n                            .min(1)\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe(\n                          'Details of the payment method saved for the order.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      authorizedPaymentCreated: z\n                        .object({\n                          paymentId: z\n                            .string()\n                            .describe(\n                              'Payment ID of payment associated with this activity.'\n                            )\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                          lastFourDigits: z\n                            .string()\n                            .describe('The last 4 digits of the card number.')\n                            .max(4)\n                            .optional()\n                            .nullable(),\n                          brand: z\n                            .string()\n                            .describe(\"Card issuer's brand.\")\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Details of an authorized payment created.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      authorizedPaymentCaptured: z\n                        .object({\n                          paymentId: z\n                            .string()\n                            .describe(\n                              'Payment ID of payment associated with this activity.'\n                            )\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                          lastFourDigits: z\n                            .string()\n                            .describe('The last 4 digits of the card number.')\n                            .max(4)\n                            .optional()\n                            .nullable(),\n                          brand: z\n                            .string()\n                            .describe(\"Card issuer's brand.\")\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Details of an authorized payment captured.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      authorizedPaymentVoided: z\n                        .object({\n                          paymentId: z\n                            .string()\n                            .describe(\n                              'Payment ID of payment associated with this activity.'\n                            )\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                          lastFourDigits: z\n                            .string()\n                            .describe('The last 4 digits of the card number.')\n                            .max(4)\n                            .optional()\n                            .nullable(),\n                          brand: z\n                            .string()\n                            .describe(\"Card issuer's brand.\")\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Details of an authorized payment voided.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      refundInitiated: z\n                        .object({\n                          refundId: z\n                            .string()\n                            .describe('Refund ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Refund amount.')\n                            .optional(),\n                          payments: z\n                            .array(\n                              z.intersection(\n                                z.object({\n                                  paymentId: z\n                                    .string()\n                                    .describe('Payment ID.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  externalRefund: z\n                                    .boolean()\n                                    .describe(\n                                      \"Whether refund was made externally and manually on the payment provider's side.\"\n                                    )\n                                    .optional(),\n                                }),\n                                z.xor([\n                                  z.object({\n                                    regular: z.never().optional(),\n                                    giftCard: z.never().optional(),\n                                    membership: z.never().optional(),\n                                  }),\n                                  z.object({\n                                    giftCard: z.never().optional(),\n                                    membership: z.never().optional(),\n                                    regular: z\n                                      .object({\n                                        amount: z\n                                          .object({\n                                            amount: z\n                                              .string()\n                                              .describe('Amount.')\n                                              .optional(),\n                                            formattedAmount: z\n                                              .string()\n                                              .describe(\n                                                'Amount formatted with currency symbol.'\n                                              )\n                                              .optional(),\n                                          })\n                                          .describe('Refund amount.')\n                                          .optional(),\n                                        lastFourDigits: z\n                                          .string()\n                                          .describe(\n                                            'The last 4 digits of the card number.'\n                                          )\n                                          .max(4)\n                                          .optional()\n                                          .nullable(),\n                                        brand: z\n                                          .string()\n                                          .describe(\"Card issuer's brand.\")\n                                          .max(100)\n                                          .optional()\n                                          .nullable(),\n                                      })\n                                      .describe('Regular payment refund.'),\n                                  }),\n                                  z.object({\n                                    regular: z.never().optional(),\n                                    membership: z.never().optional(),\n                                    giftCard: z\n                                      .object({\n                                        giftCardPaymentId: z\n                                          .string()\n                                          .describe('Gift card payment ID.')\n                                          .min(1)\n                                          .max(100)\n                                          .optional()\n                                          .nullable(),\n                                        amount: z\n                                          .object({\n                                            amount: z\n                                              .string()\n                                              .describe('Amount.')\n                                              .optional(),\n                                            formattedAmount: z\n                                              .string()\n                                              .describe(\n                                                'Amount formatted with currency symbol.'\n                                              )\n                                              .optional(),\n                                          })\n                                          .describe('Refund amount.')\n                                          .optional(),\n                                      })\n                                      .describe('Gift card payment refund.'),\n                                  }),\n                                  z.object({\n                                    regular: z.never().optional(),\n                                    giftCard: z.never().optional(),\n                                    membership: z\n                                      .object({\n                                        membershipId: z\n                                          .string()\n                                          .describe('Membership ID.')\n                                          .min(1)\n                                          .max(100)\n                                          .optional()\n                                          .nullable(),\n                                      })\n                                      .describe('Membership payment refund.'),\n                                  }),\n                                ])\n                              )\n                            )\n                            .min(1)\n                            .max(50)\n                            .optional(),\n                          reason: z\n                            .string()\n                            .describe('Reason for refund.')\n                            .max(200)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe(\n                          'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      paymentRefunded: z\n                        .object({\n                          refundId: z\n                            .string()\n                            .describe('Refund ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          payment: z\n                            .intersection(\n                              z.object({\n                                paymentId: z\n                                  .string()\n                                  .describe('Payment ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                externalRefund: z\n                                  .boolean()\n                                  .describe(\n                                    \"Whether refund was made externally and manually on the payment provider's side.\"\n                                  )\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  regular: z.never().optional(),\n                                  giftCard: z.never().optional(),\n                                  membership: z.never().optional(),\n                                }),\n                                z.object({\n                                  giftCard: z.never().optional(),\n                                  membership: z.never().optional(),\n                                  regular: z\n                                    .object({\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Refund amount.')\n                                        .optional(),\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Regular payment refund.'),\n                                }),\n                                z.object({\n                                  regular: z.never().optional(),\n                                  membership: z.never().optional(),\n                                  giftCard: z\n                                    .object({\n                                      giftCardPaymentId: z\n                                        .string()\n                                        .describe('Gift card payment ID.')\n                                        .min(1)\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Refund amount.')\n                                        .optional(),\n                                    })\n                                    .describe('Gift card payment refund.'),\n                                }),\n                                z.object({\n                                  regular: z.never().optional(),\n                                  giftCard: z.never().optional(),\n                                  membership: z\n                                    .object({\n                                      membershipId: z\n                                        .string()\n                                        .describe('Membership ID.')\n                                        .min(1)\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Membership payment refund.'),\n                                }),\n                              ])\n                            )\n                            .describe('Details about the refunded payment.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      paymentRefundFailed: z\n                        .object({\n                          refundId: z\n                            .string()\n                            .describe('Refund ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          payment: z\n                            .intersection(\n                              z.object({\n                                paymentId: z\n                                  .string()\n                                  .describe('Payment ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                externalRefund: z\n                                  .boolean()\n                                  .describe(\n                                    \"Whether refund was made externally and manually on the payment provider's side.\"\n                                  )\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  regular: z.never().optional(),\n                                  giftCard: z.never().optional(),\n                                  membership: z.never().optional(),\n                                }),\n                                z.object({\n                                  giftCard: z.never().optional(),\n                                  membership: z.never().optional(),\n                                  regular: z\n                                    .object({\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Refund amount.')\n                                        .optional(),\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Regular payment refund.'),\n                                }),\n                                z.object({\n                                  regular: z.never().optional(),\n                                  membership: z.never().optional(),\n                                  giftCard: z\n                                    .object({\n                                      giftCardPaymentId: z\n                                        .string()\n                                        .describe('Gift card payment ID.')\n                                        .min(1)\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Refund amount.')\n                                        .optional(),\n                                    })\n                                    .describe('Gift card payment refund.'),\n                                }),\n                                z.object({\n                                  regular: z.never().optional(),\n                                  giftCard: z.never().optional(),\n                                  membership: z\n                                    .object({\n                                      membershipId: z\n                                        .string()\n                                        .describe('Membership ID.')\n                                        .min(1)\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Membership payment refund.'),\n                                }),\n                              ])\n                            )\n                            .describe(\n                              'Details about the failed payment refund.'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      refundedAsStoreCredit: z\n                        .object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Refund amount.')\n                            .optional(),\n                          reason: z\n                            .string()\n                            .describe('Reason for refund.')\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Details of refund to store credit.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      paymentPending: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe(\n                                'Payment ID of payment associated with this activity.'\n                              )\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({ regular: z.never().optional() }),\n                            z.object({\n                              regular: z\n                                .intersection(\n                                  z.object({\n                                    amount: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Payment amount.')\n                                      .optional(),\n                                  }),\n                                  z.xor([\n                                    z.object({\n                                      creditCardDetails: z.never().optional(),\n                                    }),\n                                    z.object({\n                                      creditCardDetails: z\n                                        .object({\n                                          lastFourDigits: z\n                                            .string()\n                                            .describe(\n                                              'The last 4 digits of the card number.'\n                                            )\n                                            .max(4)\n                                            .optional()\n                                            .nullable(),\n                                          brand: z\n                                            .string()\n                                            .describe(\"Card issuer's brand.\")\n                                            .max(100)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Credit card details.'),\n                                    }),\n                                  ])\n                                )\n                                .describe('Regular payment.'),\n                            }),\n                          ])\n                        )\n                        .describe('Details of a pending payment.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      paymentCanceled: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe(\n                                'Payment ID of payment associated with this activity.'\n                              )\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({ regular: z.never().optional() }),\n                            z.object({\n                              regular: z\n                                .intersection(\n                                  z.object({\n                                    amount: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Payment amount.')\n                                      .optional(),\n                                  }),\n                                  z.xor([\n                                    z.object({\n                                      creditCardDetails: z.never().optional(),\n                                    }),\n                                    z.object({\n                                      creditCardDetails: z\n                                        .object({\n                                          lastFourDigits: z\n                                            .string()\n                                            .describe(\n                                              'The last 4 digits of the card number.'\n                                            )\n                                            .max(4)\n                                            .optional()\n                                            .nullable(),\n                                          brand: z\n                                            .string()\n                                            .describe(\"Card issuer's brand.\")\n                                            .max(100)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Credit card details.'),\n                                    }),\n                                  ])\n                                )\n                                .describe('Regular payment.'),\n                            }),\n                          ])\n                        )\n                        .describe('Details of a canceled payment.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      paymentDeclined: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe(\n                                'Payment ID of payment associated with this activity.'\n                              )\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({ regular: z.never().optional() }),\n                            z.object({\n                              regular: z\n                                .intersection(\n                                  z.object({\n                                    amount: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Payment amount.')\n                                      .optional(),\n                                  }),\n                                  z.xor([\n                                    z.object({\n                                      creditCardDetails: z.never().optional(),\n                                    }),\n                                    z.object({\n                                      creditCardDetails: z\n                                        .object({\n                                          lastFourDigits: z\n                                            .string()\n                                            .describe(\n                                              'The last 4 digits of the card number.'\n                                            )\n                                            .max(4)\n                                            .optional()\n                                            .nullable(),\n                                          brand: z\n                                            .string()\n                                            .describe(\"Card issuer's brand.\")\n                                            .max(100)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Credit card details.'),\n                                    }),\n                                  ])\n                                )\n                                .describe('Regular payment.'),\n                            }),\n                          ])\n                        )\n                        .describe('Details of a declined payment.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      receiptCreated: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe(\n                                'Payment ID of payment associated with this activity.'\n                              )\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              wixReceipt: z.never().optional(),\n                              externalReceipt: z.never().optional(),\n                            }),\n                            z.object({\n                              externalReceipt: z.never().optional(),\n                              wixReceipt: z\n                                .object({\n                                  receiptId: z\n                                    .string()\n                                    .describe('Receipt ID.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  displayNumber: z\n                                    .string()\n                                    .describe('Display number of receipt.')\n                                    .min(1)\n                                    .max(40)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Receipt created by Wix.'),\n                            }),\n                            z.object({\n                              wixReceipt: z.never().optional(),\n                              externalReceipt: z\n                                .object({\n                                  receiptId: z\n                                    .string()\n                                    .describe('Receipt ID.')\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  displayNumber: z\n                                    .string()\n                                    .describe('Display number of receipt.')\n                                    .min(1)\n                                    .max(40)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe(\n                                  'Receipt created by an external system.'\n                                ),\n                            }),\n                          ])\n                        )\n                        .describe('Receipt was added for associated payment.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      receiptSent: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe(\n                                'Payment ID of payment associated with this activity.'\n                              )\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              wixReceipt: z.never().optional(),\n                              externalReceipt: z.never().optional(),\n                            }),\n                            z.object({\n                              externalReceipt: z.never().optional(),\n                              wixReceipt: z\n                                .object({\n                                  receiptId: z\n                                    .string()\n                                    .describe('Receipt ID.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  displayNumber: z\n                                    .string()\n                                    .describe('Display number of receipt.')\n                                    .min(1)\n                                    .max(40)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Receipt created by Wix.'),\n                            }),\n                            z.object({\n                              wixReceipt: z.never().optional(),\n                              externalReceipt: z\n                                .object({\n                                  receiptId: z\n                                    .string()\n                                    .describe('Receipt ID.')\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  displayNumber: z\n                                    .string()\n                                    .describe('Display number of receipt.')\n                                    .min(1)\n                                    .max(40)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe(\n                                  'Receipt created by an external system.'\n                                ),\n                            }),\n                          ])\n                        )\n                        .describe('Receipt sent to customer.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      chargebackCreated: z\n                        .object({\n                          paymentId: z\n                            .string()\n                            .describe(\n                              'ID of the payment that received a chargeback.'\n                            )\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          chargebackId: z\n                            .string()\n                            .describe('Chargeback ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Chargeback amount.')\n                            .optional(),\n                          paymentDetails: z\n                            .intersection(\n                              z.object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Payment amount.')\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  creditCardDetails: z.never().optional(),\n                                }),\n                                z.object({\n                                  creditCardDetails: z\n                                    .object({\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Credit card details.'),\n                                }),\n                              ])\n                            )\n                            .describe('Payment details.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Order received a chargeback for one of its payments.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z\n                        .object({\n                          paymentId: z\n                            .string()\n                            .describe(\n                              'ID of the payment involved with the chargeback.'\n                            )\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          chargebackId: z\n                            .string()\n                            .describe('Chargeback ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Chargeback amount.')\n                            .optional(),\n                          reversalAmount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Chargeback reversal amount.')\n                            .optional(),\n                          paymentDetails: z\n                            .intersection(\n                              z.object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Payment amount.')\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  creditCardDetails: z.never().optional(),\n                                }),\n                                z.object({\n                                  creditCardDetails: z\n                                    .object({\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Credit card details.'),\n                                }),\n                              ])\n                            )\n                            .describe('Payment details.')\n                            .optional(),\n                        })\n                        .describe(\n                          \"Chargeback reversed for one of the order's payments.\"\n                        ),\n                    }),\n                  ])\n                )\n              )\n              .max(1000)\n              .optional(),\n            attributionSource: z\n              .enum(['UNSPECIFIED', 'FACEBOOK_ADS'])\n              .optional(),\n            createdBy: z\n              .intersection(\n                z.object({}),\n                z.xor([\n                  z.object({\n                    userId: z.never().optional(),\n                    memberId: z.never().optional(),\n                    visitorId: z.never().optional(),\n                    appId: z.never().optional(),\n                  }),\n                  z.object({\n                    memberId: z.never().optional(),\n                    visitorId: z.never().optional(),\n                    appId: z.never().optional(),\n                    userId: z\n                      .string()\n                      .describe(\n                        'User ID - when the order was created by a Wix user on behalf of a buyer.\\nFor example, via POS (point of service).'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                  z.object({\n                    userId: z.never().optional(),\n                    visitorId: z.never().optional(),\n                    appId: z.never().optional(),\n                    memberId: z\n                      .string()\n                      .describe(\n                        'Member ID - when the order was created by a **logged in** site visitor.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                  z.object({\n                    userId: z.never().optional(),\n                    memberId: z.never().optional(),\n                    appId: z.never().optional(),\n                    visitorId: z\n                      .string()\n                      .describe(\n                        'Visitor ID - when the order was created by a site visitor that was **not** logged in.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                  z.object({\n                    userId: z.never().optional(),\n                    memberId: z.never().optional(),\n                    visitorId: z.never().optional(),\n                    appId: z\n                      .string()\n                      .describe(\n                        'App ID - when the order was created by an external application.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                ])\n              )\n              .describe(\"ID of the order's initiator.\")\n              .optional(),\n            channelInfo: z\n              .object({\n                type: z\n                  .enum([\n                    'UNSPECIFIED',\n                    'WEB',\n                    'POS',\n                    'EBAY',\n                    'AMAZON',\n                    'OTHER_PLATFORM',\n                    'WIX_APP_STORE',\n                    'WIX_INVOICES',\n                    'BACKOFFICE_MERCHANT',\n                    'WISH',\n                    'CLASS_PASS',\n                    'GLOBAL_E',\n                    'FACEBOOK',\n                    'ETSY',\n                    'TIKTOK',\n                    'FAIRE_COM',\n                    'PAYPAL_AGENTIC_CHECKOUT',\n                    'STRIPE_AGENTIC_CHECKOUT',\n                  ])\n                  .optional(),\n                externalOrderId: z\n                  .string()\n                  .describe(\n                    'Reference to an order ID from an external system. Relevant when recording orders from external platforms.'\n                  )\n                  .max(100)\n                  .optional()\n                  .nullable(),\n                externalOrderUrl: z\n                  .string()\n                  .describe(\n                    'URL to the order in the external system. Relevant when recording orders from external platforms.'\n                  )\n                  .max(300)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Information about the sales channel that submitted this order.'\n              )\n              .optional(),\n            seenByAHuman: z\n              .boolean()\n              .describe(\n                'Whether a human has seen the order. Set when an order is clicked on in the dashboard.'\n              )\n              .optional()\n              .nullable(),\n            checkoutId: z\n              .string()\n              .describe('Checkout ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            customFields: z\n              .array(\n                z.object({\n                  value: z\n                    .any()\n                    .describe('Custom field value.')\n                    .optional()\n                    .nullable(),\n                  title: z\n                    .string()\n                    .describe('Custom field title.')\n                    .min(1)\n                    .max(500)\n                    .optional(),\n                  translatedTitle: z\n                    .string()\n                    .describe('Translated custom field title.')\n                    .min(1)\n                    .max(500)\n                    .optional()\n                    .nullable(),\n                })\n              )\n              .optional(),\n            balanceSummary: z\n              .object({\n                balance: z\n                  .object({\n                    amount: z\n                      .string()\n                      .describe(\n                        'Balance amount.\\n\\nA negative `amount` represents the amount to be refunded. This can happen due to overcharging or the order being modified after a payment has been made.'\n                      )\n                      .optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Current amount left to pay.')\n                  .optional(),\n                paid: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Sum of all approved and successful payments.\\n\\nThe value includes payments that have subsequently been fully or partially refunded.'\n                  )\n                  .optional(),\n                refunded: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all successfully refunded payments.')\n                  .optional(),\n                authorized: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all authorized payments.')\n                  .optional(),\n                pendingRefund: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all pending refund transactions.')\n                  .optional(),\n                pending: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all pending transactions.')\n                  .optional(),\n                chargeback: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all transaction chargebacks.')\n                  .optional(),\n                chargebackReversal: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all chargeback reversals.')\n                  .optional(),\n                platformFees: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total platform fees actually charged across all payments.\\nThis reflects amounts collected, which may differ from the expected fees in `order.platformFeeSummary`.'\n                  )\n                  .optional(),\n                totalMinusPlatformFees: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Order total after deducting platform fees. Represents the net amount payable to the merchant.'\n                  )\n                  .optional(),\n              })\n              .describe('Balance summary.')\n              .optional(),\n            additionalFees: z\n              .array(\n                z.object({\n                  code: z\n                    .string()\n                    .describe(\n                      \"Additional fee's unique code for future processing.\"\n                    )\n                    .min(1)\n                    .max(100)\n                    .optional()\n                    .nullable(),\n                  name: z\n                    .string()\n                    .describe('Name of additional fee.')\n                    .min(1)\n                    .max(50)\n                    .optional(),\n                  price: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\"Additional fee's price.\")\n                    .optional(),\n                  taxDetails: z\n                    .object({\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of this line item.')\n                        .optional(),\n                      taxRate: z\n                        .string()\n                        .describe(\n                          'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                        )\n                        .optional(),\n                      totalTax: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                        )\n                        .optional(),\n                    })\n                    .describe('Tax details.')\n                    .optional(),\n                  taxInfo: z\n                    .object({\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                        )\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Amount for which tax is calculated.')\n                        .optional(),\n                      taxRate: z\n                        .string()\n                        .describe('Tax rate %, as a decimal point.')\n                        .optional()\n                        .nullable(),\n                      taxGroupId: z\n                        .string()\n                        .describe('Tax group ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxIncludedInPrice: z\n                        .boolean()\n                        .describe(\n                          'Indicates whether the price already includes tax.'\n                        )\n                        .optional(),\n                      taxBreakdown: z\n                        .array(\n                          z.object({\n                            jurisdiction: z\n                              .string()\n                              .describe(\n                                'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            rate: z\n                              .string()\n                              .describe(\n                                'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                              )\n                              .optional()\n                              .nullable(),\n                            taxAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Amount of tax calculated for this line item.'\n                              )\n                              .optional(),\n                            taxType: z\n                              .string()\n                              .describe(\n                                'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            taxName: z\n                              .string()\n                              .describe(\n                                'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            jurisdictionType: z\n                              .enum([\n                                'UNDEFINED',\n                                'COUNTRY',\n                                'STATE',\n                                'COUNTY',\n                                'CITY',\n                                'SPECIAL',\n                              ])\n                              .optional(),\n                            nonTaxableAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Non-taxable amount of the line item price.'\n                              )\n                              .optional(),\n                            taxableAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Taxable amount of the line item price.'\n                              )\n                              .optional(),\n                          })\n                        )\n                        .max(7)\n                        .optional(),\n                    })\n                    .describe(\n                      'Represents all the relevant tax details for additional fee.'\n                    )\n                    .optional(),\n                  providerAppId: z\n                    .string()\n                    .describe(\"SPI implementer's `appId`.\")\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  priceBeforeTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\"Additional fee's price before tax.\")\n                    .optional(),\n                  priceAfterTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\"Additional fee's price after tax.\")\n                    .optional(),\n                  _id: z\n                    .string()\n                    .describe(\"Additional fee's id.\")\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                  lineItemIds: z.array(z.string()).optional(),\n                  source: z\n                    .enum([\n                      'SERVICE_PLUGIN',\n                      'ITEM',\n                      'MANUAL',\n                      'SHIPPING',\n                      'PLATFORM',\n                    ])\n                    .optional(),\n                })\n              )\n              .max(100)\n              .optional(),\n            extendedFields: z\n              .object({\n                namespaces: z\n                  .record(z.string(), z.record(z.string(), z.any()))\n                  .describe(\n                    'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Custom field data for the order object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n              )\n              .optional(),\n            purchaseFlowId: z\n              .string()\n              .describe(\n                'Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.'\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            recipientInfo: z\n              .object({\n                address: z\n                  .object({\n                    streetAddress: z\n                      .object({\n                        name: z.string().optional(),\n                        number: z.string().optional(),\n                      })\n                      .optional(),\n                    city: z.string().optional().nullable(),\n                    subdivision: z.string().optional().nullable(),\n                    country: z.string().optional().nullable(),\n                    postalCode: z.string().optional().nullable(),\n                    addressLine2: z.string().optional().nullable(),\n                  })\n                  .describe('Address.')\n                  .optional(),\n                contactDetails: z\n                  .object({\n                    firstName: z\n                      .string()\n                      .describe('First name.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                    lastName: z\n                      .string()\n                      .describe('Last name.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                    phone: z\n                      .string()\n                      .describe('Phone number.')\n                      .optional()\n                      .nullable(),\n                    company: z\n                      .string()\n                      .describe('Company name.')\n                      .max(1000)\n                      .optional()\n                      .nullable(),\n                    vatId: z\n                      .object({\n                        _id: z\n                          .string()\n                          .describe(\"Customer's tax ID.\")\n                          .optional(),\n                        type: z.enum(['UNSPECIFIED', 'CPF', 'CNPJ']).optional(),\n                      })\n                      .describe(\n                        'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                      )\n                      .optional(),\n                  })\n                  .describe('Contact details.')\n                  .optional(),\n              })\n              .describe(\n                \"Final recipient's address and contact details.\\n\\nThis field represents who will ultimately receive the order. It may differ from `shippingInfo.logistics.shippingDestination` when:\\n+ The chosen shipping option is a pickup point or store pickup, where `shippingDestination` contains the pickup location.\\n+ No shipping option is selected.\"\n              )\n              .optional(),\n            tags: z\n              .object({\n                privateTags: z\n                  .object({ tagIds: z.array(z.string()).max(100).optional() })\n                  .describe(\n                    'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n                  )\n                  .optional(),\n                tags: z\n                  .object({ tagIds: z.array(z.string()).max(100).optional() })\n                  .describe(\n                    'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Order tags.\\n\\n[Tags](https://dev.wix.com/docs/rest/business-management/tags/introduction) are labels attached to entities, allowing for flexible categorization and data management.'\n              )\n              .optional(),\n            purchasedDate: z\n              .date()\n              .describe(\n                'Date and time the order was originally purchased in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.\\nUsed for migration from external systems.'\n              )\n              .optional()\n              .nullable(),\n            businessLocation: z\n              .object({\n                _id: z\n                  .string()\n                  .describe(\n                    'Location ID.\\nLearn more about the [Wix Locations API](https://dev.wix.com/docs/rest/business-management/locations/introduction).'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                name: z\n                  .string()\n                  .describe('Location name.')\n                  .min(1)\n                  .max(500)\n                  .optional(),\n              })\n              .describe('Order location.')\n              .optional(),\n            payAfterFreeTrial: z\n              .object({\n                subtotal: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Subtotal of all line items, before discounts and before tax.'\n                  )\n                  .optional(),\n                shipping: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total shipping price, before discounts and before tax.'\n                  )\n                  .optional(),\n                tax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total tax applied to the order.')\n                  .optional(),\n                discount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total discount amount applied to the order.')\n                  .optional(),\n                total: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\"Order's total price after discounts and tax.\")\n                  .optional(),\n                totalAdditionalFees: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total additional fees before tax.')\n                  .optional(),\n              })\n              .describe(\n                'Pay after free trial price summary. Price summary that should be paid for subscriptions after free trial period.'\n              )\n              .optional(),\n            platformFeeSummary: z\n              .object({\n                total: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total sum of all platform fees.')\n                  .optional(),\n                totalPassOn: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total amount of platform fees with `PASS_ON` charge type.'\n                  )\n                  .optional(),\n                totalAbsorbed: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total amount of platform fees with `ABSORBED` charge type.'\n                  )\n                  .optional(),\n                fees: z\n                  .array(\n                    z.object({\n                      name: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                            )\n                            .min(1)\n                            .max(200)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                            )\n                            .min(1)\n                            .max(400)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Platform fee name.')\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Platform fee amount.')\n                        .optional(),\n                      lineItemId: z\n                        .string()\n                        .describe(\n                          'ID of the line item the platform fee applies to.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      chargeType: z.enum(['PASS_ON', 'ABSORBED']).optional(),\n                      percentageRate: z\n                        .string()\n                        .describe(\n                          'Percentage rate charged as platform fee.\\nThe fee rate percentage expressed as a decimal fraction between 0 and 1. For example, `0.05` for 5%.'\n                        )\n                        .optional(),\n                    })\n                  )\n                  .max(300)\n                  .optional(),\n              })\n              .describe(\n                'Summary of platform fees for this order, including totals by charge type and a breakdown of individual fees.'\n              )\n              .optional(),\n          })\n          .describe('Order to be updated.'),\n      })\n    )\n    .min(1)\n    .max(100),\n  options: z\n    .object({\n      returnEntity: z\n        .boolean()\n        .describe(\n          'Whether to return the full order entities.\\n\\nDefault: `false`'\n        )\n        .optional(),\n    })\n    .optional(),\n});\nexport const BulkUpdateOrdersResponse = z.object({\n  results: z\n    .array(\n      z.object({\n        itemMetadata: z\n          .object({\n            _id: z\n              .string()\n              .describe(\n                \"Item ID. Should always be available, unless it's impossible (for example, when failing to create an item).\"\n              )\n              .optional()\n              .nullable(),\n            originalIndex: z\n              .number()\n              .int()\n              .describe(\n                'Index of the item within the request array. Allows for correlation between request and response items.'\n              )\n              .optional(),\n            success: z\n              .boolean()\n              .describe(\n                'Whether the requested action was successful for this item. When `false`, the `error` field is populated.'\n              )\n              .optional(),\n            error: z\n              .object({\n                code: z.string().describe('Error code.').optional(),\n                description: z\n                  .string()\n                  .describe('Description of the error.')\n                  .optional(),\n                data: z\n                  .record(z.string(), z.any())\n                  .describe('Data related to the error.')\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details about the error in case of failure.')\n              .optional(),\n          })\n          .describe('Item metadata.')\n          .optional(),\n        item: z\n          .object({\n            _id: z\n              .string()\n              .describe('Order ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            number: z\n              .string()\n              .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n              .describe(\n                \"Order number displayed in the site owner's dashboard (auto-generated).\"\n              )\n              .optional(),\n            _createdDate: z\n              .date()\n              .describe(\n                'Date and time the order was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n              )\n              .optional()\n              .nullable(),\n            _updatedDate: z\n              .date()\n              .describe(\n                'Date and time the order was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n              )\n              .optional()\n              .nullable(),\n            lineItems: z\n              .array(\n                z.object({\n                  _id: z.string().describe('Line item ID.').optional(),\n                  productName: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                        )\n                        .min(1)\n                        .max(200)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                        )\n                        .min(1)\n                        .max(400)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      'Item name.\\n\\n+ Stores - `product.name`\\n+ Bookings - `service.info.name`\\n+ Events - `ticket.name`'\n                    )\n                    .optional(),\n                  catalogReference: z\n                    .object({\n                      catalogItemId: z\n                        .string()\n                        .describe(\n                          'ID of the item within the catalog it belongs to.'\n                        )\n                        .min(1)\n                        .max(36)\n                        .optional(),\n                      appId: z\n                        .string()\n                        .describe(\n                          'ID of the app providing the catalog.\\n\\nYou can get your app\\'s ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\\n\\nFor items from Wix catalogs, the following values always apply:\\n+ Wix Stores: `\"215238eb-22a5-4c36-9e7b-e7c08025e04e\"`\\n+ Wix Bookings: `\"13d21c63-b5ec-5912-8397-c3a5ddb27a97\"`\\n+ Wix Restaurants: `\"9a5d83fd-8570-482e-81ab-cfa88942ee60\"`'\n                        )\n                        .min(1)\n                        .optional(),\n                      options: z\n                        .record(z.string(), z.any())\n                        .describe(\n                          'Additional item details in `key:value` pairs.\\n\\nUse this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items.\\n\\nFor Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration)\\nor [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction).'\n                        )\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      \"References to the line item's origin catalog. Empty for custom line items.\"\n                    )\n                    .optional(),\n                  quantity: z\n                    .number()\n                    .int()\n                    .describe('Line item quantity.')\n                    .min(1)\n                    .max(100000)\n                    .optional(),\n                  totalDiscount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      \"Total discount for this line item's entire quantity.\"\n                    )\n                    .optional(),\n                  descriptionLines: z\n                    .array(\n                      z.intersection(\n                        z.object({\n                          name: z\n                            .object({\n                              original: z\n                                .string()\n                                .describe(\n                                  \"Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                                )\n                                .max(100)\n                                .optional(),\n                              translated: z\n                                .string()\n                                .describe(\n                                  \"Description line name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                                )\n                                .max(200)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Description line name.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            plainText: z.never().optional(),\n                            colorInfo: z.never().optional(),\n                          }),\n                          z.object({\n                            colorInfo: z.never().optional(),\n                            plainText: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                                  )\n                                  .max(600)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Description line plain text value translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                                  )\n                                  .max(600)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Description line plain text value.'),\n                          }),\n                          z.object({\n                            plainText: z.never().optional(),\n                            colorInfo: z\n                              .object({\n                                original: z\n                                  .string()\n                                  .describe(\n                                    \"Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                                  )\n                                  .max(500)\n                                  .optional(),\n                                translated: z\n                                  .string()\n                                  .describe(\n                                    \"Description line color name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                                  )\n                                  .max(500)\n                                  .optional()\n                                  .nullable(),\n                                code: z\n                                  .string()\n                                  .describe(\n                                    'HEX or RGB color code for display.'\n                                  )\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Description line color value.'),\n                          }),\n                        ])\n                      )\n                    )\n                    .min(0)\n                    .max(20)\n                    .optional(),\n                  image: z.string().describe('Line item image.').optional(),\n                  physicalProperties: z\n                    .object({\n                      weight: z\n                        .number()\n                        .describe(\n                          'Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request.'\n                        )\n                        .optional()\n                        .nullable(),\n                      sku: z\n                        .string()\n                        .describe(\n                          'Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).'\n                        )\n                        .max(40)\n                        .optional()\n                        .nullable(),\n                      shippable: z\n                        .boolean()\n                        .describe('Whether this line item is shippable.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Physical properties of the item. When relevant, contains information such as SKU and item weight.'\n                    )\n                    .optional(),\n                  itemType: z\n                    .intersection(\n                      z.object({}),\n                      z.xor([\n                        z.object({\n                          preset: z.never().optional(),\n                          custom: z.never().optional(),\n                        }),\n                        z.object({\n                          custom: z.never().optional(),\n                          preset: z\n                            .enum([\n                              'UNRECOGNISED',\n                              'PHYSICAL',\n                              'DIGITAL',\n                              'GIFT_CARD',\n                              'SERVICE',\n                            ])\n                            .describe('Preset item type.'),\n                        }),\n                        z.object({\n                          preset: z.never().optional(),\n                          custom: z\n                            .string()\n                            .describe(\n                              'Custom item type. When none of the preset types are suitable, specifies the custom type.'\n                            ),\n                        }),\n                      ])\n                    )\n                    .describe('Item type. Either a preset type or custom.')\n                    .optional(),\n                  fulfillerId: z\n                    .string()\n                    .describe(\n                      'Fulfiller ID. Field is empty when the line item is self-fulfilled.\\nTo get fulfillment information, pass the order ID to [List Fulfillments For Single Order](https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/order-fulfillments/list-fulfillments-for-single-order).'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  refundQuantity: z\n                    .number()\n                    .int()\n                    .describe('Number of items that were refunded.')\n                    .min(0)\n                    .max(100000)\n                    .optional()\n                    .nullable(),\n                  restockQuantity: z\n                    .number()\n                    .int()\n                    .describe(\n                      'Number of items restocked.\\n\\nFor a per-location breakdown, see `restockLocations`.'\n                    )\n                    .min(0)\n                    .max(100000)\n                    .optional()\n                    .nullable(),\n                  price: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Line item price after line item discounts for display purposes.'\n                    )\n                    .optional(),\n                  priceBeforeDiscounts: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Line item price before line item discounts for display purposes. Defaults to `price` when not provided.'\n                    )\n                    .optional(),\n                  totalPriceBeforeTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Total price after discounts, and before tax.')\n                    .optional(),\n                  totalPriceAfterTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Total price after all discounts and tax.')\n                    .optional(),\n                  paymentOption: z\n                    .enum([\n                      'FULL_PAYMENT_ONLINE',\n                      'FULL_PAYMENT_OFFLINE',\n                      'MEMBERSHIP',\n                      'DEPOSIT_ONLINE',\n                      'MEMBERSHIP_OFFLINE',\n                      'MEMBERSHIP_ONLINE_WITH_OFFLINE_REMAINDER',\n                    ])\n                    .describe(\n                      'Type of selected payment option for current item.\\n\\nDefault: `FULL_PAYMENT_ONLINE`'\n                    )\n                    .optional(),\n                  taxDetails: z\n                    .object({\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of this line item.')\n                        .optional(),\n                      taxRate: z\n                        .string()\n                        .describe(\n                          'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                        )\n                        .optional(),\n                      totalTax: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                        )\n                        .optional(),\n                    })\n                    .describe(\n                      'Deprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.\\nTax details for this line item.'\n                    )\n                    .optional(),\n                  taxInfo: z\n                    .object({\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                        )\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Amount for which tax is calculated.')\n                        .optional(),\n                      taxRate: z\n                        .string()\n                        .describe('Tax rate %, as a decimal point.')\n                        .optional()\n                        .nullable(),\n                      taxGroupId: z\n                        .string()\n                        .describe('Tax group ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxIncludedInPrice: z\n                        .boolean()\n                        .describe(\n                          'Indicates whether the price already includes tax.'\n                        )\n                        .optional(),\n                      taxBreakdown: z\n                        .array(\n                          z.object({\n                            jurisdiction: z\n                              .string()\n                              .describe(\n                                'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            rate: z\n                              .string()\n                              .describe(\n                                'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                              )\n                              .optional()\n                              .nullable(),\n                            taxAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Amount of tax calculated for this line item.'\n                              )\n                              .optional(),\n                            taxType: z\n                              .string()\n                              .describe(\n                                'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            taxName: z\n                              .string()\n                              .describe(\n                                'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            jurisdictionType: z\n                              .enum([\n                                'UNDEFINED',\n                                'COUNTRY',\n                                'STATE',\n                                'COUNTY',\n                                'CITY',\n                                'SPECIAL',\n                              ])\n                              .describe(\n                                'Type of jurisdiction that taxes were calculated for.'\n                              )\n                              .optional(),\n                            nonTaxableAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Non-taxable amount of the line item price.'\n                              )\n                              .optional(),\n                            taxableAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Taxable amount of the line item price.'\n                              )\n                              .optional(),\n                          })\n                        )\n                        .max(7)\n                        .optional(),\n                    })\n                    .describe(\n                      'Represents all the relevant tax details for a specific line item.'\n                    )\n                    .optional(),\n                  digitalFile: z\n                    .object({\n                      fileId: z\n                        .string()\n                        .describe('ID of the secure file in media.')\n                        .min(1)\n                        .max(100)\n                        .optional(),\n                      link: z\n                        .string()\n                        .describe(\n                          'Link will exist after the digital links have been generated on the order.'\n                        )\n                        .url()\n                        .min(1)\n                        .max(2000)\n                        .optional()\n                        .nullable(),\n                      expirationDate: z\n                        .date()\n                        .describe('Link expiration time and date.')\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      'Digital file identifier, relevant only for items with type DIGITAL.'\n                    )\n                    .optional(),\n                  subscriptionInfo: z\n                    .object({\n                      _id: z\n                        .string()\n                        .describe('Subscription ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional()\n                        .nullable(),\n                      cycleNumber: z\n                        .number()\n                        .int()\n                        .describe(\n                          'Subscription cycle. For example, if this order is for the 3rd cycle of a subscription, value will be `3`.'\n                        )\n                        .min(0)\n                        .optional(),\n                      subscriptionOptionTitle: z\n                        .string()\n                        .describe(\n                          'Subscription option title. For example, `\"Monthly coffee Subscription\"`.'\n                        )\n                        .min(0)\n                        .max(150)\n                        .optional(),\n                      subscriptionOptionDescription: z\n                        .string()\n                        .describe(\n                          'Subscription option description. For example, `\"1kg of selected coffee, once a month\"`.'\n                        )\n                        .max(500)\n                        .optional()\n                        .nullable(),\n                      subscriptionSettings: z\n                        .object({\n                          frequency: z\n                            .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                            .describe('Frequency of recurring payment.')\n                            .optional(),\n                          interval: z\n                            .number()\n                            .int()\n                            .describe(\n                              'Number of frequency units in a billing cycle. For example, frequency `MONTH` with interval `3` means billing every 3 months.'\n                            )\n                            .min(1)\n                            .max(3650)\n                            .optional()\n                            .nullable(),\n                          autoRenewal: z\n                            .boolean()\n                            .describe(\n                              'Whether subscription is renewed automatically at the end of each period.'\n                            )\n                            .optional(),\n                          billingCycles: z\n                            .number()\n                            .int()\n                            .describe(\n                              'Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.'\n                            )\n                            .min(1)\n                            .optional()\n                            .nullable(),\n                          enableCustomerCancellation: z\n                            .boolean()\n                            .describe(\n                              'Whether to allow the customer to cancel the subscription.'\n                            )\n                            .optional(),\n                          freeTrialPeriod: z\n                            .object({\n                              frequency: z\n                                .enum([\n                                  'UNDEFINED',\n                                  'DAY',\n                                  'WEEK',\n                                  'MONTH',\n                                  'YEAR',\n                                ])\n                                .describe(\n                                  'Frequency of period. Values: DAY, WEEK, MONTH, YEAR'\n                                )\n                                .optional(),\n                              interval: z\n                                .number()\n                                .int()\n                                .describe(\n                                  'Number of frequency units in the free trial period. For example, frequency `MONTH` with interval `3` means a 3-month free trial.'\n                                )\n                                .min(1)\n                                .max(3650)\n                                .optional(),\n                            })\n                            .describe(\n                              'Period until first cycle starts. If None => no free trial'\n                            )\n                            .optional(),\n                        })\n                        .describe('Subscription detailed information.')\n                        .optional(),\n                      chargesDescription: z\n                        .string()\n                        .describe(\n                          'Description of the charges that will be applied for subscription.'\n                        )\n                        .max(1000)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Subscription info.')\n                    .optional(),\n                  priceDescription: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"__Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                        )\n                        .min(1)\n                        .max(100)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"Price description translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                        )\n                        .min(1)\n                        .max(100)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe(\n                      'Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - \"Starts at $67\".'\n                    )\n                    .optional(),\n                  depositAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Item\\'s price amount to be charged during checkout. Relevant for items with a `paymentOption` value of `\"DEPOSIT_ONLINE\"`.'\n                    )\n                    .optional(),\n                  locations: z\n                    .array(\n                      z.object({\n                        _id: z\n                          .string()\n                          .describe('Location id in the associated owner app.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional(),\n                        appId: z\n                          .string()\n                          .describe(\n                            'Location owner app, if not provided then the site business info locations will be used.'\n                          )\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional()\n                          .nullable(),\n                        quantity: z\n                          .number()\n                          .int()\n                          .describe('Quantity for specific location.')\n                          .min(1)\n                          .max(100000)\n                          .optional(),\n                        name: z\n                          .string()\n                          .describe('Location name.')\n                          .max(500)\n                          .optional()\n                          .nullable(),\n                      })\n                    )\n                    .min(0)\n                    .max(5)\n                    .optional(),\n                  lineItemPrice: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Total price **after** catalog discounts and line item discounts.'\n                    )\n                    .optional(),\n                  taxableAddress: z\n                    .intersection(\n                      z.object({}),\n                      z.xor([\n                        z.object({ addressType: z.never().optional() }),\n                        z.object({\n                          addressType: z\n                            .enum(['BUSINESS', 'BILLING', 'SHIPPING'])\n                            .describe(\n                              'taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly.'\n                            ),\n                        }),\n                      ])\n                    )\n                    .describe('Address used for tax calculation.')\n                    .optional(),\n                  priceUndetermined: z\n                    .boolean()\n                    .describe(\n                      'Whether the price is not yet defined, and will be updated after the order is created.\\n\\nDefault: `false`'\n                    )\n                    .optional(),\n                  extendedFields: z\n                    .object({\n                      namespaces: z\n                        .record(z.string(), z.record(z.string(), z.any()))\n                        .describe(\n                          'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n                        )\n                        .optional(),\n                    })\n                    .describe(\n                      'Custom extended fields for the line item object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n                    )\n                    .optional(),\n                  modifierGroups: z\n                    .array(\n                      z.object({\n                        _id: z\n                          .string()\n                          .describe('Modifier group ID.')\n                          .min(1)\n                          .max(36)\n                          .optional(),\n                        name: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                              )\n                              .min(1)\n                              .max(200)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                              )\n                              .min(1)\n                              .max(400)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Modifier group name.')\n                          .optional(),\n                        modifiers: z\n                          .array(\n                            z.object({\n                              _id: z\n                                .string()\n                                .describe('Modifier ID.')\n                                .min(1)\n                                .max(36)\n                                .optional(),\n                              quantity: z\n                                .number()\n                                .int()\n                                .describe('The quantity of this modifier.')\n                                .min(1)\n                                .max(100000)\n                                .optional()\n                                .nullable(),\n                              label: z\n                                .object({\n                                  original: z\n                                    .string()\n                                    .describe(\n                                      \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                    )\n                                    .min(1)\n                                    .max(200)\n                                    .optional(),\n                                  translated: z\n                                    .string()\n                                    .describe(\n                                      \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                    )\n                                    .min(1)\n                                    .max(400)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe(\n                                  'Primary display label for the modifier.'\n                                )\n                                .optional(),\n                              details: z\n                                .object({\n                                  original: z\n                                    .string()\n                                    .describe(\n                                      \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                    )\n                                    .min(1)\n                                    .max(200)\n                                    .optional(),\n                                  translated: z\n                                    .string()\n                                    .describe(\n                                      \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                    )\n                                    .min(1)\n                                    .max(400)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Additional details.')\n                                .optional(),\n                              price: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('The price of the modifier.')\n                                .optional(),\n                            })\n                          )\n                          .min(1)\n                          .max(10)\n                          .optional(),\n                      })\n                    )\n                    .max(10)\n                    .optional(),\n                })\n              )\n              .min(1)\n              .max(300)\n              .optional(),\n            buyerInfo: z\n              .intersection(\n                z.object({\n                  contactId: z\n                    .string()\n                    .describe(\n                      \"Contact ID. Automatically created if one doesn't exist. For more information, see [Contacts API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts/contact-v4/introduction).\"\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  email: z\n                    .string()\n                    .describe(\"Buyer's email address.\")\n                    .email()\n                    .optional()\n                    .nullable(),\n                }),\n                z.xor([\n                  z.object({\n                    visitorId: z.never().optional(),\n                    memberId: z.never().optional(),\n                  }),\n                  z.object({\n                    memberId: z.never().optional(),\n                    visitorId: z\n                      .string()\n                      .describe(\n                        \"Visitor ID. Returned when the buyer isn't a logged-in site member.\"\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                  z.object({\n                    visitorId: z.never().optional(),\n                    memberId: z\n                      .string()\n                      .describe(\n                        'Member ID. Returned when the buyer is a logged-in site member.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Buyer information.')\n              .optional(),\n            paymentStatus: z\n              .enum([\n                'UNSPECIFIED',\n                'NOT_PAID',\n                'PAID',\n                'PARTIALLY_REFUNDED',\n                'FULLY_REFUNDED',\n                'PENDING',\n                'PARTIALLY_PAID',\n                'PENDING_MERCHANT',\n                'CANCELED',\n                'DECLINED',\n              ])\n              .describe('Order payment status.')\n              .optional(),\n            fulfillmentStatus: z\n              .enum(['NOT_FULFILLED', 'FULFILLED', 'PARTIALLY_FULFILLED'])\n              .describe('Order fulfillment status.')\n              .optional(),\n            buyerLanguage: z\n              .string()\n              .describe(\n                'Language for communication with the buyer. Defaults to the site language.\\nFor a site that supports multiple languages, this is the language the buyer selected.'\n              )\n              .optional()\n              .nullable(),\n            weightUnit: z\n              .enum(['UNSPECIFIED_WEIGHT_UNIT', 'KG', 'LB'])\n              .describe(\n                \"Weight measurement unit - defaults to site's weight unit.\"\n              )\n              .optional(),\n            currency: z\n              .string()\n              .describe(\n                'Currency used for the pricing of this order in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.'\n              )\n              .optional()\n              .nullable(),\n            currencyConversionDetails: z\n              .object({\n                originalCurrency: z\n                  .string()\n                  .describe(\n                    \"Currency used for the pricing of this order, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.\\n\\nThis currency is used to calculate the pricing before conversion to the buyer's payment currency.\"\n                  )\n                  .optional()\n                  .nullable(),\n                conversionRate: z\n                  .string()\n                  .describe(\n                    'The rate used for converting the original currency to the currency used for payment.'\n                  )\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Currency conversion details. For use with multi-currency sites.'\n              )\n              .optional(),\n            taxIncludedInPrices: z\n              .boolean()\n              .describe('Whether tax is included in line item prices.')\n              .optional(),\n            siteLanguage: z\n              .string()\n              .describe('Site language in which original values are shown.')\n              .optional()\n              .nullable(),\n            priceSummary: z\n              .object({\n                subtotal: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Subtotal of all line items, before discounts and before tax.'\n                  )\n                  .optional(),\n                shipping: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total shipping price, before discounts and before tax.'\n                  )\n                  .optional(),\n                tax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total tax applied to the order.')\n                  .optional(),\n                discount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total discount amount applied to the order.')\n                  .optional(),\n                total: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\"Order's total price after discounts and tax.\")\n                  .optional(),\n                totalAdditionalFees: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total additional fees before tax.')\n                  .optional(),\n              })\n              .describe('Order price summary.')\n              .optional(),\n            billingInfo: z\n              .object({\n                address: z\n                  .object({\n                    streetAddress: z\n                      .object({\n                        name: z.string().optional(),\n                        number: z.string().optional(),\n                      })\n                      .optional(),\n                    city: z.string().optional().nullable(),\n                    subdivision: z.string().optional().nullable(),\n                    country: z.string().optional().nullable(),\n                    postalCode: z.string().optional().nullable(),\n                    addressLine2: z.string().optional().nullable(),\n                  })\n                  .describe('Address.')\n                  .optional(),\n                contactDetails: z\n                  .object({\n                    firstName: z\n                      .string()\n                      .describe('First name.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                    lastName: z\n                      .string()\n                      .describe('Last name.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                    phone: z\n                      .string()\n                      .describe('Phone number.')\n                      .optional()\n                      .nullable(),\n                    company: z\n                      .string()\n                      .describe('Company name.')\n                      .max(1000)\n                      .optional()\n                      .nullable(),\n                    vatId: z\n                      .object({\n                        _id: z\n                          .string()\n                          .describe(\"Customer's tax ID.\")\n                          .optional(),\n                        type: z\n                          .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                          .describe(\n                            'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                          )\n                          .optional(),\n                      })\n                      .describe(\n                        'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                      )\n                      .optional(),\n                  })\n                  .describe('Contact details.')\n                  .optional(),\n              })\n              .describe('Billing address and contact details.')\n              .optional(),\n            shippingInfo: z\n              .object({\n                carrierId: z\n                  .string()\n                  .describe(\n                    'App Def Id of external provider which was a source of shipping info'\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n                code: z\n                  .string()\n                  .describe(\n                    'Unique code (or ID) of selected shipping option. For example, `\"usps_std_overnight\"`.'\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n                title: z\n                  .string()\n                  .describe(\n                    'Shipping option title.\\nFor example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.'\n                  )\n                  .max(250)\n                  .optional(),\n                logistics: z\n                  .intersection(\n                    z.object({\n                      deliveryTime: z\n                        .string()\n                        .describe(\n                          'Expected delivery time in free text. For example, `\"3-5 business days\"`.'\n                        )\n                        .max(500)\n                        .optional()\n                        .nullable(),\n                      instructions: z\n                        .string()\n                        .describe(\n                          'Instructions for the carrier. For example, `\"Please knock on the door. If unanswered, please call contact number.\"`.'\n                        )\n                        .max(1000)\n                        .optional()\n                        .nullable(),\n                      deliverByDate: z\n                        .date()\n                        .describe(\n                          'Deprecated - Latest expected delivery date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                        )\n                        .optional()\n                        .nullable(),\n                      deliveryTimeSlot: z\n                        .object({\n                          from: z\n                            .date()\n                            .describe('Delivery slot starting time.')\n                            .optional()\n                            .nullable(),\n                          to: z\n                            .date()\n                            .describe('Delivery slot ending time.')\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe(\n                          'Expected delivery time slot with start and end times.'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        shippingDestination: z.never().optional(),\n                        pickupDetails: z.never().optional(),\n                      }),\n                      z.object({\n                        pickupDetails: z.never().optional(),\n                        shippingDestination: z\n                          .object({\n                            address: z\n                              .object({\n                                streetAddress: z\n                                  .object({\n                                    name: z.string().optional(),\n                                    number: z.string().optional(),\n                                  })\n                                  .optional(),\n                                city: z.string().optional().nullable(),\n                                subdivision: z.string().optional().nullable(),\n                                country: z.string().optional().nullable(),\n                                postalCode: z.string().optional().nullable(),\n                                addressLine2: z.string().optional().nullable(),\n                              })\n                              .describe('Address.')\n                              .optional(),\n                            contactDetails: z\n                              .object({\n                                firstName: z\n                                  .string()\n                                  .describe('First name.')\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                lastName: z\n                                  .string()\n                                  .describe('Last name.')\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                phone: z\n                                  .string()\n                                  .describe('Phone number.')\n                                  .optional()\n                                  .nullable(),\n                                company: z\n                                  .string()\n                                  .describe('Company name.')\n                                  .max(1000)\n                                  .optional()\n                                  .nullable(),\n                                vatId: z\n                                  .object({\n                                    _id: z\n                                      .string()\n                                      .describe(\"Customer's tax ID.\")\n                                      .optional(),\n                                    type: z\n                                      .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                                      .describe(\n                                        'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Contact details.')\n                              .optional(),\n                          })\n                          .describe(\n                            \"Shipping destination address and contact details. For pickup orders, this contains the pickup location address, not the recipient's address.\"\n                          ),\n                      }),\n                      z.object({\n                        shippingDestination: z.never().optional(),\n                        pickupDetails: z\n                          .object({\n                            address: z\n                              .object({\n                                streetAddress: z\n                                  .object({\n                                    name: z.string().optional(),\n                                    number: z.string().optional(),\n                                  })\n                                  .optional(),\n                                city: z.string().optional().nullable(),\n                                subdivision: z.string().optional().nullable(),\n                                country: z.string().optional().nullable(),\n                                postalCode: z.string().optional().nullable(),\n                                addressLine2: z.string().optional().nullable(),\n                              })\n                              .describe('Pickup address.')\n                              .optional(),\n                            pickupMethod: z\n                              .enum(['STORE_PICKUP', 'PICKUP_POINT'])\n                              .describe('Pickup method')\n                              .optional(),\n                          })\n                          .describe(\n                            'Pickup details for store pickup or pickup point orders.'\n                          ),\n                      }),\n                    ])\n                  )\n                  .describe('Shipping logistics.')\n                  .optional(),\n                cost: z\n                  .object({\n                    price: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Shipping price for display purposes.')\n                      .optional(),\n                    totalPriceBeforeTax: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe(\n                        'Total price of shipping after discounts (when relevant), and before tax.'\n                      )\n                      .optional(),\n                    totalPriceAfterTax: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe(\n                        'Shipping price after all discounts (if any exist), and after tax.'\n                      )\n                      .optional(),\n                    taxDetails: z\n                      .object({\n                        taxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Taxable amount of this line item.')\n                          .optional(),\n                        taxRate: z\n                          .string()\n                          .describe(\n                            'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                          )\n                          .optional(),\n                        totalTax: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                          )\n                          .optional(),\n                      })\n                      .describe('Tax details.')\n                      .optional(),\n                    taxInfo: z\n                      .object({\n                        taxAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                          )\n                          .optional(),\n                        taxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Amount for which tax is calculated.')\n                          .optional(),\n                        taxRate: z\n                          .string()\n                          .describe('Tax rate %, as a decimal point.')\n                          .optional()\n                          .nullable(),\n                        taxGroupId: z\n                          .string()\n                          .describe('Tax group ID.')\n                          .regex(\n                            /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                            'Must be a valid GUID'\n                          )\n                          .optional()\n                          .nullable(),\n                        taxIncludedInPrice: z\n                          .boolean()\n                          .describe(\n                            'Indicates whether the price already includes tax.'\n                          )\n                          .optional(),\n                        taxBreakdown: z\n                          .array(\n                            z.object({\n                              jurisdiction: z\n                                .string()\n                                .describe(\n                                  'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                                )\n                                .max(200)\n                                .optional()\n                                .nullable(),\n                              rate: z\n                                .string()\n                                .describe(\n                                  'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                                )\n                                .optional()\n                                .nullable(),\n                              taxAmount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe(\n                                  'Amount of tax calculated for this line item.'\n                                )\n                                .optional(),\n                              taxType: z\n                                .string()\n                                .describe(\n                                  'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                                )\n                                .max(200)\n                                .optional()\n                                .nullable(),\n                              taxName: z\n                                .string()\n                                .describe(\n                                  'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                                )\n                                .max(200)\n                                .optional()\n                                .nullable(),\n                              jurisdictionType: z\n                                .enum([\n                                  'UNDEFINED',\n                                  'COUNTRY',\n                                  'STATE',\n                                  'COUNTY',\n                                  'CITY',\n                                  'SPECIAL',\n                                ])\n                                .describe(\n                                  'Type of jurisdiction that taxes were calculated for.'\n                                )\n                                .optional(),\n                              nonTaxableAmount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe(\n                                  'Non-taxable amount of the line item price.'\n                                )\n                                .optional(),\n                              taxableAmount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe(\n                                  'Taxable amount of the line item price.'\n                                )\n                                .optional(),\n                            })\n                          )\n                          .max(7)\n                          .optional(),\n                      })\n                      .describe(\n                        'Represents all the relevant tax details for a shipping.'\n                      )\n                      .optional(),\n                    discount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Shipping discount before tax.')\n                      .optional(),\n                  })\n                  .describe('Shipping costs.')\n                  .optional(),\n                region: z\n                  .object({\n                    name: z\n                      .string()\n                      .describe(\n                        'Name of shipping region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.'\n                      )\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Shipping region.')\n                  .optional(),\n              })\n              .describe('Shipping info and selected shipping option details.')\n              .optional(),\n            buyerNote: z\n              .string()\n              .describe(\n                '[Buyer note](https://support.wix.com/en/article/wix-stores-viewing-buyer-notes) left by the customer.'\n              )\n              .max(1000)\n              .optional()\n              .nullable(),\n            status: z\n              .enum([\n                'INITIALIZED',\n                'APPROVED',\n                'CANCELED',\n                'PENDING',\n                'REJECTED',\n              ])\n              .describe('Order status.')\n              .optional(),\n            archived: z\n              .boolean()\n              .describe('Whether order is archived.')\n              .optional()\n              .nullable(),\n            taxSummary: z\n              .object({\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total tax.')\n                  .optional(),\n              })\n              .describe(\n                'Tax summary.\\nDeprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.'\n              )\n              .optional(),\n            taxInfo: z\n              .object({\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Calculated tax, added from line items.')\n                  .optional(),\n                taxBreakdown: z\n                  .array(\n                    z.object({\n                      taxName: z\n                        .string()\n                        .describe(\n                          'The name of the tax against which this tax amount was calculated.'\n                        )\n                        .max(200)\n                        .optional(),\n                      taxType: z\n                        .string()\n                        .describe(\n                          \"The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.\"\n                        )\n                        .max(200)\n                        .optional(),\n                      jurisdiction: z\n                        .string()\n                        .describe(\n                          'The name of the jurisdiction in which this tax detail applies.'\n                        )\n                        .max(200)\n                        .optional(),\n                      jurisdictionType: z\n                        .enum([\n                          'UNDEFINED',\n                          'COUNTRY',\n                          'STATE',\n                          'COUNTY',\n                          'CITY',\n                          'SPECIAL',\n                        ])\n                        .describe(\n                          'The type of the jurisdiction in which this tax detail applies (e.g. Country,State,County,City,Special).'\n                        )\n                        .optional(),\n                      rate: z\n                        .string()\n                        .describe(\n                          'The rate at which this tax detail was calculated.'\n                        )\n                        .optional(),\n                      aggregatedTaxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'The sum of all the tax from line items that calculated by the tax identifiers.'\n                        )\n                        .optional(),\n                    })\n                  )\n                  .min(0)\n                  .max(50)\n                  .optional(),\n                taxExempt: z\n                  .boolean()\n                  .describe(\n                    'Whether the order is exempt from tax calculations.\\n\\nDefault: `false`'\n                  )\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Tax information.')\n              .optional(),\n            appliedDiscounts: z\n              .array(\n                z.intersection(\n                  z.object({\n                    discountType: z\n                      .enum(['GLOBAL', 'SPECIFIC_ITEMS', 'SHIPPING'])\n                      .optional(),\n                    lineItemIds: z.array(z.string()).min(0).max(300).optional(),\n                    _id: z\n                      .string()\n                      .describe('Discount ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional()\n                      .nullable(),\n                    lineItemDiscounts: z\n                      .array(\n                        z.object({\n                          _id: z\n                            .string()\n                            .describe('Line item ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          totalDiscount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe(\n                              'Total discount amount for this line item.'\n                            )\n                            .optional(),\n                        })\n                      )\n                      .max(300)\n                      .optional(),\n                  }),\n                  z.xor([\n                    z.object({\n                      coupon: z.never().optional(),\n                      merchantDiscount: z.never().optional(),\n                      discountRule: z.never().optional(),\n                    }),\n                    z.object({\n                      merchantDiscount: z.never().optional(),\n                      discountRule: z.never().optional(),\n                      coupon: z\n                        .object({\n                          _id: z.string().describe('Coupon ID.').optional(),\n                          code: z.string().describe('Coupon code.').optional(),\n                          name: z.string().describe('Coupon name.').optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Coupon value.')\n                            .optional(),\n                        })\n                        .describe('Coupon applied by the customer.'),\n                    }),\n                    z.object({\n                      coupon: z.never().optional(),\n                      discountRule: z.never().optional(),\n                      merchantDiscount: z\n                        .intersection(\n                          z.object({\n                            amount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe('Discount amount.')\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              discountReason: z.never().optional(),\n                              description: z.never().optional(),\n                            }),\n                            z.object({\n                              description: z.never().optional(),\n                              discountReason: z\n                                .enum([\n                                  'UNSPECIFIED',\n                                  'EXCHANGED_ITEMS',\n                                  'BILLING_ADJUSTMENT',\n                                ])\n                                .describe('Predefined discount reason.'),\n                            }),\n                            z.object({\n                              discountReason: z.never().optional(),\n                              description: z\n                                .string()\n                                .describe(\n                                  'Custom discount description as free text.'\n                                )\n                                .max(200),\n                            }),\n                          ])\n                        )\n                        .describe('Discount applied manually by the merchant.'),\n                    }),\n                    z.object({\n                      coupon: z.never().optional(),\n                      merchantDiscount: z.never().optional(),\n                      discountRule: z\n                        .object({\n                          _id: z\n                            .string()\n                            .describe('Discount rule ID')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          name: z\n                            .object({\n                              original: z\n                                .string()\n                                .describe(\n                                  \"Original discount rule name (in site's default language).\"\n                                )\n                                .min(1)\n                                .max(256)\n                                .optional(),\n                              translated: z\n                                .string()\n                                .describe(\n                                  'Translated discount rule name according to buyer language. Defaults to `original` when not provided.'\n                                )\n                                .min(1)\n                                .max(500)\n                                .optional()\n                                .nullable(),\n                            })\n                            .describe('Discount rule name')\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Discount value.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Automatic discount applied by the system based on configured discount rules.'\n                        ),\n                    }),\n                  ])\n                )\n              )\n              .max(320)\n              .optional(),\n            activities: z\n              .array(\n                z.intersection(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Activity ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional()\n                      .nullable(),\n                    authorEmail: z\n                      .string()\n                      .describe(\"Activity author's email.\")\n                      .email()\n                      .optional()\n                      .nullable(),\n                    _createdDate: z\n                      .date()\n                      .describe('Activity creation date and time.')\n                      .optional()\n                      .nullable(),\n                    type: z\n                      .enum([\n                        'ORDER_REFUNDED',\n                        'ORDER_PLACED',\n                        'ORDER_PAID',\n                        'ORDER_FULFILLED',\n                        'ORDER_NOT_FULFILLED',\n                        'ORDER_CANCELED',\n                        'DOWNLOAD_LINK_SENT',\n                        'TRACKING_NUMBER_ADDED',\n                        'TRACKING_NUMBER_EDITED',\n                        'TRACKING_LINK_ADDED',\n                        'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                        'INVOICE_ADDED',\n                        'INVOICE_REMOVED',\n                        'INVOICE_SENT',\n                        'FULFILLER_EMAIL_SENT',\n                        'SHIPPING_ADDRESS_EDITED',\n                        'EMAIL_EDITED',\n                        'PICKUP_READY_EMAIL_SENT',\n                        'CUSTOM_ACTIVITY',\n                        'MERCHANT_COMMENT',\n                        'ORDER_PARTIALLY_PAID',\n                        'DRAFT_ORDER_CHANGES_APPLIED',\n                        'SAVED_PAYMENT_METHOD',\n                        'AUTHORIZED_PAYMENT_CREATED',\n                        'AUTHORIZED_PAYMENT_CAPTURED',\n                        'AUTHORIZED_PAYMENT_VOIDED',\n                        'REFUND_INITIATED',\n                        'PAYMENT_REFUNDED',\n                        'PAYMENT_REFUND_FAILED',\n                        'REFUNDED_AS_STORE_CREDIT',\n                        'PAYMENT_PENDING',\n                        'PAYMENT_CANCELED',\n                        'PAYMENT_DECLINED',\n                        'ORDER_PENDING',\n                        'ORDER_REJECTED',\n                        'RECEIPT_CREATED',\n                        'RECEIPT_SENT',\n                        'CHARGEBACK_CREATED',\n                        'CHARGEBACK_REVERSED',\n                      ])\n                      .describe('Activity type.')\n                      .optional(),\n                    activityType: z\n                      .enum([\n                        'ORDER_PLACED',\n                        'ORDER_PAID',\n                        'ORDER_FULFILLED',\n                        'ORDER_NOT_FULFILLED',\n                        'ORDER_CANCELED',\n                        'DOWNLOAD_LINK_SENT',\n                        'TRACKING_NUMBER_ADDED',\n                        'TRACKING_NUMBER_EDITED',\n                        'TRACKING_LINK_ADDED',\n                        'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                        'INVOICE_ADDED',\n                        'INVOICE_REMOVED',\n                        'INVOICE_SENT',\n                        'FULFILLER_EMAIL_SENT',\n                        'SHIPPING_ADDRESS_EDITED',\n                        'EMAIL_EDITED',\n                        'PICKUP_READY_EMAIL_SENT',\n                        'MERCHANT_COMMENT',\n                        'ORDER_PARTIALLY_PAID',\n                        'DRAFT_ORDER_CHANGES_APPLIED',\n                        'SAVED_PAYMENT_METHOD',\n                        'AUTHORIZED_PAYMENT_CREATED',\n                        'AUTHORIZED_PAYMENT_CAPTURED',\n                        'AUTHORIZED_PAYMENT_VOIDED',\n                        'REFUND_INITIATED',\n                        'PAYMENT_REFUNDED',\n                        'PAYMENT_REFUND_FAILED',\n                        'REFUNDED_AS_STORE_CREDIT',\n                        'PAYMENT_PENDING',\n                        'PAYMENT_CANCELED',\n                        'PAYMENT_DECLINED',\n                        'ORDER_PENDING',\n                        'ORDER_REJECTED',\n                        'RECEIPT_CREATED',\n                        'RECEIPT_SENT',\n                        'CHARGEBACK_CREATED',\n                        'CHARGEBACK_REVERSED',\n                        'ORDER_REFUNDED',\n                      ])\n                      .describe('Activity type.')\n                      .optional(),\n                  }),\n                  z.xor([\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                    }),\n                    z.object({\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      merchantComment: z\n                        .object({\n                          message: z\n                            .string()\n                            .describe('Merchant comment message.')\n                            .min(1)\n                            .max(5000)\n                            .optional(),\n                        })\n                        .describe(\n                          'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      orderRefunded: z\n                        .object({\n                          manual: z\n                            .boolean()\n                            .describe(\n                              'Whether order was refunded manually. For example, via payment provider or using cash.'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Refund amount.')\n                            .optional(),\n                          reason: z\n                            .string()\n                            .describe('Reason for refund.')\n                            .max(200)\n                            .optional(),\n                        })\n                        .describe(\n                          'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      draftOrderChangesApplied: z\n                        .object({\n                          draftOrderId: z\n                            .string()\n                            .describe('Draft order id.')\n                            .optional(),\n                          reason: z\n                            .string()\n                            .describe(\n                              'Reason for edit, given by user (optional).'\n                            )\n                            .max(200)\n                            .optional()\n                            .nullable(),\n                          changes: z\n                            .array(\n                              z.intersection(\n                                z.object({}),\n                                z.xor([\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                  }),\n                                  z.object({\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    lineItemChanged: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Line item ID.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name after change.')\n                                        .optional(),\n                                      quantity: z\n                                        .object({\n                                          originalQuantity: z\n                                            .number()\n                                            .int()\n                                            .describe(\n                                              'Item quantity before update.'\n                                            )\n                                            .min(0)\n                                            .max(1000000)\n                                            .optional(),\n                                          newQuantity: z\n                                            .number()\n                                            .int()\n                                            .describe(\n                                              'Item quantity after update.'\n                                            )\n                                            .min(0)\n                                            .max(1000000)\n                                            .optional(),\n                                          diff: z\n                                            .number()\n                                            .int()\n                                            .describe(\n                                              'Difference between original and new quantity. Absolute value.'\n                                            )\n                                            .min(1)\n                                            .max(1000000)\n                                            .optional(),\n                                          deltaType: z\n                                            .enum([\n                                              'QUANTITY_INCREASED',\n                                              'QUANTITY_DECREASED',\n                                            ])\n                                            .describe(\n                                              'Type of quantity change: increase or decrease.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Item quantity change.')\n                                        .optional(),\n                                      price: z\n                                        .object({\n                                          originalPrice: z\n                                            .object({\n                                              amount: z\n                                                .string()\n                                                .describe('Amount.')\n                                                .optional(),\n                                              formattedAmount: z\n                                                .string()\n                                                .describe(\n                                                  'Amount formatted with currency symbol.'\n                                                )\n                                                .optional(),\n                                            })\n                                            .describe(\n                                              'Item price before update.'\n                                            )\n                                            .optional(),\n                                          newPrice: z\n                                            .object({\n                                              amount: z\n                                                .string()\n                                                .describe('Amount.')\n                                                .optional(),\n                                              formattedAmount: z\n                                                .string()\n                                                .describe(\n                                                  'Amount formatted with currency symbol.'\n                                                )\n                                                .optional(),\n                                            })\n                                            .describe(\n                                              'Item price after update.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Item price change.')\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    lineItemAdded: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Line item ID.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      quantity: z\n                                        .number()\n                                        .int()\n                                        .describe(\n                                          'Added or removed item quantity.'\n                                        )\n                                        .min(1)\n                                        .max(1000000)\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    lineItemRemoved: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Line item ID.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      quantity: z\n                                        .number()\n                                        .int()\n                                        .describe(\n                                          'Added or removed item quantity.'\n                                        )\n                                        .min(1)\n                                        .max(1000000)\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    discountAdded: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Discount id.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              'Value in site default language.'\n                                            )\n                                            .min(1)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe('Translated value.')\n                                            .min(1)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe(\n                                          'Discount name: coupon name / discount rule name / merchant discount description.'\n                                        )\n                                        .optional(),\n                                      affectedLineItems: z\n                                        .array(\n                                          z.object({\n                                            _id: z\n                                              .string()\n                                              .describe('Order line item id')\n                                              .regex(\n                                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                                'Must be a valid GUID'\n                                              )\n                                              .optional(),\n                                            name: z\n                                              .object({\n                                                original: z\n                                                  .string()\n                                                  .describe(\n                                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(200)\n                                                  .optional(),\n                                                translated: z\n                                                  .string()\n                                                  .describe(\n                                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(400)\n                                                  .optional()\n                                                  .nullable(),\n                                              })\n                                              .describe('Item name.')\n                                              .optional(),\n                                            amount: z\n                                              .object({\n                                                amount: z\n                                                  .string()\n                                                  .describe('Amount.')\n                                                  .optional(),\n                                                formattedAmount: z\n                                                  .string()\n                                                  .describe(\n                                                    'Amount formatted with currency symbol.'\n                                                  )\n                                                  .optional(),\n                                              })\n                                              .describe(\n                                                'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                              )\n                                              .optional(),\n                                          })\n                                        )\n                                        .min(0)\n                                        .optional(),\n                                      totalAmount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Discount amount.')\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    discountRemoved: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Discount id.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              'Value in site default language.'\n                                            )\n                                            .min(1)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe('Translated value.')\n                                            .min(1)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe(\n                                          'Discount name: coupon name / discount rule name / merchant discount description.'\n                                        )\n                                        .optional(),\n                                      affectedLineItems: z\n                                        .array(\n                                          z.object({\n                                            _id: z\n                                              .string()\n                                              .describe('Order line item id')\n                                              .regex(\n                                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                                'Must be a valid GUID'\n                                              )\n                                              .optional(),\n                                            name: z\n                                              .object({\n                                                original: z\n                                                  .string()\n                                                  .describe(\n                                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(200)\n                                                  .optional(),\n                                                translated: z\n                                                  .string()\n                                                  .describe(\n                                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(400)\n                                                  .optional()\n                                                  .nullable(),\n                                              })\n                                              .describe('Item name.')\n                                              .optional(),\n                                            amount: z\n                                              .object({\n                                                amount: z\n                                                  .string()\n                                                  .describe('Amount.')\n                                                  .optional(),\n                                                formattedAmount: z\n                                                  .string()\n                                                  .describe(\n                                                    'Amount formatted with currency symbol.'\n                                                  )\n                                                  .optional(),\n                                              })\n                                              .describe(\n                                                'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                              )\n                                              .optional(),\n                                          })\n                                        )\n                                        .min(0)\n                                        .optional(),\n                                      totalAmount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Discount amount.')\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    additionalFeeAdded: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Additional fee id.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              'Value in site default language.'\n                                            )\n                                            .min(1)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe('Translated value.')\n                                            .min(1)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Additional fee name.')\n                                        .optional(),\n                                      affectedLineItems: z\n                                        .array(\n                                          z.object({\n                                            _id: z\n                                              .string()\n                                              .describe('Order line item id')\n                                              .regex(\n                                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                                'Must be a valid GUID'\n                                              )\n                                              .optional(),\n                                            name: z\n                                              .object({\n                                                original: z\n                                                  .string()\n                                                  .describe(\n                                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(200)\n                                                  .optional(),\n                                                translated: z\n                                                  .string()\n                                                  .describe(\n                                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(400)\n                                                  .optional()\n                                                  .nullable(),\n                                              })\n                                              .describe('Item name.')\n                                              .optional(),\n                                            amount: z\n                                              .object({\n                                                amount: z\n                                                  .string()\n                                                  .describe('Amount.')\n                                                  .optional(),\n                                                formattedAmount: z\n                                                  .string()\n                                                  .describe(\n                                                    'Amount formatted with currency symbol.'\n                                                  )\n                                                  .optional(),\n                                              })\n                                              .describe(\n                                                'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                              )\n                                              .optional(),\n                                          })\n                                        )\n                                        .min(0)\n                                        .optional(),\n                                      totalAmount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Additional fee amount.')\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    additionalFeeRemoved: z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Additional fee id.')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              'Value in site default language.'\n                                            )\n                                            .min(1)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe('Translated value.')\n                                            .min(1)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Additional fee name.')\n                                        .optional(),\n                                      affectedLineItems: z\n                                        .array(\n                                          z.object({\n                                            _id: z\n                                              .string()\n                                              .describe('Order line item id')\n                                              .regex(\n                                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                                'Must be a valid GUID'\n                                              )\n                                              .optional(),\n                                            name: z\n                                              .object({\n                                                original: z\n                                                  .string()\n                                                  .describe(\n                                                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(200)\n                                                  .optional(),\n                                                translated: z\n                                                  .string()\n                                                  .describe(\n                                                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                                  )\n                                                  .min(1)\n                                                  .max(400)\n                                                  .optional()\n                                                  .nullable(),\n                                              })\n                                              .describe('Item name.')\n                                              .optional(),\n                                            amount: z\n                                              .object({\n                                                amount: z\n                                                  .string()\n                                                  .describe('Amount.')\n                                                  .optional(),\n                                                formattedAmount: z\n                                                  .string()\n                                                  .describe(\n                                                    'Amount formatted with currency symbol.'\n                                                  )\n                                                  .optional(),\n                                              })\n                                              .describe(\n                                                'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                              )\n                                              .optional(),\n                                          })\n                                        )\n                                        .min(0)\n                                        .optional(),\n                                      totalAmount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Additional fee amount.')\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    shippingInformationChanged: z\n                                      .never()\n                                      .optional(),\n                                    totalPriceChanged: z.object({\n                                      originalTotal: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Order’s total price after discounts and tax. Before update'\n                                        )\n                                        .optional(),\n                                      newTotal: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Order’s total price after discounts and tax. After update'\n                                        )\n                                        .optional(),\n                                    }),\n                                  }),\n                                  z.object({\n                                    lineItemChanged: z.never().optional(),\n                                    lineItemAdded: z.never().optional(),\n                                    lineItemRemoved: z.never().optional(),\n                                    discountAdded: z.never().optional(),\n                                    discountRemoved: z.never().optional(),\n                                    additionalFeeAdded: z.never().optional(),\n                                    additionalFeeRemoved: z.never().optional(),\n                                    totalPriceChanged: z.never().optional(),\n                                    shippingInformationChanged: z.object({\n                                      originalShippingInfo: z\n                                        .object({\n                                          total: z\n                                            .object({\n                                              amount: z\n                                                .string()\n                                                .describe('Amount.')\n                                                .optional(),\n                                              formattedAmount: z\n                                                .string()\n                                                .describe(\n                                                  'Amount formatted with currency symbol.'\n                                                )\n                                                .optional(),\n                                            })\n                                            .describe('Order’s shipping price.')\n                                            .optional(),\n                                          shippingTitle: z\n                                            .string()\n                                            .describe('Order’s shipping title.')\n                                            .max(250)\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Order’s Shipping Information. Before update'\n                                        )\n                                        .optional(),\n                                      newShippingInfo: z\n                                        .object({\n                                          total: z\n                                            .object({\n                                              amount: z\n                                                .string()\n                                                .describe('Amount.')\n                                                .optional(),\n                                              formattedAmount: z\n                                                .string()\n                                                .describe(\n                                                  'Amount formatted with currency symbol.'\n                                                )\n                                                .optional(),\n                                            })\n                                            .describe('Order’s shipping price.')\n                                            .optional(),\n                                          shippingTitle: z\n                                            .string()\n                                            .describe('Order’s shipping title.')\n                                            .max(250)\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Order’s Shipping Information. After update'\n                                        )\n                                        .optional(),\n                                    }),\n                                  }),\n                                ])\n                              )\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Details of changes made by the Draft Orders API.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      savedPaymentMethod: z\n                        .object({\n                          name: z\n                            .string()\n                            .describe('Payment method name.')\n                            .min(1)\n                            .max(100)\n                            .optional(),\n                          description: z\n                            .string()\n                            .describe('Payment method description.')\n                            .min(1)\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe(\n                          'Details of the payment method saved for the order.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      authorizedPaymentCreated: z\n                        .object({\n                          paymentId: z\n                            .string()\n                            .describe(\n                              'Payment ID of payment associated with this activity.'\n                            )\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                          lastFourDigits: z\n                            .string()\n                            .describe('The last 4 digits of the card number.')\n                            .max(4)\n                            .optional()\n                            .nullable(),\n                          brand: z\n                            .string()\n                            .describe(\"Card issuer's brand.\")\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Details of an authorized payment created.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      authorizedPaymentCaptured: z\n                        .object({\n                          paymentId: z\n                            .string()\n                            .describe(\n                              'Payment ID of payment associated with this activity.'\n                            )\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                          lastFourDigits: z\n                            .string()\n                            .describe('The last 4 digits of the card number.')\n                            .max(4)\n                            .optional()\n                            .nullable(),\n                          brand: z\n                            .string()\n                            .describe(\"Card issuer's brand.\")\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Details of an authorized payment captured.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      authorizedPaymentVoided: z\n                        .object({\n                          paymentId: z\n                            .string()\n                            .describe(\n                              'Payment ID of payment associated with this activity.'\n                            )\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                          lastFourDigits: z\n                            .string()\n                            .describe('The last 4 digits of the card number.')\n                            .max(4)\n                            .optional()\n                            .nullable(),\n                          brand: z\n                            .string()\n                            .describe(\"Card issuer's brand.\")\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Details of an authorized payment voided.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      refundInitiated: z\n                        .object({\n                          refundId: z\n                            .string()\n                            .describe('Refund ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Refund amount.')\n                            .optional(),\n                          payments: z\n                            .array(\n                              z.intersection(\n                                z.object({\n                                  paymentId: z\n                                    .string()\n                                    .describe('Payment ID.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  externalRefund: z\n                                    .boolean()\n                                    .describe(\n                                      \"Whether refund was made externally and manually on the payment provider's side.\"\n                                    )\n                                    .optional(),\n                                }),\n                                z.xor([\n                                  z.object({\n                                    regular: z.never().optional(),\n                                    giftCard: z.never().optional(),\n                                    membership: z.never().optional(),\n                                  }),\n                                  z.object({\n                                    giftCard: z.never().optional(),\n                                    membership: z.never().optional(),\n                                    regular: z\n                                      .object({\n                                        amount: z\n                                          .object({\n                                            amount: z\n                                              .string()\n                                              .describe('Amount.')\n                                              .optional(),\n                                            formattedAmount: z\n                                              .string()\n                                              .describe(\n                                                'Amount formatted with currency symbol.'\n                                              )\n                                              .optional(),\n                                          })\n                                          .describe('Refund amount.')\n                                          .optional(),\n                                        lastFourDigits: z\n                                          .string()\n                                          .describe(\n                                            'The last 4 digits of the card number.'\n                                          )\n                                          .max(4)\n                                          .optional()\n                                          .nullable(),\n                                        brand: z\n                                          .string()\n                                          .describe(\"Card issuer's brand.\")\n                                          .max(100)\n                                          .optional()\n                                          .nullable(),\n                                      })\n                                      .describe('Regular payment refund.'),\n                                  }),\n                                  z.object({\n                                    regular: z.never().optional(),\n                                    membership: z.never().optional(),\n                                    giftCard: z\n                                      .object({\n                                        giftCardPaymentId: z\n                                          .string()\n                                          .describe('Gift card payment ID.')\n                                          .min(1)\n                                          .max(100)\n                                          .optional()\n                                          .nullable(),\n                                        amount: z\n                                          .object({\n                                            amount: z\n                                              .string()\n                                              .describe('Amount.')\n                                              .optional(),\n                                            formattedAmount: z\n                                              .string()\n                                              .describe(\n                                                'Amount formatted with currency symbol.'\n                                              )\n                                              .optional(),\n                                          })\n                                          .describe('Refund amount.')\n                                          .optional(),\n                                      })\n                                      .describe('Gift card payment refund.'),\n                                  }),\n                                  z.object({\n                                    regular: z.never().optional(),\n                                    giftCard: z.never().optional(),\n                                    membership: z\n                                      .object({\n                                        membershipId: z\n                                          .string()\n                                          .describe('Membership ID.')\n                                          .min(1)\n                                          .max(100)\n                                          .optional()\n                                          .nullable(),\n                                      })\n                                      .describe('Membership payment refund.'),\n                                  }),\n                                ])\n                              )\n                            )\n                            .min(1)\n                            .max(50)\n                            .optional(),\n                          reason: z\n                            .string()\n                            .describe('Reason for refund.')\n                            .max(200)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe(\n                          'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      paymentRefunded: z\n                        .object({\n                          refundId: z\n                            .string()\n                            .describe('Refund ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          payment: z\n                            .intersection(\n                              z.object({\n                                paymentId: z\n                                  .string()\n                                  .describe('Payment ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                externalRefund: z\n                                  .boolean()\n                                  .describe(\n                                    \"Whether refund was made externally and manually on the payment provider's side.\"\n                                  )\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  regular: z.never().optional(),\n                                  giftCard: z.never().optional(),\n                                  membership: z.never().optional(),\n                                }),\n                                z.object({\n                                  giftCard: z.never().optional(),\n                                  membership: z.never().optional(),\n                                  regular: z\n                                    .object({\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Refund amount.')\n                                        .optional(),\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Regular payment refund.'),\n                                }),\n                                z.object({\n                                  regular: z.never().optional(),\n                                  membership: z.never().optional(),\n                                  giftCard: z\n                                    .object({\n                                      giftCardPaymentId: z\n                                        .string()\n                                        .describe('Gift card payment ID.')\n                                        .min(1)\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Refund amount.')\n                                        .optional(),\n                                    })\n                                    .describe('Gift card payment refund.'),\n                                }),\n                                z.object({\n                                  regular: z.never().optional(),\n                                  giftCard: z.never().optional(),\n                                  membership: z\n                                    .object({\n                                      membershipId: z\n                                        .string()\n                                        .describe('Membership ID.')\n                                        .min(1)\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Membership payment refund.'),\n                                }),\n                              ])\n                            )\n                            .describe('Details about the refunded payment.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      paymentRefundFailed: z\n                        .object({\n                          refundId: z\n                            .string()\n                            .describe('Refund ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          payment: z\n                            .intersection(\n                              z.object({\n                                paymentId: z\n                                  .string()\n                                  .describe('Payment ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                externalRefund: z\n                                  .boolean()\n                                  .describe(\n                                    \"Whether refund was made externally and manually on the payment provider's side.\"\n                                  )\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  regular: z.never().optional(),\n                                  giftCard: z.never().optional(),\n                                  membership: z.never().optional(),\n                                }),\n                                z.object({\n                                  giftCard: z.never().optional(),\n                                  membership: z.never().optional(),\n                                  regular: z\n                                    .object({\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Refund amount.')\n                                        .optional(),\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Regular payment refund.'),\n                                }),\n                                z.object({\n                                  regular: z.never().optional(),\n                                  membership: z.never().optional(),\n                                  giftCard: z\n                                    .object({\n                                      giftCardPaymentId: z\n                                        .string()\n                                        .describe('Gift card payment ID.')\n                                        .min(1)\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe('Refund amount.')\n                                        .optional(),\n                                    })\n                                    .describe('Gift card payment refund.'),\n                                }),\n                                z.object({\n                                  regular: z.never().optional(),\n                                  giftCard: z.never().optional(),\n                                  membership: z\n                                    .object({\n                                      membershipId: z\n                                        .string()\n                                        .describe('Membership ID.')\n                                        .min(1)\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Membership payment refund.'),\n                                }),\n                              ])\n                            )\n                            .describe(\n                              'Details about the failed payment refund.'\n                            )\n                            .optional(),\n                        })\n                        .describe(\n                          'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      refundedAsStoreCredit: z\n                        .object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Refund amount.')\n                            .optional(),\n                          reason: z\n                            .string()\n                            .describe('Reason for refund.')\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Details of refund to store credit.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      paymentPending: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe(\n                                'Payment ID of payment associated with this activity.'\n                              )\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({ regular: z.never().optional() }),\n                            z.object({\n                              regular: z\n                                .intersection(\n                                  z.object({\n                                    amount: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Payment amount.')\n                                      .optional(),\n                                  }),\n                                  z.xor([\n                                    z.object({\n                                      creditCardDetails: z.never().optional(),\n                                    }),\n                                    z.object({\n                                      creditCardDetails: z\n                                        .object({\n                                          lastFourDigits: z\n                                            .string()\n                                            .describe(\n                                              'The last 4 digits of the card number.'\n                                            )\n                                            .max(4)\n                                            .optional()\n                                            .nullable(),\n                                          brand: z\n                                            .string()\n                                            .describe(\"Card issuer's brand.\")\n                                            .max(100)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Credit card details.'),\n                                    }),\n                                  ])\n                                )\n                                .describe('Regular payment.'),\n                            }),\n                          ])\n                        )\n                        .describe('Details of a pending payment.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      paymentCanceled: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe(\n                                'Payment ID of payment associated with this activity.'\n                              )\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({ regular: z.never().optional() }),\n                            z.object({\n                              regular: z\n                                .intersection(\n                                  z.object({\n                                    amount: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Payment amount.')\n                                      .optional(),\n                                  }),\n                                  z.xor([\n                                    z.object({\n                                      creditCardDetails: z.never().optional(),\n                                    }),\n                                    z.object({\n                                      creditCardDetails: z\n                                        .object({\n                                          lastFourDigits: z\n                                            .string()\n                                            .describe(\n                                              'The last 4 digits of the card number.'\n                                            )\n                                            .max(4)\n                                            .optional()\n                                            .nullable(),\n                                          brand: z\n                                            .string()\n                                            .describe(\"Card issuer's brand.\")\n                                            .max(100)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Credit card details.'),\n                                    }),\n                                  ])\n                                )\n                                .describe('Regular payment.'),\n                            }),\n                          ])\n                        )\n                        .describe('Details of a canceled payment.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      paymentDeclined: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe(\n                                'Payment ID of payment associated with this activity.'\n                              )\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({ regular: z.never().optional() }),\n                            z.object({\n                              regular: z\n                                .intersection(\n                                  z.object({\n                                    amount: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Payment amount.')\n                                      .optional(),\n                                  }),\n                                  z.xor([\n                                    z.object({\n                                      creditCardDetails: z.never().optional(),\n                                    }),\n                                    z.object({\n                                      creditCardDetails: z\n                                        .object({\n                                          lastFourDigits: z\n                                            .string()\n                                            .describe(\n                                              'The last 4 digits of the card number.'\n                                            )\n                                            .max(4)\n                                            .optional()\n                                            .nullable(),\n                                          brand: z\n                                            .string()\n                                            .describe(\"Card issuer's brand.\")\n                                            .max(100)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Credit card details.'),\n                                    }),\n                                  ])\n                                )\n                                .describe('Regular payment.'),\n                            }),\n                          ])\n                        )\n                        .describe('Details of a declined payment.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      receiptCreated: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe(\n                                'Payment ID of payment associated with this activity.'\n                              )\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              wixReceipt: z.never().optional(),\n                              externalReceipt: z.never().optional(),\n                            }),\n                            z.object({\n                              externalReceipt: z.never().optional(),\n                              wixReceipt: z\n                                .object({\n                                  receiptId: z\n                                    .string()\n                                    .describe('Receipt ID.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  displayNumber: z\n                                    .string()\n                                    .describe('Display number of receipt.')\n                                    .min(1)\n                                    .max(40)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Receipt created by Wix.'),\n                            }),\n                            z.object({\n                              wixReceipt: z.never().optional(),\n                              externalReceipt: z\n                                .object({\n                                  receiptId: z\n                                    .string()\n                                    .describe('Receipt ID.')\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  displayNumber: z\n                                    .string()\n                                    .describe('Display number of receipt.')\n                                    .min(1)\n                                    .max(40)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe(\n                                  'Receipt created by an external system.'\n                                ),\n                            }),\n                          ])\n                        )\n                        .describe('Receipt was added for associated payment.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      receiptSent: z\n                        .intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe(\n                                'Payment ID of payment associated with this activity.'\n                              )\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              wixReceipt: z.never().optional(),\n                              externalReceipt: z.never().optional(),\n                            }),\n                            z.object({\n                              externalReceipt: z.never().optional(),\n                              wixReceipt: z\n                                .object({\n                                  receiptId: z\n                                    .string()\n                                    .describe('Receipt ID.')\n                                    .regex(\n                                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                      'Must be a valid GUID'\n                                    )\n                                    .optional(),\n                                  displayNumber: z\n                                    .string()\n                                    .describe('Display number of receipt.')\n                                    .min(1)\n                                    .max(40)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Receipt created by Wix.'),\n                            }),\n                            z.object({\n                              wixReceipt: z.never().optional(),\n                              externalReceipt: z\n                                .object({\n                                  receiptId: z\n                                    .string()\n                                    .describe('Receipt ID.')\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  displayNumber: z\n                                    .string()\n                                    .describe('Display number of receipt.')\n                                    .min(1)\n                                    .max(40)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe(\n                                  'Receipt created by an external system.'\n                                ),\n                            }),\n                          ])\n                        )\n                        .describe('Receipt sent to customer.'),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackReversed: z.never().optional(),\n                      chargebackCreated: z\n                        .object({\n                          paymentId: z\n                            .string()\n                            .describe(\n                              'ID of the payment that received a chargeback.'\n                            )\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          chargebackId: z\n                            .string()\n                            .describe('Chargeback ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Chargeback amount.')\n                            .optional(),\n                          paymentDetails: z\n                            .intersection(\n                              z.object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Payment amount.')\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  creditCardDetails: z.never().optional(),\n                                }),\n                                z.object({\n                                  creditCardDetails: z\n                                    .object({\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Credit card details.'),\n                                }),\n                              ])\n                            )\n                            .describe('Payment details.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Order received a chargeback for one of its payments.'\n                        ),\n                    }),\n                    z.object({\n                      merchantComment: z.never().optional(),\n                      orderRefunded: z.never().optional(),\n                      draftOrderChangesApplied: z.never().optional(),\n                      savedPaymentMethod: z.never().optional(),\n                      authorizedPaymentCreated: z.never().optional(),\n                      authorizedPaymentCaptured: z.never().optional(),\n                      authorizedPaymentVoided: z.never().optional(),\n                      refundInitiated: z.never().optional(),\n                      paymentRefunded: z.never().optional(),\n                      paymentRefundFailed: z.never().optional(),\n                      refundedAsStoreCredit: z.never().optional(),\n                      paymentPending: z.never().optional(),\n                      paymentCanceled: z.never().optional(),\n                      paymentDeclined: z.never().optional(),\n                      receiptCreated: z.never().optional(),\n                      receiptSent: z.never().optional(),\n                      chargebackCreated: z.never().optional(),\n                      chargebackReversed: z\n                        .object({\n                          paymentId: z\n                            .string()\n                            .describe(\n                              'ID of the payment involved with the chargeback.'\n                            )\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          chargebackId: z\n                            .string()\n                            .describe('Chargeback ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Chargeback amount.')\n                            .optional(),\n                          reversalAmount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Chargeback reversal amount.')\n                            .optional(),\n                          paymentDetails: z\n                            .intersection(\n                              z.object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Payment amount.')\n                                  .optional(),\n                              }),\n                              z.xor([\n                                z.object({\n                                  creditCardDetails: z.never().optional(),\n                                }),\n                                z.object({\n                                  creditCardDetails: z\n                                    .object({\n                                      lastFourDigits: z\n                                        .string()\n                                        .describe(\n                                          'The last 4 digits of the card number.'\n                                        )\n                                        .max(4)\n                                        .optional()\n                                        .nullable(),\n                                      brand: z\n                                        .string()\n                                        .describe(\"Card issuer's brand.\")\n                                        .max(100)\n                                        .optional()\n                                        .nullable(),\n                                    })\n                                    .describe('Credit card details.'),\n                                }),\n                              ])\n                            )\n                            .describe('Payment details.')\n                            .optional(),\n                        })\n                        .describe(\n                          \"Chargeback reversed for one of the order's payments.\"\n                        ),\n                    }),\n                  ])\n                )\n              )\n              .max(1000)\n              .optional(),\n            attributionSource: z\n              .enum(['UNSPECIFIED', 'FACEBOOK_ADS'])\n              .describe('Order attribution source.')\n              .optional(),\n            createdBy: z\n              .intersection(\n                z.object({}),\n                z.xor([\n                  z.object({\n                    userId: z.never().optional(),\n                    memberId: z.never().optional(),\n                    visitorId: z.never().optional(),\n                    appId: z.never().optional(),\n                  }),\n                  z.object({\n                    memberId: z.never().optional(),\n                    visitorId: z.never().optional(),\n                    appId: z.never().optional(),\n                    userId: z\n                      .string()\n                      .describe(\n                        'User ID - when the order was created by a Wix user on behalf of a buyer.\\nFor example, via POS (point of service).'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                  z.object({\n                    userId: z.never().optional(),\n                    visitorId: z.never().optional(),\n                    appId: z.never().optional(),\n                    memberId: z\n                      .string()\n                      .describe(\n                        'Member ID - when the order was created by a **logged in** site visitor.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                  z.object({\n                    userId: z.never().optional(),\n                    memberId: z.never().optional(),\n                    appId: z.never().optional(),\n                    visitorId: z\n                      .string()\n                      .describe(\n                        'Visitor ID - when the order was created by a site visitor that was **not** logged in.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                  z.object({\n                    userId: z.never().optional(),\n                    memberId: z.never().optional(),\n                    visitorId: z.never().optional(),\n                    appId: z\n                      .string()\n                      .describe(\n                        'App ID - when the order was created by an external application.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      ),\n                  }),\n                ])\n              )\n              .describe(\"ID of the order's initiator.\")\n              .optional(),\n            channelInfo: z\n              .object({\n                type: z\n                  .enum([\n                    'UNSPECIFIED',\n                    'WEB',\n                    'POS',\n                    'EBAY',\n                    'AMAZON',\n                    'OTHER_PLATFORM',\n                    'WIX_APP_STORE',\n                    'WIX_INVOICES',\n                    'BACKOFFICE_MERCHANT',\n                    'WISH',\n                    'CLASS_PASS',\n                    'GLOBAL_E',\n                    'FACEBOOK',\n                    'ETSY',\n                    'TIKTOK',\n                    'FAIRE_COM',\n                    'PAYPAL_AGENTIC_CHECKOUT',\n                    'STRIPE_AGENTIC_CHECKOUT',\n                  ])\n                  .describe(\n                    'Sales channel that submitted the order.\\n\\nWhen creating an order via the API to record an external order, use the channel type that matches the original source. If no matching type exists, use `OTHER_PLATFORM`.'\n                  )\n                  .optional(),\n                externalOrderId: z\n                  .string()\n                  .describe(\n                    'Reference to an order ID from an external system. Relevant when recording orders from external platforms.'\n                  )\n                  .max(100)\n                  .optional()\n                  .nullable(),\n                externalOrderUrl: z\n                  .string()\n                  .describe(\n                    'URL to the order in the external system. Relevant when recording orders from external platforms.'\n                  )\n                  .max(300)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Information about the sales channel that submitted this order.'\n              )\n              .optional(),\n            seenByAHuman: z\n              .boolean()\n              .describe(\n                'Whether a human has seen the order. Set when an order is clicked on in the dashboard.'\n              )\n              .optional()\n              .nullable(),\n            checkoutId: z\n              .string()\n              .describe('Checkout ID.')\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            customFields: z\n              .array(\n                z.object({\n                  value: z\n                    .any()\n                    .describe('Custom field value.')\n                    .optional()\n                    .nullable(),\n                  title: z\n                    .string()\n                    .describe('Custom field title.')\n                    .min(1)\n                    .max(500)\n                    .optional(),\n                  translatedTitle: z\n                    .string()\n                    .describe('Translated custom field title.')\n                    .min(1)\n                    .max(500)\n                    .optional()\n                    .nullable(),\n                })\n              )\n              .optional(),\n            balanceSummary: z\n              .object({\n                balance: z\n                  .object({\n                    amount: z\n                      .string()\n                      .describe(\n                        'Balance amount.\\n\\nA negative `amount` represents the amount to be refunded. This can happen due to overcharging or the order being modified after a payment has been made.'\n                      )\n                      .optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Current amount left to pay.')\n                  .optional(),\n                paid: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Sum of all approved and successful payments.\\n\\nThe value includes payments that have subsequently been fully or partially refunded.'\n                  )\n                  .optional(),\n                refunded: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all successfully refunded payments.')\n                  .optional(),\n                authorized: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all authorized payments.')\n                  .optional(),\n                pendingRefund: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all pending refund transactions.')\n                  .optional(),\n                pending: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all pending transactions.')\n                  .optional(),\n                chargeback: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all transaction chargebacks.')\n                  .optional(),\n                chargebackReversal: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Sum of all chargeback reversals.')\n                  .optional(),\n                platformFees: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total platform fees actually charged across all payments.\\nThis reflects amounts collected, which may differ from the expected fees in `order.platformFeeSummary`.'\n                  )\n                  .optional(),\n                totalMinusPlatformFees: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Order total after deducting platform fees. Represents the net amount payable to the merchant.'\n                  )\n                  .optional(),\n              })\n              .describe('Balance summary.')\n              .optional(),\n            additionalFees: z\n              .array(\n                z.object({\n                  code: z\n                    .string()\n                    .describe(\n                      \"Additional fee's unique code for future processing.\"\n                    )\n                    .min(1)\n                    .max(100)\n                    .optional()\n                    .nullable(),\n                  name: z\n                    .string()\n                    .describe('Name of additional fee.')\n                    .min(1)\n                    .max(50)\n                    .optional(),\n                  price: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\"Additional fee's price.\")\n                    .optional(),\n                  taxDetails: z\n                    .object({\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of this line item.')\n                        .optional(),\n                      taxRate: z\n                        .string()\n                        .describe(\n                          'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                        )\n                        .optional(),\n                      totalTax: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                        )\n                        .optional(),\n                    })\n                    .describe('Tax details.')\n                    .optional(),\n                  taxInfo: z\n                    .object({\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                        )\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Amount for which tax is calculated.')\n                        .optional(),\n                      taxRate: z\n                        .string()\n                        .describe('Tax rate %, as a decimal point.')\n                        .optional()\n                        .nullable(),\n                      taxGroupId: z\n                        .string()\n                        .describe('Tax group ID.')\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxIncludedInPrice: z\n                        .boolean()\n                        .describe(\n                          'Indicates whether the price already includes tax.'\n                        )\n                        .optional(),\n                      taxBreakdown: z\n                        .array(\n                          z.object({\n                            jurisdiction: z\n                              .string()\n                              .describe(\n                                'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            rate: z\n                              .string()\n                              .describe(\n                                'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                              )\n                              .optional()\n                              .nullable(),\n                            taxAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Amount of tax calculated for this line item.'\n                              )\n                              .optional(),\n                            taxType: z\n                              .string()\n                              .describe(\n                                'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            taxName: z\n                              .string()\n                              .describe(\n                                'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                              )\n                              .max(200)\n                              .optional()\n                              .nullable(),\n                            jurisdictionType: z\n                              .enum([\n                                'UNDEFINED',\n                                'COUNTRY',\n                                'STATE',\n                                'COUNTY',\n                                'CITY',\n                                'SPECIAL',\n                              ])\n                              .describe(\n                                'Type of jurisdiction that taxes were calculated for.'\n                              )\n                              .optional(),\n                            nonTaxableAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Non-taxable amount of the line item price.'\n                              )\n                              .optional(),\n                            taxableAmount: z\n                              .object({\n                                amount: z\n                                  .string()\n                                  .describe('Amount.')\n                                  .optional(),\n                                formattedAmount: z\n                                  .string()\n                                  .describe(\n                                    'Amount formatted with currency symbol.'\n                                  )\n                                  .optional(),\n                              })\n                              .describe(\n                                'Taxable amount of the line item price.'\n                              )\n                              .optional(),\n                          })\n                        )\n                        .max(7)\n                        .optional(),\n                    })\n                    .describe(\n                      'Represents all the relevant tax details for additional fee.'\n                    )\n                    .optional(),\n                  providerAppId: z\n                    .string()\n                    .describe(\"SPI implementer's `appId`.\")\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  priceBeforeTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\"Additional fee's price before tax.\")\n                    .optional(),\n                  priceAfterTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\"Additional fee's price after tax.\")\n                    .optional(),\n                  _id: z\n                    .string()\n                    .describe(\"Additional fee's id.\")\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                  lineItemIds: z.array(z.string()).optional(),\n                  source: z\n                    .enum([\n                      'SERVICE_PLUGIN',\n                      'ITEM',\n                      'MANUAL',\n                      'SHIPPING',\n                      'PLATFORM',\n                    ])\n                    .describe(\n                      'Specifies the entity that added the additional fee.'\n                    )\n                    .optional(),\n                })\n              )\n              .max(100)\n              .optional(),\n            extendedFields: z\n              .object({\n                namespaces: z\n                  .record(z.string(), z.record(z.string(), z.any()))\n                  .describe(\n                    'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Custom field data for the order object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n              )\n              .optional(),\n            purchaseFlowId: z\n              .string()\n              .describe(\n                'Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.'\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            recipientInfo: z\n              .object({\n                address: z\n                  .object({\n                    streetAddress: z\n                      .object({\n                        name: z.string().optional(),\n                        number: z.string().optional(),\n                      })\n                      .optional(),\n                    city: z.string().optional().nullable(),\n                    subdivision: z.string().optional().nullable(),\n                    country: z.string().optional().nullable(),\n                    postalCode: z.string().optional().nullable(),\n                    addressLine2: z.string().optional().nullable(),\n                  })\n                  .describe('Address.')\n                  .optional(),\n                contactDetails: z\n                  .object({\n                    firstName: z\n                      .string()\n                      .describe('First name.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                    lastName: z\n                      .string()\n                      .describe('Last name.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                    phone: z\n                      .string()\n                      .describe('Phone number.')\n                      .optional()\n                      .nullable(),\n                    company: z\n                      .string()\n                      .describe('Company name.')\n                      .max(1000)\n                      .optional()\n                      .nullable(),\n                    vatId: z\n                      .object({\n                        _id: z\n                          .string()\n                          .describe(\"Customer's tax ID.\")\n                          .optional(),\n                        type: z\n                          .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                          .describe(\n                            'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                          )\n                          .optional(),\n                      })\n                      .describe(\n                        'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                      )\n                      .optional(),\n                  })\n                  .describe('Contact details.')\n                  .optional(),\n              })\n              .describe(\n                \"Final recipient's address and contact details.\\n\\nThis field represents who will ultimately receive the order. It may differ from `shippingInfo.logistics.shippingDestination` when:\\n+ The chosen shipping option is a pickup point or store pickup, where `shippingDestination` contains the pickup location.\\n+ No shipping option is selected.\"\n              )\n              .optional(),\n            tags: z\n              .object({\n                privateTags: z\n                  .object({ tagIds: z.array(z.string()).max(100).optional() })\n                  .describe(\n                    'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n                  )\n                  .optional(),\n                tags: z\n                  .object({ tagIds: z.array(z.string()).max(100).optional() })\n                  .describe(\n                    'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Order tags.\\n\\n[Tags](https://dev.wix.com/docs/rest/business-management/tags/introduction) are labels attached to entities, allowing for flexible categorization and data management.'\n              )\n              .optional(),\n            purchasedDate: z\n              .date()\n              .describe(\n                'Date and time the order was originally purchased in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.\\nUsed for migration from external systems.'\n              )\n              .optional()\n              .nullable(),\n            businessLocation: z\n              .object({\n                _id: z\n                  .string()\n                  .describe(\n                    'Location ID.\\nLearn more about the [Wix Locations API](https://dev.wix.com/docs/rest/business-management/locations/introduction).'\n                  )\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                name: z\n                  .string()\n                  .describe('Location name.')\n                  .min(1)\n                  .max(500)\n                  .optional(),\n              })\n              .describe('Order location.')\n              .optional(),\n            payAfterFreeTrial: z\n              .object({\n                subtotal: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Subtotal of all line items, before discounts and before tax.'\n                  )\n                  .optional(),\n                shipping: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total shipping price, before discounts and before tax.'\n                  )\n                  .optional(),\n                tax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total tax applied to the order.')\n                  .optional(),\n                discount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total discount amount applied to the order.')\n                  .optional(),\n                total: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\"Order's total price after discounts and tax.\")\n                  .optional(),\n                totalAdditionalFees: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total additional fees before tax.')\n                  .optional(),\n              })\n              .describe(\n                'Pay after free trial price summary. Price summary that should be paid for subscriptions after free trial period.'\n              )\n              .optional(),\n            platformFeeSummary: z\n              .object({\n                total: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Total sum of all platform fees.')\n                  .optional(),\n                totalPassOn: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total amount of platform fees with `PASS_ON` charge type.'\n                  )\n                  .optional(),\n                totalAbsorbed: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Total amount of platform fees with `ABSORBED` charge type.'\n                  )\n                  .optional(),\n                fees: z\n                  .array(\n                    z.object({\n                      name: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                            )\n                            .min(1)\n                            .max(200)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                            )\n                            .min(1)\n                            .max(400)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Platform fee name.')\n                        .optional(),\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Platform fee amount.')\n                        .optional(),\n                      lineItemId: z\n                        .string()\n                        .describe(\n                          'ID of the line item the platform fee applies to.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                      chargeType: z\n                        .enum(['PASS_ON', 'ABSORBED'])\n                        .describe('Platform fee charge type.')\n                        .optional(),\n                      percentageRate: z\n                        .string()\n                        .describe(\n                          'Percentage rate charged as platform fee.\\nThe fee rate percentage expressed as a decimal fraction between 0 and 1. For example, `0.05` for 5%.'\n                        )\n                        .optional(),\n                    })\n                  )\n                  .max(300)\n                  .optional(),\n              })\n              .describe(\n                'Summary of platform fees for this order, including totals by charge type and a breakdown of individual fees.'\n              )\n              .optional(),\n          })\n          .describe(\n            'Updated order.\\n\\nReturned when `returnFullEntity = true`.'\n          )\n          .optional(),\n      })\n    )\n    .min(1)\n    .max(100)\n    .optional(),\n  bulkActionMetadata: z\n    .object({\n      totalSuccesses: z\n        .number()\n        .int()\n        .describe('Number of items that were successfully processed.')\n        .optional(),\n      totalFailures: z\n        .number()\n        .int()\n        .describe(\"Number of items that couldn't be processed.\")\n        .optional(),\n      undetailedFailures: z\n        .number()\n        .int()\n        .describe(\n          'Number of failures without details because detailed failure threshold was exceeded.'\n        )\n        .optional(),\n    })\n    .describe('Bulk action metadata.')\n    .optional(),\n});\nexport const AddActivitiesRequest = z.object({\n  orderId: z\n    .string()\n    .describe('ID of the order to add activities to.')\n    .regex(\n      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n      'Must be a valid GUID'\n    ),\n  options: z\n    .object({\n      orderActivities: z\n        .array(\n          z.intersection(\n            z.object({\n              _id: z\n                .string()\n                .describe('Activity ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              authorEmail: z\n                .string()\n                .describe(\"Activity author's email.\")\n                .email()\n                .optional()\n                .nullable(),\n              _createdDate: z\n                .date()\n                .describe('Activity creation date and time.')\n                .optional()\n                .nullable(),\n              type: z\n                .enum([\n                  'ORDER_REFUNDED',\n                  'ORDER_PLACED',\n                  'ORDER_PAID',\n                  'ORDER_FULFILLED',\n                  'ORDER_NOT_FULFILLED',\n                  'ORDER_CANCELED',\n                  'DOWNLOAD_LINK_SENT',\n                  'TRACKING_NUMBER_ADDED',\n                  'TRACKING_NUMBER_EDITED',\n                  'TRACKING_LINK_ADDED',\n                  'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                  'INVOICE_ADDED',\n                  'INVOICE_REMOVED',\n                  'INVOICE_SENT',\n                  'FULFILLER_EMAIL_SENT',\n                  'SHIPPING_ADDRESS_EDITED',\n                  'EMAIL_EDITED',\n                  'PICKUP_READY_EMAIL_SENT',\n                  'CUSTOM_ACTIVITY',\n                  'MERCHANT_COMMENT',\n                  'ORDER_PARTIALLY_PAID',\n                  'DRAFT_ORDER_CHANGES_APPLIED',\n                  'SAVED_PAYMENT_METHOD',\n                  'AUTHORIZED_PAYMENT_CREATED',\n                  'AUTHORIZED_PAYMENT_CAPTURED',\n                  'AUTHORIZED_PAYMENT_VOIDED',\n                  'REFUND_INITIATED',\n                  'PAYMENT_REFUNDED',\n                  'PAYMENT_REFUND_FAILED',\n                  'REFUNDED_AS_STORE_CREDIT',\n                  'PAYMENT_PENDING',\n                  'PAYMENT_CANCELED',\n                  'PAYMENT_DECLINED',\n                  'ORDER_PENDING',\n                  'ORDER_REJECTED',\n                  'RECEIPT_CREATED',\n                  'RECEIPT_SENT',\n                  'CHARGEBACK_CREATED',\n                  'CHARGEBACK_REVERSED',\n                ])\n                .optional(),\n              activityType: z.enum([\n                'ORDER_PLACED',\n                'ORDER_PAID',\n                'ORDER_FULFILLED',\n                'ORDER_NOT_FULFILLED',\n                'ORDER_CANCELED',\n                'DOWNLOAD_LINK_SENT',\n                'TRACKING_NUMBER_ADDED',\n                'TRACKING_NUMBER_EDITED',\n                'TRACKING_LINK_ADDED',\n                'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                'INVOICE_ADDED',\n                'INVOICE_REMOVED',\n                'INVOICE_SENT',\n                'FULFILLER_EMAIL_SENT',\n                'SHIPPING_ADDRESS_EDITED',\n                'EMAIL_EDITED',\n                'PICKUP_READY_EMAIL_SENT',\n                'MERCHANT_COMMENT',\n                'ORDER_PARTIALLY_PAID',\n                'DRAFT_ORDER_CHANGES_APPLIED',\n                'SAVED_PAYMENT_METHOD',\n                'AUTHORIZED_PAYMENT_CREATED',\n                'AUTHORIZED_PAYMENT_CAPTURED',\n                'AUTHORIZED_PAYMENT_VOIDED',\n                'REFUND_INITIATED',\n                'PAYMENT_REFUNDED',\n                'PAYMENT_REFUND_FAILED',\n                'REFUNDED_AS_STORE_CREDIT',\n                'PAYMENT_PENDING',\n                'PAYMENT_CANCELED',\n                'PAYMENT_DECLINED',\n                'ORDER_PENDING',\n                'ORDER_REJECTED',\n                'RECEIPT_CREATED',\n                'RECEIPT_SENT',\n                'CHARGEBACK_CREATED',\n                'CHARGEBACK_REVERSED',\n                'ORDER_REFUNDED',\n              ]),\n            }),\n            z.xor([\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n              }),\n              z.object({\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                merchantComment: z\n                  .object({\n                    message: z\n                      .string()\n                      .describe('Merchant comment message.')\n                      .min(1)\n                      .max(5000)\n                      .optional(),\n                  })\n                  .describe(\n                    'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                orderRefunded: z\n                  .object({\n                    manual: z\n                      .boolean()\n                      .describe(\n                        'Whether order was refunded manually. For example, via payment provider or using cash.'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(200)\n                      .optional(),\n                  })\n                  .describe(\n                    'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                draftOrderChangesApplied: z\n                  .object({\n                    draftOrderId: z\n                      .string()\n                      .describe('Draft order id.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for edit, given by user (optional).')\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    changes: z\n                      .array(\n                        z.intersection(\n                          z.object({}),\n                          z.xor([\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                            }),\n                            z.object({\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemChanged: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name after change.')\n                                  .optional(),\n                                quantity: z\n                                  .object({\n                                    originalQuantity: z\n                                      .number()\n                                      .int()\n                                      .describe('Item quantity before update.')\n                                      .min(0)\n                                      .max(1000000)\n                                      .optional(),\n                                    newQuantity: z\n                                      .number()\n                                      .int()\n                                      .describe('Item quantity after update.')\n                                      .min(0)\n                                      .max(1000000)\n                                      .optional(),\n                                    diff: z\n                                      .number()\n                                      .int()\n                                      .describe(\n                                        'Difference between original and new quantity. Absolute value.'\n                                      )\n                                      .min(1)\n                                      .max(1000000)\n                                      .optional(),\n                                    deltaType: z\n                                      .enum([\n                                        'QUANTITY_INCREASED',\n                                        'QUANTITY_DECREASED',\n                                      ])\n                                      .describe(\n                                        'Type of quantity change: increase or decrease.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item quantity change.')\n                                  .optional(),\n                                price: z\n                                  .object({\n                                    originalPrice: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Item price before update.')\n                                      .optional(),\n                                    newPrice: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Item price after update.')\n                                      .optional(),\n                                  })\n                                  .describe('Item price change.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name.')\n                                  .optional(),\n                                quantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Added or removed item quantity.')\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name.')\n                                  .optional(),\n                                quantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Added or removed item quantity.')\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              discountAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Discount id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe(\n                                    'Discount name: coupon name / discount rule name / merchant discount description.'\n                                  )\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Discount amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              discountRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Discount id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe(\n                                    'Discount name: coupon name / discount rule name / merchant discount description.'\n                                  )\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Discount amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              additionalFeeAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Additional fee id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Additional fee name.')\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Additional fee amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              additionalFeeRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Additional fee id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Additional fee name.')\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Additional fee amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              totalPriceChanged: z.object({\n                                originalTotal: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s total price after discounts and tax. Before update'\n                                  )\n                                  .optional(),\n                                newTotal: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s total price after discounts and tax. After update'\n                                  )\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.object({\n                                originalShippingInfo: z\n                                  .object({\n                                    total: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Order’s shipping price.')\n                                      .optional(),\n                                    shippingTitle: z\n                                      .string()\n                                      .describe('Order’s shipping title.')\n                                      .max(250)\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s Shipping Information. Before update'\n                                  )\n                                  .optional(),\n                                newShippingInfo: z\n                                  .object({\n                                    total: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Order’s shipping price.')\n                                      .optional(),\n                                    shippingTitle: z\n                                      .string()\n                                      .describe('Order’s shipping title.')\n                                      .max(250)\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s Shipping Information. After update'\n                                  )\n                                  .optional(),\n                              }),\n                            }),\n                          ])\n                        )\n                      )\n                      .optional(),\n                  })\n                  .describe('Details of changes made by the Draft Orders API.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                savedPaymentMethod: z\n                  .object({\n                    name: z\n                      .string()\n                      .describe('Payment method name.')\n                      .min(1)\n                      .max(100)\n                      .optional(),\n                    description: z\n                      .string()\n                      .describe('Payment method description.')\n                      .min(1)\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Details of the payment method saved for the order.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentCreated: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment created.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentCaptured: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment captured.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentVoided: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment voided.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                refundInitiated: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    payments: z\n                      .array(\n                        z.intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe('Payment ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            externalRefund: z\n                              .boolean()\n                              .describe(\n                                \"Whether refund was made externally and manually on the payment provider's side.\"\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                            }),\n                            z.object({\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                              regular: z\n                                .object({\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                  lastFourDigits: z\n                                    .string()\n                                    .describe(\n                                      'The last 4 digits of the card number.'\n                                    )\n                                    .max(4)\n                                    .optional()\n                                    .nullable(),\n                                  brand: z\n                                    .string()\n                                    .describe(\"Card issuer's brand.\")\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Regular payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              membership: z.never().optional(),\n                              giftCard: z\n                                .object({\n                                  giftCardPaymentId: z\n                                    .string()\n                                    .describe('Gift card payment ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                })\n                                .describe('Gift card payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z\n                                .object({\n                                  membershipId: z\n                                    .string()\n                                    .describe('Membership ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Membership payment refund.'),\n                            }),\n                          ])\n                        )\n                      )\n                      .min(1)\n                      .max(50)\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentRefunded: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    payment: z\n                      .intersection(\n                        z.object({\n                          paymentId: z\n                            .string()\n                            .describe('Payment ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          externalRefund: z\n                            .boolean()\n                            .describe(\n                              \"Whether refund was made externally and manually on the payment provider's side.\"\n                            )\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                          }),\n                          z.object({\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                            regular: z\n                              .object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Regular payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            membership: z.never().optional(),\n                            giftCard: z\n                              .object({\n                                giftCardPaymentId: z\n                                  .string()\n                                  .describe('Gift card payment ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                              })\n                              .describe('Gift card payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z\n                              .object({\n                                membershipId: z\n                                  .string()\n                                  .describe('Membership ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Membership payment refund.'),\n                          }),\n                        ])\n                      )\n                      .describe('Details about the refunded payment.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentRefundFailed: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    payment: z\n                      .intersection(\n                        z.object({\n                          paymentId: z\n                            .string()\n                            .describe('Payment ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          externalRefund: z\n                            .boolean()\n                            .describe(\n                              \"Whether refund was made externally and manually on the payment provider's side.\"\n                            )\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                          }),\n                          z.object({\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                            regular: z\n                              .object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Regular payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            membership: z.never().optional(),\n                            giftCard: z\n                              .object({\n                                giftCardPaymentId: z\n                                  .string()\n                                  .describe('Gift card payment ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                              })\n                              .describe('Gift card payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z\n                              .object({\n                                membershipId: z\n                                  .string()\n                                  .describe('Membership ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Membership payment refund.'),\n                          }),\n                        ])\n                      )\n                      .describe('Details about the failed payment refund.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                refundedAsStoreCredit: z\n                  .object({\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of refund to store credit.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentPending: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a pending payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentCanceled: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a canceled payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentDeclined: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a declined payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                receiptCreated: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z.never().optional(),\n                      }),\n                      z.object({\n                        externalReceipt: z.never().optional(),\n                        wixReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by Wix.'),\n                      }),\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by an external system.'),\n                      }),\n                    ])\n                  )\n                  .describe('Receipt was added for associated payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                receiptSent: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z.never().optional(),\n                      }),\n                      z.object({\n                        externalReceipt: z.never().optional(),\n                        wixReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by Wix.'),\n                      }),\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by an external system.'),\n                      }),\n                    ])\n                  )\n                  .describe('Receipt sent to customer.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                chargebackCreated: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe('ID of the payment that received a chargeback.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    chargebackId: z\n                      .string()\n                      .describe('Chargeback ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback amount.')\n                      .optional(),\n                    paymentDetails: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Payment details.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Order received a chargeback for one of its payments.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'ID of the payment involved with the chargeback.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    chargebackId: z\n                      .string()\n                      .describe('Chargeback ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback amount.')\n                      .optional(),\n                    reversalAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback reversal amount.')\n                      .optional(),\n                    paymentDetails: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Payment details.')\n                      .optional(),\n                  })\n                  .describe(\n                    \"Chargeback reversed for one of the order's payments.\"\n                  ),\n              }),\n            ])\n          )\n        )\n        .max(300)\n        .optional(),\n    })\n    .optional(),\n});\nexport const AddActivitiesResponse = z.object({\n  order: z\n    .object({\n      _id: z\n        .string()\n        .describe('Order ID.')\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      number: z\n        .string()\n        .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n        .describe(\n          \"Order number displayed in the site owner's dashboard (auto-generated).\"\n        )\n        .optional(),\n      _createdDate: z\n        .date()\n        .describe(\n          'Date and time the order was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n        )\n        .optional()\n        .nullable(),\n      _updatedDate: z\n        .date()\n        .describe(\n          'Date and time the order was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n        )\n        .optional()\n        .nullable(),\n      lineItems: z\n        .array(\n          z.object({\n            _id: z.string().describe('Line item ID.').optional(),\n            productName: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                  )\n                  .min(1)\n                  .max(200)\n                  .optional(),\n                translated: z\n                  .string()\n                  .describe(\n                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(400)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Item name.\\n\\n+ Stores - `product.name`\\n+ Bookings - `service.info.name`\\n+ Events - `ticket.name`'\n              )\n              .optional(),\n            catalogReference: z\n              .object({\n                catalogItemId: z\n                  .string()\n                  .describe('ID of the item within the catalog it belongs to.')\n                  .min(1)\n                  .max(36)\n                  .optional(),\n                appId: z\n                  .string()\n                  .describe(\n                    'ID of the app providing the catalog.\\n\\nYou can get your app\\'s ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\\n\\nFor items from Wix catalogs, the following values always apply:\\n+ Wix Stores: `\"215238eb-22a5-4c36-9e7b-e7c08025e04e\"`\\n+ Wix Bookings: `\"13d21c63-b5ec-5912-8397-c3a5ddb27a97\"`\\n+ Wix Restaurants: `\"9a5d83fd-8570-482e-81ab-cfa88942ee60\"`'\n                  )\n                  .min(1)\n                  .optional(),\n                options: z\n                  .record(z.string(), z.any())\n                  .describe(\n                    'Additional item details in `key:value` pairs.\\n\\nUse this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items.\\n\\nFor Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration)\\nor [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction).'\n                  )\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                \"References to the line item's origin catalog. Empty for custom line items.\"\n              )\n              .optional(),\n            quantity: z\n              .number()\n              .int()\n              .describe('Line item quantity.')\n              .min(1)\n              .max(100000)\n              .optional(),\n            totalDiscount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Total discount for this line item's entire quantity.\")\n              .optional(),\n            descriptionLines: z\n              .array(\n                z.intersection(\n                  z.object({\n                    name: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                          )\n                          .max(100)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"Description line name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Description line name.')\n                      .optional(),\n                  }),\n                  z.xor([\n                    z.object({\n                      plainText: z.never().optional(),\n                      colorInfo: z.never().optional(),\n                    }),\n                    z.object({\n                      colorInfo: z.never().optional(),\n                      plainText: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                            )\n                            .max(600)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"Description line plain text value translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                            )\n                            .max(600)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Description line plain text value.'),\n                    }),\n                    z.object({\n                      plainText: z.never().optional(),\n                      colorInfo: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                            )\n                            .max(500)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"Description line color name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                            )\n                            .max(500)\n                            .optional()\n                            .nullable(),\n                          code: z\n                            .string()\n                            .describe('HEX or RGB color code for display.')\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Description line color value.'),\n                    }),\n                  ])\n                )\n              )\n              .min(0)\n              .max(20)\n              .optional(),\n            image: z.string().describe('Line item image.').optional(),\n            physicalProperties: z\n              .object({\n                weight: z\n                  .number()\n                  .describe(\n                    'Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request.'\n                  )\n                  .optional()\n                  .nullable(),\n                sku: z\n                  .string()\n                  .describe(\n                    'Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).'\n                  )\n                  .max(40)\n                  .optional()\n                  .nullable(),\n                shippable: z\n                  .boolean()\n                  .describe('Whether this line item is shippable.')\n                  .optional(),\n              })\n              .describe(\n                'Physical properties of the item. When relevant, contains information such as SKU and item weight.'\n              )\n              .optional(),\n            itemType: z\n              .intersection(\n                z.object({}),\n                z.xor([\n                  z.object({\n                    preset: z.never().optional(),\n                    custom: z.never().optional(),\n                  }),\n                  z.object({\n                    custom: z.never().optional(),\n                    preset: z\n                      .enum([\n                        'UNRECOGNISED',\n                        'PHYSICAL',\n                        'DIGITAL',\n                        'GIFT_CARD',\n                        'SERVICE',\n                      ])\n                      .describe('Preset item type.'),\n                  }),\n                  z.object({\n                    preset: z.never().optional(),\n                    custom: z\n                      .string()\n                      .describe(\n                        'Custom item type. When none of the preset types are suitable, specifies the custom type.'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Item type. Either a preset type or custom.')\n              .optional(),\n            fulfillerId: z\n              .string()\n              .describe(\n                'Fulfiller ID. Field is empty when the line item is self-fulfilled.\\nTo get fulfillment information, pass the order ID to [List Fulfillments For Single Order](https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/order-fulfillments/list-fulfillments-for-single-order).'\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            refundQuantity: z\n              .number()\n              .int()\n              .describe('Number of items that were refunded.')\n              .min(0)\n              .max(100000)\n              .optional()\n              .nullable(),\n            restockQuantity: z\n              .number()\n              .int()\n              .describe(\n                'Number of items restocked.\\n\\nFor a per-location breakdown, see `restockLocations`.'\n              )\n              .min(0)\n              .max(100000)\n              .optional()\n              .nullable(),\n            price: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Line item price after line item discounts for display purposes.'\n              )\n              .optional(),\n            priceBeforeDiscounts: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Line item price before line item discounts for display purposes. Defaults to `price` when not provided.'\n              )\n              .optional(),\n            totalPriceBeforeTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total price after discounts, and before tax.')\n              .optional(),\n            totalPriceAfterTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total price after all discounts and tax.')\n              .optional(),\n            paymentOption: z\n              .enum([\n                'FULL_PAYMENT_ONLINE',\n                'FULL_PAYMENT_OFFLINE',\n                'MEMBERSHIP',\n                'DEPOSIT_ONLINE',\n                'MEMBERSHIP_OFFLINE',\n                'MEMBERSHIP_ONLINE_WITH_OFFLINE_REMAINDER',\n              ])\n              .describe(\n                'Type of selected payment option for current item.\\n\\nDefault: `FULL_PAYMENT_ONLINE`'\n              )\n              .optional(),\n            taxDetails: z\n              .object({\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Taxable amount of this line item.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe(\n                    'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                  )\n                  .optional(),\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Deprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.\\nTax details for this line item.'\n              )\n              .optional(),\n            taxInfo: z\n              .object({\n                taxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                  )\n                  .optional(),\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Amount for which tax is calculated.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe('Tax rate %, as a decimal point.')\n                  .optional()\n                  .nullable(),\n                taxGroupId: z\n                  .string()\n                  .describe('Tax group ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                taxIncludedInPrice: z\n                  .boolean()\n                  .describe('Indicates whether the price already includes tax.')\n                  .optional(),\n                taxBreakdown: z\n                  .array(\n                    z.object({\n                      jurisdiction: z\n                        .string()\n                        .describe(\n                          'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      rate: z\n                        .string()\n                        .describe(\n                          'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Amount of tax calculated for this line item.'\n                        )\n                        .optional(),\n                      taxType: z\n                        .string()\n                        .describe(\n                          'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      taxName: z\n                        .string()\n                        .describe(\n                          'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      jurisdictionType: z\n                        .enum([\n                          'UNDEFINED',\n                          'COUNTRY',\n                          'STATE',\n                          'COUNTY',\n                          'CITY',\n                          'SPECIAL',\n                        ])\n                        .describe(\n                          'Type of jurisdiction that taxes were calculated for.'\n                        )\n                        .optional(),\n                      nonTaxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Non-taxable amount of the line item price.')\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of the line item price.')\n                        .optional(),\n                    })\n                  )\n                  .max(7)\n                  .optional(),\n              })\n              .describe(\n                'Represents all the relevant tax details for a specific line item.'\n              )\n              .optional(),\n            digitalFile: z\n              .object({\n                fileId: z\n                  .string()\n                  .describe('ID of the secure file in media.')\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                link: z\n                  .string()\n                  .describe(\n                    'Link will exist after the digital links have been generated on the order.'\n                  )\n                  .url()\n                  .min(1)\n                  .max(2000)\n                  .optional()\n                  .nullable(),\n                expirationDate: z\n                  .date()\n                  .describe('Link expiration time and date.')\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Digital file identifier, relevant only for items with type DIGITAL.'\n              )\n              .optional(),\n            subscriptionInfo: z\n              .object({\n                _id: z\n                  .string()\n                  .describe('Subscription ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                cycleNumber: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Subscription cycle. For example, if this order is for the 3rd cycle of a subscription, value will be `3`.'\n                  )\n                  .min(0)\n                  .optional(),\n                subscriptionOptionTitle: z\n                  .string()\n                  .describe(\n                    'Subscription option title. For example, `\"Monthly coffee Subscription\"`.'\n                  )\n                  .min(0)\n                  .max(150)\n                  .optional(),\n                subscriptionOptionDescription: z\n                  .string()\n                  .describe(\n                    'Subscription option description. For example, `\"1kg of selected coffee, once a month\"`.'\n                  )\n                  .max(500)\n                  .optional()\n                  .nullable(),\n                subscriptionSettings: z\n                  .object({\n                    frequency: z\n                      .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                      .describe('Frequency of recurring payment.')\n                      .optional(),\n                    interval: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of frequency units in a billing cycle. For example, frequency `MONTH` with interval `3` means billing every 3 months.'\n                      )\n                      .min(1)\n                      .max(3650)\n                      .optional()\n                      .nullable(),\n                    autoRenewal: z\n                      .boolean()\n                      .describe(\n                        'Whether subscription is renewed automatically at the end of each period.'\n                      )\n                      .optional(),\n                    billingCycles: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.'\n                      )\n                      .min(1)\n                      .optional()\n                      .nullable(),\n                    enableCustomerCancellation: z\n                      .boolean()\n                      .describe(\n                        'Whether to allow the customer to cancel the subscription.'\n                      )\n                      .optional(),\n                    freeTrialPeriod: z\n                      .object({\n                        frequency: z\n                          .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                          .describe(\n                            'Frequency of period. Values: DAY, WEEK, MONTH, YEAR'\n                          )\n                          .optional(),\n                        interval: z\n                          .number()\n                          .int()\n                          .describe(\n                            'Number of frequency units in the free trial period. For example, frequency `MONTH` with interval `3` means a 3-month free trial.'\n                          )\n                          .min(1)\n                          .max(3650)\n                          .optional(),\n                      })\n                      .describe(\n                        'Period until first cycle starts. If None => no free trial'\n                      )\n                      .optional(),\n                  })\n                  .describe('Subscription detailed information.')\n                  .optional(),\n                chargesDescription: z\n                  .string()\n                  .describe(\n                    'Description of the charges that will be applied for subscription.'\n                  )\n                  .max(1000)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Subscription info.')\n              .optional(),\n            priceDescription: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                translated: z\n                  .string()\n                  .describe(\n                    \"Price description translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - \"Starts at $67\".'\n              )\n              .optional(),\n            depositAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Item\\'s price amount to be charged during checkout. Relevant for items with a `paymentOption` value of `\"DEPOSIT_ONLINE\"`.'\n              )\n              .optional(),\n            locations: z\n              .array(\n                z.object({\n                  _id: z\n                    .string()\n                    .describe('Location id in the associated owner app.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                  appId: z\n                    .string()\n                    .describe(\n                      'Location owner app, if not provided then the site business info locations will be used.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  quantity: z\n                    .number()\n                    .int()\n                    .describe('Quantity for specific location.')\n                    .min(1)\n                    .max(100000)\n                    .optional(),\n                  name: z\n                    .string()\n                    .describe('Location name.')\n                    .max(500)\n                    .optional()\n                    .nullable(),\n                })\n              )\n              .min(0)\n              .max(5)\n              .optional(),\n            lineItemPrice: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Total price **after** catalog discounts and line item discounts.'\n              )\n              .optional(),\n            taxableAddress: z\n              .intersection(\n                z.object({}),\n                z.xor([\n                  z.object({ addressType: z.never().optional() }),\n                  z.object({\n                    addressType: z\n                      .enum(['BUSINESS', 'BILLING', 'SHIPPING'])\n                      .describe(\n                        'taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly.'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Address used for tax calculation.')\n              .optional(),\n            priceUndetermined: z\n              .boolean()\n              .describe(\n                'Whether the price is not yet defined, and will be updated after the order is created.\\n\\nDefault: `false`'\n              )\n              .optional(),\n            extendedFields: z\n              .object({\n                namespaces: z\n                  .record(z.string(), z.record(z.string(), z.any()))\n                  .describe(\n                    'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Custom extended fields for the line item object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n              )\n              .optional(),\n            modifierGroups: z\n              .array(\n                z.object({\n                  _id: z\n                    .string()\n                    .describe('Modifier group ID.')\n                    .min(1)\n                    .max(36)\n                    .optional(),\n                  name: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                        )\n                        .min(1)\n                        .max(200)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                        )\n                        .min(1)\n                        .max(400)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Modifier group name.')\n                    .optional(),\n                  modifiers: z\n                    .array(\n                      z.object({\n                        _id: z\n                          .string()\n                          .describe('Modifier ID.')\n                          .min(1)\n                          .max(36)\n                          .optional(),\n                        quantity: z\n                          .number()\n                          .int()\n                          .describe('The quantity of this modifier.')\n                          .min(1)\n                          .max(100000)\n                          .optional()\n                          .nullable(),\n                        label: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                              )\n                              .min(1)\n                              .max(200)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                              )\n                              .min(1)\n                              .max(400)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Primary display label for the modifier.')\n                          .optional(),\n                        details: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                              )\n                              .min(1)\n                              .max(200)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                              )\n                              .min(1)\n                              .max(400)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Additional details.')\n                          .optional(),\n                        price: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('The price of the modifier.')\n                          .optional(),\n                      })\n                    )\n                    .min(1)\n                    .max(10)\n                    .optional(),\n                })\n              )\n              .max(10)\n              .optional(),\n          })\n        )\n        .min(1)\n        .max(300)\n        .optional(),\n      buyerInfo: z\n        .intersection(\n          z.object({\n            contactId: z\n              .string()\n              .describe(\n                \"Contact ID. Automatically created if one doesn't exist. For more information, see [Contacts API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts/contact-v4/introduction).\"\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            email: z\n              .string()\n              .describe(\"Buyer's email address.\")\n              .email()\n              .optional()\n              .nullable(),\n          }),\n          z.xor([\n            z.object({\n              visitorId: z.never().optional(),\n              memberId: z.never().optional(),\n            }),\n            z.object({\n              memberId: z.never().optional(),\n              visitorId: z\n                .string()\n                .describe(\n                  \"Visitor ID. Returned when the buyer isn't a logged-in site member.\"\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              visitorId: z.never().optional(),\n              memberId: z\n                .string()\n                .describe(\n                  'Member ID. Returned when the buyer is a logged-in site member.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n          ])\n        )\n        .describe('Buyer information.')\n        .optional(),\n      paymentStatus: z\n        .enum([\n          'UNSPECIFIED',\n          'NOT_PAID',\n          'PAID',\n          'PARTIALLY_REFUNDED',\n          'FULLY_REFUNDED',\n          'PENDING',\n          'PARTIALLY_PAID',\n          'PENDING_MERCHANT',\n          'CANCELED',\n          'DECLINED',\n        ])\n        .describe('Order payment status.')\n        .optional(),\n      fulfillmentStatus: z\n        .enum(['NOT_FULFILLED', 'FULFILLED', 'PARTIALLY_FULFILLED'])\n        .describe('Order fulfillment status.')\n        .optional(),\n      buyerLanguage: z\n        .string()\n        .describe(\n          'Language for communication with the buyer. Defaults to the site language.\\nFor a site that supports multiple languages, this is the language the buyer selected.'\n        )\n        .optional()\n        .nullable(),\n      weightUnit: z\n        .enum(['UNSPECIFIED_WEIGHT_UNIT', 'KG', 'LB'])\n        .describe(\"Weight measurement unit - defaults to site's weight unit.\")\n        .optional(),\n      currency: z\n        .string()\n        .describe(\n          'Currency used for the pricing of this order in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.'\n        )\n        .optional()\n        .nullable(),\n      currencyConversionDetails: z\n        .object({\n          originalCurrency: z\n            .string()\n            .describe(\n              \"Currency used for the pricing of this order, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.\\n\\nThis currency is used to calculate the pricing before conversion to the buyer's payment currency.\"\n            )\n            .optional()\n            .nullable(),\n          conversionRate: z\n            .string()\n            .describe(\n              'The rate used for converting the original currency to the currency used for payment.'\n            )\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Currency conversion details. For use with multi-currency sites.'\n        )\n        .optional(),\n      taxIncludedInPrices: z\n        .boolean()\n        .describe('Whether tax is included in line item prices.')\n        .optional(),\n      siteLanguage: z\n        .string()\n        .describe('Site language in which original values are shown.')\n        .optional()\n        .nullable(),\n      priceSummary: z\n        .object({\n          subtotal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Subtotal of all line items, before discounts and before tax.'\n            )\n            .optional(),\n          shipping: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total shipping price, before discounts and before tax.')\n            .optional(),\n          tax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax applied to the order.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total discount amount applied to the order.')\n            .optional(),\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\"Order's total price after discounts and tax.\")\n            .optional(),\n          totalAdditionalFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total additional fees before tax.')\n            .optional(),\n        })\n        .describe('Order price summary.')\n        .optional(),\n      billingInfo: z\n        .object({\n          address: z\n            .object({\n              streetAddress: z\n                .object({\n                  name: z.string().optional(),\n                  number: z.string().optional(),\n                })\n                .optional(),\n              city: z.string().optional().nullable(),\n              subdivision: z.string().optional().nullable(),\n              country: z.string().optional().nullable(),\n              postalCode: z.string().optional().nullable(),\n              addressLine2: z.string().optional().nullable(),\n            })\n            .describe('Address.')\n            .optional(),\n          contactDetails: z\n            .object({\n              firstName: z\n                .string()\n                .describe('First name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              lastName: z\n                .string()\n                .describe('Last name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              phone: z.string().describe('Phone number.').optional().nullable(),\n              company: z\n                .string()\n                .describe('Company name.')\n                .max(1000)\n                .optional()\n                .nullable(),\n              vatId: z\n                .object({\n                  _id: z.string().describe(\"Customer's tax ID.\").optional(),\n                  type: z\n                    .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                    .describe(\n                      'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                    )\n                    .optional(),\n                })\n                .describe(\n                  'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                )\n                .optional(),\n            })\n            .describe('Contact details.')\n            .optional(),\n        })\n        .describe('Billing address and contact details.')\n        .optional(),\n      shippingInfo: z\n        .object({\n          carrierId: z\n            .string()\n            .describe(\n              'App Def Id of external provider which was a source of shipping info'\n            )\n            .min(1)\n            .max(100)\n            .optional()\n            .nullable(),\n          code: z\n            .string()\n            .describe(\n              'Unique code (or ID) of selected shipping option. For example, `\"usps_std_overnight\"`.'\n            )\n            .min(1)\n            .max(100)\n            .optional()\n            .nullable(),\n          title: z\n            .string()\n            .describe(\n              'Shipping option title.\\nFor example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.'\n            )\n            .max(250)\n            .optional(),\n          logistics: z\n            .intersection(\n              z.object({\n                deliveryTime: z\n                  .string()\n                  .describe(\n                    'Expected delivery time in free text. For example, `\"3-5 business days\"`.'\n                  )\n                  .max(500)\n                  .optional()\n                  .nullable(),\n                instructions: z\n                  .string()\n                  .describe(\n                    'Instructions for the carrier. For example, `\"Please knock on the door. If unanswered, please call contact number.\"`.'\n                  )\n                  .max(1000)\n                  .optional()\n                  .nullable(),\n                deliverByDate: z\n                  .date()\n                  .describe(\n                    'Deprecated - Latest expected delivery date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                  )\n                  .optional()\n                  .nullable(),\n                deliveryTimeSlot: z\n                  .object({\n                    from: z\n                      .date()\n                      .describe('Delivery slot starting time.')\n                      .optional()\n                      .nullable(),\n                    to: z\n                      .date()\n                      .describe('Delivery slot ending time.')\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Expected delivery time slot with start and end times.'\n                  )\n                  .optional(),\n              }),\n              z.xor([\n                z.object({\n                  shippingDestination: z.never().optional(),\n                  pickupDetails: z.never().optional(),\n                }),\n                z.object({\n                  pickupDetails: z.never().optional(),\n                  shippingDestination: z\n                    .object({\n                      address: z\n                        .object({\n                          streetAddress: z\n                            .object({\n                              name: z.string().optional(),\n                              number: z.string().optional(),\n                            })\n                            .optional(),\n                          city: z.string().optional().nullable(),\n                          subdivision: z.string().optional().nullable(),\n                          country: z.string().optional().nullable(),\n                          postalCode: z.string().optional().nullable(),\n                          addressLine2: z.string().optional().nullable(),\n                        })\n                        .describe('Address.')\n                        .optional(),\n                      contactDetails: z\n                        .object({\n                          firstName: z\n                            .string()\n                            .describe('First name.')\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          lastName: z\n                            .string()\n                            .describe('Last name.')\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          phone: z\n                            .string()\n                            .describe('Phone number.')\n                            .optional()\n                            .nullable(),\n                          company: z\n                            .string()\n                            .describe('Company name.')\n                            .max(1000)\n                            .optional()\n                            .nullable(),\n                          vatId: z\n                            .object({\n                              _id: z\n                                .string()\n                                .describe(\"Customer's tax ID.\")\n                                .optional(),\n                              type: z\n                                .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                                .describe(\n                                  'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                                )\n                                .optional(),\n                            })\n                            .describe(\n                              'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                            )\n                            .optional(),\n                        })\n                        .describe('Contact details.')\n                        .optional(),\n                    })\n                    .describe(\n                      \"Shipping destination address and contact details. For pickup orders, this contains the pickup location address, not the recipient's address.\"\n                    ),\n                }),\n                z.object({\n                  shippingDestination: z.never().optional(),\n                  pickupDetails: z\n                    .object({\n                      address: z\n                        .object({\n                          streetAddress: z\n                            .object({\n                              name: z.string().optional(),\n                              number: z.string().optional(),\n                            })\n                            .optional(),\n                          city: z.string().optional().nullable(),\n                          subdivision: z.string().optional().nullable(),\n                          country: z.string().optional().nullable(),\n                          postalCode: z.string().optional().nullable(),\n                          addressLine2: z.string().optional().nullable(),\n                        })\n                        .describe('Pickup address.')\n                        .optional(),\n                      pickupMethod: z\n                        .enum(['STORE_PICKUP', 'PICKUP_POINT'])\n                        .describe('Pickup method')\n                        .optional(),\n                    })\n                    .describe(\n                      'Pickup details for store pickup or pickup point orders.'\n                    ),\n                }),\n              ])\n            )\n            .describe('Shipping logistics.')\n            .optional(),\n          cost: z\n            .object({\n              price: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Shipping price for display purposes.')\n                .optional(),\n              totalPriceBeforeTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Total price of shipping after discounts (when relevant), and before tax.'\n                )\n                .optional(),\n              totalPriceAfterTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Shipping price after all discounts (if any exist), and after tax.'\n                )\n                .optional(),\n              taxDetails: z\n                .object({\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of this line item.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe(\n                      'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                    )\n                    .optional(),\n                  totalTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                    )\n                    .optional(),\n                })\n                .describe('Tax details.')\n                .optional(),\n              taxInfo: z\n                .object({\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                    )\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount for which tax is calculated.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe('Tax rate %, as a decimal point.')\n                    .optional()\n                    .nullable(),\n                  taxGroupId: z\n                    .string()\n                    .describe('Tax group ID.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxIncludedInPrice: z\n                    .boolean()\n                    .describe(\n                      'Indicates whether the price already includes tax.'\n                    )\n                    .optional(),\n                  taxBreakdown: z\n                    .array(\n                      z.object({\n                        jurisdiction: z\n                          .string()\n                          .describe(\n                            'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        rate: z\n                          .string()\n                          .describe(\n                            'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                          )\n                          .optional()\n                          .nullable(),\n                        taxAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Amount of tax calculated for this line item.'\n                          )\n                          .optional(),\n                        taxType: z\n                          .string()\n                          .describe(\n                            'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        taxName: z\n                          .string()\n                          .describe(\n                            'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        jurisdictionType: z\n                          .enum([\n                            'UNDEFINED',\n                            'COUNTRY',\n                            'STATE',\n                            'COUNTY',\n                            'CITY',\n                            'SPECIAL',\n                          ])\n                          .describe(\n                            'Type of jurisdiction that taxes were calculated for.'\n                          )\n                          .optional(),\n                        nonTaxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Non-taxable amount of the line item price.'\n                          )\n                          .optional(),\n                        taxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Taxable amount of the line item price.')\n                          .optional(),\n                      })\n                    )\n                    .max(7)\n                    .optional(),\n                })\n                .describe(\n                  'Represents all the relevant tax details for a shipping.'\n                )\n                .optional(),\n              discount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Shipping discount before tax.')\n                .optional(),\n            })\n            .describe('Shipping costs.')\n            .optional(),\n          region: z\n            .object({\n              name: z\n                .string()\n                .describe(\n                  'Name of shipping region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.'\n                )\n                .max(100)\n                .optional()\n                .nullable(),\n            })\n            .describe('Shipping region.')\n            .optional(),\n        })\n        .describe('Shipping info and selected shipping option details.')\n        .optional(),\n      buyerNote: z\n        .string()\n        .describe(\n          '[Buyer note](https://support.wix.com/en/article/wix-stores-viewing-buyer-notes) left by the customer.'\n        )\n        .max(1000)\n        .optional()\n        .nullable(),\n      status: z\n        .enum(['INITIALIZED', 'APPROVED', 'CANCELED', 'PENDING', 'REJECTED'])\n        .describe('Order status.')\n        .optional(),\n      archived: z\n        .boolean()\n        .describe('Whether order is archived.')\n        .optional()\n        .nullable(),\n      taxSummary: z\n        .object({\n          totalTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax.')\n            .optional(),\n        })\n        .describe(\n          'Tax summary.\\nDeprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.'\n        )\n        .optional(),\n      taxInfo: z\n        .object({\n          totalTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Calculated tax, added from line items.')\n            .optional(),\n          taxBreakdown: z\n            .array(\n              z.object({\n                taxName: z\n                  .string()\n                  .describe(\n                    'The name of the tax against which this tax amount was calculated.'\n                  )\n                  .max(200)\n                  .optional(),\n                taxType: z\n                  .string()\n                  .describe(\n                    \"The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.\"\n                  )\n                  .max(200)\n                  .optional(),\n                jurisdiction: z\n                  .string()\n                  .describe(\n                    'The name of the jurisdiction in which this tax detail applies.'\n                  )\n                  .max(200)\n                  .optional(),\n                jurisdictionType: z\n                  .enum([\n                    'UNDEFINED',\n                    'COUNTRY',\n                    'STATE',\n                    'COUNTY',\n                    'CITY',\n                    'SPECIAL',\n                  ])\n                  .describe(\n                    'The type of the jurisdiction in which this tax detail applies (e.g. Country,State,County,City,Special).'\n                  )\n                  .optional(),\n                rate: z\n                  .string()\n                  .describe('The rate at which this tax detail was calculated.')\n                  .optional(),\n                aggregatedTaxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The sum of all the tax from line items that calculated by the tax identifiers.'\n                  )\n                  .optional(),\n              })\n            )\n            .min(0)\n            .max(50)\n            .optional(),\n          taxExempt: z\n            .boolean()\n            .describe(\n              'Whether the order is exempt from tax calculations.\\n\\nDefault: `false`'\n            )\n            .optional()\n            .nullable(),\n        })\n        .describe('Tax information.')\n        .optional(),\n      appliedDiscounts: z\n        .array(\n          z.intersection(\n            z.object({\n              discountType: z\n                .enum(['GLOBAL', 'SPECIFIC_ITEMS', 'SHIPPING'])\n                .optional(),\n              lineItemIds: z.array(z.string()).min(0).max(300).optional(),\n              _id: z\n                .string()\n                .describe('Discount ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              lineItemDiscounts: z\n                .array(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Line item ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    totalDiscount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Total discount amount for this line item.')\n                      .optional(),\n                  })\n                )\n                .max(300)\n                .optional(),\n            }),\n            z.xor([\n              z.object({\n                coupon: z.never().optional(),\n                merchantDiscount: z.never().optional(),\n                discountRule: z.never().optional(),\n              }),\n              z.object({\n                merchantDiscount: z.never().optional(),\n                discountRule: z.never().optional(),\n                coupon: z\n                  .object({\n                    _id: z.string().describe('Coupon ID.').optional(),\n                    code: z.string().describe('Coupon code.').optional(),\n                    name: z.string().describe('Coupon name.').optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Coupon value.')\n                      .optional(),\n                  })\n                  .describe('Coupon applied by the customer.'),\n              }),\n              z.object({\n                coupon: z.never().optional(),\n                discountRule: z.never().optional(),\n                merchantDiscount: z\n                  .intersection(\n                    z.object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Discount amount.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        discountReason: z.never().optional(),\n                        description: z.never().optional(),\n                      }),\n                      z.object({\n                        description: z.never().optional(),\n                        discountReason: z\n                          .enum([\n                            'UNSPECIFIED',\n                            'EXCHANGED_ITEMS',\n                            'BILLING_ADJUSTMENT',\n                          ])\n                          .describe('Predefined discount reason.'),\n                      }),\n                      z.object({\n                        discountReason: z.never().optional(),\n                        description: z\n                          .string()\n                          .describe('Custom discount description as free text.')\n                          .max(200),\n                      }),\n                    ])\n                  )\n                  .describe('Discount applied manually by the merchant.'),\n              }),\n              z.object({\n                coupon: z.never().optional(),\n                merchantDiscount: z.never().optional(),\n                discountRule: z\n                  .object({\n                    _id: z\n                      .string()\n                      .describe('Discount rule ID')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    name: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"Original discount rule name (in site's default language).\"\n                          )\n                          .min(1)\n                          .max(256)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            'Translated discount rule name according to buyer language. Defaults to `original` when not provided.'\n                          )\n                          .min(1)\n                          .max(500)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Discount rule name')\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Discount value.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Automatic discount applied by the system based on configured discount rules.'\n                  ),\n              }),\n            ])\n          )\n        )\n        .max(320)\n        .optional(),\n      activities: z\n        .array(\n          z.intersection(\n            z.object({\n              _id: z\n                .string()\n                .describe('Activity ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              authorEmail: z\n                .string()\n                .describe(\"Activity author's email.\")\n                .email()\n                .optional()\n                .nullable(),\n              _createdDate: z\n                .date()\n                .describe('Activity creation date and time.')\n                .optional()\n                .nullable(),\n              type: z\n                .enum([\n                  'ORDER_REFUNDED',\n                  'ORDER_PLACED',\n                  'ORDER_PAID',\n                  'ORDER_FULFILLED',\n                  'ORDER_NOT_FULFILLED',\n                  'ORDER_CANCELED',\n                  'DOWNLOAD_LINK_SENT',\n                  'TRACKING_NUMBER_ADDED',\n                  'TRACKING_NUMBER_EDITED',\n                  'TRACKING_LINK_ADDED',\n                  'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                  'INVOICE_ADDED',\n                  'INVOICE_REMOVED',\n                  'INVOICE_SENT',\n                  'FULFILLER_EMAIL_SENT',\n                  'SHIPPING_ADDRESS_EDITED',\n                  'EMAIL_EDITED',\n                  'PICKUP_READY_EMAIL_SENT',\n                  'CUSTOM_ACTIVITY',\n                  'MERCHANT_COMMENT',\n                  'ORDER_PARTIALLY_PAID',\n                  'DRAFT_ORDER_CHANGES_APPLIED',\n                  'SAVED_PAYMENT_METHOD',\n                  'AUTHORIZED_PAYMENT_CREATED',\n                  'AUTHORIZED_PAYMENT_CAPTURED',\n                  'AUTHORIZED_PAYMENT_VOIDED',\n                  'REFUND_INITIATED',\n                  'PAYMENT_REFUNDED',\n                  'PAYMENT_REFUND_FAILED',\n                  'REFUNDED_AS_STORE_CREDIT',\n                  'PAYMENT_PENDING',\n                  'PAYMENT_CANCELED',\n                  'PAYMENT_DECLINED',\n                  'ORDER_PENDING',\n                  'ORDER_REJECTED',\n                  'RECEIPT_CREATED',\n                  'RECEIPT_SENT',\n                  'CHARGEBACK_CREATED',\n                  'CHARGEBACK_REVERSED',\n                ])\n                .describe('Activity type.')\n                .optional(),\n              activityType: z\n                .enum([\n                  'ORDER_PLACED',\n                  'ORDER_PAID',\n                  'ORDER_FULFILLED',\n                  'ORDER_NOT_FULFILLED',\n                  'ORDER_CANCELED',\n                  'DOWNLOAD_LINK_SENT',\n                  'TRACKING_NUMBER_ADDED',\n                  'TRACKING_NUMBER_EDITED',\n                  'TRACKING_LINK_ADDED',\n                  'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                  'INVOICE_ADDED',\n                  'INVOICE_REMOVED',\n                  'INVOICE_SENT',\n                  'FULFILLER_EMAIL_SENT',\n                  'SHIPPING_ADDRESS_EDITED',\n                  'EMAIL_EDITED',\n                  'PICKUP_READY_EMAIL_SENT',\n                  'MERCHANT_COMMENT',\n                  'ORDER_PARTIALLY_PAID',\n                  'DRAFT_ORDER_CHANGES_APPLIED',\n                  'SAVED_PAYMENT_METHOD',\n                  'AUTHORIZED_PAYMENT_CREATED',\n                  'AUTHORIZED_PAYMENT_CAPTURED',\n                  'AUTHORIZED_PAYMENT_VOIDED',\n                  'REFUND_INITIATED',\n                  'PAYMENT_REFUNDED',\n                  'PAYMENT_REFUND_FAILED',\n                  'REFUNDED_AS_STORE_CREDIT',\n                  'PAYMENT_PENDING',\n                  'PAYMENT_CANCELED',\n                  'PAYMENT_DECLINED',\n                  'ORDER_PENDING',\n                  'ORDER_REJECTED',\n                  'RECEIPT_CREATED',\n                  'RECEIPT_SENT',\n                  'CHARGEBACK_CREATED',\n                  'CHARGEBACK_REVERSED',\n                  'ORDER_REFUNDED',\n                ])\n                .describe('Activity type.')\n                .optional(),\n            }),\n            z.xor([\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n              }),\n              z.object({\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                merchantComment: z\n                  .object({\n                    message: z\n                      .string()\n                      .describe('Merchant comment message.')\n                      .min(1)\n                      .max(5000)\n                      .optional(),\n                  })\n                  .describe(\n                    'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                orderRefunded: z\n                  .object({\n                    manual: z\n                      .boolean()\n                      .describe(\n                        'Whether order was refunded manually. For example, via payment provider or using cash.'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(200)\n                      .optional(),\n                  })\n                  .describe(\n                    'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                draftOrderChangesApplied: z\n                  .object({\n                    draftOrderId: z\n                      .string()\n                      .describe('Draft order id.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for edit, given by user (optional).')\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    changes: z\n                      .array(\n                        z.intersection(\n                          z.object({}),\n                          z.xor([\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                            }),\n                            z.object({\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemChanged: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name after change.')\n                                  .optional(),\n                                quantity: z\n                                  .object({\n                                    originalQuantity: z\n                                      .number()\n                                      .int()\n                                      .describe('Item quantity before update.')\n                                      .min(0)\n                                      .max(1000000)\n                                      .optional(),\n                                    newQuantity: z\n                                      .number()\n                                      .int()\n                                      .describe('Item quantity after update.')\n                                      .min(0)\n                                      .max(1000000)\n                                      .optional(),\n                                    diff: z\n                                      .number()\n                                      .int()\n                                      .describe(\n                                        'Difference between original and new quantity. Absolute value.'\n                                      )\n                                      .min(1)\n                                      .max(1000000)\n                                      .optional(),\n                                    deltaType: z\n                                      .enum([\n                                        'QUANTITY_INCREASED',\n                                        'QUANTITY_DECREASED',\n                                      ])\n                                      .describe(\n                                        'Type of quantity change: increase or decrease.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item quantity change.')\n                                  .optional(),\n                                price: z\n                                  .object({\n                                    originalPrice: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Item price before update.')\n                                      .optional(),\n                                    newPrice: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Item price after update.')\n                                      .optional(),\n                                  })\n                                  .describe('Item price change.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name.')\n                                  .optional(),\n                                quantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Added or removed item quantity.')\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name.')\n                                  .optional(),\n                                quantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Added or removed item quantity.')\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              discountAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Discount id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe(\n                                    'Discount name: coupon name / discount rule name / merchant discount description.'\n                                  )\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Discount amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              discountRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Discount id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe(\n                                    'Discount name: coupon name / discount rule name / merchant discount description.'\n                                  )\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Discount amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              additionalFeeAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Additional fee id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Additional fee name.')\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Additional fee amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              additionalFeeRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Additional fee id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Additional fee name.')\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Additional fee amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              totalPriceChanged: z.object({\n                                originalTotal: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s total price after discounts and tax. Before update'\n                                  )\n                                  .optional(),\n                                newTotal: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s total price after discounts and tax. After update'\n                                  )\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.object({\n                                originalShippingInfo: z\n                                  .object({\n                                    total: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Order’s shipping price.')\n                                      .optional(),\n                                    shippingTitle: z\n                                      .string()\n                                      .describe('Order’s shipping title.')\n                                      .max(250)\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s Shipping Information. Before update'\n                                  )\n                                  .optional(),\n                                newShippingInfo: z\n                                  .object({\n                                    total: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Order’s shipping price.')\n                                      .optional(),\n                                    shippingTitle: z\n                                      .string()\n                                      .describe('Order’s shipping title.')\n                                      .max(250)\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s Shipping Information. After update'\n                                  )\n                                  .optional(),\n                              }),\n                            }),\n                          ])\n                        )\n                      )\n                      .optional(),\n                  })\n                  .describe('Details of changes made by the Draft Orders API.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                savedPaymentMethod: z\n                  .object({\n                    name: z\n                      .string()\n                      .describe('Payment method name.')\n                      .min(1)\n                      .max(100)\n                      .optional(),\n                    description: z\n                      .string()\n                      .describe('Payment method description.')\n                      .min(1)\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Details of the payment method saved for the order.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentCreated: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment created.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentCaptured: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment captured.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentVoided: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment voided.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                refundInitiated: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    payments: z\n                      .array(\n                        z.intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe('Payment ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            externalRefund: z\n                              .boolean()\n                              .describe(\n                                \"Whether refund was made externally and manually on the payment provider's side.\"\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                            }),\n                            z.object({\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                              regular: z\n                                .object({\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                  lastFourDigits: z\n                                    .string()\n                                    .describe(\n                                      'The last 4 digits of the card number.'\n                                    )\n                                    .max(4)\n                                    .optional()\n                                    .nullable(),\n                                  brand: z\n                                    .string()\n                                    .describe(\"Card issuer's brand.\")\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Regular payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              membership: z.never().optional(),\n                              giftCard: z\n                                .object({\n                                  giftCardPaymentId: z\n                                    .string()\n                                    .describe('Gift card payment ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                })\n                                .describe('Gift card payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z\n                                .object({\n                                  membershipId: z\n                                    .string()\n                                    .describe('Membership ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Membership payment refund.'),\n                            }),\n                          ])\n                        )\n                      )\n                      .min(1)\n                      .max(50)\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentRefunded: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    payment: z\n                      .intersection(\n                        z.object({\n                          paymentId: z\n                            .string()\n                            .describe('Payment ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          externalRefund: z\n                            .boolean()\n                            .describe(\n                              \"Whether refund was made externally and manually on the payment provider's side.\"\n                            )\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                          }),\n                          z.object({\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                            regular: z\n                              .object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Regular payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            membership: z.never().optional(),\n                            giftCard: z\n                              .object({\n                                giftCardPaymentId: z\n                                  .string()\n                                  .describe('Gift card payment ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                              })\n                              .describe('Gift card payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z\n                              .object({\n                                membershipId: z\n                                  .string()\n                                  .describe('Membership ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Membership payment refund.'),\n                          }),\n                        ])\n                      )\n                      .describe('Details about the refunded payment.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentRefundFailed: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    payment: z\n                      .intersection(\n                        z.object({\n                          paymentId: z\n                            .string()\n                            .describe('Payment ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          externalRefund: z\n                            .boolean()\n                            .describe(\n                              \"Whether refund was made externally and manually on the payment provider's side.\"\n                            )\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                          }),\n                          z.object({\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                            regular: z\n                              .object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Regular payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            membership: z.never().optional(),\n                            giftCard: z\n                              .object({\n                                giftCardPaymentId: z\n                                  .string()\n                                  .describe('Gift card payment ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                              })\n                              .describe('Gift card payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z\n                              .object({\n                                membershipId: z\n                                  .string()\n                                  .describe('Membership ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Membership payment refund.'),\n                          }),\n                        ])\n                      )\n                      .describe('Details about the failed payment refund.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                refundedAsStoreCredit: z\n                  .object({\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of refund to store credit.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentPending: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a pending payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentCanceled: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a canceled payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentDeclined: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a declined payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                receiptCreated: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z.never().optional(),\n                      }),\n                      z.object({\n                        externalReceipt: z.never().optional(),\n                        wixReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by Wix.'),\n                      }),\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by an external system.'),\n                      }),\n                    ])\n                  )\n                  .describe('Receipt was added for associated payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                receiptSent: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z.never().optional(),\n                      }),\n                      z.object({\n                        externalReceipt: z.never().optional(),\n                        wixReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by Wix.'),\n                      }),\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by an external system.'),\n                      }),\n                    ])\n                  )\n                  .describe('Receipt sent to customer.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                chargebackCreated: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe('ID of the payment that received a chargeback.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    chargebackId: z\n                      .string()\n                      .describe('Chargeback ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback amount.')\n                      .optional(),\n                    paymentDetails: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Payment details.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Order received a chargeback for one of its payments.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'ID of the payment involved with the chargeback.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    chargebackId: z\n                      .string()\n                      .describe('Chargeback ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback amount.')\n                      .optional(),\n                    reversalAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback reversal amount.')\n                      .optional(),\n                    paymentDetails: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Payment details.')\n                      .optional(),\n                  })\n                  .describe(\n                    \"Chargeback reversed for one of the order's payments.\"\n                  ),\n              }),\n            ])\n          )\n        )\n        .max(1000)\n        .optional(),\n      attributionSource: z\n        .enum(['UNSPECIFIED', 'FACEBOOK_ADS'])\n        .describe('Order attribution source.')\n        .optional(),\n      createdBy: z\n        .intersection(\n          z.object({}),\n          z.xor([\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n            }),\n            z.object({\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n              userId: z\n                .string()\n                .describe(\n                  'User ID - when the order was created by a Wix user on behalf of a buyer.\\nFor example, via POS (point of service).'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n              memberId: z\n                .string()\n                .describe(\n                  'Member ID - when the order was created by a **logged in** site visitor.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              appId: z.never().optional(),\n              visitorId: z\n                .string()\n                .describe(\n                  'Visitor ID - when the order was created by a site visitor that was **not** logged in.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z\n                .string()\n                .describe(\n                  'App ID - when the order was created by an external application.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n          ])\n        )\n        .describe(\"ID of the order's initiator.\")\n        .optional(),\n      channelInfo: z\n        .object({\n          type: z\n            .enum([\n              'UNSPECIFIED',\n              'WEB',\n              'POS',\n              'EBAY',\n              'AMAZON',\n              'OTHER_PLATFORM',\n              'WIX_APP_STORE',\n              'WIX_INVOICES',\n              'BACKOFFICE_MERCHANT',\n              'WISH',\n              'CLASS_PASS',\n              'GLOBAL_E',\n              'FACEBOOK',\n              'ETSY',\n              'TIKTOK',\n              'FAIRE_COM',\n              'PAYPAL_AGENTIC_CHECKOUT',\n              'STRIPE_AGENTIC_CHECKOUT',\n            ])\n            .describe(\n              'Sales channel that submitted the order.\\n\\nWhen creating an order via the API to record an external order, use the channel type that matches the original source. If no matching type exists, use `OTHER_PLATFORM`.'\n            )\n            .optional(),\n          externalOrderId: z\n            .string()\n            .describe(\n              'Reference to an order ID from an external system. Relevant when recording orders from external platforms.'\n            )\n            .max(100)\n            .optional()\n            .nullable(),\n          externalOrderUrl: z\n            .string()\n            .describe(\n              'URL to the order in the external system. Relevant when recording orders from external platforms.'\n            )\n            .max(300)\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Information about the sales channel that submitted this order.'\n        )\n        .optional(),\n      seenByAHuman: z\n        .boolean()\n        .describe(\n          'Whether a human has seen the order. Set when an order is clicked on in the dashboard.'\n        )\n        .optional()\n        .nullable(),\n      checkoutId: z\n        .string()\n        .describe('Checkout ID.')\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      customFields: z\n        .array(\n          z.object({\n            value: z\n              .any()\n              .describe('Custom field value.')\n              .optional()\n              .nullable(),\n            title: z\n              .string()\n              .describe('Custom field title.')\n              .min(1)\n              .max(500)\n              .optional(),\n            translatedTitle: z\n              .string()\n              .describe('Translated custom field title.')\n              .min(1)\n              .max(500)\n              .optional()\n              .nullable(),\n          })\n        )\n        .optional(),\n      balanceSummary: z\n        .object({\n          balance: z\n            .object({\n              amount: z\n                .string()\n                .describe(\n                  'Balance amount.\\n\\nA negative `amount` represents the amount to be refunded. This can happen due to overcharging or the order being modified after a payment has been made.'\n                )\n                .optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Current amount left to pay.')\n            .optional(),\n          paid: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Sum of all approved and successful payments.\\n\\nThe value includes payments that have subsequently been fully or partially refunded.'\n            )\n            .optional(),\n          refunded: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all successfully refunded payments.')\n            .optional(),\n          authorized: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all authorized payments.')\n            .optional(),\n          pendingRefund: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all pending refund transactions.')\n            .optional(),\n          pending: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all pending transactions.')\n            .optional(),\n          chargeback: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all transaction chargebacks.')\n            .optional(),\n          chargebackReversal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all chargeback reversals.')\n            .optional(),\n          platformFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total platform fees actually charged across all payments.\\nThis reflects amounts collected, which may differ from the expected fees in `order.platformFeeSummary`.'\n            )\n            .optional(),\n          totalMinusPlatformFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Order total after deducting platform fees. Represents the net amount payable to the merchant.'\n            )\n            .optional(),\n        })\n        .describe('Balance summary.')\n        .optional(),\n      additionalFees: z\n        .array(\n          z.object({\n            code: z\n              .string()\n              .describe(\"Additional fee's unique code for future processing.\")\n              .min(1)\n              .max(100)\n              .optional()\n              .nullable(),\n            name: z\n              .string()\n              .describe('Name of additional fee.')\n              .min(1)\n              .max(50)\n              .optional(),\n            price: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price.\")\n              .optional(),\n            taxDetails: z\n              .object({\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Taxable amount of this line item.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe(\n                    'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                  )\n                  .optional(),\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                  )\n                  .optional(),\n              })\n              .describe('Tax details.')\n              .optional(),\n            taxInfo: z\n              .object({\n                taxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                  )\n                  .optional(),\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Amount for which tax is calculated.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe('Tax rate %, as a decimal point.')\n                  .optional()\n                  .nullable(),\n                taxGroupId: z\n                  .string()\n                  .describe('Tax group ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                taxIncludedInPrice: z\n                  .boolean()\n                  .describe('Indicates whether the price already includes tax.')\n                  .optional(),\n                taxBreakdown: z\n                  .array(\n                    z.object({\n                      jurisdiction: z\n                        .string()\n                        .describe(\n                          'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      rate: z\n                        .string()\n                        .describe(\n                          'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Amount of tax calculated for this line item.'\n                        )\n                        .optional(),\n                      taxType: z\n                        .string()\n                        .describe(\n                          'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      taxName: z\n                        .string()\n                        .describe(\n                          'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      jurisdictionType: z\n                        .enum([\n                          'UNDEFINED',\n                          'COUNTRY',\n                          'STATE',\n                          'COUNTY',\n                          'CITY',\n                          'SPECIAL',\n                        ])\n                        .describe(\n                          'Type of jurisdiction that taxes were calculated for.'\n                        )\n                        .optional(),\n                      nonTaxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Non-taxable amount of the line item price.')\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of the line item price.')\n                        .optional(),\n                    })\n                  )\n                  .max(7)\n                  .optional(),\n              })\n              .describe(\n                'Represents all the relevant tax details for additional fee.'\n              )\n              .optional(),\n            providerAppId: z\n              .string()\n              .describe(\"SPI implementer's `appId`.\")\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            priceBeforeTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price before tax.\")\n              .optional(),\n            priceAfterTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price after tax.\")\n              .optional(),\n            _id: z\n              .string()\n              .describe(\"Additional fee's id.\")\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional(),\n            lineItemIds: z.array(z.string()).optional(),\n            source: z\n              .enum([\n                'SERVICE_PLUGIN',\n                'ITEM',\n                'MANUAL',\n                'SHIPPING',\n                'PLATFORM',\n              ])\n              .describe('Specifies the entity that added the additional fee.')\n              .optional(),\n          })\n        )\n        .max(100)\n        .optional(),\n      extendedFields: z\n        .object({\n          namespaces: z\n            .record(z.string(), z.record(z.string(), z.any()))\n            .describe(\n              'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n            )\n            .optional(),\n        })\n        .describe(\n          'Custom field data for the order object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n        )\n        .optional(),\n      purchaseFlowId: z\n        .string()\n        .describe(\n          'Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.'\n        )\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      recipientInfo: z\n        .object({\n          address: z\n            .object({\n              streetAddress: z\n                .object({\n                  name: z.string().optional(),\n                  number: z.string().optional(),\n                })\n                .optional(),\n              city: z.string().optional().nullable(),\n              subdivision: z.string().optional().nullable(),\n              country: z.string().optional().nullable(),\n              postalCode: z.string().optional().nullable(),\n              addressLine2: z.string().optional().nullable(),\n            })\n            .describe('Address.')\n            .optional(),\n          contactDetails: z\n            .object({\n              firstName: z\n                .string()\n                .describe('First name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              lastName: z\n                .string()\n                .describe('Last name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              phone: z.string().describe('Phone number.').optional().nullable(),\n              company: z\n                .string()\n                .describe('Company name.')\n                .max(1000)\n                .optional()\n                .nullable(),\n              vatId: z\n                .object({\n                  _id: z.string().describe(\"Customer's tax ID.\").optional(),\n                  type: z\n                    .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                    .describe(\n                      'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                    )\n                    .optional(),\n                })\n                .describe(\n                  'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                )\n                .optional(),\n            })\n            .describe('Contact details.')\n            .optional(),\n        })\n        .describe(\n          \"Final recipient's address and contact details.\\n\\nThis field represents who will ultimately receive the order. It may differ from `shippingInfo.logistics.shippingDestination` when:\\n+ The chosen shipping option is a pickup point or store pickup, where `shippingDestination` contains the pickup location.\\n+ No shipping option is selected.\"\n        )\n        .optional(),\n      tags: z\n        .object({\n          privateTags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n            )\n            .optional(),\n          tags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n            )\n            .optional(),\n        })\n        .describe(\n          'Order tags.\\n\\n[Tags](https://dev.wix.com/docs/rest/business-management/tags/introduction) are labels attached to entities, allowing for flexible categorization and data management.'\n        )\n        .optional(),\n      purchasedDate: z\n        .date()\n        .describe(\n          'Date and time the order was originally purchased in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.\\nUsed for migration from external systems.'\n        )\n        .optional()\n        .nullable(),\n      businessLocation: z\n        .object({\n          _id: z\n            .string()\n            .describe(\n              'Location ID.\\nLearn more about the [Wix Locations API](https://dev.wix.com/docs/rest/business-management/locations/introduction).'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            )\n            .optional(),\n          name: z\n            .string()\n            .describe('Location name.')\n            .min(1)\n            .max(500)\n            .optional(),\n        })\n        .describe('Order location.')\n        .optional(),\n      payAfterFreeTrial: z\n        .object({\n          subtotal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Subtotal of all line items, before discounts and before tax.'\n            )\n            .optional(),\n          shipping: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total shipping price, before discounts and before tax.')\n            .optional(),\n          tax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax applied to the order.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total discount amount applied to the order.')\n            .optional(),\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\"Order's total price after discounts and tax.\")\n            .optional(),\n          totalAdditionalFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total additional fees before tax.')\n            .optional(),\n        })\n        .describe(\n          'Pay after free trial price summary. Price summary that should be paid for subscriptions after free trial period.'\n        )\n        .optional(),\n      platformFeeSummary: z\n        .object({\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total sum of all platform fees.')\n            .optional(),\n          totalPassOn: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total amount of platform fees with `PASS_ON` charge type.'\n            )\n            .optional(),\n          totalAbsorbed: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total amount of platform fees with `ABSORBED` charge type.'\n            )\n            .optional(),\n          fees: z\n            .array(\n              z.object({\n                name: z\n                  .object({\n                    original: z\n                      .string()\n                      .describe(\n                        \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                      )\n                      .min(1)\n                      .max(200)\n                      .optional(),\n                    translated: z\n                      .string()\n                      .describe(\n                        \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                      )\n                      .min(1)\n                      .max(400)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Platform fee name.')\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Platform fee amount.')\n                  .optional(),\n                lineItemId: z\n                  .string()\n                  .describe('ID of the line item the platform fee applies to.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                chargeType: z\n                  .enum(['PASS_ON', 'ABSORBED'])\n                  .describe('Platform fee charge type.')\n                  .optional(),\n                percentageRate: z\n                  .string()\n                  .describe(\n                    'Percentage rate charged as platform fee.\\nThe fee rate percentage expressed as a decimal fraction between 0 and 1. For example, `0.05` for 5%.'\n                  )\n                  .optional(),\n              })\n            )\n            .max(300)\n            .optional(),\n        })\n        .describe(\n          'Summary of platform fees for this order, including totals by charge type and a breakdown of individual fees.'\n        )\n        .optional(),\n    })\n    .describe('Updated order.')\n    .optional(),\n  activityIds: z.array(z.string()).min(1).max(300).optional(),\n});\nexport const CancelOrderRequest = z.object({\n  _id: z.string().describe('Order ID.').min(1).max(100),\n  options: z\n    .object({\n      sendOrderCanceledEmail: z\n        .boolean()\n        .describe('Whether to send an order canceled email to the buyer.')\n        .optional(),\n      customMessage: z\n        .string()\n        .describe('Custom note to be added to the email (optional).')\n        .min(1)\n        .max(1000)\n        .optional()\n        .nullable(),\n      restockAllItems: z\n        .boolean()\n        .describe(\n          'Whether to restock all items in the order. This will only apply to products in the Wix Stores inventory.'\n        )\n        .optional(),\n    })\n    .optional(),\n});\nexport const CancelOrderResponse = z.object({\n  order: z\n    .object({\n      _id: z\n        .string()\n        .describe('Order ID.')\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      number: z\n        .string()\n        .regex(/^\\d+$/, 'Must be a valid UInt64 string')\n        .describe(\n          \"Order number displayed in the site owner's dashboard (auto-generated).\"\n        )\n        .optional(),\n      _createdDate: z\n        .date()\n        .describe(\n          'Date and time the order was created in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n        )\n        .optional()\n        .nullable(),\n      _updatedDate: z\n        .date()\n        .describe(\n          'Date and time the order was last updated in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n        )\n        .optional()\n        .nullable(),\n      lineItems: z\n        .array(\n          z.object({\n            _id: z.string().describe('Line item ID.').optional(),\n            productName: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                  )\n                  .min(1)\n                  .max(200)\n                  .optional(),\n                translated: z\n                  .string()\n                  .describe(\n                    \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(400)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Item name.\\n\\n+ Stores - `product.name`\\n+ Bookings - `service.info.name`\\n+ Events - `ticket.name`'\n              )\n              .optional(),\n            catalogReference: z\n              .object({\n                catalogItemId: z\n                  .string()\n                  .describe('ID of the item within the catalog it belongs to.')\n                  .min(1)\n                  .max(36)\n                  .optional(),\n                appId: z\n                  .string()\n                  .describe(\n                    'ID of the app providing the catalog.\\n\\nYou can get your app\\'s ID from its page in the [app dashboard](https://dev.wix.com/dc3/my-apps/).\\n\\nFor items from Wix catalogs, the following values always apply:\\n+ Wix Stores: `\"215238eb-22a5-4c36-9e7b-e7c08025e04e\"`\\n+ Wix Bookings: `\"13d21c63-b5ec-5912-8397-c3a5ddb27a97\"`\\n+ Wix Restaurants: `\"9a5d83fd-8570-482e-81ab-cfa88942ee60\"`'\n                  )\n                  .min(1)\n                  .optional(),\n                options: z\n                  .record(z.string(), z.any())\n                  .describe(\n                    'Additional item details in `key:value` pairs.\\n\\nUse this optional field for more specificity with item selection. The values of the `options` field differ depending on which catalog is providing the items.\\n\\nFor Wix Stores products, learn more about integrating with [Catalog V3](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v3/e-commerce-integration)\\nor [Catalog V1](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-v1/catalog/e-commerce-integration), depending on [the version the site uses](https://dev.wix.com/docs/api-reference/business-solutions/stores/catalog-versioning/introduction).'\n                  )\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                \"References to the line item's origin catalog. Empty for custom line items.\"\n              )\n              .optional(),\n            quantity: z\n              .number()\n              .int()\n              .describe('Line item quantity.')\n              .min(1)\n              .max(100000)\n              .optional(),\n            totalDiscount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Total discount for this line item's entire quantity.\")\n              .optional(),\n            descriptionLines: z\n              .array(\n                z.intersection(\n                  z.object({\n                    name: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"Description line name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                          )\n                          .max(100)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            \"Description line name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Description line name.')\n                      .optional(),\n                  }),\n                  z.xor([\n                    z.object({\n                      plainText: z.never().optional(),\n                      colorInfo: z.never().optional(),\n                    }),\n                    z.object({\n                      colorInfo: z.never().optional(),\n                      plainText: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"Description line plain text value in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                            )\n                            .max(600)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"Description line plain text value translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                            )\n                            .max(600)\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Description line plain text value.'),\n                    }),\n                    z.object({\n                      plainText: z.never().optional(),\n                      colorInfo: z\n                        .object({\n                          original: z\n                            .string()\n                            .describe(\n                              \"Description line color name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                            )\n                            .max(500)\n                            .optional(),\n                          translated: z\n                            .string()\n                            .describe(\n                              \"Description line color name translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                            )\n                            .max(500)\n                            .optional()\n                            .nullable(),\n                          code: z\n                            .string()\n                            .describe('HEX or RGB color code for display.')\n                            .optional()\n                            .nullable(),\n                        })\n                        .describe('Description line color value.'),\n                    }),\n                  ])\n                )\n              )\n              .min(0)\n              .max(20)\n              .optional(),\n            image: z.string().describe('Line item image.').optional(),\n            physicalProperties: z\n              .object({\n                weight: z\n                  .number()\n                  .describe(\n                    'Line item weight. Measurement unit matches the weight unit specified in `weightUnit` in the request.'\n                  )\n                  .optional()\n                  .nullable(),\n                sku: z\n                  .string()\n                  .describe(\n                    'Stock-keeping unit. Learn more about [SKUs](https://www.wix.com/encyclopedia/definition/stock-keeping-unit-sku).'\n                  )\n                  .max(40)\n                  .optional()\n                  .nullable(),\n                shippable: z\n                  .boolean()\n                  .describe('Whether this line item is shippable.')\n                  .optional(),\n              })\n              .describe(\n                'Physical properties of the item. When relevant, contains information such as SKU and item weight.'\n              )\n              .optional(),\n            itemType: z\n              .intersection(\n                z.object({}),\n                z.xor([\n                  z.object({\n                    preset: z.never().optional(),\n                    custom: z.never().optional(),\n                  }),\n                  z.object({\n                    custom: z.never().optional(),\n                    preset: z\n                      .enum([\n                        'UNRECOGNISED',\n                        'PHYSICAL',\n                        'DIGITAL',\n                        'GIFT_CARD',\n                        'SERVICE',\n                      ])\n                      .describe('Preset item type.'),\n                  }),\n                  z.object({\n                    preset: z.never().optional(),\n                    custom: z\n                      .string()\n                      .describe(\n                        'Custom item type. When none of the preset types are suitable, specifies the custom type.'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Item type. Either a preset type or custom.')\n              .optional(),\n            fulfillerId: z\n              .string()\n              .describe(\n                'Fulfiller ID. Field is empty when the line item is self-fulfilled.\\nTo get fulfillment information, pass the order ID to [List Fulfillments For Single Order](https://dev.wix.com/docs/rest/api-reference/wix-e-commerce/order-fulfillments/list-fulfillments-for-single-order).'\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            refundQuantity: z\n              .number()\n              .int()\n              .describe('Number of items that were refunded.')\n              .min(0)\n              .max(100000)\n              .optional()\n              .nullable(),\n            restockQuantity: z\n              .number()\n              .int()\n              .describe(\n                'Number of items restocked.\\n\\nFor a per-location breakdown, see `restockLocations`.'\n              )\n              .min(0)\n              .max(100000)\n              .optional()\n              .nullable(),\n            price: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Line item price after line item discounts for display purposes.'\n              )\n              .optional(),\n            priceBeforeDiscounts: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Line item price before line item discounts for display purposes. Defaults to `price` when not provided.'\n              )\n              .optional(),\n            totalPriceBeforeTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total price after discounts, and before tax.')\n              .optional(),\n            totalPriceAfterTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe('Total price after all discounts and tax.')\n              .optional(),\n            paymentOption: z\n              .enum([\n                'FULL_PAYMENT_ONLINE',\n                'FULL_PAYMENT_OFFLINE',\n                'MEMBERSHIP',\n                'DEPOSIT_ONLINE',\n                'MEMBERSHIP_OFFLINE',\n                'MEMBERSHIP_ONLINE_WITH_OFFLINE_REMAINDER',\n              ])\n              .describe(\n                'Type of selected payment option for current item.\\n\\nDefault: `FULL_PAYMENT_ONLINE`'\n              )\n              .optional(),\n            taxDetails: z\n              .object({\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Taxable amount of this line item.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe(\n                    'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                  )\n                  .optional(),\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Deprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.\\nTax details for this line item.'\n              )\n              .optional(),\n            taxInfo: z\n              .object({\n                taxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                  )\n                  .optional(),\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Amount for which tax is calculated.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe('Tax rate %, as a decimal point.')\n                  .optional()\n                  .nullable(),\n                taxGroupId: z\n                  .string()\n                  .describe('Tax group ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                taxIncludedInPrice: z\n                  .boolean()\n                  .describe('Indicates whether the price already includes tax.')\n                  .optional(),\n                taxBreakdown: z\n                  .array(\n                    z.object({\n                      jurisdiction: z\n                        .string()\n                        .describe(\n                          'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      rate: z\n                        .string()\n                        .describe(\n                          'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Amount of tax calculated for this line item.'\n                        )\n                        .optional(),\n                      taxType: z\n                        .string()\n                        .describe(\n                          'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      taxName: z\n                        .string()\n                        .describe(\n                          'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      jurisdictionType: z\n                        .enum([\n                          'UNDEFINED',\n                          'COUNTRY',\n                          'STATE',\n                          'COUNTY',\n                          'CITY',\n                          'SPECIAL',\n                        ])\n                        .describe(\n                          'Type of jurisdiction that taxes were calculated for.'\n                        )\n                        .optional(),\n                      nonTaxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Non-taxable amount of the line item price.')\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of the line item price.')\n                        .optional(),\n                    })\n                  )\n                  .max(7)\n                  .optional(),\n              })\n              .describe(\n                'Represents all the relevant tax details for a specific line item.'\n              )\n              .optional(),\n            digitalFile: z\n              .object({\n                fileId: z\n                  .string()\n                  .describe('ID of the secure file in media.')\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                link: z\n                  .string()\n                  .describe(\n                    'Link will exist after the digital links have been generated on the order.'\n                  )\n                  .url()\n                  .min(1)\n                  .max(2000)\n                  .optional()\n                  .nullable(),\n                expirationDate: z\n                  .date()\n                  .describe('Link expiration time and date.')\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Digital file identifier, relevant only for items with type DIGITAL.'\n              )\n              .optional(),\n            subscriptionInfo: z\n              .object({\n                _id: z\n                  .string()\n                  .describe('Subscription ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                cycleNumber: z\n                  .number()\n                  .int()\n                  .describe(\n                    'Subscription cycle. For example, if this order is for the 3rd cycle of a subscription, value will be `3`.'\n                  )\n                  .min(0)\n                  .optional(),\n                subscriptionOptionTitle: z\n                  .string()\n                  .describe(\n                    'Subscription option title. For example, `\"Monthly coffee Subscription\"`.'\n                  )\n                  .min(0)\n                  .max(150)\n                  .optional(),\n                subscriptionOptionDescription: z\n                  .string()\n                  .describe(\n                    'Subscription option description. For example, `\"1kg of selected coffee, once a month\"`.'\n                  )\n                  .max(500)\n                  .optional()\n                  .nullable(),\n                subscriptionSettings: z\n                  .object({\n                    frequency: z\n                      .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                      .describe('Frequency of recurring payment.')\n                      .optional(),\n                    interval: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of frequency units in a billing cycle. For example, frequency `MONTH` with interval `3` means billing every 3 months.'\n                      )\n                      .min(1)\n                      .max(3650)\n                      .optional()\n                      .nullable(),\n                    autoRenewal: z\n                      .boolean()\n                      .describe(\n                        'Whether subscription is renewed automatically at the end of each period.'\n                      )\n                      .optional(),\n                    billingCycles: z\n                      .number()\n                      .int()\n                      .describe(\n                        'Number of billing cycles before subscription ends. Ignored if `autoRenewal: true`.'\n                      )\n                      .min(1)\n                      .optional()\n                      .nullable(),\n                    enableCustomerCancellation: z\n                      .boolean()\n                      .describe(\n                        'Whether to allow the customer to cancel the subscription.'\n                      )\n                      .optional(),\n                    freeTrialPeriod: z\n                      .object({\n                        frequency: z\n                          .enum(['UNDEFINED', 'DAY', 'WEEK', 'MONTH', 'YEAR'])\n                          .describe(\n                            'Frequency of period. Values: DAY, WEEK, MONTH, YEAR'\n                          )\n                          .optional(),\n                        interval: z\n                          .number()\n                          .int()\n                          .describe(\n                            'Number of frequency units in the free trial period. For example, frequency `MONTH` with interval `3` means a 3-month free trial.'\n                          )\n                          .min(1)\n                          .max(3650)\n                          .optional(),\n                      })\n                      .describe(\n                        'Period until first cycle starts. If None => no free trial'\n                      )\n                      .optional(),\n                  })\n                  .describe('Subscription detailed information.')\n                  .optional(),\n                chargesDescription: z\n                  .string()\n                  .describe(\n                    'Description of the charges that will be applied for subscription.'\n                  )\n                  .max(1000)\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Subscription info.')\n              .optional(),\n            priceDescription: z\n              .object({\n                original: z\n                  .string()\n                  .describe(\n                    \"__Required.__ Price description in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\"\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional(),\n                translated: z\n                  .string()\n                  .describe(\n                    \"Price description translated into the buyer's language.\\n\\nDefault: Same as `original`.\"\n                  )\n                  .min(1)\n                  .max(100)\n                  .optional()\n                  .nullable(),\n              })\n              .describe(\n                'Additional description for the price. For example, when price is 0 but additional details about the actual price are needed - \"Starts at $67\".'\n              )\n              .optional(),\n            depositAmount: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Item\\'s price amount to be charged during checkout. Relevant for items with a `paymentOption` value of `\"DEPOSIT_ONLINE\"`.'\n              )\n              .optional(),\n            locations: z\n              .array(\n                z.object({\n                  _id: z\n                    .string()\n                    .describe('Location id in the associated owner app.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional(),\n                  appId: z\n                    .string()\n                    .describe(\n                      'Location owner app, if not provided then the site business info locations will be used.'\n                    )\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  quantity: z\n                    .number()\n                    .int()\n                    .describe('Quantity for specific location.')\n                    .min(1)\n                    .max(100000)\n                    .optional(),\n                  name: z\n                    .string()\n                    .describe('Location name.')\n                    .max(500)\n                    .optional()\n                    .nullable(),\n                })\n              )\n              .min(0)\n              .max(5)\n              .optional(),\n            lineItemPrice: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\n                'Total price **after** catalog discounts and line item discounts.'\n              )\n              .optional(),\n            taxableAddress: z\n              .intersection(\n                z.object({}),\n                z.xor([\n                  z.object({ addressType: z.never().optional() }),\n                  z.object({\n                    addressType: z\n                      .enum(['BUSINESS', 'BILLING', 'SHIPPING'])\n                      .describe(\n                        'taxable address type. if this field is selected, the address is automatically resolved, and the tax is calculated accordingly.'\n                      ),\n                  }),\n                ])\n              )\n              .describe('Address used for tax calculation.')\n              .optional(),\n            priceUndetermined: z\n              .boolean()\n              .describe(\n                'Whether the price is not yet defined, and will be updated after the order is created.\\n\\nDefault: `false`'\n              )\n              .optional(),\n            extendedFields: z\n              .object({\n                namespaces: z\n                  .record(z.string(), z.record(z.string(), z.any()))\n                  .describe(\n                    'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n                  )\n                  .optional(),\n              })\n              .describe(\n                'Custom extended fields for the line item object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n              )\n              .optional(),\n            modifierGroups: z\n              .array(\n                z.object({\n                  _id: z\n                    .string()\n                    .describe('Modifier group ID.')\n                    .min(1)\n                    .max(36)\n                    .optional(),\n                  name: z\n                    .object({\n                      original: z\n                        .string()\n                        .describe(\n                          \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                        )\n                        .min(1)\n                        .max(200)\n                        .optional(),\n                      translated: z\n                        .string()\n                        .describe(\n                          \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                        )\n                        .min(1)\n                        .max(400)\n                        .optional()\n                        .nullable(),\n                    })\n                    .describe('Modifier group name.')\n                    .optional(),\n                  modifiers: z\n                    .array(\n                      z.object({\n                        _id: z\n                          .string()\n                          .describe('Modifier ID.')\n                          .min(1)\n                          .max(36)\n                          .optional(),\n                        quantity: z\n                          .number()\n                          .int()\n                          .describe('The quantity of this modifier.')\n                          .min(1)\n                          .max(100000)\n                          .optional()\n                          .nullable(),\n                        label: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                              )\n                              .min(1)\n                              .max(200)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                              )\n                              .min(1)\n                              .max(400)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Primary display label for the modifier.')\n                          .optional(),\n                        details: z\n                          .object({\n                            original: z\n                              .string()\n                              .describe(\n                                \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                              )\n                              .min(1)\n                              .max(200)\n                              .optional(),\n                            translated: z\n                              .string()\n                              .describe(\n                                \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                              )\n                              .min(1)\n                              .max(400)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Additional details.')\n                          .optional(),\n                        price: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('The price of the modifier.')\n                          .optional(),\n                      })\n                    )\n                    .min(1)\n                    .max(10)\n                    .optional(),\n                })\n              )\n              .max(10)\n              .optional(),\n          })\n        )\n        .min(1)\n        .max(300)\n        .optional(),\n      buyerInfo: z\n        .intersection(\n          z.object({\n            contactId: z\n              .string()\n              .describe(\n                \"Contact ID. Automatically created if one doesn't exist. For more information, see [Contacts API](https://dev.wix.com/docs/api-reference/crm/members-contacts/contacts/contacts/contact-v4/introduction).\"\n              )\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            email: z\n              .string()\n              .describe(\"Buyer's email address.\")\n              .email()\n              .optional()\n              .nullable(),\n          }),\n          z.xor([\n            z.object({\n              visitorId: z.never().optional(),\n              memberId: z.never().optional(),\n            }),\n            z.object({\n              memberId: z.never().optional(),\n              visitorId: z\n                .string()\n                .describe(\n                  \"Visitor ID. Returned when the buyer isn't a logged-in site member.\"\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              visitorId: z.never().optional(),\n              memberId: z\n                .string()\n                .describe(\n                  'Member ID. Returned when the buyer is a logged-in site member.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n          ])\n        )\n        .describe('Buyer information.')\n        .optional(),\n      paymentStatus: z\n        .enum([\n          'UNSPECIFIED',\n          'NOT_PAID',\n          'PAID',\n          'PARTIALLY_REFUNDED',\n          'FULLY_REFUNDED',\n          'PENDING',\n          'PARTIALLY_PAID',\n          'PENDING_MERCHANT',\n          'CANCELED',\n          'DECLINED',\n        ])\n        .describe('Order payment status.')\n        .optional(),\n      fulfillmentStatus: z\n        .enum(['NOT_FULFILLED', 'FULFILLED', 'PARTIALLY_FULFILLED'])\n        .describe('Order fulfillment status.')\n        .optional(),\n      buyerLanguage: z\n        .string()\n        .describe(\n          'Language for communication with the buyer. Defaults to the site language.\\nFor a site that supports multiple languages, this is the language the buyer selected.'\n        )\n        .optional()\n        .nullable(),\n      weightUnit: z\n        .enum(['UNSPECIFIED_WEIGHT_UNIT', 'KG', 'LB'])\n        .describe(\"Weight measurement unit - defaults to site's weight unit.\")\n        .optional(),\n      currency: z\n        .string()\n        .describe(\n          'Currency used for the pricing of this order in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.'\n        )\n        .optional()\n        .nullable(),\n      currencyConversionDetails: z\n        .object({\n          originalCurrency: z\n            .string()\n            .describe(\n              \"Currency used for the pricing of this order, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format.\\n\\nThis currency is used to calculate the pricing before conversion to the buyer's payment currency.\"\n            )\n            .optional()\n            .nullable(),\n          conversionRate: z\n            .string()\n            .describe(\n              'The rate used for converting the original currency to the currency used for payment.'\n            )\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Currency conversion details. For use with multi-currency sites.'\n        )\n        .optional(),\n      taxIncludedInPrices: z\n        .boolean()\n        .describe('Whether tax is included in line item prices.')\n        .optional(),\n      siteLanguage: z\n        .string()\n        .describe('Site language in which original values are shown.')\n        .optional()\n        .nullable(),\n      priceSummary: z\n        .object({\n          subtotal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Subtotal of all line items, before discounts and before tax.'\n            )\n            .optional(),\n          shipping: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total shipping price, before discounts and before tax.')\n            .optional(),\n          tax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax applied to the order.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total discount amount applied to the order.')\n            .optional(),\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\"Order's total price after discounts and tax.\")\n            .optional(),\n          totalAdditionalFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total additional fees before tax.')\n            .optional(),\n        })\n        .describe('Order price summary.')\n        .optional(),\n      billingInfo: z\n        .object({\n          address: z\n            .object({\n              streetAddress: z\n                .object({\n                  name: z.string().optional(),\n                  number: z.string().optional(),\n                })\n                .optional(),\n              city: z.string().optional().nullable(),\n              subdivision: z.string().optional().nullable(),\n              country: z.string().optional().nullable(),\n              postalCode: z.string().optional().nullable(),\n              addressLine2: z.string().optional().nullable(),\n            })\n            .describe('Address.')\n            .optional(),\n          contactDetails: z\n            .object({\n              firstName: z\n                .string()\n                .describe('First name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              lastName: z\n                .string()\n                .describe('Last name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              phone: z.string().describe('Phone number.').optional().nullable(),\n              company: z\n                .string()\n                .describe('Company name.')\n                .max(1000)\n                .optional()\n                .nullable(),\n              vatId: z\n                .object({\n                  _id: z.string().describe(\"Customer's tax ID.\").optional(),\n                  type: z\n                    .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                    .describe(\n                      'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                    )\n                    .optional(),\n                })\n                .describe(\n                  'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                )\n                .optional(),\n            })\n            .describe('Contact details.')\n            .optional(),\n        })\n        .describe('Billing address and contact details.')\n        .optional(),\n      shippingInfo: z\n        .object({\n          carrierId: z\n            .string()\n            .describe(\n              'App Def Id of external provider which was a source of shipping info'\n            )\n            .min(1)\n            .max(100)\n            .optional()\n            .nullable(),\n          code: z\n            .string()\n            .describe(\n              'Unique code (or ID) of selected shipping option. For example, `\"usps_std_overnight\"`.'\n            )\n            .min(1)\n            .max(100)\n            .optional()\n            .nullable(),\n          title: z\n            .string()\n            .describe(\n              'Shipping option title.\\nFor example, `\"USPS Standard Overnight Delivery\"`, `\"Standard\"` or `\"First-Class Package International\"`.'\n            )\n            .max(250)\n            .optional(),\n          logistics: z\n            .intersection(\n              z.object({\n                deliveryTime: z\n                  .string()\n                  .describe(\n                    'Expected delivery time in free text. For example, `\"3-5 business days\"`.'\n                  )\n                  .max(500)\n                  .optional()\n                  .nullable(),\n                instructions: z\n                  .string()\n                  .describe(\n                    'Instructions for the carrier. For example, `\"Please knock on the door. If unanswered, please call contact number.\"`.'\n                  )\n                  .max(1000)\n                  .optional()\n                  .nullable(),\n                deliverByDate: z\n                  .date()\n                  .describe(\n                    'Deprecated - Latest expected delivery date and time in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.'\n                  )\n                  .optional()\n                  .nullable(),\n                deliveryTimeSlot: z\n                  .object({\n                    from: z\n                      .date()\n                      .describe('Delivery slot starting time.')\n                      .optional()\n                      .nullable(),\n                    to: z\n                      .date()\n                      .describe('Delivery slot ending time.')\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Expected delivery time slot with start and end times.'\n                  )\n                  .optional(),\n              }),\n              z.xor([\n                z.object({\n                  shippingDestination: z.never().optional(),\n                  pickupDetails: z.never().optional(),\n                }),\n                z.object({\n                  pickupDetails: z.never().optional(),\n                  shippingDestination: z\n                    .object({\n                      address: z\n                        .object({\n                          streetAddress: z\n                            .object({\n                              name: z.string().optional(),\n                              number: z.string().optional(),\n                            })\n                            .optional(),\n                          city: z.string().optional().nullable(),\n                          subdivision: z.string().optional().nullable(),\n                          country: z.string().optional().nullable(),\n                          postalCode: z.string().optional().nullable(),\n                          addressLine2: z.string().optional().nullable(),\n                        })\n                        .describe('Address.')\n                        .optional(),\n                      contactDetails: z\n                        .object({\n                          firstName: z\n                            .string()\n                            .describe('First name.')\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          lastName: z\n                            .string()\n                            .describe('Last name.')\n                            .max(100)\n                            .optional()\n                            .nullable(),\n                          phone: z\n                            .string()\n                            .describe('Phone number.')\n                            .optional()\n                            .nullable(),\n                          company: z\n                            .string()\n                            .describe('Company name.')\n                            .max(1000)\n                            .optional()\n                            .nullable(),\n                          vatId: z\n                            .object({\n                              _id: z\n                                .string()\n                                .describe(\"Customer's tax ID.\")\n                                .optional(),\n                              type: z\n                                .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                                .describe(\n                                  'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                                )\n                                .optional(),\n                            })\n                            .describe(\n                              'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                            )\n                            .optional(),\n                        })\n                        .describe('Contact details.')\n                        .optional(),\n                    })\n                    .describe(\n                      \"Shipping destination address and contact details. For pickup orders, this contains the pickup location address, not the recipient's address.\"\n                    ),\n                }),\n                z.object({\n                  shippingDestination: z.never().optional(),\n                  pickupDetails: z\n                    .object({\n                      address: z\n                        .object({\n                          streetAddress: z\n                            .object({\n                              name: z.string().optional(),\n                              number: z.string().optional(),\n                            })\n                            .optional(),\n                          city: z.string().optional().nullable(),\n                          subdivision: z.string().optional().nullable(),\n                          country: z.string().optional().nullable(),\n                          postalCode: z.string().optional().nullable(),\n                          addressLine2: z.string().optional().nullable(),\n                        })\n                        .describe('Pickup address.')\n                        .optional(),\n                      pickupMethod: z\n                        .enum(['STORE_PICKUP', 'PICKUP_POINT'])\n                        .describe('Pickup method')\n                        .optional(),\n                    })\n                    .describe(\n                      'Pickup details for store pickup or pickup point orders.'\n                    ),\n                }),\n              ])\n            )\n            .describe('Shipping logistics.')\n            .optional(),\n          cost: z\n            .object({\n              price: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Shipping price for display purposes.')\n                .optional(),\n              totalPriceBeforeTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Total price of shipping after discounts (when relevant), and before tax.'\n                )\n                .optional(),\n              totalPriceAfterTax: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe(\n                  'Shipping price after all discounts (if any exist), and after tax.'\n                )\n                .optional(),\n              taxDetails: z\n                .object({\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Taxable amount of this line item.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe(\n                      'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                    )\n                    .optional(),\n                  totalTax: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                    )\n                    .optional(),\n                })\n                .describe('Tax details.')\n                .optional(),\n              taxInfo: z\n                .object({\n                  taxAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe(\n                      'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                    )\n                    .optional(),\n                  taxableAmount: z\n                    .object({\n                      amount: z.string().describe('Amount.').optional(),\n                      formattedAmount: z\n                        .string()\n                        .describe('Amount formatted with currency symbol.')\n                        .optional(),\n                    })\n                    .describe('Amount for which tax is calculated.')\n                    .optional(),\n                  taxRate: z\n                    .string()\n                    .describe('Tax rate %, as a decimal point.')\n                    .optional()\n                    .nullable(),\n                  taxGroupId: z\n                    .string()\n                    .describe('Tax group ID.')\n                    .regex(\n                      /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                      'Must be a valid GUID'\n                    )\n                    .optional()\n                    .nullable(),\n                  taxIncludedInPrice: z\n                    .boolean()\n                    .describe(\n                      'Indicates whether the price already includes tax.'\n                    )\n                    .optional(),\n                  taxBreakdown: z\n                    .array(\n                      z.object({\n                        jurisdiction: z\n                          .string()\n                          .describe(\n                            'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        rate: z\n                          .string()\n                          .describe(\n                            'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                          )\n                          .optional()\n                          .nullable(),\n                        taxAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Amount of tax calculated for this line item.'\n                          )\n                          .optional(),\n                        taxType: z\n                          .string()\n                          .describe(\n                            'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        taxName: z\n                          .string()\n                          .describe(\n                            'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                          )\n                          .max(200)\n                          .optional()\n                          .nullable(),\n                        jurisdictionType: z\n                          .enum([\n                            'UNDEFINED',\n                            'COUNTRY',\n                            'STATE',\n                            'COUNTY',\n                            'CITY',\n                            'SPECIAL',\n                          ])\n                          .describe(\n                            'Type of jurisdiction that taxes were calculated for.'\n                          )\n                          .optional(),\n                        nonTaxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe(\n                            'Non-taxable amount of the line item price.'\n                          )\n                          .optional(),\n                        taxableAmount: z\n                          .object({\n                            amount: z.string().describe('Amount.').optional(),\n                            formattedAmount: z\n                              .string()\n                              .describe(\n                                'Amount formatted with currency symbol.'\n                              )\n                              .optional(),\n                          })\n                          .describe('Taxable amount of the line item price.')\n                          .optional(),\n                      })\n                    )\n                    .max(7)\n                    .optional(),\n                })\n                .describe(\n                  'Represents all the relevant tax details for a shipping.'\n                )\n                .optional(),\n              discount: z\n                .object({\n                  amount: z.string().describe('Amount.').optional(),\n                  formattedAmount: z\n                    .string()\n                    .describe('Amount formatted with currency symbol.')\n                    .optional(),\n                })\n                .describe('Shipping discount before tax.')\n                .optional(),\n            })\n            .describe('Shipping costs.')\n            .optional(),\n          region: z\n            .object({\n              name: z\n                .string()\n                .describe(\n                  'Name of shipping region. For example, `\"Metropolitan London\"`, or `\"Outer Melbourne suburbs\"`.'\n                )\n                .max(100)\n                .optional()\n                .nullable(),\n            })\n            .describe('Shipping region.')\n            .optional(),\n        })\n        .describe('Shipping info and selected shipping option details.')\n        .optional(),\n      buyerNote: z\n        .string()\n        .describe(\n          '[Buyer note](https://support.wix.com/en/article/wix-stores-viewing-buyer-notes) left by the customer.'\n        )\n        .max(1000)\n        .optional()\n        .nullable(),\n      status: z\n        .enum(['INITIALIZED', 'APPROVED', 'CANCELED', 'PENDING', 'REJECTED'])\n        .describe('Order status.')\n        .optional(),\n      archived: z\n        .boolean()\n        .describe('Whether order is archived.')\n        .optional()\n        .nullable(),\n      taxSummary: z\n        .object({\n          totalTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax.')\n            .optional(),\n        })\n        .describe(\n          'Tax summary.\\nDeprecated. Use `taxInfo` instead.\\nThis field will be removed on September 30, 2024.'\n        )\n        .optional(),\n      taxInfo: z\n        .object({\n          totalTax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Calculated tax, added from line items.')\n            .optional(),\n          taxBreakdown: z\n            .array(\n              z.object({\n                taxName: z\n                  .string()\n                  .describe(\n                    'The name of the tax against which this tax amount was calculated.'\n                  )\n                  .max(200)\n                  .optional(),\n                taxType: z\n                  .string()\n                  .describe(\n                    \"The type of tax that was calculated. Depends on the company's nexus settings as well as the jurisdiction's tax laws.\"\n                  )\n                  .max(200)\n                  .optional(),\n                jurisdiction: z\n                  .string()\n                  .describe(\n                    'The name of the jurisdiction in which this tax detail applies.'\n                  )\n                  .max(200)\n                  .optional(),\n                jurisdictionType: z\n                  .enum([\n                    'UNDEFINED',\n                    'COUNTRY',\n                    'STATE',\n                    'COUNTY',\n                    'CITY',\n                    'SPECIAL',\n                  ])\n                  .describe(\n                    'The type of the jurisdiction in which this tax detail applies (e.g. Country,State,County,City,Special).'\n                  )\n                  .optional(),\n                rate: z\n                  .string()\n                  .describe('The rate at which this tax detail was calculated.')\n                  .optional(),\n                aggregatedTaxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The sum of all the tax from line items that calculated by the tax identifiers.'\n                  )\n                  .optional(),\n              })\n            )\n            .min(0)\n            .max(50)\n            .optional(),\n          taxExempt: z\n            .boolean()\n            .describe(\n              'Whether the order is exempt from tax calculations.\\n\\nDefault: `false`'\n            )\n            .optional()\n            .nullable(),\n        })\n        .describe('Tax information.')\n        .optional(),\n      appliedDiscounts: z\n        .array(\n          z.intersection(\n            z.object({\n              discountType: z\n                .enum(['GLOBAL', 'SPECIFIC_ITEMS', 'SHIPPING'])\n                .optional(),\n              lineItemIds: z.array(z.string()).min(0).max(300).optional(),\n              _id: z\n                .string()\n                .describe('Discount ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              lineItemDiscounts: z\n                .array(\n                  z.object({\n                    _id: z\n                      .string()\n                      .describe('Line item ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    totalDiscount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Total discount amount for this line item.')\n                      .optional(),\n                  })\n                )\n                .max(300)\n                .optional(),\n            }),\n            z.xor([\n              z.object({\n                coupon: z.never().optional(),\n                merchantDiscount: z.never().optional(),\n                discountRule: z.never().optional(),\n              }),\n              z.object({\n                merchantDiscount: z.never().optional(),\n                discountRule: z.never().optional(),\n                coupon: z\n                  .object({\n                    _id: z.string().describe('Coupon ID.').optional(),\n                    code: z.string().describe('Coupon code.').optional(),\n                    name: z.string().describe('Coupon name.').optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Coupon value.')\n                      .optional(),\n                  })\n                  .describe('Coupon applied by the customer.'),\n              }),\n              z.object({\n                coupon: z.never().optional(),\n                discountRule: z.never().optional(),\n                merchantDiscount: z\n                  .intersection(\n                    z.object({\n                      amount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Discount amount.')\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        discountReason: z.never().optional(),\n                        description: z.never().optional(),\n                      }),\n                      z.object({\n                        description: z.never().optional(),\n                        discountReason: z\n                          .enum([\n                            'UNSPECIFIED',\n                            'EXCHANGED_ITEMS',\n                            'BILLING_ADJUSTMENT',\n                          ])\n                          .describe('Predefined discount reason.'),\n                      }),\n                      z.object({\n                        discountReason: z.never().optional(),\n                        description: z\n                          .string()\n                          .describe('Custom discount description as free text.')\n                          .max(200),\n                      }),\n                    ])\n                  )\n                  .describe('Discount applied manually by the merchant.'),\n              }),\n              z.object({\n                coupon: z.never().optional(),\n                merchantDiscount: z.never().optional(),\n                discountRule: z\n                  .object({\n                    _id: z\n                      .string()\n                      .describe('Discount rule ID')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    name: z\n                      .object({\n                        original: z\n                          .string()\n                          .describe(\n                            \"Original discount rule name (in site's default language).\"\n                          )\n                          .min(1)\n                          .max(256)\n                          .optional(),\n                        translated: z\n                          .string()\n                          .describe(\n                            'Translated discount rule name according to buyer language. Defaults to `original` when not provided.'\n                          )\n                          .min(1)\n                          .max(500)\n                          .optional()\n                          .nullable(),\n                      })\n                      .describe('Discount rule name')\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Discount value.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Automatic discount applied by the system based on configured discount rules.'\n                  ),\n              }),\n            ])\n          )\n        )\n        .max(320)\n        .optional(),\n      activities: z\n        .array(\n          z.intersection(\n            z.object({\n              _id: z\n                .string()\n                .describe('Activity ID.')\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                )\n                .optional()\n                .nullable(),\n              authorEmail: z\n                .string()\n                .describe(\"Activity author's email.\")\n                .email()\n                .optional()\n                .nullable(),\n              _createdDate: z\n                .date()\n                .describe('Activity creation date and time.')\n                .optional()\n                .nullable(),\n              type: z\n                .enum([\n                  'ORDER_REFUNDED',\n                  'ORDER_PLACED',\n                  'ORDER_PAID',\n                  'ORDER_FULFILLED',\n                  'ORDER_NOT_FULFILLED',\n                  'ORDER_CANCELED',\n                  'DOWNLOAD_LINK_SENT',\n                  'TRACKING_NUMBER_ADDED',\n                  'TRACKING_NUMBER_EDITED',\n                  'TRACKING_LINK_ADDED',\n                  'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                  'INVOICE_ADDED',\n                  'INVOICE_REMOVED',\n                  'INVOICE_SENT',\n                  'FULFILLER_EMAIL_SENT',\n                  'SHIPPING_ADDRESS_EDITED',\n                  'EMAIL_EDITED',\n                  'PICKUP_READY_EMAIL_SENT',\n                  'CUSTOM_ACTIVITY',\n                  'MERCHANT_COMMENT',\n                  'ORDER_PARTIALLY_PAID',\n                  'DRAFT_ORDER_CHANGES_APPLIED',\n                  'SAVED_PAYMENT_METHOD',\n                  'AUTHORIZED_PAYMENT_CREATED',\n                  'AUTHORIZED_PAYMENT_CAPTURED',\n                  'AUTHORIZED_PAYMENT_VOIDED',\n                  'REFUND_INITIATED',\n                  'PAYMENT_REFUNDED',\n                  'PAYMENT_REFUND_FAILED',\n                  'REFUNDED_AS_STORE_CREDIT',\n                  'PAYMENT_PENDING',\n                  'PAYMENT_CANCELED',\n                  'PAYMENT_DECLINED',\n                  'ORDER_PENDING',\n                  'ORDER_REJECTED',\n                  'RECEIPT_CREATED',\n                  'RECEIPT_SENT',\n                  'CHARGEBACK_CREATED',\n                  'CHARGEBACK_REVERSED',\n                ])\n                .describe('Activity type.')\n                .optional(),\n              activityType: z\n                .enum([\n                  'ORDER_PLACED',\n                  'ORDER_PAID',\n                  'ORDER_FULFILLED',\n                  'ORDER_NOT_FULFILLED',\n                  'ORDER_CANCELED',\n                  'DOWNLOAD_LINK_SENT',\n                  'TRACKING_NUMBER_ADDED',\n                  'TRACKING_NUMBER_EDITED',\n                  'TRACKING_LINK_ADDED',\n                  'SHIPPING_CONFIRMATION_EMAIL_SENT',\n                  'INVOICE_ADDED',\n                  'INVOICE_REMOVED',\n                  'INVOICE_SENT',\n                  'FULFILLER_EMAIL_SENT',\n                  'SHIPPING_ADDRESS_EDITED',\n                  'EMAIL_EDITED',\n                  'PICKUP_READY_EMAIL_SENT',\n                  'MERCHANT_COMMENT',\n                  'ORDER_PARTIALLY_PAID',\n                  'DRAFT_ORDER_CHANGES_APPLIED',\n                  'SAVED_PAYMENT_METHOD',\n                  'AUTHORIZED_PAYMENT_CREATED',\n                  'AUTHORIZED_PAYMENT_CAPTURED',\n                  'AUTHORIZED_PAYMENT_VOIDED',\n                  'REFUND_INITIATED',\n                  'PAYMENT_REFUNDED',\n                  'PAYMENT_REFUND_FAILED',\n                  'REFUNDED_AS_STORE_CREDIT',\n                  'PAYMENT_PENDING',\n                  'PAYMENT_CANCELED',\n                  'PAYMENT_DECLINED',\n                  'ORDER_PENDING',\n                  'ORDER_REJECTED',\n                  'RECEIPT_CREATED',\n                  'RECEIPT_SENT',\n                  'CHARGEBACK_CREATED',\n                  'CHARGEBACK_REVERSED',\n                  'ORDER_REFUNDED',\n                ])\n                .describe('Activity type.')\n                .optional(),\n            }),\n            z.xor([\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n              }),\n              z.object({\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                merchantComment: z\n                  .object({\n                    message: z\n                      .string()\n                      .describe('Merchant comment message.')\n                      .min(1)\n                      .max(5000)\n                      .optional(),\n                  })\n                  .describe(\n                    'Merchant comment details (optional). `activity.type` must be `MERCHANT_COMMENT`.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                orderRefunded: z\n                  .object({\n                    manual: z\n                      .boolean()\n                      .describe(\n                        'Whether order was refunded manually. For example, via payment provider or using cash.'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(200)\n                      .optional(),\n                  })\n                  .describe(\n                    'Additional info about order refunded activity (optional). `activity.type` must be `ORDER_REFUNDED`.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                draftOrderChangesApplied: z\n                  .object({\n                    draftOrderId: z\n                      .string()\n                      .describe('Draft order id.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for edit, given by user (optional).')\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                    changes: z\n                      .array(\n                        z.intersection(\n                          z.object({}),\n                          z.xor([\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                            }),\n                            z.object({\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemChanged: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name after change.')\n                                  .optional(),\n                                quantity: z\n                                  .object({\n                                    originalQuantity: z\n                                      .number()\n                                      .int()\n                                      .describe('Item quantity before update.')\n                                      .min(0)\n                                      .max(1000000)\n                                      .optional(),\n                                    newQuantity: z\n                                      .number()\n                                      .int()\n                                      .describe('Item quantity after update.')\n                                      .min(0)\n                                      .max(1000000)\n                                      .optional(),\n                                    diff: z\n                                      .number()\n                                      .int()\n                                      .describe(\n                                        'Difference between original and new quantity. Absolute value.'\n                                      )\n                                      .min(1)\n                                      .max(1000000)\n                                      .optional(),\n                                    deltaType: z\n                                      .enum([\n                                        'QUANTITY_INCREASED',\n                                        'QUANTITY_DECREASED',\n                                      ])\n                                      .describe(\n                                        'Type of quantity change: increase or decrease.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Item quantity change.')\n                                  .optional(),\n                                price: z\n                                  .object({\n                                    originalPrice: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Item price before update.')\n                                      .optional(),\n                                    newPrice: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Item price after update.')\n                                      .optional(),\n                                  })\n                                  .describe('Item price change.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name.')\n                                  .optional(),\n                                quantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Added or removed item quantity.')\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              lineItemRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Line item ID.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                      )\n                                      .min(1)\n                                      .max(200)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe(\n                                        \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                      )\n                                      .min(1)\n                                      .max(400)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Item name.')\n                                  .optional(),\n                                quantity: z\n                                  .number()\n                                  .int()\n                                  .describe('Added or removed item quantity.')\n                                  .min(1)\n                                  .max(1000000)\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              discountAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Discount id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe(\n                                    'Discount name: coupon name / discount rule name / merchant discount description.'\n                                  )\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Discount amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              discountRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Discount id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe(\n                                    'Discount name: coupon name / discount rule name / merchant discount description.'\n                                  )\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Discount amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              additionalFeeAdded: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Additional fee id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Additional fee name.')\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Additional fee amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              additionalFeeRemoved: z.object({\n                                _id: z\n                                  .string()\n                                  .describe('Additional fee id.')\n                                  .regex(\n                                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                    'Must be a valid GUID'\n                                  )\n                                  .optional(),\n                                name: z\n                                  .object({\n                                    original: z\n                                      .string()\n                                      .describe(\n                                        'Value in site default language.'\n                                      )\n                                      .min(1)\n                                      .optional(),\n                                    translated: z\n                                      .string()\n                                      .describe('Translated value.')\n                                      .min(1)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Additional fee name.')\n                                  .optional(),\n                                affectedLineItems: z\n                                  .array(\n                                    z.object({\n                                      _id: z\n                                        .string()\n                                        .describe('Order line item id')\n                                        .regex(\n                                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                          'Must be a valid GUID'\n                                        )\n                                        .optional(),\n                                      name: z\n                                        .object({\n                                          original: z\n                                            .string()\n                                            .describe(\n                                              \"__Required.__ Item name in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                                            )\n                                            .min(1)\n                                            .max(200)\n                                            .optional(),\n                                          translated: z\n                                            .string()\n                                            .describe(\n                                              \"Item name translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                                            )\n                                            .min(1)\n                                            .max(400)\n                                            .optional()\n                                            .nullable(),\n                                        })\n                                        .describe('Item name.')\n                                        .optional(),\n                                      amount: z\n                                        .object({\n                                          amount: z\n                                            .string()\n                                            .describe('Amount.')\n                                            .optional(),\n                                          formattedAmount: z\n                                            .string()\n                                            .describe(\n                                              'Amount formatted with currency symbol.'\n                                            )\n                                            .optional(),\n                                        })\n                                        .describe(\n                                          'Amount associated with this item. (Discount amount for item / additional fee amount for item)'\n                                        )\n                                        .optional(),\n                                    })\n                                  )\n                                  .min(0)\n                                  .optional(),\n                                totalAmount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Additional fee amount.')\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              shippingInformationChanged: z.never().optional(),\n                              totalPriceChanged: z.object({\n                                originalTotal: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s total price after discounts and tax. Before update'\n                                  )\n                                  .optional(),\n                                newTotal: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s total price after discounts and tax. After update'\n                                  )\n                                  .optional(),\n                              }),\n                            }),\n                            z.object({\n                              lineItemChanged: z.never().optional(),\n                              lineItemAdded: z.never().optional(),\n                              lineItemRemoved: z.never().optional(),\n                              discountAdded: z.never().optional(),\n                              discountRemoved: z.never().optional(),\n                              additionalFeeAdded: z.never().optional(),\n                              additionalFeeRemoved: z.never().optional(),\n                              totalPriceChanged: z.never().optional(),\n                              shippingInformationChanged: z.object({\n                                originalShippingInfo: z\n                                  .object({\n                                    total: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Order’s shipping price.')\n                                      .optional(),\n                                    shippingTitle: z\n                                      .string()\n                                      .describe('Order’s shipping title.')\n                                      .max(250)\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s Shipping Information. Before update'\n                                  )\n                                  .optional(),\n                                newShippingInfo: z\n                                  .object({\n                                    total: z\n                                      .object({\n                                        amount: z\n                                          .string()\n                                          .describe('Amount.')\n                                          .optional(),\n                                        formattedAmount: z\n                                          .string()\n                                          .describe(\n                                            'Amount formatted with currency symbol.'\n                                          )\n                                          .optional(),\n                                      })\n                                      .describe('Order’s shipping price.')\n                                      .optional(),\n                                    shippingTitle: z\n                                      .string()\n                                      .describe('Order’s shipping title.')\n                                      .max(250)\n                                      .optional(),\n                                  })\n                                  .describe(\n                                    'Order’s Shipping Information. After update'\n                                  )\n                                  .optional(),\n                              }),\n                            }),\n                          ])\n                        )\n                      )\n                      .optional(),\n                  })\n                  .describe('Details of changes made by the Draft Orders API.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                savedPaymentMethod: z\n                  .object({\n                    name: z\n                      .string()\n                      .describe('Payment method name.')\n                      .min(1)\n                      .max(100)\n                      .optional(),\n                    description: z\n                      .string()\n                      .describe('Payment method description.')\n                      .min(1)\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Details of the payment method saved for the order.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentCreated: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment created.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentCaptured: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment captured.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                authorizedPaymentVoided: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'Payment ID of payment associated with this activity.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Payment amount.')\n                      .optional(),\n                    lastFourDigits: z\n                      .string()\n                      .describe('The last 4 digits of the card number.')\n                      .max(4)\n                      .optional()\n                      .nullable(),\n                    brand: z\n                      .string()\n                      .describe(\"Card issuer's brand.\")\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of an authorized payment voided.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                refundInitiated: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    payments: z\n                      .array(\n                        z.intersection(\n                          z.object({\n                            paymentId: z\n                              .string()\n                              .describe('Payment ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            externalRefund: z\n                              .boolean()\n                              .describe(\n                                \"Whether refund was made externally and manually on the payment provider's side.\"\n                              )\n                              .optional(),\n                          }),\n                          z.xor([\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                            }),\n                            z.object({\n                              giftCard: z.never().optional(),\n                              membership: z.never().optional(),\n                              regular: z\n                                .object({\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                  lastFourDigits: z\n                                    .string()\n                                    .describe(\n                                      'The last 4 digits of the card number.'\n                                    )\n                                    .max(4)\n                                    .optional()\n                                    .nullable(),\n                                  brand: z\n                                    .string()\n                                    .describe(\"Card issuer's brand.\")\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Regular payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              membership: z.never().optional(),\n                              giftCard: z\n                                .object({\n                                  giftCardPaymentId: z\n                                    .string()\n                                    .describe('Gift card payment ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                  amount: z\n                                    .object({\n                                      amount: z\n                                        .string()\n                                        .describe('Amount.')\n                                        .optional(),\n                                      formattedAmount: z\n                                        .string()\n                                        .describe(\n                                          'Amount formatted with currency symbol.'\n                                        )\n                                        .optional(),\n                                    })\n                                    .describe('Refund amount.')\n                                    .optional(),\n                                })\n                                .describe('Gift card payment refund.'),\n                            }),\n                            z.object({\n                              regular: z.never().optional(),\n                              giftCard: z.never().optional(),\n                              membership: z\n                                .object({\n                                  membershipId: z\n                                    .string()\n                                    .describe('Membership ID.')\n                                    .min(1)\n                                    .max(100)\n                                    .optional()\n                                    .nullable(),\n                                })\n                                .describe('Membership payment refund.'),\n                            }),\n                          ])\n                        )\n                      )\n                      .min(1)\n                      .max(50)\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(200)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe(\n                    'Details of an initiated refund process.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentRefunded: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    payment: z\n                      .intersection(\n                        z.object({\n                          paymentId: z\n                            .string()\n                            .describe('Payment ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          externalRefund: z\n                            .boolean()\n                            .describe(\n                              \"Whether refund was made externally and manually on the payment provider's side.\"\n                            )\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                          }),\n                          z.object({\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                            regular: z\n                              .object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Regular payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            membership: z.never().optional(),\n                            giftCard: z\n                              .object({\n                                giftCardPaymentId: z\n                                  .string()\n                                  .describe('Gift card payment ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                              })\n                              .describe('Gift card payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z\n                              .object({\n                                membershipId: z\n                                  .string()\n                                  .describe('Membership ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Membership payment refund.'),\n                          }),\n                        ])\n                      )\n                      .describe('Details about the refunded payment.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Details of a refunded payment.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentRefundFailed: z\n                  .object({\n                    refundId: z\n                      .string()\n                      .describe('Refund ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    payment: z\n                      .intersection(\n                        z.object({\n                          paymentId: z\n                            .string()\n                            .describe('Payment ID.')\n                            .regex(\n                              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                              'Must be a valid GUID'\n                            )\n                            .optional(),\n                          externalRefund: z\n                            .boolean()\n                            .describe(\n                              \"Whether refund was made externally and manually on the payment provider's side.\"\n                            )\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                          }),\n                          z.object({\n                            giftCard: z.never().optional(),\n                            membership: z.never().optional(),\n                            regular: z\n                              .object({\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Regular payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            membership: z.never().optional(),\n                            giftCard: z\n                              .object({\n                                giftCardPaymentId: z\n                                  .string()\n                                  .describe('Gift card payment ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                                amount: z\n                                  .object({\n                                    amount: z\n                                      .string()\n                                      .describe('Amount.')\n                                      .optional(),\n                                    formattedAmount: z\n                                      .string()\n                                      .describe(\n                                        'Amount formatted with currency symbol.'\n                                      )\n                                      .optional(),\n                                  })\n                                  .describe('Refund amount.')\n                                  .optional(),\n                              })\n                              .describe('Gift card payment refund.'),\n                          }),\n                          z.object({\n                            regular: z.never().optional(),\n                            giftCard: z.never().optional(),\n                            membership: z\n                              .object({\n                                membershipId: z\n                                  .string()\n                                  .describe('Membership ID.')\n                                  .min(1)\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Membership payment refund.'),\n                          }),\n                        ])\n                      )\n                      .describe('Details about the failed payment refund.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Details of a failed payment refund.\\n\\n> **Note:** A single `refundInitiated` activity can result in multiple `paymentRefunded` or `paymentRefundFailed` activities.\\n> In these cases, the `refundId` will be identical across the activities.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                refundedAsStoreCredit: z\n                  .object({\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Refund amount.')\n                      .optional(),\n                    reason: z\n                      .string()\n                      .describe('Reason for refund.')\n                      .max(100)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Details of refund to store credit.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentPending: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a pending payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentCanceled: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a canceled payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                paymentDeclined: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({ regular: z.never().optional() }),\n                      z.object({\n                        regular: z\n                          .intersection(\n                            z.object({\n                              amount: z\n                                .object({\n                                  amount: z\n                                    .string()\n                                    .describe('Amount.')\n                                    .optional(),\n                                  formattedAmount: z\n                                    .string()\n                                    .describe(\n                                      'Amount formatted with currency symbol.'\n                                    )\n                                    .optional(),\n                                })\n                                .describe('Payment amount.')\n                                .optional(),\n                            }),\n                            z.xor([\n                              z.object({\n                                creditCardDetails: z.never().optional(),\n                              }),\n                              z.object({\n                                creditCardDetails: z\n                                  .object({\n                                    lastFourDigits: z\n                                      .string()\n                                      .describe(\n                                        'The last 4 digits of the card number.'\n                                      )\n                                      .max(4)\n                                      .optional()\n                                      .nullable(),\n                                    brand: z\n                                      .string()\n                                      .describe(\"Card issuer's brand.\")\n                                      .max(100)\n                                      .optional()\n                                      .nullable(),\n                                  })\n                                  .describe('Credit card details.'),\n                              }),\n                            ])\n                          )\n                          .describe('Regular payment.'),\n                      }),\n                    ])\n                  )\n                  .describe('Details of a declined payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                receiptCreated: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z.never().optional(),\n                      }),\n                      z.object({\n                        externalReceipt: z.never().optional(),\n                        wixReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by Wix.'),\n                      }),\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by an external system.'),\n                      }),\n                    ])\n                  )\n                  .describe('Receipt was added for associated payment.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                receiptSent: z\n                  .intersection(\n                    z.object({\n                      paymentId: z\n                        .string()\n                        .describe(\n                          'Payment ID of payment associated with this activity.'\n                        )\n                        .regex(\n                          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                          'Must be a valid GUID'\n                        )\n                        .optional(),\n                    }),\n                    z.xor([\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z.never().optional(),\n                      }),\n                      z.object({\n                        externalReceipt: z.never().optional(),\n                        wixReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .regex(\n                                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                                'Must be a valid GUID'\n                              )\n                              .optional(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by Wix.'),\n                      }),\n                      z.object({\n                        wixReceipt: z.never().optional(),\n                        externalReceipt: z\n                          .object({\n                            receiptId: z\n                              .string()\n                              .describe('Receipt ID.')\n                              .max(100)\n                              .optional()\n                              .nullable(),\n                            displayNumber: z\n                              .string()\n                              .describe('Display number of receipt.')\n                              .min(1)\n                              .max(40)\n                              .optional()\n                              .nullable(),\n                          })\n                          .describe('Receipt created by an external system.'),\n                      }),\n                    ])\n                  )\n                  .describe('Receipt sent to customer.'),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackReversed: z.never().optional(),\n                chargebackCreated: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe('ID of the payment that received a chargeback.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    chargebackId: z\n                      .string()\n                      .describe('Chargeback ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback amount.')\n                      .optional(),\n                    paymentDetails: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Payment details.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Order received a chargeback for one of its payments.'\n                  ),\n              }),\n              z.object({\n                merchantComment: z.never().optional(),\n                orderRefunded: z.never().optional(),\n                draftOrderChangesApplied: z.never().optional(),\n                savedPaymentMethod: z.never().optional(),\n                authorizedPaymentCreated: z.never().optional(),\n                authorizedPaymentCaptured: z.never().optional(),\n                authorizedPaymentVoided: z.never().optional(),\n                refundInitiated: z.never().optional(),\n                paymentRefunded: z.never().optional(),\n                paymentRefundFailed: z.never().optional(),\n                refundedAsStoreCredit: z.never().optional(),\n                paymentPending: z.never().optional(),\n                paymentCanceled: z.never().optional(),\n                paymentDeclined: z.never().optional(),\n                receiptCreated: z.never().optional(),\n                receiptSent: z.never().optional(),\n                chargebackCreated: z.never().optional(),\n                chargebackReversed: z\n                  .object({\n                    paymentId: z\n                      .string()\n                      .describe(\n                        'ID of the payment involved with the chargeback.'\n                      )\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    chargebackId: z\n                      .string()\n                      .describe('Chargeback ID.')\n                      .regex(\n                        /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                        'Must be a valid GUID'\n                      )\n                      .optional(),\n                    amount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback amount.')\n                      .optional(),\n                    reversalAmount: z\n                      .object({\n                        amount: z.string().describe('Amount.').optional(),\n                        formattedAmount: z\n                          .string()\n                          .describe('Amount formatted with currency symbol.')\n                          .optional(),\n                      })\n                      .describe('Chargeback reversal amount.')\n                      .optional(),\n                    paymentDetails: z\n                      .intersection(\n                        z.object({\n                          amount: z\n                            .object({\n                              amount: z.string().describe('Amount.').optional(),\n                              formattedAmount: z\n                                .string()\n                                .describe(\n                                  'Amount formatted with currency symbol.'\n                                )\n                                .optional(),\n                            })\n                            .describe('Payment amount.')\n                            .optional(),\n                        }),\n                        z.xor([\n                          z.object({ creditCardDetails: z.never().optional() }),\n                          z.object({\n                            creditCardDetails: z\n                              .object({\n                                lastFourDigits: z\n                                  .string()\n                                  .describe(\n                                    'The last 4 digits of the card number.'\n                                  )\n                                  .max(4)\n                                  .optional()\n                                  .nullable(),\n                                brand: z\n                                  .string()\n                                  .describe(\"Card issuer's brand.\")\n                                  .max(100)\n                                  .optional()\n                                  .nullable(),\n                              })\n                              .describe('Credit card details.'),\n                          }),\n                        ])\n                      )\n                      .describe('Payment details.')\n                      .optional(),\n                  })\n                  .describe(\n                    \"Chargeback reversed for one of the order's payments.\"\n                  ),\n              }),\n            ])\n          )\n        )\n        .max(1000)\n        .optional(),\n      attributionSource: z\n        .enum(['UNSPECIFIED', 'FACEBOOK_ADS'])\n        .describe('Order attribution source.')\n        .optional(),\n      createdBy: z\n        .intersection(\n          z.object({}),\n          z.xor([\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n            }),\n            z.object({\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n              userId: z\n                .string()\n                .describe(\n                  'User ID - when the order was created by a Wix user on behalf of a buyer.\\nFor example, via POS (point of service).'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z.never().optional(),\n              memberId: z\n                .string()\n                .describe(\n                  'Member ID - when the order was created by a **logged in** site visitor.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              appId: z.never().optional(),\n              visitorId: z\n                .string()\n                .describe(\n                  'Visitor ID - when the order was created by a site visitor that was **not** logged in.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n            z.object({\n              userId: z.never().optional(),\n              memberId: z.never().optional(),\n              visitorId: z.never().optional(),\n              appId: z\n                .string()\n                .describe(\n                  'App ID - when the order was created by an external application.'\n                )\n                .regex(\n                  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                  'Must be a valid GUID'\n                ),\n            }),\n          ])\n        )\n        .describe(\"ID of the order's initiator.\")\n        .optional(),\n      channelInfo: z\n        .object({\n          type: z\n            .enum([\n              'UNSPECIFIED',\n              'WEB',\n              'POS',\n              'EBAY',\n              'AMAZON',\n              'OTHER_PLATFORM',\n              'WIX_APP_STORE',\n              'WIX_INVOICES',\n              'BACKOFFICE_MERCHANT',\n              'WISH',\n              'CLASS_PASS',\n              'GLOBAL_E',\n              'FACEBOOK',\n              'ETSY',\n              'TIKTOK',\n              'FAIRE_COM',\n              'PAYPAL_AGENTIC_CHECKOUT',\n              'STRIPE_AGENTIC_CHECKOUT',\n            ])\n            .describe(\n              'Sales channel that submitted the order.\\n\\nWhen creating an order via the API to record an external order, use the channel type that matches the original source. If no matching type exists, use `OTHER_PLATFORM`.'\n            )\n            .optional(),\n          externalOrderId: z\n            .string()\n            .describe(\n              'Reference to an order ID from an external system. Relevant when recording orders from external platforms.'\n            )\n            .max(100)\n            .optional()\n            .nullable(),\n          externalOrderUrl: z\n            .string()\n            .describe(\n              'URL to the order in the external system. Relevant when recording orders from external platforms.'\n            )\n            .max(300)\n            .optional()\n            .nullable(),\n        })\n        .describe(\n          'Information about the sales channel that submitted this order.'\n        )\n        .optional(),\n      seenByAHuman: z\n        .boolean()\n        .describe(\n          'Whether a human has seen the order. Set when an order is clicked on in the dashboard.'\n        )\n        .optional()\n        .nullable(),\n      checkoutId: z\n        .string()\n        .describe('Checkout ID.')\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      customFields: z\n        .array(\n          z.object({\n            value: z\n              .any()\n              .describe('Custom field value.')\n              .optional()\n              .nullable(),\n            title: z\n              .string()\n              .describe('Custom field title.')\n              .min(1)\n              .max(500)\n              .optional(),\n            translatedTitle: z\n              .string()\n              .describe('Translated custom field title.')\n              .min(1)\n              .max(500)\n              .optional()\n              .nullable(),\n          })\n        )\n        .optional(),\n      balanceSummary: z\n        .object({\n          balance: z\n            .object({\n              amount: z\n                .string()\n                .describe(\n                  'Balance amount.\\n\\nA negative `amount` represents the amount to be refunded. This can happen due to overcharging or the order being modified after a payment has been made.'\n                )\n                .optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Current amount left to pay.')\n            .optional(),\n          paid: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Sum of all approved and successful payments.\\n\\nThe value includes payments that have subsequently been fully or partially refunded.'\n            )\n            .optional(),\n          refunded: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all successfully refunded payments.')\n            .optional(),\n          authorized: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all authorized payments.')\n            .optional(),\n          pendingRefund: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all pending refund transactions.')\n            .optional(),\n          pending: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all pending transactions.')\n            .optional(),\n          chargeback: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all transaction chargebacks.')\n            .optional(),\n          chargebackReversal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Sum of all chargeback reversals.')\n            .optional(),\n          platformFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total platform fees actually charged across all payments.\\nThis reflects amounts collected, which may differ from the expected fees in `order.platformFeeSummary`.'\n            )\n            .optional(),\n          totalMinusPlatformFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Order total after deducting platform fees. Represents the net amount payable to the merchant.'\n            )\n            .optional(),\n        })\n        .describe('Balance summary.')\n        .optional(),\n      additionalFees: z\n        .array(\n          z.object({\n            code: z\n              .string()\n              .describe(\"Additional fee's unique code for future processing.\")\n              .min(1)\n              .max(100)\n              .optional()\n              .nullable(),\n            name: z\n              .string()\n              .describe('Name of additional fee.')\n              .min(1)\n              .max(50)\n              .optional(),\n            price: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price.\")\n              .optional(),\n            taxDetails: z\n              .object({\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Taxable amount of this line item.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe(\n                    'Tax rate percentage, as a decimal numeral between 0 and 1. For example, `\"0.13\"`.'\n                  )\n                  .optional(),\n                totalTax: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'The calculated tax, based on the `taxableAmount` and `taxRate`.'\n                  )\n                  .optional(),\n              })\n              .describe('Tax details.')\n              .optional(),\n            taxInfo: z\n              .object({\n                taxAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe(\n                    'Calculated tax, based on `taxable_amount` and `tax_rate`.'\n                  )\n                  .optional(),\n                taxableAmount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Amount for which tax is calculated.')\n                  .optional(),\n                taxRate: z\n                  .string()\n                  .describe('Tax rate %, as a decimal point.')\n                  .optional()\n                  .nullable(),\n                taxGroupId: z\n                  .string()\n                  .describe('Tax group ID.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional()\n                  .nullable(),\n                taxIncludedInPrice: z\n                  .boolean()\n                  .describe('Indicates whether the price already includes tax.')\n                  .optional(),\n                taxBreakdown: z\n                  .array(\n                    z.object({\n                      jurisdiction: z\n                        .string()\n                        .describe(\n                          'Jurisdiction that taxes were calculated for. For example, \"New York\", or \"Quebec\".'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      rate: z\n                        .string()\n                        .describe(\n                          'Tax rate used for this jurisdiction, as a decimal. For example, 10% tax is 0.1000.'\n                        )\n                        .optional()\n                        .nullable(),\n                      taxAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe(\n                          'Amount of tax calculated for this line item.'\n                        )\n                        .optional(),\n                      taxType: z\n                        .string()\n                        .describe(\n                          'The type of tax that was calculated. Depends on the jurisdiction\\'s tax laws. For example, \"Sales Tax\", \"Income Tax\", \"Value Added Tax\", etc.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      taxName: z\n                        .string()\n                        .describe(\n                          'The name of the tax against which this tax amount was calculated. For example, \"NY State Sales Tax\", \"Quebec GST\", etc.\\nThis name should be explicit enough to allow the merchant to understand what tax was calculated.'\n                        )\n                        .max(200)\n                        .optional()\n                        .nullable(),\n                      jurisdictionType: z\n                        .enum([\n                          'UNDEFINED',\n                          'COUNTRY',\n                          'STATE',\n                          'COUNTY',\n                          'CITY',\n                          'SPECIAL',\n                        ])\n                        .describe(\n                          'Type of jurisdiction that taxes were calculated for.'\n                        )\n                        .optional(),\n                      nonTaxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Non-taxable amount of the line item price.')\n                        .optional(),\n                      taxableAmount: z\n                        .object({\n                          amount: z.string().describe('Amount.').optional(),\n                          formattedAmount: z\n                            .string()\n                            .describe('Amount formatted with currency symbol.')\n                            .optional(),\n                        })\n                        .describe('Taxable amount of the line item price.')\n                        .optional(),\n                    })\n                  )\n                  .max(7)\n                  .optional(),\n              })\n              .describe(\n                'Represents all the relevant tax details for additional fee.'\n              )\n              .optional(),\n            providerAppId: z\n              .string()\n              .describe(\"SPI implementer's `appId`.\")\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional()\n              .nullable(),\n            priceBeforeTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price before tax.\")\n              .optional(),\n            priceAfterTax: z\n              .object({\n                amount: z.string().describe('Amount.').optional(),\n                formattedAmount: z\n                  .string()\n                  .describe('Amount formatted with currency symbol.')\n                  .optional(),\n              })\n              .describe(\"Additional fee's price after tax.\")\n              .optional(),\n            _id: z\n              .string()\n              .describe(\"Additional fee's id.\")\n              .regex(\n                /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                'Must be a valid GUID'\n              )\n              .optional(),\n            lineItemIds: z.array(z.string()).optional(),\n            source: z\n              .enum([\n                'SERVICE_PLUGIN',\n                'ITEM',\n                'MANUAL',\n                'SHIPPING',\n                'PLATFORM',\n              ])\n              .describe('Specifies the entity that added the additional fee.')\n              .optional(),\n          })\n        )\n        .max(100)\n        .optional(),\n      extendedFields: z\n        .object({\n          namespaces: z\n            .record(z.string(), z.record(z.string(), z.any()))\n            .describe(\n              'Extended field data. Each key corresponds to the namespace of the app that created the extended fields.\\nThe value of each key is structured according to the schema defined when the extended fields were configured.\\n\\nYou can only access fields for which you have the appropriate permissions.\\n\\nLearn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).'\n            )\n            .optional(),\n        })\n        .describe(\n          'Custom field data for the order object.\\n\\n[Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.'\n        )\n        .optional(),\n      purchaseFlowId: z\n        .string()\n        .describe(\n          'Persistent ID that correlates between the various eCommerce elements: cart, checkout, and order.'\n        )\n        .regex(\n          /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n          'Must be a valid GUID'\n        )\n        .optional()\n        .nullable(),\n      recipientInfo: z\n        .object({\n          address: z\n            .object({\n              streetAddress: z\n                .object({\n                  name: z.string().optional(),\n                  number: z.string().optional(),\n                })\n                .optional(),\n              city: z.string().optional().nullable(),\n              subdivision: z.string().optional().nullable(),\n              country: z.string().optional().nullable(),\n              postalCode: z.string().optional().nullable(),\n              addressLine2: z.string().optional().nullable(),\n            })\n            .describe('Address.')\n            .optional(),\n          contactDetails: z\n            .object({\n              firstName: z\n                .string()\n                .describe('First name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              lastName: z\n                .string()\n                .describe('Last name.')\n                .max(100)\n                .optional()\n                .nullable(),\n              phone: z.string().describe('Phone number.').optional().nullable(),\n              company: z\n                .string()\n                .describe('Company name.')\n                .max(1000)\n                .optional()\n                .nullable(),\n              vatId: z\n                .object({\n                  _id: z.string().describe(\"Customer's tax ID.\").optional(),\n                  type: z\n                    .enum(['UNSPECIFIED', 'CPF', 'CNPJ'])\n                    .describe(\n                      'Tax type.\\n\\nSupported values:\\n+ `CPF`: for individual tax payers\\n+ `CNPJ`: for corporations'\n                    )\n                    .optional(),\n                })\n                .describe(\n                  'Tax information (for Brazil only). If ID is provided, `vatId.type` must also be set, `UNSPECIFIED` is not allowed.'\n                )\n                .optional(),\n            })\n            .describe('Contact details.')\n            .optional(),\n        })\n        .describe(\n          \"Final recipient's address and contact details.\\n\\nThis field represents who will ultimately receive the order. It may differ from `shippingInfo.logistics.shippingDestination` when:\\n+ The chosen shipping option is a pickup point or store pickup, where `shippingDestination` contains the pickup location.\\n+ No shipping option is selected.\"\n        )\n        .optional(),\n      tags: z\n        .object({\n          privateTags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n            )\n            .optional(),\n          tags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n            )\n            .optional(),\n        })\n        .describe(\n          'Order tags.\\n\\n[Tags](https://dev.wix.com/docs/rest/business-management/tags/introduction) are labels attached to entities, allowing for flexible categorization and data management.'\n        )\n        .optional(),\n      purchasedDate: z\n        .date()\n        .describe(\n          'Date and time the order was originally purchased in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations) format.\\nUsed for migration from external systems.'\n        )\n        .optional()\n        .nullable(),\n      businessLocation: z\n        .object({\n          _id: z\n            .string()\n            .describe(\n              'Location ID.\\nLearn more about the [Wix Locations API](https://dev.wix.com/docs/rest/business-management/locations/introduction).'\n            )\n            .regex(\n              /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n              'Must be a valid GUID'\n            )\n            .optional(),\n          name: z\n            .string()\n            .describe('Location name.')\n            .min(1)\n            .max(500)\n            .optional(),\n        })\n        .describe('Order location.')\n        .optional(),\n      payAfterFreeTrial: z\n        .object({\n          subtotal: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Subtotal of all line items, before discounts and before tax.'\n            )\n            .optional(),\n          shipping: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total shipping price, before discounts and before tax.')\n            .optional(),\n          tax: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total tax applied to the order.')\n            .optional(),\n          discount: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total discount amount applied to the order.')\n            .optional(),\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\"Order's total price after discounts and tax.\")\n            .optional(),\n          totalAdditionalFees: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total additional fees before tax.')\n            .optional(),\n        })\n        .describe(\n          'Pay after free trial price summary. Price summary that should be paid for subscriptions after free trial period.'\n        )\n        .optional(),\n      platformFeeSummary: z\n        .object({\n          total: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe('Total sum of all platform fees.')\n            .optional(),\n          totalPassOn: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total amount of platform fees with `PASS_ON` charge type.'\n            )\n            .optional(),\n          totalAbsorbed: z\n            .object({\n              amount: z.string().describe('Amount.').optional(),\n              formattedAmount: z\n                .string()\n                .describe('Amount formatted with currency symbol.')\n                .optional(),\n            })\n            .describe(\n              'Total amount of platform fees with `ABSORBED` charge type.'\n            )\n            .optional(),\n          fees: z\n            .array(\n              z.object({\n                name: z\n                  .object({\n                    original: z\n                      .string()\n                      .describe(\n                        \"__Required.__ String in the site's default language as defined in the [request envelope](https://dev.wix.com/docs/build-apps/develop-your-app/frameworks/self-hosting/supported-extensions/backend-extensions/add-self-hosted-service-plugin-extensions#request-envelope).\\n\\nMin: 1 character.\\nMax: 200 characters.\"\n                      )\n                      .min(1)\n                      .max(200)\n                      .optional(),\n                    translated: z\n                      .string()\n                      .describe(\n                        \"String translated into the buyer's language.\\n\\nMin: 1 character.\\nMax: 400 characters.\\nDefault: Same as `original`.\"\n                      )\n                      .min(1)\n                      .max(400)\n                      .optional()\n                      .nullable(),\n                  })\n                  .describe('Platform fee name.')\n                  .optional(),\n                amount: z\n                  .object({\n                    amount: z.string().describe('Amount.').optional(),\n                    formattedAmount: z\n                      .string()\n                      .describe('Amount formatted with currency symbol.')\n                      .optional(),\n                  })\n                  .describe('Platform fee amount.')\n                  .optional(),\n                lineItemId: z\n                  .string()\n                  .describe('ID of the line item the platform fee applies to.')\n                  .regex(\n                    /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,\n                    'Must be a valid GUID'\n                  )\n                  .optional(),\n                chargeType: z\n                  .enum(['PASS_ON', 'ABSORBED'])\n                  .describe('Platform fee charge type.')\n                  .optional(),\n                percentageRate: z\n                  .string()\n                  .describe(\n                    'Percentage rate charged as platform fee.\\nThe fee rate percentage expressed as a decimal fraction between 0 and 1. For example, `0.05` for 5%.'\n                  )\n                  .optional(),\n              })\n            )\n            .max(300)\n            .optional(),\n        })\n        .describe(\n          'Summary of platform fees for this order, including totals by charge type and a breakdown of individual fees.'\n        )\n        .optional(),\n    })\n    .describe('Canceled order.')\n    .optional(),\n});\nexport const BulkUpdateOrderTagsRequest = z.object({\n  orderIds: z.array(z.string()).min(1).max(100),\n  options: z\n    .object({\n      assignTags: z\n        .object({\n          privateTags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n            )\n            .optional(),\n          tags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n            )\n            .optional(),\n        })\n        .describe('Tags to be added to orders')\n        .optional(),\n      unassignTags: z\n        .object({\n          privateTags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that require an additional permission in order to access them, normally not given to site members or visitors.'\n            )\n            .optional(),\n          tags: z\n            .object({ tagIds: z.array(z.string()).max(100).optional() })\n            .describe(\n              'Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors.'\n            )\n            .optional(),\n        })\n        .describe('Tags to be removed from orders')\n        .optional(),\n    })\n    .optional(),\n});\nexport const BulkUpdateOrderTagsResponse = z.object({\n  results: z\n    .array(\n      z.object({\n        itemMetadata: z\n          .object({\n            _id: z\n              .string()\n              .describe(\n                \"Item ID. Should always be available, unless it's impossible (for example, when failing to create an item).\"\n              )\n              .optional()\n              .nullable(),\n            originalIndex: z\n              .number()\n              .int()\n              .describe(\n                'Index of the item within the request array. Allows for correlation between request and response items.'\n              )\n              .optional(),\n            success: z\n              .boolean()\n              .describe(\n                'Whether the requested action was successful for this item. When `false`, the `error` field is populated.'\n              )\n              .optional(),\n            error: z\n              .object({\n                code: z.string().describe('Error code.').optional(),\n                description: z\n                  .string()\n                  .describe('Description of the error.')\n                  .optional(),\n                data: z\n                  .record(z.string(), z.any())\n                  .describe('Data related to the error.')\n                  .optional()\n                  .nullable(),\n              })\n              .describe('Details about the error in case of failure.')\n              .optional(),\n          })\n          .optional(),\n      })\n    )\n    .min(1)\n    .max(100)\n    .optional(),\n  bulkActionMetadata: z\n    .object({\n      totalSuccesses: z\n        .number()\n        .int()\n        .describe('Number of items that were successfully processed.')\n        .optional(),\n      totalFailures: z\n        .number()\n        .int()\n        .describe(\"Number of items that couldn't be processed.\")\n        .optional(),\n      undetailedFailures: z\n        .number()\n        .int()\n        .describe(\n          'Number of failures without details because detailed failure threshold was exceeded.'\n        )\n        .optional(),\n    })\n    .optional(),\n});\n"],"mappings":"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","names":[]}