---
title: "Webhook event: account.created.v1"
method: POST
path: "account.created.v1"
---

# Webhook event: account.created.v1

`POST account.created.v1` (webhook)

Fired when a platform creates a new embedded merchant account. This event contains the account details including business profile information, capabilities, and account status.

## Payload

- object
  - `event_type` string, required — Type of the event
  - `event_id` string, uuid, required — UUID of the event
  - `account_id` string, uuid, required — UUID of the account associated with this event
  - `data` AccountV1, required
    - `id` string, uuid, required — Unique identifier for the account.
    - `organization_id` string, uuid, required — The unique identifier of the organization this account belongs to.
    - `type` 'business', required — The type of account (e.g., 'individual', 'business').
    - `status` 'created' | 'onboarding' | 'active' | 'rejected' | 'inactive', required — The current status of the account (e.g., 'active', 'inactive', 'pending').
    - `status_detail` StatusDetailOfAccountStatusDetail, required
      - `reason` 'unverified' | 'in_review' | 'pending' | 'stuck' | 'verified' | 'failed_verification' | 'disabled' | 'terminated' | 'new', required — A machine-readable identifier for the specific status, useful for programmatic handling.
      - `source` 'watchtower', required — Identifies the origin of the status change (e.g., `bank_decline`, `watchtower`). This helps in tracking the cause of status updates.
      - `code` string, required — A machine-readable code for the specific status, useful for programmatic handling.
      - `message` string, required — A human-readable message describing the current status.
    - `business_profile` BusinessProfileV1
      - `name` string, required — The operating or trade name of the business.
      - `website` string, uri, required — URL of the business's primary marketing website.
      - `legal_name` string, nullable — The official registered name of the business.
      - `description` string, nullable — A brief description of the business and its products or services.
      - `use_case` string, nullable — A description of how the business intends to use Straddle's services.
      - `tax_id` string, nullable — The business's tax identification number (e.g., EIN in the US).
      - `phone` string, nullable — The primary contact phone number for the business.
      - `address` AddressV1, nullable — The address object is optional. If provided, it must be a valid address.
        - `line1` string, nullable, required — Primary address line (e.g., street, PO Box).
        - `line2` string, nullable — Secondary address line (e.g., apartment, suite, unit, or building).
        - `city` string, nullable, required — City, district, suburb, town, or village.
        - `state` string, nullable, required — Two-letter state code.
        - `postal_code` string, nullable, required — Postal or ZIP code.
        - `country` string, nullable — The country of the address, in ISO 3166-1 alpha-2 format.
        - `address1` string, required — Primary address line (e.g., street, PO Box).
        - `address2` string, nullable — Secondary address line (e.g., apartment, suite, unit, or building).
        - `zip` string, required — Zip or postal code.
      - `industry` IndustryV1
        - `mcc` string, nullable — The Merchant Category Code (MCC) that best describes the business. Optional.
        - `sector` string, nullable — The specific sector within the industry category. Required if not providing MCC.
        - `category` string, nullable — The general category of the industry. Required if not providing MCC.
      - `support_channels` SupportChannelsV1
        - `email` string, email, nullable — The email address for customer support inquiries.
        - `phone` string, nullable — The phone number for customer support.
        - `url` string, uri, nullable — The URL of the business's customer support page or contact form.
    - `capabilities` Capabilities
      - `payment_types` PaymentTypes, required
        - `charges` Capability, required
          - `capability_status` 'active' | 'inactive', required
        - `payouts` Capability, required
          - `capability_status` 'active' | 'inactive', required
      - `customer_types` CustomerTypes, required
        - `individuals` Capability, required
          - `capability_status` 'active' | 'inactive', required
        - `businesses` Capability, required
          - `capability_status` 'active' | 'inactive', required
      - `consent_types` ConsentTypes, required
        - `signed_agreement` Capability, required
          - `capability_status` 'active' | 'inactive', required
        - `internet` Capability, required
          - `capability_status` 'active' | 'inactive', required
    - `settings` Settings
      - `charges` Charges, required
        - `max_amount` integer, required — The maximum amount of a single charge.
        - `monthly_amount` integer, required — The maximum dollar amount of charges in a calendar month.
        - `daily_amount` integer, required — The maximum dollar amount of charges in a calendar day.
        - `monthly_count` integer, required — The maximum number of charges in a calendar month.
        - `funding_time` 'immediate' | 'next_day' | 'one_day' | 'two_day' | 'three_day' | 'four_day' | 'five_day', required — The amount of time it takes for a charge to be funded. This value is defined by Straddle.
        - `linked_bank_account_id` string, uuid, required — The unique identifier of the linked bank account associated with charges. This value is defined by Straddle.
      - `payouts` Payouts, required
        - `max_amount` integer, required — The maximum amount of a single payout.
        - `monthly_amount` integer, required — The maximum dollar amount of payouts in a month.
        - `daily_amount` integer, required — The maximum dollar amount of payouts in a day.
        - `monthly_count` integer, required — The maximum number of payouts in a month.
        - `funding_time` 'immediate' | 'next_day' | 'one_day' | 'two_day' | 'three_day' | 'four_day' | 'five_day', required — The amount of time it takes for a payout to be funded. This value is defined by Straddle.
        - `linked_bank_account_id` string, uuid, required — The unique identifier of the linked bank account to use for payouts.
    - `terms_of_service` TermsOfServiceV1
      - `accepted_date` string, date-time, required — The datetime of when the terms of service were accepted, in ISO 8601 format.
      - `accepted_ip` string, nullable — The IP address from which the terms of service were accepted.
      - `accepted_user_agent` string, nullable — The user agent string of the browser or application used to accept the terms.
      - `agreement_url` string, nullable, required — The URL where the full text of the accepted agreement can be found.
      - `agreement_type` 'embedded' | 'direct', required — The type or version of the agreement accepted. Use `embedded` unless your platform was specifically enabled for `direct` agreements.
    - `metadata` object, nullable — Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the account in a structured format.
    - `access_level` 'standard' | 'managed', required — The access level granted to the account. This is determined by your platform configuration. Use `standard` unless instructed otherwise by Straddle.
    - `external_id` string, nullable — Unique identifier for the account in your database, used for cross-referencing between Straddle and your systems.
    - `created_at` string, date-time, nullable — Timestamp of when the account was created.
    - `updated_at` string, date-time, nullable — Timestamp of the most recent update to the account.

## Acknowledgement `200`

Webhook processed successfully

---

[API](https://skmtc.net/straddleio/apis/straddle-api.md) · [All operations](https://skmtc.net/straddleio/apis/straddle-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/straddleio/straddle-api/versions/6e13cd88cda9/schema)
