diff --git a/.fern/metadata.json b/.fern/metadata.json
index 753c6616..619b793e 100644
--- a/.fern/metadata.json
+++ b/.fern/metadata.json
@@ -15,7 +15,7 @@
"standardwebhooks": ">=1.0.1,<2"
}
},
- "originGitCommit": "96dc48895758990913abf5ab58d6bac3c0787c60",
+ "originGitCommit": "77bed73f61619ec13f52b8561d198b617933a3f6",
"originGitCommitIsDirty": false,
"invokedBy": "ci",
"requestedVersion": "2.2.0",
diff --git a/.fern/replay.lock b/.fern/replay.lock
index 8a84ccb0..a7ab328a 100644
--- a/.fern/replay.lock
+++ b/.fern/replay.lock
@@ -1926,5 +1926,11 @@ generations:
cli_version: unknown
generator_versions:
fernapi/fern-python-sdk: 5.28.0
-current_generation: c16a779f48163dcb9e09f6e6afa11b65f595f02b
+ - commit_sha: 07c0d504a429360a8b9ca7dba1cbd7efcbe81856
+ tree_hash: 697ab3ebb0393bbae60dc7d5d86a690fd884970d
+ timestamp: 2026-10-07T07:50:41.276Z
+ cli_version: unknown
+ generator_versions:
+ fernapi/fern-python-sdk: 5.28.0
+current_generation: 07c0d504a429360a8b9ca7dba1cbd7efcbe81856
patches: []
diff --git a/reference.md b/reference.md
index 99857d67..64168f85 100644
--- a/reference.md
+++ b/reference.md
@@ -47186,7 +47186,7 @@ client.accounts.preferences.update(
-
-**ads_triple_whale_integration:** `typing.Optional[UpdatePreferencesRequestAdsTripleWhaleIntegration]` — Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a shop domain to report spend against — either an explicit `shop_domain` (required for any merchant without a connected Shopify store, e.g. WooCommerce, a custom checkout, or a white-label platform's merchant) or a Shopify store connected on the Fulfillment page.
+**ads_triple_whale_integration:** `typing.Optional[UpdatePreferencesRequestAdsTripleWhaleIntegration]` — Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a `shop_domain` to report spend against.
diff --git a/src/whop_sdk/accounts/preferences/client.py b/src/whop_sdk/accounts/preferences/client.py
index 6439470c..5993ee72 100644
--- a/src/whop_sdk/accounts/preferences/client.py
+++ b/src/whop_sdk/accounts/preferences/client.py
@@ -127,7 +127,7 @@ def update(
IANA timezone (e.g. `America/New_York`) used to interpret campaign start/end times and to bucket reports. Cannot be cleared once set — pass a new value to change it. Requires the `ad_campaign:create` scope on your API key.
ads_triple_whale_integration : typing.Optional[UpdatePreferencesRequestAdsTripleWhaleIntegration]
- Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a shop domain to report spend against — either an explicit `shop_domain` (required for any merchant without a connected Shopify store, e.g. WooCommerce, a custom checkout, or a white-label platform's merchant) or a Shopify store connected on the Fulfillment page.
+ Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a `shop_domain` to report spend against.
cards_auto_top_up : typing.Optional[bool]
Whether incoming funds are automatically moved to the account's cards balance. Requires a cards balance on the account and the `payout:account:update` scope on your API key.
@@ -295,7 +295,7 @@ async def update(
IANA timezone (e.g. `America/New_York`) used to interpret campaign start/end times and to bucket reports. Cannot be cleared once set — pass a new value to change it. Requires the `ad_campaign:create` scope on your API key.
ads_triple_whale_integration : typing.Optional[UpdatePreferencesRequestAdsTripleWhaleIntegration]
- Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a shop domain to report spend against — either an explicit `shop_domain` (required for any merchant without a connected Shopify store, e.g. WooCommerce, a custom checkout, or a white-label platform's merchant) or a Shopify store connected on the Fulfillment page.
+ Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a `shop_domain` to report spend against.
cards_auto_top_up : typing.Optional[bool]
Whether incoming funds are automatically moved to the account's cards balance. Requires a cards balance on the account and the `payout:account:update` scope on your API key.
diff --git a/src/whop_sdk/accounts/preferences/raw_client.py b/src/whop_sdk/accounts/preferences/raw_client.py
index e6f12ae8..96d301e9 100644
--- a/src/whop_sdk/accounts/preferences/raw_client.py
+++ b/src/whop_sdk/accounts/preferences/raw_client.py
@@ -160,7 +160,7 @@ def update(
IANA timezone (e.g. `America/New_York`) used to interpret campaign start/end times and to bucket reports. Cannot be cleared once set — pass a new value to change it. Requires the `ad_campaign:create` scope on your API key.
ads_triple_whale_integration : typing.Optional[UpdatePreferencesRequestAdsTripleWhaleIntegration]
- Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a shop domain to report spend against — either an explicit `shop_domain` (required for any merchant without a connected Shopify store, e.g. WooCommerce, a custom checkout, or a white-label platform's merchant) or a Shopify store connected on the Fulfillment page.
+ Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a `shop_domain` to report spend against.
cards_auto_top_up : typing.Optional[bool]
Whether incoming funds are automatically moved to the account's cards balance. Requires a cards balance on the account and the `payout:account:update` scope on your API key.
@@ -417,7 +417,7 @@ async def update(
IANA timezone (e.g. `America/New_York`) used to interpret campaign start/end times and to bucket reports. Cannot be cleared once set — pass a new value to change it. Requires the `ad_campaign:create` scope on your API key.
ads_triple_whale_integration : typing.Optional[UpdatePreferencesRequestAdsTripleWhaleIntegration]
- Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a shop domain to report spend against — either an explicit `shop_domain` (required for any merchant without a connected Shopify store, e.g. WooCommerce, a custom checkout, or a white-label platform's merchant) or a Shopify store connected on the Fulfillment page.
+ Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a `shop_domain` to report spend against.
cards_auto_top_up : typing.Optional[bool]
Whether incoming funds are automatically moved to the account's cards balance. Requires a cards balance on the account and the `payout:account:update` scope on your API key.
diff --git a/src/whop_sdk/accounts/preferences/types/retrieve_preferences_response.py b/src/whop_sdk/accounts/preferences/types/retrieve_preferences_response.py
index 9c568f37..28c7369d 100644
--- a/src/whop_sdk/accounts/preferences/types/retrieve_preferences_response.py
+++ b/src/whop_sdk/accounts/preferences/types/retrieve_preferences_response.py
@@ -49,7 +49,7 @@ class RetrievePreferencesResponse(UniversalBaseModel):
ads_triple_whale_integration: RetrievePreferencesResponseAdsTripleWhaleIntegration = pydantic.Field()
"""
- The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel. Available to any Triple Whale customer — Shopify, WooCommerce, a custom checkout, or no connected store — by setting `shop_domain` explicitly; Shopify merchants may instead rely on a connected store's domain. Requires the `ad_campaign:create` scope. Once connected, ad click-through URLs Whop serves carry `tw_source=whop` and `tw_adid=` query parameters so Triple Whale's pixel attributes conversions back to the originating ad — no destination URL changes are needed.
+ The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel. Available to any Triple Whale customer — Shopify, WooCommerce, or a custom checkout — by setting `shop_domain`. Requires the `ad_campaign:create` scope. Once connected, ad click-through URLs Whop serves carry `tw_source=whop` and `tw_adid=` query parameters so Triple Whale's pixel attributes conversions back to the originating ad — no destination URL changes are needed.
"""
cards_auto_top_up: bool = pydantic.Field()
diff --git a/src/whop_sdk/accounts/preferences/types/retrieve_preferences_response_ads_triple_whale_integration.py b/src/whop_sdk/accounts/preferences/types/retrieve_preferences_response_ads_triple_whale_integration.py
index 627854f5..39b14e66 100644
--- a/src/whop_sdk/accounts/preferences/types/retrieve_preferences_response_ads_triple_whale_integration.py
+++ b/src/whop_sdk/accounts/preferences/types/retrieve_preferences_response_ads_triple_whale_integration.py
@@ -11,7 +11,7 @@
class RetrievePreferencesResponseAdsTripleWhaleIntegration(UniversalBaseModel):
"""
- The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel. Available to any Triple Whale customer — Shopify, WooCommerce, a custom checkout, or no connected store — by setting `shop_domain` explicitly; Shopify merchants may instead rely on a connected store's domain. Requires the `ad_campaign:create` scope. Once connected, ad click-through URLs Whop serves carry `tw_source=whop` and `tw_adid=` query parameters so Triple Whale's pixel attributes conversions back to the originating ad — no destination URL changes are needed.
+ The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel. Available to any Triple Whale customer — Shopify, WooCommerce, or a custom checkout — by setting `shop_domain`. Requires the `ad_campaign:create` scope. Once connected, ad click-through URLs Whop serves carry `tw_source=whop` and `tw_adid=` query parameters so Triple Whale's pixel attributes conversions back to the originating ad — no destination URL changes are needed.
"""
masked_api_key: typing.Optional[str] = pydantic.Field(default=None)
@@ -21,12 +21,12 @@ class RetrievePreferencesResponseAdsTripleWhaleIntegration(UniversalBaseModel):
shop_domain: typing.Optional[str] = pydantic.Field(default=None)
"""
- The shop domain spend is reported for, such as `acme.myshopify.com` or a custom domain for a non-Shopify store. This is the explicit `shop_domain` if one was set, otherwise a connected Shopify store's domain. `null` when neither is present.
+ The shop domain spend is reported for, such as `acme.myshopify.com` or a custom domain for a non-Shopify store. `null` when none is set.
"""
status: RetrievePreferencesResponseAdsTripleWhaleIntegrationStatus = pydantic.Field()
"""
- Where the integration stands. `requires_shop_domain` means no shop domain is configured — set `shop_domain` explicitly, or connect a Shopify store, before spend can be reported.
+ Where the integration stands. `requires_shop_domain` means no shop domain is configured — set `shop_domain` before spend can be reported.
"""
if IS_PYDANTIC_V2:
diff --git a/src/whop_sdk/accounts/preferences/types/update_preferences_request_ads_triple_whale_integration.py b/src/whop_sdk/accounts/preferences/types/update_preferences_request_ads_triple_whale_integration.py
index 6946c04f..1b6e5dda 100644
--- a/src/whop_sdk/accounts/preferences/types/update_preferences_request_ads_triple_whale_integration.py
+++ b/src/whop_sdk/accounts/preferences/types/update_preferences_request_ads_triple_whale_integration.py
@@ -8,7 +8,7 @@
class UpdatePreferencesRequestAdsTripleWhaleIntegration(UniversalBaseModel):
"""
- Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a shop domain to report spend against — either an explicit `shop_domain` (required for any merchant without a connected Shopify store, e.g. WooCommerce, a custom checkout, or a white-label platform's merchant) or a Shopify store connected on the Fulfillment page.
+ Connects or disconnects the Triple Whale integration, or changes the shop it reports to. Requires the `ad_campaign:create` scope on your API key. Connecting requires a `shop_domain` to report spend against.
"""
api_key: typing.Optional[str] = pydantic.Field(default=None)
@@ -18,7 +18,7 @@ class UpdatePreferencesRequestAdsTripleWhaleIntegration(UniversalBaseModel):
shop_domain: typing.Optional[str] = pydantic.Field(default=None)
"""
- The exact shop domain configured in Triple Whale's Settings → Store (for Shopify this is the `.myshopify.com` domain; for a custom sales platform it's whatever domain Triple Whale assigned when the shop was set up there). A leading `https://` and trailing `/` are stripped, and what remains must be a bare hostname with no path or spaces. Validated against Triple Whale — the API key must have access to it — before it is stored. Changing it on a connected integration backfills the account's ad spend onto the new shop. Omit to fall back to a connected Shopify store's domain; there is no way to clear a stored value, only to overwrite it with a new domain.
+ The exact shop domain configured in Triple Whale's Settings → Store (for Shopify this is the `.myshopify.com` domain; for a custom sales platform it's whatever domain Triple Whale assigned when the shop was set up there). A leading `https://` and trailing `/` are stripped, and what remains must be a bare hostname with no path or spaces. Validated against Triple Whale — the API key must have access to it — before it is stored. Changing it on a connected integration backfills the account's ad spend onto the new shop. Omit to keep the stored domain; there is no way to clear a stored value, only to overwrite it with a new domain.
"""
if IS_PYDANTIC_V2:
diff --git a/src/whop_sdk/accounts/preferences/types/update_preferences_response.py b/src/whop_sdk/accounts/preferences/types/update_preferences_response.py
index 5dd94aa8..bf3a057e 100644
--- a/src/whop_sdk/accounts/preferences/types/update_preferences_response.py
+++ b/src/whop_sdk/accounts/preferences/types/update_preferences_response.py
@@ -47,7 +47,7 @@ class UpdatePreferencesResponse(UniversalBaseModel):
ads_triple_whale_integration: UpdatePreferencesResponseAdsTripleWhaleIntegration = pydantic.Field()
"""
- The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel. Available to any Triple Whale customer — Shopify, WooCommerce, a custom checkout, or no connected store — by setting `shop_domain` explicitly; Shopify merchants may instead rely on a connected store's domain. Requires the `ad_campaign:create` scope. Once connected, ad click-through URLs Whop serves carry `tw_source=whop` and `tw_adid=` query parameters so Triple Whale's pixel attributes conversions back to the originating ad — no destination URL changes are needed.
+ The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel. Available to any Triple Whale customer — Shopify, WooCommerce, or a custom checkout — by setting `shop_domain`. Requires the `ad_campaign:create` scope. Once connected, ad click-through URLs Whop serves carry `tw_source=whop` and `tw_adid=` query parameters so Triple Whale's pixel attributes conversions back to the originating ad — no destination URL changes are needed.
"""
cards_auto_top_up: bool = pydantic.Field()
diff --git a/src/whop_sdk/accounts/preferences/types/update_preferences_response_ads_triple_whale_integration.py b/src/whop_sdk/accounts/preferences/types/update_preferences_response_ads_triple_whale_integration.py
index 2ea72850..36020e97 100644
--- a/src/whop_sdk/accounts/preferences/types/update_preferences_response_ads_triple_whale_integration.py
+++ b/src/whop_sdk/accounts/preferences/types/update_preferences_response_ads_triple_whale_integration.py
@@ -11,7 +11,7 @@
class UpdatePreferencesResponseAdsTripleWhaleIntegration(UniversalBaseModel):
"""
- The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel. Available to any Triple Whale customer — Shopify, WooCommerce, a custom checkout, or no connected store — by setting `shop_domain` explicitly; Shopify merchants may instead rely on a connected store's domain. Requires the `ad_campaign:create` scope. Once connected, ad click-through URLs Whop serves carry `tw_source=whop` and `tw_adid=` query parameters so Triple Whale's pixel attributes conversions back to the originating ad — no destination URL changes are needed.
+ The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel. Available to any Triple Whale customer — Shopify, WooCommerce, or a custom checkout — by setting `shop_domain`. Requires the `ad_campaign:create` scope. Once connected, ad click-through URLs Whop serves carry `tw_source=whop` and `tw_adid=` query parameters so Triple Whale's pixel attributes conversions back to the originating ad — no destination URL changes are needed.
"""
masked_api_key: typing.Optional[str] = pydantic.Field(default=None)
@@ -21,12 +21,12 @@ class UpdatePreferencesResponseAdsTripleWhaleIntegration(UniversalBaseModel):
shop_domain: typing.Optional[str] = pydantic.Field(default=None)
"""
- The shop domain spend is reported for, such as `acme.myshopify.com` or a custom domain for a non-Shopify store. This is the explicit `shop_domain` if one was set, otherwise a connected Shopify store's domain. `null` when neither is present.
+ The shop domain spend is reported for, such as `acme.myshopify.com` or a custom domain for a non-Shopify store. `null` when none is set.
"""
status: UpdatePreferencesResponseAdsTripleWhaleIntegrationStatus = pydantic.Field()
"""
- Where the integration stands. `requires_shop_domain` means no shop domain is configured — set `shop_domain` explicitly, or connect a Shopify store, before spend can be reported.
+ Where the integration stands. `requires_shop_domain` means no shop domain is configured — set `shop_domain` before spend can be reported.
"""
if IS_PYDANTIC_V2:
diff --git a/src/whop_sdk/payouts/methods/types/list_methods_response_limits_standard_error_code.py b/src/whop_sdk/payouts/methods/types/list_methods_response_limits_standard_error_code.py
index 6604c278..ee772c45 100644
--- a/src/whop_sdk/payouts/methods/types/list_methods_response_limits_standard_error_code.py
+++ b/src/whop_sdk/payouts/methods/types/list_methods_response_limits_standard_error_code.py
@@ -12,7 +12,6 @@
"rmi_clear",
"identity_rfi_clear",
"guardian_id_clear",
- "ecommerce_fulfillment_connected",
"block_move_money_out",
"block_move_money_out_set_by_parent",
"no_available_balance",
diff --git a/src/whop_sdk/types/account_preferences.py b/src/whop_sdk/types/account_preferences.py
index 345b9d59..85db6e49 100644
--- a/src/whop_sdk/types/account_preferences.py
+++ b/src/whop_sdk/types/account_preferences.py
@@ -33,7 +33,7 @@ class AccountPreferences(UniversalBaseModel):
ads_triple_whale_integration: typing.Dict[str, typing.Any] = pydantic.Field()
"""
- The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel, and tags ad click-through URLs with `tw_source`/`tw_adid` so Triple Whale's pixel attributes conversions back to the right ad. `status` is `connected`, `not_connected`, or `requires_shop_domain` (Triple Whale keys records by shop, so spend only flows once one is set — either explicitly via `shop_domain`, which every non-Shopify merchant needs, or by connecting a Shopify store). `masked_api_key` shows the leading characters of the stored key; the full key is never returned. `shop_domain` is the shop spend is reported for: the explicit value, or (if unset) a connected Shopify store's domain.
+ The account's Triple Whale integration, which pushes Whop ad spend to Triple Whale's Data-In API so it reports as a `whop` channel, and tags ad click-through URLs with `tw_source`/`tw_adid` so Triple Whale's pixel attributes conversions back to the right ad. `status` is `connected`, `not_connected`, or `requires_shop_domain` (Triple Whale keys records by shop, so spend only flows once `shop_domain` is set). `masked_api_key` shows the leading characters of the stored key; the full key is never returned. `shop_domain` is the shop spend is reported for.
"""
cards_auto_top_up: bool = pydantic.Field()
diff --git a/src/whop_sdk/types/account_required_action_action.py b/src/whop_sdk/types/account_required_action_action.py
index 8beedb44..92bbc480 100644
--- a/src/whop_sdk/types/account_required_action_action.py
+++ b/src/whop_sdk/types/account_required_action_action.py
@@ -14,7 +14,6 @@
"verify_identity",
"scale_account_setup",
"sign_formation_documents",
- "connect_fulfillment_tracker",
"setup_apple_pay_domains",
"configure_tax_remitter",
"add_vat_registration",