> This page is for Afterpay Partner API.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developers.afterpay.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers.afterpay.com/_mcp/server.

### Schema (`response.body`)

```yaml
openapi: 3.1.0
info:
  title: API
  version: 1.0.0
paths:
  /onboarding-post-put-schema:
    get:
      operationId: subpackageOnboardings_getOnboardingPostPutSchema
      summary: OnboardingPostPut Schema
      tags:
        - subpackage_onboardings
      responses:
        '200':
          description: OnboardingPostPut schema
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/Onboardings_getOnboardingPostPutSchema_Response_200
tags:
  - name: subpackage_onboardings
servers:
  - url: https://agencyapi.afterpay.com
    description: Production
  - url: https://agencyapi.sandbox.afterpay.com
    description: Sandbox
components:
  schemas:
    OnboardingPostPutParametersChannels:
      type: object
      properties:
        online:
          type: boolean
          description: Determines whether the online channel is enabled.
        instoreCard:
          type: boolean
          description: Determines whether the in-store card channel is enabled.
      description: >-
        Channel fields define whether the merchant sells online, in-store, or
        both. If the channel object is not passed, we automatically assume the
        onboarding is for the online channel only. If either is provided,
        however, we require both fields to be specified explicitly. Optional,
        but both `online` and `instoreCard` are required if this object is
        present.
      title: OnboardingPostPutParametersChannels
    OwnerAddress:
      type: object
      properties:
        address1:
          type: string
          description: Line 1 of address.
        address2:
          type: string
          description: Line 2 of address.
        city:
          type: string
          description: City, town or municipality.
        state:
          type: string
          description: State, region, county, province, or territory.
        postCode:
          type: string
          description: Postal code.
        countryCode:
          type: string
          description: Country code in the two-letter ISO 3166-1 alpha-2 standard format.
      title: OwnerAddress
    Owner:
      type: object
      properties:
        firstName:
          type: string
          description: >-
            Given name of the primary owner or authorized representative of the
            business; optional for public companies and nonprofits.
        lastName:
          type: string
          description: >-
            Surname name of the primary owner or authorized representative of
            the business; optional for public companies and nonprofits.
        dob:
          type: string
          format: date
          description: Date of birth in YYYY-MM-DD format. Optional.
        taxId:
          type: string
          description: >-
            Tax id of the primary owner or authorized representative of the
            business; optional for public companies and nonprofits. Optional.
        jobTitle:
          type: string
          description: >-
            Job title of the primary owner or authorized representative of the
            business; optional for public companies and nonprofits. Optional.
        owns25:
          type: boolean
          description: Indicates if the owner owns more than 25% of the business. Optional.
        significantResponsibility:
          type: boolean
        address:
          $ref: '#/components/schemas/OwnerAddress'
      required:
        - firstName
        - lastName
      description: >-
        Personal details of the business owner. This object is optional for
        public companies and nonprofits if the partner chooses to pass the
        business type in the optional businessType field; otherwise, it's
        required.
      title: Owner
    BusinessAddress:
      type: object
      properties:
        address1:
          type: string
          description: Line 1 of address.
        address2:
          type: string
          description: Line 2 of address.
        city:
          type: string
          description: City, town or municipality.
        state:
          type: string
          description: State, region, county, province, or territory.
        postCode:
          type: string
          description: Postal code.
        countryCode:
          type: string
          description: Country code in the two-letter ISO 3166-1 alpha-2 standard format.
      title: BusinessAddress
    Business:
      type: object
      properties:
        email:
          type: string
          description: >-
            Customer support email that will be shown within the Afterpay native
            application.
        legalBusinessName:
          type: string
          description: Legal business name found in incorporation or similar documents.
        tradingName:
          type: string
          description: Recognizable doing-business-as name.
        businessIdentificationNumber:
          type: string
          description: >-
            Identifying tax number, such as TIN, ABN, or SSN, depending on the
            relevant jurisdiction.
        businessType:
          type: string
          description: >-
            Type of business matching exactly the naming conventions outlined in
            the business type.
        websiteUrl:
          type: string
          maxLength: 255
          description: >-
            Homepage URL of the merchant; optional for brick-and-mortar stores
            using the in-store channel only. For online channel enabled stores,
            either the websiteUrl or websiteUrls fields is required.
        websiteUrls:
          type: array
          items:
            description: Any type
          description: >-
            List of homepage URLs of the merchant if there are multiple;
            optional for brick-and-mortar stores using the in-store channel
            only. For online channel enabled stores, either the websiteUrl or
            websiteUrls fields is required.
        monthlyOnlineSalesAmount:
          type: string
          description: >-
            Monthly online sales amount of the merchant in number, optional for
            brick-and-mortar stores using the in-store channel only.
        customerSupportUrl:
          type: string
          maxLength: 255
          description: >-
            Customer support page URL of the merchant; optional for
            brick-and-mortar stores using the in-store channel only.
        customerSupportPhoneNumber:
          type: string
          description: >-
            Customer support phone number of the merchant; if not available,
            regular business phone number.
        tradingCountry:
          type: string
          description: >-
            The same country code used in the merchantCountry field, defining
            the consumer market where the merchant will sell goods or services.
        merchantCategoryCode:
          type: string
          description: >-
            A four-digit number that classifies the type of goods or services a
            business offers following the ISO 18245 standard.
        ecommercePlatform:
          type: string
        avgTimeToShip:
          type: string
        selfFulfillment:
          type: boolean
        tier:
          type: integer
          description: >-
            GMV tier of the merchant that informs the buy-rate as defined in the
            commercial contract with the smallest, SMB volume tier equaling 1.
        gmv:
          type: string
          description: >-
            Actual transaction volume in decimal format that informs the tier;
            we accept estimated or addressable merchant volume when actuals are
            not available.
        gmvCurrencyCode:
          type: string
          description: >-
            Currency of the gmv volume in the three-letter ISO 4217 currency
            code. Note: please use currency that is defined in the commercial
            contract only (e.g., USD-equivalent volume for UK merchants).
        brandReference:
          type: string
          description: >-
            Platform, brand, or parent reference id whose buy-rate applies to
            this unique merchant (i.e., this merchant onboarding inherits the
            buy-rate of its brandReference for which the custom rate is set up.)
        address:
          $ref: '#/components/schemas/BusinessAddress'
      required:
        - email
        - legalBusinessName
        - tradingName
        - customerSupportPhoneNumber
        - tradingCountry
        - merchantCategoryCode
        - address
      description: Business and customer support details of the merchant being onboarded.
      title: Business
    OnboardingPostPutParameters:
      type: object
      properties:
        settlementContractId:
          type: string
          description: >-
            Defines the country and banking entity for the partner's online
            channel.
        instoreCardsettlementContractId:
          type: string
          description: >-
            Defines the country and banking entity for the partner's in-store
            channel. Optional.
        channels:
          $ref: '#/components/schemas/OnboardingPostPutParametersChannels'
          description: >-
            Channel fields define whether the merchant sells online, in-store,
            or both. If the channel object is not passed, we automatically
            assume the onboarding is for the online channel only. If either is
            provided, however, we require both fields to be specified
            explicitly. Optional, but both `online` and `instoreCard` are
            required if this object is present.
        owners:
          type: array
          items:
            $ref: '#/components/schemas/Owner'
        business:
          $ref: '#/components/schemas/Business'
      required:
        - settlementContractId
        - business
      description: Settlement contract, business, and channel details.
      title: OnboardingPostPutParameters
    OnboardingPostPut:
      type: object
      properties:
        merchantCountry:
          type: string
          description: >-
            Country code in the two-letter ISO 3166-1 alpha-2 standard format,
            defining the consumer market where the merchant will sell goods or
            services.
        merchantReference:
          type: string
          description: >-
            Unique ID for the merchant in the partner's internal systems to
            index to Afterpay's Merchant ID (MID).
        parentMerchantReference:
          type: string
          description: >-
            Unique ID for the platform of the merchant in the partner's internal
            systems to index to merchantReference.
        parameters:
          $ref: '#/components/schemas/OnboardingPostPutParameters'
          description: Settlement contract, business, and channel details.
      required:
        - merchantCountry
        - merchantReference
        - parameters
      title: OnboardingPostPut
    Onboardings_getOnboardingPostPutSchema_Response_200:
      type: object
      properties:
        onboarding_post_put:
          $ref: '#/components/schemas/OnboardingPostPut'
      required:
        - onboarding_post_put
      title: Onboardings_getOnboardingPostPutSchema_Response_200

```

