Accounts

Update Account

Updates an account. User tokens can update business accounts; Account API keys can update connected accounts. The reserved id me — accepted on Retrieve Account — resolves to the requesting account, which an Account API key cannot edit, so updates must name the connected account by its biz_ id.

patch/accounts/{id}

Path parameters

idstring required

Account ID, prefixed biz_.

Request body

affiliate_application_requiredboolean

Whether prospective affiliates must submit an application before promoting this account.

affiliate_instructionsstring nullable

Guidelines shown to affiliates promoting this account.

business_namestring nullable

The legal business name used with the account's tax address.

business_typestring nullable

High-level business category for the account. See the business types and industries glossary for valid values.

collect_vat_idboolean

Whether checkout shows a VAT/tax ID field for buyers to optionally enter. Does not require a VAT ID to purchase.

countrystring nullable

Country where the account is located.

descriptionstring nullable

Account promotional description. When creating a Whop-managed Facebook page, it is truncated to 155 characters and used as the About text.

featured_affiliate_product_idstring nullable

The ID of the product to feature for affiliates. Pass null to clear.

home_preferencesstring[]

Public account home page preferences.

industry_groupstring nullable

Account industry group. See the business types and industries glossary for valid values.

industry_typestring nullable

Specific industry vertical for the account. See the business types and industries glossary for valid values.

invoice_prefixstring nullable

Prefix used for account invoices.

metadataobject

Arbitrary key/value metadata to store on the account.

onboarding_type'platform' | 'seller' | 'null' nullable

The type of onboarding the account has completed.

opengraph_image_variant'white' | 'black' | 'orange' | 'null' nullable

The account Open Graph image variant.

other_business_descriptionstring nullable

The description of the business type when business_type is other.

other_industry_descriptionstring nullable

The description of the industry type when industry_type is other.

product_tax_code_idstring nullable

ID of the tax classification code applied by default to the account's products. See the available product categories.

require_2faboolean

Whether the account requires authorized users to have two-factor authentication enabled.

routestring nullable

The unique URL slug for the account.

send_customer_emailsboolean

Whether Whop sends transactional emails to customers on behalf of this account.

show_joined_whopsboolean

Whether the account appears in joined whops on other accounts.

show_reviews_dtcboolean

Whether reviews are displayed on direct-to-consumer product pages.

show_user_directoryboolean

Whether the account shows users in the user directory.

social_linksobject[]

The full list of social links to display for the account.

target_audiencestring nullable

The target audience for this account.

tax_collection_enabled_statesstring[]

US state codes (50 states plus DC) where the account collects tax. Replaces the full set on update. Only settable when tax_remitted_by is self.

tax_remitted_by'whop' | 'self' | 'none'

Determines whether Whop or the account calculates and remits tax. The account must provide a supported-country business address when it self-remits.

tax_type'inclusive' | 'exclusive'

Determines whether tax is included in the listed price or added at checkout.

three_ds_level'mandate_challenge' | 'mandate_if_required' | 'frictionless_if_required' | 'null' nullable

3D Secure behavior for supported on-session card payments. mandate_challenge requires a 3DS challenge before payment processing; mandate_if_required mandates a challenge only when the payment processor requires it; frictionless_if_required uses the regular frictionless 3DS flow. Payments of $1,000 or more use mandate_if_required unless mandate_challenge is selected. Risk and authentication recovery requirements can override the preference. null uses the standard checkout flow.

titlestring nullable

The display name of the account.

use_logo_as_opengraph_image_fallbackboolean

Whether the account uses its logo as the fallback Open Graph image.

websitestring nullable

The account's business website, as an http or https URL of at most 255 characters. Also added to the account's social_links as a website entry. Pass null to clear the website; existing social links are left unchanged.

Example request

