Product

This object is returned directly or within a successful response from the following API requests:

Retrieve product by code

Search products

Product object

Parameters
Type / Description

AvangateId

String

Unique, system-generated 2Checkout product ID. Read-only.

ProductCode

String

The product code that you can define for each of your offerings. Needs to be unique.

ExternalReference

String

External reference that you control when defining the product.

ProductType

String

REGULAR or BUNDLE

ProductName

String

The name of the product

ProductVersion

String

The product version number

PurchaseMultipleUnits

Boolean

Possible values:

  • TRUE — customers can purchase multiple units of this product.

  • FALSE — customers can purchase only one unit at a time.

The default value is TRUE.

Tangible

Boolean

Possible values:

  • TRUE — for physical products;

  • FALSE — for digital products

TangibleDetails

Object

Only for physical products. Contains information related to product's physical setup.

TangibleDetails.UnitDetails

Array of objects

Details on tangible setup.

TangibleDetails.UnitDetails.Type

String

Product physical configuration type. Example: "WEIGHT".

TangibleDetails.UnitDetails.Amount

String

Product's tangible weight. Example: "5".

TangibleDetails.Fee

Array of objects

Details on handling fees associated with a tangible product.

TangibleDetails.Fee.Currency

String

Currency of the handling fee. Example: "USD"

TangibleDetails.Fee.Amount

String

Handling fee amount defined on the tangible product. Example: "5".

ProductGroup

Object

Product group information.

ProductGroup.Name

String

Product group name

ProductGroup.Code

String

Product group code generated when you create the group

ProductGroup.TemplateName

String

Default cart template used when generating buy links for products from this group.

ProductGroup.Description

String

Product group description.

ShippingClass

Object

Existing shipping class object with the structure detailed below.

ShippingClass.Name

String

The name of the shipping class

ShippingClass.Amount

Decimal

The shipping costs

ShippingClass.Currency

String

The currency ISO code used for shipping costs - ISO 4217.

ShippingClass.ApplyTo

String

Possible values:

  • PRODUCT

  • ORDER

ShippingClass.Type

String

Possible values:

  • FIXED

  • PERCENT

GiftOption

Boolean

True or false depending on whether the product can be gifted or not.

ShortDescription

String

Product's short description.

LongDescription

String

Product's long description.

SystemRequirements

String

System requirements

ProductCategory

String

Product category

Platforms

Array of objects

Array of objects detailing the platforms supported by the application.

Platforms.PlatformName

String

The label of the platform per the product configuration.

Platforms.Category

String

Platform category per product configuration.

ProductImages

Array of objects

Image object. Read-only.

ProductImages.Default

Boolean

True or False depending on whether the image is set as default.

ProductImages.URL

String

The location of the image on the 2Checkout system.

TrialUrl

String (anyURI)

The URL from where shoppers can download trial software.

TrialDescription

String

Descriptive text entered for trials.

Enabled

Boolean

True/false depending on whether the products are active or disabled. When empty, 2Checkout marks the product as disabled.

ReviewStatus

String

Returns the status of the product activation review. Can be: 'Does not exist', 'Pending', 'In Review', 'Passed' or 'Rejected'.

AdditionalFields

Array of objects

Array of existing additional fields assigned to products.

AdditionalFields.Label

String

The name of the additional field assigned to a product.

AdditionalFields.Code

String

The code of the additional field assigned to a product.

AdditionalFields.Enabled

Boolean

True or false depending on whether the assigned product field is enabled or not.

AdditionalFields.Required

Boolean

True or false depending on whether the assigned product field is required or not.

AdditionalFields.URLParameter

String

The value of the system generated URL parameter for the product field that can be used in Buy Links.

AdditionalFields.Display

Array of objects

Contains the display settings (Active/Required) for Order/Download pages.

AdditionalFields.Display.Type

String

Values:

  • Download

  • Order

AdditionalFields.Display.Active

Boolean

True or false depending on whether the assigned product field is active or not.

AdditionalFields.Display.Required

Boolean

True or false depending on whether the assigned product field is required or not.

Translations

Array of objects

Details below.

Translations.LongDescription

String

The translated long description in the language corresponding to the Translation object.

Translations.TrialUrl

String

The trial URL for users speaking the language corresponding to the Translation object.

Translations.TrialDescription

String

Translations.SystemRequirements

String

Localized system requirements.

Translations.Name

String

Localized product name.

Translations.Description

String

Localized product short description.

Translations.Language

String

ISO 639-1 two-letter code.

PricingConfigurations

Array of objects

Details below. 2Checkout creates pricing configurations during the process when you add a product.

PricingConfigurations.Name

String

Pricing configuration name

PricingConfigurations.Code

String

System-generated identifier.