**`Example`**

```json Example
{
  "merchantCountry": "US",
  "merchantReference": "merchantId1234",
  "parentMerchantReference": "merchantPlatform",
  "parameters": {
    "settlementContractId": "0xt5txyloqru4vx5XuQ88W",
    "instoreCardsettlementContractId": "0xt5txyloqru4vx5XuQ88W",
    "channels": {
      "online": true,
      "instoreCard": false
    },
    "owners": [
      {
        "address": {}
      }
    ],
    "business": {
      "email": "merchant123@email.com",
      "legalBusinessName": "Merchant Business LLC",
      "tradingName": "Merchant Trading",
      "businessIdentificationNumber": "1234567891",
      "businessType": "limited_liability_company",
      "websiteUrl": "https://www.merchant.com",
      "websiteUrls": [
        "https://www.merchant.com",
        "https://www.merchant2.com",
        "https://www.merchant3.com"
      ],
      "monthlyOnlineSalesAmount": "100000",
      "customerSupportUrl": "https://help.merchant.com",
      "customerSupportPhoneNumber": "+1999999999",
      "tradingCountry": "US",
      "merchantCategoryCode": "5826",
      "ecommercePlatform": "BLOCK",
      "avgTimeToShip": "Less than 1 Week",
      "selfFulfillment": true,
      "tier": 1,
      "gmv": "150000000",
      "gmvCurrencyCode": "USD",
      "brandReference": "brand_xyz",
      "address": {}
    }
  }
}
```