{
  "affiliate_application_required": true,
  "affiliate_instructions": "Send us your detailing content before promoting. No paid search on our brand terms.",
  "banner_image": {
    "id": "file_xxxxxxxxxxxxxx"
  },
  "business_address": {
    "city": "Austin",
    "country": "US",
    "line1": "4180 Burnet Rd",
    "line2": "Suite 2",
    "postal_code": "78756",
    "state": "TX"
  },
  "business_name": "  Shine Time Auto Detailing, LLC  ",
  "business_type": "other",
  "collect_vat_id": true,
  "country": "US",
  "description": "Mobile ceramic coating, paint correction, and interior detailing across the Austin metro.",
  "featured_affiliate_product_id": "prod_xxxxxxxxxxxxxx",
  "home_preferences": [
    "hide_member_count"
  ],
  "industry_group": "automotive",
  "industry_type": "other",
  "invoice_prefix": "SHINE",
  "logo": {
    "id": "file_xxxxxxxxxxxxxx"
  },
  "metadata": {
    "external_id": "shop_4417",
    "region": "austin"
  },
  "onboarding_type": "seller",
  "opengraph_image": {
    "id": "file_xxxxxxxxxxxxxx"
  },
  "opengraph_image_variant": "black",
  "other_business_description": "Mobile auto detailing",
  "other_industry_description": "Automotive services",
  "product_tax_code_id": "ptc_xxxxxxxxxxxxxx",
  "require_2fa": true,
  "route": "shine-time-detailing",
  "social_links": [
    {
      "url": "https://instagram.com/shinetimedetail",
      "website": "instagram"
    }
  ],
  "store_page_config": {
    "accent_color": "red",
    "layout": "compact",
    "profile_variant": "business",
    "whop_affiliate_link": true
  },
  "target_audience": "Owners of new and enthusiast vehicles in Austin, TX",
  "tax_collection_enabled_states": [
    "TX"
  ],
  "tax_identifiers": [
    {
      "tax_id_type": "eu_vat",
      "tax_id_value": "DE123456789"
    }
  ],
  "tax_remitted_by": "self",
  "tax_type": "inclusive",
  "three_ds_level": "mandate_challenge",
  "title": "Shine Time Auto Detailing",
  "use_logo_as_opengraph_image_fallback": true,
  "website": "https://shinetimedetail.com"
}

Response

account updated

banner_image_urlstring nullable required

Account banner image URL.

business_addressobject nullable required

Account business address used to calculate tax, with line1, line2, city, state, postal_code, and country. null when no address is set.

business_namestring nullable required

The account's legal business name used with its tax address.

business_typestring nullable required

High-level business category for the account. See the business types and industries glossary for valid values.

can_transfer_pending_balance_to_childrenboolean required

Whether pending funds may be transferred from this platform account to its connected accounts.

collect_vat_idboolean required

Whether checkout shows a VAT/tax ID field for buyers to optionally enter. Does not require a VAT ID to purchase.

countrystring nullable required

Country where the account is located.

created_atstring required

When the account was created, as an ISO 8601 timestamp.

descriptionstring nullable required

Account promotional description.

economic_intelligenceboolean required

Whether economic intelligence is enabled for the account.

emailstring nullable required

Account owner email address.

home_preferencesstring[] required
idstring required

Account ID, prefixed biz_.

industry_groupstring nullable required

Account industry group. See the business types and industries glossary for valid values.

industry_typestring nullable required

Specific industry vertical for the account. See the business types and industries glossary for valid values.

invoice_prefixstring nullable required

Prefix used for account invoices.

logo_urlstring nullable required

Account logo image URL.

metadataobject required

Arbitrary key/value metadata supplied at account creation.

onboarding_type'platform' | 'seller' | 'null' nullable required

Type of onboarding the account has completed.

opengraph_image_urlstring nullable required

Account Open Graph image URL.

opengraph_image_variant'white' | 'black' | 'orange' | 'null' nullable required

Account Open Graph image variant.

other_business_descriptionstring nullable required

Business type details when business_type is other.

other_industry_descriptionstring nullable required

Industry details when industry_type is other.

product_tax_codeobject nullable required

Tax classification code applied by default to the account's products, with id, name, and product_type. null when no default is set.

require_2faboolean required

Whether authorized users must enable two-factor authentication.

routestring required

Account public route identifier.

send_customer_emailsboolean required

Whether Whop sends transactional emails to customers on behalf of this account.

show_joined_whopsboolean required

Whether the account appears in joined whops on other accounts.

show_reviews_dtcboolean required

Whether reviews are displayed on direct-to-consumer product pages.

show_user_directoryboolean required

Whether the account shows users in the user directory.

stablecoin_railsboolean required

Whether the account settles on stablecoin rails — its balance is held on-chain as USDT and paid out over crypto, rather than as fiat cash.