PricingConfigurations.Default

Boolean

True for the default pricing configuration

PricingConfigurations.BillingCountries

Array of strings

ISO codes of the countries assigned to the pricing configuration. Empty unless specific countries are assigned.

PricingConfigurations.UseOriginalPrices

Boolean

True or False

PricingConfigurations.PricingSchema

String

  • DYNAMIC – With a base price

  • FLAT – Without a base price

PricingConfigurations.PriceType

String

Possible values: NET / GROSS

PricingConfigurations.DefaultCurrency

String

The ISO code of the default currency for the pricing configuration

PricingConfigurations.Prices

Object

Details below.

PricingConfigurations.Regular

Array of objects

Details below.

PricingConfigurations.Amount

Int

The price of the product.

PricingConfigurations.Currency

String

ISO code of the currency for the product price.

PricingConfigurations.MinQuantity

Int

The minimum quantity of volume discounts. Default is 1.

PricingConfigurations.MaxQuantity

Int

The maximum quantity of volume discounts. Default is 99999.

PricingConfigurations.OptionCodes

Array of objects

Details below.

PricingConfigurations.Code

String

Price option identifier.

PricingConfigurations.Options

Array of strings

The pricing options group option code used to calculate product prices for pricing configurations without a base price.

PricingConfigurations.Renewal

Array of objects

Details below (same fields as Regular).

PricingConfigurations.OptionCodes

Array of objects

Details below.

PricingConfigurations.PriceOptions

Array of objects

Details below.

PricingConfigurations.Code

String

System generated pricing options group code used to calculate product prices for pricing configurations without a base price.

PricingConfigurations.Required

Boolean

True or False depending on whether you want to make it mandatory for shoppers to select the price option during purchase.

PricingConfigurations.CustomImpactOnPrice

Boolean

True or False

BundleProducts

Array of objects

Details below.

BundleProducts.ProductId

String

Unique, system-generated product ID.

BundleProducts.ProductCode

String

Editable product code that you control.

Fulfillment

String

  • BY_AVANGATE

  • NO_DELIVERY (system finalizes orders immediately after payment confirmation)

  • BY_VENDOR (you are responsible for delivering/fulfilling orders)

Prices

Array of objects

Use this only when Pricing Configurations are not available for your account.

Prices.Amount

Int

The price of the product.

Prices.Currency

String

ISO code of the currency for the product price.

Prices.MinQuantity

Int

The minimum quantity of volume discounts. Default is 1.

Prices.MaxQuantity

Int

The maximum quantity of volume discounts. Default is 99999.

Prices.OptionCodes

Array of objects

Details below.

Prices.OptionCodes.Code

String

Price option identifier.

Prices.OptionCodes.Options

Array of strings

The pricing options group option code used to calculate product prices for pricing configurations without a base price.

GeneratesSubscription

Boolean

TRUE or FALSE depending on whether you set the product to generate subscriptions or not. NULL for bundles using child product subscription settings.

SubscriptionInformation

Object

Details below. NULL for bundles which use the renewal settings of child products.

SubscriptionInformation.DeprecatedProducts

Array

Deprecated products.

SubscriptionInformation.BundleRenewalManagement

String

Possible values:

  • GLOBAL

  • INDIVIDUAL.

Can be NULL.

SubscriptionInformation.BillingCycle

String

Number of subscription billing cycle units (months or days). Possible values include -1 (one-time fee), days (e.g., 7–14), months (1,2,3,6,12,15,18,24,36).

SubscriptionInformation.BillingCycleUnits

String

The units of the billing cycle: M - months; D - days

SubscriptionInformation.IsOneTimeFee

Boolean

True or False depending on whether the subscription is evergreen or not.

SubscriptionInformation.ContractPeriod

Object

Details below.

SubscriptionInformation.Period

Int

The contract period in months or days. -1 for unlimited contracts.

SubscriptionInformation.PeriodUnits

String

The contract period units: days

SubscriptionInformation.IsUnlimited

Boolean

True if the contract is for an unlimited period

SubscriptionInformation.Action

String

The action performed after the subscription expires. Possible values: CANCEL, RESTART

SubscriptionInformation.EmailsDuringContract

Boolean

True or False depending on whether you suppress renewal notification emails during the contract.

SubscriptionInformation.UsageBilling

Int

The usage billing interval must be smaller than or equal to the grace period. Interval within the grace period when the system attempts to automatically charge customers for recurring costs and metered usage fees. Can be NULL.

SubscriptionInformation.GracePeriod

Object

Details below.

SubscriptionInformation.GracePeriod.Type

String

CUSTOM (product level) or GLOBAL (global grace period settings apply).

SubscriptionInformation.GracePeriod.Period

String

Number of days set for the grace period.

