---
title: "accept offer"
method: PUT
path: "/offers/{id}/accept"
tags: ["offer"]
---

# accept offer

`PUT /offers/{id}/accept`

Accept an offer

## Path parameters

- `id` string, regexp, required — Offer ID

## Request body

- AcceptRequestBody
  - `discount_code` string — A valid discount code that should be applied to this offer
  - `last_updated_at` string, date-time
  - `seon_session_token` string — The SEON session token

## Response `200`

OK response.

- OfferForEndCustomer
  - `agent` SalesAgent — Sales agent related to an offer
    - `email` string, email, required — E-mail
    - `external_agent_id` string — Id number used to identify the sales agent in the seller's internal system
    - `name` string, required — Name of the agent
    - `phone` string, required — Phone number
  - `allowed_billing_countries` string[], required — List of allowed billing country codes for this offer (derived from the contractual entity)
  - `contractual_entity` string, required — The contractual entity that will fulfil this offer
  - `created_at` string, date-time, required
  - `customer` CustomerInfo, required
    - `company` CompanyInfo, required
      - `billing_address` Address, required
        - `city` string, required — City
        - `country_code` string, required — ISO 3166-1 alpha-2
        - `line1` string, required — First line (street, number, etc.)
        - `line2` string — Second line (flat number, etc.)
        - `postal_code` string, required — Postal code
        - `region` string — Region, county, province, etc.
      - `name` string, required — Name of the company
      - `tax_number` string — Tax Identification Number
      - `type` 'Sole proprietorship' | 'Partnership' | 'Corporation' | 'Limited Liability Company (LLC)' — Type of the company (required for US)
      - `vat_number` string — VAT Registration Number
    - `email` string, email — E-mail that will be used for the account
    - `end_customer_id` string, regexp — topi End Customer ID
    - `full_name` string — Full name of the customer
    - `id` string, regexp — topi ID for the customer
  - `declined_at` string, date-time
  - `exit_redirect` string — URL to redirect to on error
  - `expires_at` string, date-time, required
  - `has_single_term_duration` boolean, required — Whether all rental line items must share a single term duration (derived from the contractual entity)
  - `id` string, regexp, required — Offer ID
  - `lines` OfferLine[], required — Product lines
    - `applied_discount_id` string — The ID of any discount applied to the offer line
    - `available_contract_terms` ContractTerms
      - `pay_now` PayNowContractTerm
        - `amount` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
        - `id` string, regexp — The internal Id for the contract term
      - `rent` RentContractTermResult
        - `duration` 0 | 6 | 12 | 24 | 30 | 36 | 48, required — The duration in months
        - `durations` integer[], required — The durations in months
        - `id` string, regexp — The internal Id for the contract term
        - `monthly_amount` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
    - `available_first_party_services` FirstPartyService[] — Available first party services for the product
      - `additional_values` FirstPartyServiceAdditionalValues, required — Additional values for specific first party types.
        - `accessory_type` string — if the first party service is an accessory, this value is the kind of the accessory
        - `deductible_price` MoneyAmountWithOptionalGross
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
        - `images` FirstPartyServiceImages
          - `url1x` string, required — URL to redirect to on success
          - `url2x` string, required — URL to redirect to on success
          - `url3x` string, required — URL to redirect to on success
      - `id` string, regexp, required — The internal Id for the first party service
      - `monthly_price` MoneyAmount, required
        - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
        - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
        - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
      - `type` 'topi_repair' | 'topi_replace' | 'demo_first_party_service' | 'topi_accessory' | 'topi_data_deletion_certificate' | 'topi_care_plus_synaxon' | 'topi_care_plus_michaelag', required
    - `base_rental_price` MoneyAmountWithOptionalGross
      - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
      - `gross` integer — Gross amount of money, expressed in the minor unit for the currency
      - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
    - `contract_terms_list` ContractTermItem[] — Available terms for the product
      - `id` string, regexp, required — The internal Id for the contract term
      - `payload` ContractTermItemPayload, required
        - `amount` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
        - `duration` 0 | 6 | 12 | 24 | 30 | 36 | 48, required — The duration in months
      - `type` 'pay_now' | 'rent', required — Different contracts type
    - `id` string, regexp, required — The offer line Id
    - `pretty_id` string — The pretty ID of the product
    - `price` MoneyAmount, required
      - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
      - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
      - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
    - `pricing_category` 'legacy_laptop_36' | 'legacy_phone_24' | 'iphone_17' | 'iphone_17_pro' | 'iphone_17_pro_max' | 'iphone_air' | 'iphone_17_e' | 'iphone_16_pro_max' | 'iphone_16_pro' | 'iphone_16_plus' | 'iphone_16' | 'iphone_15_pro_max' | 'iphone_15_pro' | 'iphone_15_plus' | 'iphone_15' | 'iphone_14_pro_max' | 'iphone_14_pro' | 'iphone_14_plus' | 'iphone_14' | 'iphone_13_pro_max' | 'iphone_13_pro' | 'iphone_13' | 'iphone_13_mini' | 'iphone_12_pro_max' | 'iphone_12_pro' | 'iphone_12' | 'iphone_12_mini' | 'iphone_11' | 'iphone_se_22' | 'iphone_se_20' | 'macbook_pro_13_14' | 'macbook_pro_13_14_m3' | 'macbook_pro_13_14_m4' | 'macbook_pro_13_14_m5' | 'macbook_pro_15_16' | 'macbook_pro_15_16_m3' | 'macbook_pro_15_16_m4' | 'macbook_pro_15_16_m5' | 'macbook_air' | 'macbook_air_13_m5' | 'macbook_air_15_m5' | 'macbook_neo' | 'mac_desktop' | 'mac_desktop_m4' | 'mac_studio' | 'mac_studio_m3m4' | 'mac_pro_m2' | 'apple_display' | 'studio_display_2026' | 'studio_display_2022' | 'studio_display_xdr' | 'ipad_pro' | 'ipad_pro_m5' | 'ipad_pro_m4' | 'ipad_pro_12_9_inch_7_gen' | 'ipad_pro_12_9_inch_6_gen' | 'ipad_pro_12_9_inch_5_gen' | 'ipad_pro_12_9_inch_4_gen' | 'ipad_pro_12_9_inch_3_gen' | 'ipad_pro_12_9_inch_2_gen' | 'ipad_pro_12_9_inch_1_gen' | 'ipad_pro_11_inch_4_gen' | 'ipad_pro_11_inch_3_gen' | 'ipad_pro_11_inch_2_gen' | 'ipad_pro_11_inch_1_gen' | 'ipad_pro_10_5_inch' | 'ipad_air' | 'ipad_air_m4' | 'ipad_air_m3' | 'ipad_air_6_gen' | 'ipad_air_5_gen' | 'ipad_air_4_gen' | 'ipad_air_3_gen' | 'ipad_air_2_gen' | 'ipad_air_1_gen' | 'ipad_regular' | 'ipad_regular_11_gen' | 'ipad_regular_10_gen' | 'ipad_regular_9_gen' | 'ipad_regular_8_gen' | 'ipad_regular_7_gen' | 'ipad_regular_6_gen' | 'ipad_regular_5_gen' | 'ipad_mini' | 'ipad_mini_6_gen' | 'ipad_mini_5_gen' | 'ipad_mini_4_gen' | 'ipad_mini_3_gen' | 'ipad_mini_2_gen' | 'ipad_mini_1_gen' | 'smartwatch_apple' | 'smartwatch_apple_ultra' | 'smartwatch_other' | 'laptop_other_top' | 'laptop_other_low' | 'desktop_other_top' | 'desktop_other_low' | 'phone_other_top' | 'phone_other_low' | 'tablet_other_top' | 'tablet_other_low' | 'screen' | 'accessory_other' | 'accessory_airpods' | 'accessory_pencil' | 'accessory_homepod' | 'accessory_visionpro' | 'services_insurance' | 'software' | 'services_management' | 'other' | 'bundle' | 'second_hand' | 'sandbox_supported_product' | 'printer' | 'iphone_16_e' | 'server' | 'network_security' | 'mac_pro' | 'mac_studio_m3' | 'mac_studio_m4' | 'accessory_smartfolio' | 'accessory_appletv' | '' — The topi-assigned pricing category for the product
    - `product_id` string, regexp — Product ID inside Topi catalog
    - `quantity` integer, required — Amount of products
    - `requires_serial_number` boolean — Does the offerline require a serial number
    - `selected_contract_terms_id` string — Selected term id
    - `selected_first_party_service_ids` string[] — Selected first party services ids
    - `seller_product_provided_by` string — Who the ultimate provider for the product is
    - `seller_product_references` SellerProductReference[], required — Partner's own reference for this product
      - `reference` string, required — The ID related with the source. This value should be unique for that source.
      - `source` string, required — The seller internal source name for this reference type.
    - `seller_product_type` 'hardware' | 'software' | 'service' | 'hardware_built_to_order'
    - `sublines` BaseOfferLineResult[] — Service items that are bundled with this main offer line. Sublines represent additional services or components that are tied to the main product line (e.g., installation services, technical support). Business Rules: - Sublines can only be attached to hardware or accessory main lines - Sublines must be service-category products - Sublines inherit the same quantity and contract term duration as their parent line - Each subline maintains a trackable relationship to its parent line - Pricing calculations include both individual subline costs and combined totals Example: A phone (main line) with screen protection service (subline)
      - `applied_discount_id` string — The ID of any discount applied to the offer line
      - `available_contract_terms` ContractTerms
        - `pay_now` PayNowContractTerm
          - `amount` MoneyAmount, required
            - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
            - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
            - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
          - `id` string, regexp — The internal Id for the contract term
        - `rent` RentContractTermResult
          - `duration` 0 | 6 | 12 | 24 | 30 | 36 | 48, required — The duration in months
          - `durations` integer[], required — The durations in months
          - `id` string, regexp — The internal Id for the contract term
          - `monthly_amount` MoneyAmount, required
            - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
            - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
            - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
      - `available_first_party_services` FirstPartyService[] — Available first party services for the product
        - `additional_values` FirstPartyServiceAdditionalValues, required — Additional values for specific first party types.
          - `accessory_type` string — if the first party service is an accessory, this value is the kind of the accessory
          - `deductible_price` MoneyAmountWithOptionalGross
            - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
            - `gross` integer — Gross amount of money, expressed in the minor unit for the currency
            - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
          - `images` FirstPartyServiceImages
            - `url1x` string, required — URL to redirect to on success
            - `url2x` string, required — URL to redirect to on success
            - `url3x` string, required — URL to redirect to on success
        - `id` string, regexp, required — The internal Id for the first party service
        - `monthly_price` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
        - `type` 'topi_repair' | 'topi_replace' | 'demo_first_party_service' | 'topi_accessory' | 'topi_data_deletion_certificate' | 'topi_care_plus_synaxon' | 'topi_care_plus_michaelag', required
      - `base_rental_price` MoneyAmountWithOptionalGross
        - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
        - `gross` integer — Gross amount of money, expressed in the minor unit for the currency
        - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
      - `contract_terms_list` ContractTermItem[] — Available terms for the product
        - `id` string, regexp, required — The internal Id for the contract term
        - `payload` ContractTermItemPayload, required
          - `amount` MoneyAmount, required
            - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
            - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
            - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
          - `duration` 0 | 6 | 12 | 24 | 30 | 36 | 48, required — The duration in months
        - `type` 'pay_now' | 'rent', required — Different contracts type
      - `id` string, regexp, required — The offer line Id
      - `pretty_id` string — The pretty ID of the product
      - `price` MoneyAmount, required
        - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
        - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
        - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
      - `pricing_category` 'legacy_laptop_36' | 'legacy_phone_24' | 'iphone_17' | 'iphone_17_pro' | 'iphone_17_pro_max' | 'iphone_air' | 'iphone_17_e' | 'iphone_16_pro_max' | 'iphone_16_pro' | 'iphone_16_plus' | 'iphone_16' | 'iphone_15_pro_max' | 'iphone_15_pro' | 'iphone_15_plus' | 'iphone_15' | 'iphone_14_pro_max' | 'iphone_14_pro' | 'iphone_14_plus' | 'iphone_14' | 'iphone_13_pro_max' | 'iphone_13_pro' | 'iphone_13' | 'iphone_13_mini' | 'iphone_12_pro_max' | 'iphone_12_pro' | 'iphone_12' | 'iphone_12_mini' | 'iphone_11' | 'iphone_se_22' | 'iphone_se_20' | 'macbook_pro_13_14' | 'macbook_pro_13_14_m3' | 'macbook_pro_13_14_m4' | 'macbook_pro_13_14_m5' | 'macbook_pro_15_16' | 'macbook_pro_15_16_m3' | 'macbook_pro_15_16_m4' | 'macbook_pro_15_16_m5' | 'macbook_air' | 'macbook_air_13_m5' | 'macbook_air_15_m5' | 'macbook_neo' | 'mac_desktop' | 'mac_desktop_m4' | 'mac_studio' | 'mac_studio_m3m4' | 'mac_pro_m2' | 'apple_display' | 'studio_display_2026' | 'studio_display_2022' | 'studio_display_xdr' | 'ipad_pro' | 'ipad_pro_m5' | 'ipad_pro_m4' | 'ipad_pro_12_9_inch_7_gen' | 'ipad_pro_12_9_inch_6_gen' | 'ipad_pro_12_9_inch_5_gen' | 'ipad_pro_12_9_inch_4_gen' | 'ipad_pro_12_9_inch_3_gen' | 'ipad_pro_12_9_inch_2_gen' | 'ipad_pro_12_9_inch_1_gen' | 'ipad_pro_11_inch_4_gen' | 'ipad_pro_11_inch_3_gen' | 'ipad_pro_11_inch_2_gen' | 'ipad_pro_11_inch_1_gen' | 'ipad_pro_10_5_inch' | 'ipad_air' | 'ipad_air_m4' | 'ipad_air_m3' | 'ipad_air_6_gen' | 'ipad_air_5_gen' | 'ipad_air_4_gen' | 'ipad_air_3_gen' | 'ipad_air_2_gen' | 'ipad_air_1_gen' | 'ipad_regular' | 'ipad_regular_11_gen' | 'ipad_regular_10_gen' | 'ipad_regular_9_gen' | 'ipad_regular_8_gen' | 'ipad_regular_7_gen' | 'ipad_regular_6_gen' | 'ipad_regular_5_gen' | 'ipad_mini' | 'ipad_mini_6_gen' | 'ipad_mini_5_gen' | 'ipad_mini_4_gen' | 'ipad_mini_3_gen' | 'ipad_mini_2_gen' | 'ipad_mini_1_gen' | 'smartwatch_apple' | 'smartwatch_apple_ultra' | 'smartwatch_other' | 'laptop_other_top' | 'laptop_other_low' | 'desktop_other_top' | 'desktop_other_low' | 'phone_other_top' | 'phone_other_low' | 'tablet_other_top' | 'tablet_other_low' | 'screen' | 'accessory_other' | 'accessory_airpods' | 'accessory_pencil' | 'accessory_homepod' | 'accessory_visionpro' | 'services_insurance' | 'software' | 'services_management' | 'other' | 'bundle' | 'second_hand' | 'sandbox_supported_product' | 'printer' | 'iphone_16_e' | 'server' | 'network_security' | 'mac_pro' | 'mac_studio_m3' | 'mac_studio_m4' | 'accessory_smartfolio' | 'accessory_appletv' | '' — The topi-assigned pricing category for the product
      - `product_id` string, regexp — Product ID inside Topi catalog
      - `quantity` integer, required — Amount of products
      - `requires_serial_number` boolean — Does the offerline require a serial number
      - `selected_contract_terms_id` string — Selected term id
      - `selected_first_party_service_ids` string[] — Selected first party services ids
      - `seller_product_provided_by` string — Who the ultimate provider for the product is
      - `seller_product_references` SellerProductReference[], required — Partner's own reference for this product
        - `reference` string, required — The ID related with the source. This value should be unique for that source.
        - `source` string, required — The seller internal source name for this reference type.
      - `seller_product_type` 'hardware' | 'software' | 'service' | 'hardware_built_to_order'
      - `subtitle` string — The product subtitle
      - `title` string, required — The product name
    - `subtitle` string — The product subtitle
    - `title` string, required — The product name
  - `offer_confirmed_at` string, date-time
  - `offer_link` string
  - `payment_method_required` boolean, required — Whether the checkout must collect a payment method (derived from the offer's contractual entity server-side)
  - `phone_number` string — Phone number
  - `pricing_overview` PricingOverview, required
    - `instead_of_amount` MoneyAmount, required
      - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
      - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
      - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
    - `items_summaries` ItemSummary[] — Price summary for each item: main line and sublines.
      - `identifier` string, required — Identifier of the item.
      - `pay_now` PayNow, required
        - `pay_now_amount` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
      - `pay_now_excluding_sublines` PayNow, required
        - `pay_now_amount` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
      - `rent` Rent[], required — The unit rent amount per item for all rental durations.
        - `duration` 6 | 12 | 24 | 36, required — Duration of the rental term in months.
        - `monthly_amount` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
      - `rent_excluding_sublines` Rent[], required — The unit rent amount per item for all rental durations for main line only.
        - `duration` 6 | 12 | 24 | 36, required — Duration of the rental term in months.
        - `monthly_amount` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
      - `total_pay_now` PayNow, required
        - `pay_now_amount` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
      - `total_rent` Rent[], required — The total rent amount per item for all rental durations.
        - `duration` 6 | 12 | 24 | 36, required — Duration of the rental term in months.
        - `monthly_amount` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
    - `rent_info` RentInfo, required
      - `rent_only_amount` MoneyAmount, required
        - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
        - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
        - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
      - `tenure_lines` TenureLine[], required — Different lines with the different items that are important for the payment.
        - `amount` MoneyAmount, required
          - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
          - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
          - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
        - `duration` 0 | 6 | 12 | 24 | 30 | 36 | 48, required — The duration in months
      - `total_rent` MoneyAmount, required
        - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
        - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
        - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
    - `should_show_instead_of_amount` boolean, required — A boolean to decide when to show the instead of amount based on calculated values
    - `total_amount_first_payment` MoneyAmount, required
      - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
      - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
      - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
    - `total_amount_first_payment_without_shipping` MoneyAmount, required
      - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
      - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
      - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
    - `total_purchase_amount` MoneyAmount, required
      - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
      - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
      - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
  - `redirect_to_superseding_offer_url` string — link to the top-most offer in the superseding chain
  - `sales_channel` 'telesales' | 'ecommerce', required
  - `seller_info` SellerInfo, required
    - `address` Address, required
      - `city` string, required — City
      - `country_code` string, required — ISO 3166-1 alpha-2
      - `line1` string, required — First line (street, number, etc.)
      - `line2` string — Second line (flat number, etc.)
      - `postal_code` string, required — Postal code
      - `region` string — Region, county, province, etc.
    - `capability_add_custom_products` boolean, required — If the seller can add custom products
    - `capability_anonymized_pricing` boolean, required — If the seller wishes to anonymize catalog prices
    - `capability_anonymous_ecom_offer_creation` boolean, required — Ability to skip required shipping address for ecom offers.
    - `capability_bundles` boolean, required — If the seller has bundles enabled
    - `capability_chatbot_id` string — Chatbot id for the seller. This enables a chatbase chatbot for the seller
    - `capability_dual_pricing` boolean, required — If true, the seller has the Dual Pricing system enabled
    - `capability_hide_buy_now` boolean, required — If the seller should hide purchase only as option.
    - `capability_international_shipment` boolean, required — If the seller has international shipment enabled
    - `currency` string, required — The currency of the seller
    - `email` string, required — The seller email
    - `id` string, regexp, required — The seller id
    - `logo_url` string — The seller logo
    - `name` string, required — The name of the seller
    - `parent_seller_id` string — the ID of the parent seller, we use this for multipliers
    - `pdf_reader_assistant_id` string — The assistant ID to use for PDF reader, use null to disable PDF reader
    - `pretty_name` string — The pretty, customer-facing name of the seller
    - `product_reference_source` string, required — The seller product reference source
  - `seller_offer_reference` string, required — Partner's own reference for this offer
  - `shipping` ShippingInfo — Shipping information
    - `is_in_store_pickup` boolean
    - `price` MoneyAmount, required
      - `currency` string, required — Currency code, see ISO 4127 (https://www.iso.org/iso-4217-currency-codes.html) (supported: EUR, GBP, USD)
      - `gross` integer, required — Gross amount of money, expressed in the minor unit for the currency
      - `net` integer, required — Net amount of money, expressed in the minor unit for the currency
    - `seller_shipping_reference` string, required — Seller's own reference for shipping method
  - `shipping_address` ShippingAddress, required
    - `city` string, required — City
    - `country_code` string, required — ISO 3166-1 alpha-2
    - `line1` string, required — First line (street, number, etc.)
    - `line2` string — Second line (flat number, etc.)
    - `postal_code` string, required — Postal code
    - `recipient_name` string — Full name of the recipient
    - `region` string — Region, county, province, etc.
  - `status` 'created' | 'voided' | 'accepted' | 'expired' | 'rejected' | 'pending_review' | 'declined', required
  - `success_redirect` string — URL to redirect to on success
  - `superseded_by_id` string, regexp — ID of the offer that superseded this one (when voided)
  - `updated_at` string, date-time

## Other responses

- `400` — BadRequest: Bad Request response.
- `401` — Unauthorized: Unauthorized response.
- `403` — InvalidScopes: Forbidden response.
- `404` — NotFound: Not Found response.
- `409` — IncompatibleContractualEntity: Conflict response.
- `422` — OutOfDate: Unprocessable Entity response.

---

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