statusstring nullable required

Whether the account can operate on Whop: active or suspended. Computed on list, retrieve, me, and suspend; null otherwise.

status_reasonstring nullable required

Why the account was suspended, in language safe to show the account owner. Computed on retrieve, me, and suspend; null otherwise, when status is not suspended, and when the suspension was recorded without a reason.

target_audiencestring nullable required

Target audience for this account.

tax_collection_enabled_statesstring[] required
tax_remitted_by'whop' | 'self' | 'none' | 'null' nullable required

Who calculates and remits tax for the account: whop (Whop calculates and remits), self (Whop calculates; the account collects and remits), or none (neither; the account is responsible). null until the account enrolls in the Whop tax service.

tax_type'inclusive' | 'exclusive' | 'null' nullable required

How tax is applied to the account's prices: inclusive (tax included in the listed price) or exclusive (tax added on top). Defaults to exclusive when unset; null only when the account has no payment connection.

three_ds_level'mandate_challenge' | 'mandate_if_required' | 'frictionless_if_required' | 'null' nullable required

3D Secure behavior for supported on-session card payments. mandate_challenge requires a 3DS challenge before payment processing; mandate_if_required mandates a challenge only when the payment processor requires it; frictionless_if_required uses the regular frictionless 3DS flow. Payments of $1,000 or more use mandate_if_required unless mandate_challenge is selected. Risk and authentication recovery requirements can override the preference. null uses the standard checkout flow.

titlestring required

Account display name.

total_earned_usdnumber nullable required

Account lifetime sales, normalized to USD. Computed only on retrieve and me for callers with stats:read scope; null otherwise.

total_usdstring nullable required

Total USD value across balances with known exchange rates. Computed only on single-account reads (retrieve and me); null on list responses, writes, missing balance-read permission, or unavailable balance source.

use_logo_as_opengraph_image_fallbackboolean required

Whether the account uses its logo as the fallback Open Graph image.

verificationobject required

Account identity verification status for the individual (KYC) and business (KYB) profiles. Each is null until created, otherwise a status of not_started, pending, manual_review, approved, or rejected.

volume_usdnumber nullable required

Lifetime volume through the account — sales plus transfers received — normalized to USD. Computed only on list for callers with stats:read on the account; null otherwise.

websitestring nullable required

The account's business website URL, or null if none has been provided. Setting it also adds a website entry to social_links.

Example response