SubscriptionInformation.GracePeriod.PeriodUnits

String

D - Days.

SubscriptionInformation.GracePeriod.IsUnlimited

Boolean

TRUE or FALSE depending on whether the grace period is unlimited.

SubscriptionInformation.RenewalEmails

Object

Details below. Can be NULL. Available only in Product API 2.5 and later.

SubscriptionInformation.RenewalEmails.Type

String

GLOBAL (use global renewal notification settings) or CUSTOM (per product settings).

SubscriptionInformation.Settings

Object (can be NULL)

Details below.

SubscriptionInformation.Settings.ManualRenewal

Object (can be NULL)

Details below.

SubscriptionInformation.Settings.ManualRenewal.Before30Days

Boolean True or False.

SubscriptionInformation.Settings.ManualRenewal.Before15Days

Boolean True or False.

SubscriptionInformation.Settings.ManualRenewal.Before7Days

Boolean True or False.

SubscriptionInformation.Settings.ManualRenewal.Before1Day

Boolean True or False.

SubscriptionInformation.Settings.ManualRenewal.OnExpirationDate

Boolean True or False.

SubscriptionInformation.Settings.ManualRenewal.After5Days

Boolean True or False.

SubscriptionInformation.Settings.ManualRenewal.After15Days

Boolean True or False.

SubscriptionInformation.Settings.AutomaticRenewal

Object (can be NULL)

SubscriptionInformation.Settings.AutomaticRenewal.Before30Days

Boolean True or False.

SubscriptionInformation.Settings.AutomaticRenewal.Before15Days

Boolean True or False.

SubscriptionInformation.Settings.AutomaticRenewal.Before7Days

Boolean True or False.

SubscriptionInformation.Settings.AutomaticRenewal.Before1Day

Boolean True or False.

SubscriptionInformation.Settings.AutomaticRenewal.OnExpirationDate

Boolean True or False.

SubscriptionInformation.Settings.AutomaticRenewal.After5Days

Boolean True or False.

SubscriptionInformation.Settings.AutomaticRenewal.After15Days

Boolean True or False.

FulfillmentInformation

Object

Details below. Can be NULL. Available only in Product API 2.5 and later.

FulfillmentInformation.IsStartAfterFulfillment

Boolean

True or False: whether subscription lifetime starts after completion of the fulfillment process.

FulfillmentInformation.IsElectronicCode

Boolean

True or False: whether delivery of keys/codes is configured.

FulfillmentInformation.IsDownloadLink

Boolean

True or False: whether delivery of a product file is configured.

FulfillmentInformation.IsDownloadInsuranceService

Boolean

True or False: whether Download Insurance Service is enabled for the product file.

FulfillmentInformation.IsInstantDeliveryThankYouPage

Boolean

True or False: whether instant delivery is enabled on the Thank You page.

FulfillmentInformation.IsDisplayInPartnersCPanel

Boolean

True or False: whether you share access to the product file with channel partners.

FulfillmentInformation.ReturnMethod

Object

Information on the customer redirect method after a successful purchase.

FulfillmentInformation.Type

String

Possible values:

  • DIRECT_RETURN

  • HEADER_REDIRECT

  • HTML_LINK

FulfillmentInformation.URL

String

Website to which customers are redirected after a successful purchase. Example: http://mysuccessurl.com/

FulfillmentInformation.CodeList

Object (can be NULL)

Details below.

FulfillmentInformation.Code

String

The unique code list identifier.

FulfillmentInformation.Name

String

Name of the code list.

FulfillmentInformation.Type

String

Code list type: STATIC or DYNAMIC

FulfillmentInformation.ProductFile

Object (can be NULL)

Details below.

FulfillmentInformation.Code

String

Unique product file identifier.

FulfillmentInformation.Name

String

Display name.

FulfillmentInformation.File

String

Name of the product file.

FulfillmentInformation.Version

String

File version.

FulfillmentInformation.Size

String

File size.

FulfillmentInformation.Type

String

File type.

FulfillmentInformation.LastUpdate

String

YYYY-MM-DD HH-MM-SS. Date time stamp when you last updated the file.

FulfillmentInformation.AdditionalInformationByEmail

String (can be NULL)

The text set up in the Additional fulfillment information - by email area.

FulfillmentInformation.AdditionalInformationEmailTranslations

Object (can be NULL)

Array of localized Additional fulfillment information - by email texts.

FulfillmentInformation.AdditionalThankYouPage

String (can be NULL)

The text set up in the Additional fulfillment information - "Thank you" page area.

FulfillmentInformation.AdditionalThankYouPageTranslations

Array (can be NULL)

Array of localized Additional fulfillment information - "Thank you" page texts.

Last updated

Was this helpful?