{
  "balances": [
    {
      "balance": "50.0",
      "breakdown": {
        "available": "1500.0",
        "in_transit": "0",
        "pending": "0",
        "pending_settlements": [
          {
            "amount": "12.5",
            "date": "2026-01-01"
          }
        ],
        "reserve": "0"
      },
      "icon_url": "https://assets.whop.com/tokens/usd.png",
      "name": "US Dollar",
      "price_usd": 1,
      "symbol": "USD",
      "value_usd": "50.00"
    }
  ],
  "banner_image_url": "https://whop-assets-example.s3.amazonaws.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "business_address": {
    "city": "Austin",
    "country": "US",
    "line1": "4180 Burnet Rd",
    "line2": "Suite 2",
    "postal_code": "78756",
    "state": "TX"
  },
  "business_name": "Shine Time Auto Detailing, LLC",
  "business_type": "other",
  "capabilities": {
    "accept_bank_payments": "active",
    "accept_bnpl_payments": "inactive",
    "accept_card_payments": "active",
    "bank_deposit": "inactive",
    "card_deposit": "active",
    "card_issuing": "inactive",
    "crypto_deposit": "active",
    "crypto_payout": "inactive",
    "instant_payout": "inactive",
    "run_ads": "active",
    "standard_payout": "inactive",
    "transfer": "inactive"
  },
  "cards": {
    "kind": "individual",
    "status": "approved"
  },
  "collect_vat_id": true,
  "company_formation": {
    "documents": [
      {
        "id": "file_xxxxxxxxxxxxxx",
        "name": "Articles of Organization",
        "type": "articles_of_organization",
        "url": "https://whop-assets-example.s3.amazonaws.com/uploads/audio/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
      }
    ],
    "legal_name": "Shine Time Auto Detailing, LLC",
    "signatures": {
      "form8821": {
        "expires_at": "2026-01-01T12:00:00.000Z",
        "status": "pending",
        "url": "https://sign.doola.com/shine-time-auto-detailing/form8821"
      },
      "ss4": {
        "expires_at": "2026-01-01T12:00:00.000Z",
        "status": "pending",
        "url": "https://sign.doola.com/shine-time-auto-detailing/form8821"
      }
    },
    "state_registered": true
  },
  "country": "us",
  "created_at": "2026-01-01T12:00:00.000Z",
  "description": "Mobile ceramic coating, paint correction, and interior detailing across the Austin metro.",
  "email": "marcus@shinetime.example",
  "eula": {
    "content_type": "application/pdf",
    "created_at": "2026-01-01T12:00:00.000Z",
    "filename": "evidence.pdf",
    "id": "file_xxxxxxxxxxxxxx",
    "multipart_chunk_size": 5242880,
    "multipart_upload_id": "upload-id",
    "multipart_upload_urls": [
      {
        "part_number": 1,
        "url": "https://whop-assets-example.s3.amazonaws.com/uploads/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/application.pdf"
      }
    ],
    "object": "file",
    "size": 9670,
    "upload_headers": {},
    "upload_status": "pending",
    "upload_url": "https://whop-assets-example.s3.amazonaws.com/uploads/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/application.pdf",
    "url": "https://whop-assets-example.s3.amazonaws.com/uploads/audio/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "visibility": "private"
  },
  "home_preferences": [
    "hide_member_count"
  ],
  "id": "biz_xxxxxxxxxxxxxx",
  "industry_group": "automotive",
  "industry_type": "other",
  "invoice_prefix": "SHINE",
  "logo_url": "https://whop-assets-example.s3.amazonaws.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "metadata": {
    "external_id": "shop_4417",
    "region": "austin"
  },
  "onboarding_type": "seller",
  "opengraph_image_url": "https://whop-assets-example.s3.amazonaws.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "opengraph_image_variant": "black",
  "other_business_description": "Mobile auto detailing",
  "other_industry_description": "Automotive services",
  "owner": {
    "id": "user_xxxxxxxxxxxxxx",
    "name": "Dana Whitfield",
    "profile_picture": {
      "url": "https://ui-avatars.com/api/"
    },
    "username": "danawhitfield"
  },
  "parent_account": {
    "fees": {
      "crypto_swap_markup": {
        "fixed_fee_usd": 0,
        "percentage_fee": 3
      },
      "transfer_markup": {
        "fixed_fee_usd": 0,
        "percentage_fee": 0
      }
    },
    "id": "biz_xxxxxxxxxxxxxx",
    "logo_url": "https://whop-assets-example.s3.amazonaws.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "route": "shine-time-holdings",
    "title": "Shine Time Holdings"
  },
  "partner": {
    "profile_picture": {
      "url": "https://ui-avatars.com/api/"
    }
  },
  "payment_controls": {
    "dispute_alert_auto_refund": {
      "threshold_usd": 500
    },
    "dispute_alert_fee_usd": 29,
    "pending_auto_topup_fee_percentage": 2,
    "reserve": {
      "hold_period_days": 14,
      "percentage": 15
    },
    "resolution_center_auto_refund": {
      "card_threshold_usd": 50,
      "financing_threshold_usd": 25,
      "paypal_threshold_usd": 40
    },
    "restricted_payment_methods": [
      "card_visa"
    ],
    "undated_pending_reason": "pending_information_request",
    "withdrawal_schedule": {
      "frequency": "manual"
    }
  },
  "privacy_policy": {
    "content_type": "application/pdf",
    "created_at": "2026-01-01T12:00:00.000Z",
    "filename": "evidence.pdf",
    "id": "file_xxxxxxxxxxxxxx",
    "multipart_chunk_size": 5242880,
    "multipart_upload_id": "upload-id",
    "multipart_upload_urls": [
      {
        "part_number": 1,
        "url": "https://whop-assets-example.s3.amazonaws.com/uploads/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/application.pdf"
      }
    ],
    "object": "file",
    "size": 9670,
    "upload_headers": {},
    "upload_status": "pending",
    "upload_url": "https://whop-assets-example.s3.amazonaws.com/uploads/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/application.pdf",
    "url": "https://whop-assets-example.s3.amazonaws.com/uploads/audio/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "visibility": "private"
  },
  "product_tax_code": {
    "id": "ptc_xxxxxxxxxxxxxx",
    "name": "General - Digital Goods",
    "product_type": "digital"
  },
  "recommended_actions": [
    {
      "action": "apply_for_financing",
      "blocked_capabilities": [
        "accept_bnpl_payments"
      ],
      "cta": "https://whop.com/dashboard/biz_xxxxxxxxxxxxxx/settings/payments/",
      "cta_label": "Apply",
      "description": "Let customers pay over time with buy now, pay later.",
      "icon_url": "https://whop.com/illustrations/orange/piggy-bank.svg",
      "impact_score": 86,
      "reasoning": "Financing lifts conversion on the $249 ceramic coating, the priciest job on the menu.",
      "status": "optional",
      "title": "Offer financing at checkout"
    }
  ],
  "require_2fa": true,
  "required_actions": [
    {
      "action": "verify_identity",
      "blocked_capabilities": [
        "standard_payout"
      ],
      "cta": "https://whop.com/dashboard/biz_xxxxxxxxxxxxxx/balance/",
      "cta_label": "Verify now",
      "description": "Complete verification to withdraw your earnings.",
      "icon_url": "https://whop.com/illustrations/orange/shield.svg",
      "status": "required",
      "title": "Complete your identity verification"
    }
  ],
  "return_policy": {
    "content_type": "application/pdf",
    "created_at": "2026-01-01T12:00:00.000Z",
    "filename": "evidence.pdf",
    "id": "file_xxxxxxxxxxxxxx",
    "multipart_chunk_size": 5242880,
    "multipart_upload_id": "upload-id",
    "multipart_upload_urls": [
      {
        "part_number": 1,
        "url": "https://whop-assets-example.s3.amazonaws.com/uploads/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/application.pdf"
      }
    ],
    "object": "file",
    "size": 9670,
    "upload_headers": {},
    "upload_status": "pending",
    "upload_url": "https://whop-assets-example.s3.amazonaws.com/uploads/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/application.pdf",
    "url": "https://whop-assets-example.s3.amazonaws.com/uploads/audio/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "visibility": "private"
  },
  "route": "biz_xxxxxxxxxxxxxx",
  "social_links": [
    {
      "id": "social_1",
      "title": "@shinetimedetail",
      "url": "https://instagram.com/shinetimedetail",
      "website": "instagram"
    }
  ],
  "status": "active",
  "status_reason": "Payments are paused while we review recent chargebacks on this account.",
  "store_page_config": {
    "accent_color": "red",
    "layout": "compact",
    "profile_variant": "business",
    "whop_affiliate_link": true
  },
  "target_audience": "Owners of new and enthusiast vehicles in Austin, TX",
  "tax_collection_enabled_states": [
    "TX"
  ],
  "tax_identifiers": [
    {
      "id": "txid_xxxxxxxxxxxxxx",
      "tax_id_type": "eu_vat",
      "tax_id_value": "DE123456789"
    }
  ],
  "tax_remitted_by": "self",
  "tax_type": "inclusive",
  "terms_of_service": {
    "content_type": "application/pdf",
    "created_at": "2026-01-01T12:00:00.000Z",
    "filename": "evidence.pdf",
    "id": "file_xxxxxxxxxxxxxx",
    "multipart_chunk_size": 5242880,
    "multipart_upload_id": "upload-id",
    "multipart_upload_urls": [
      {
        "part_number": 1,
        "url": "https://whop-assets-example.s3.amazonaws.com/uploads/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/application.pdf"
      }
    ],
    "object": "file",
    "size": 9670,
    "upload_headers": {},
    "upload_status": "pending",
    "upload_url": "https://whop-assets-example.s3.amazonaws.com/uploads/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/application.pdf",
    "url": "https://whop-assets-example.s3.amazonaws.com/uploads/audio/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "visibility": "private"
  },
  "three_ds_level": "mandate_challenge",
  "title": "Shine Time Auto Detailing",
  "total_usd": "50.00",
  "use_logo_as_opengraph_image_fallback": true,
  "verification": {
    "business": null,
    "individual": null
  },
  "wallet": {
    "address": "0xabc123",
    "id": "cwal_xxxxxxxxxxxxxx",
    "network": "ethereum"
  },
  "website": "https://shinetimedetail.com"
}

Changes