# Order with dynamic products

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

<a href="/pages/PiGMut3YIzAbHaH9WUTM" class="button primary" data-icon="cart-circle-plus">Place orders with dynamic product information</a>

<a href="/pages/vx7YuvKT5b024QbEAbue" class="button primary" data-icon="folder-check">Retrieve an order</a>

## Dynamic order object

<table><thead><tr><th width="410.2667236328125">Parameter</th><th width="311.0665283203125">Type / Description</th></tr></thead><tbody><tr><td><code>RefNo</code></td><td><p><strong>String</strong><br>2Checkout generates unique reference numbers for all orders (purchases). You can use this parameter to retry authorizations for orders with failed transactions by changing the payment method.</p><p>NULL when you place new orders.</p></td></tr><tr><td><code>ChargebackResolution</code></td><td><p><strong>String</strong><br>Chargeback status information. Possible values:</p><ul><li>OPEN (chargeback is in progress)</li><li>WON (chargeback won by you)</li><li>LOST (chargeback won by the customer)</li><li>ACCEPTED (you agreed to repay the value of the order to the customer)</li><li>NONE (no chargeback initiated for the order)</li></ul><p>To manage chargeback notifications navigate to Control Panel <em>Dashboard →Integrations → Webhooks and API</em>, and click on the <a href="https://secure.avangate.com/cpanel/ipn_settings.php">IPN settings tab</a>.</p><p>In the <strong>General IPN Settings</strong> section, under <strong>Triggers</strong>, make sure to check the boxes next to the following options:</p><ul><li>chargeback open (2Checkout sends an IPN when shoppers open a chargeback dispute).</li><li>chargeback closed - (2Checkout sends an IPN when the parties involved resolve a chargeback dispute).</li></ul><p>Also, check the checkbox next to the <strong>CHARGEBACK_RESOLUTION</strong> parameter featured in the <strong>Response tags</strong> area.</p></td></tr><tr><td><code>ChargebackReasonCode</code></td><td><p><strong>String</strong></p><p>Identifier for the chargeback dispute reason from the 2Checkout system. Empty for orders with no chargeback dispute initiated.</p><p>Possible values:</p><ul><li>MERCHANDISE_NOT_RECEIVED - Order not fulfilled/not delivered</li><li>NOT_AS_DESCRIBED - Product(s) not as described/unfunctional</li><li>DUPLICATE_TRANSACTION - Duplicate order</li><li>FRAUD / NOT_RECOGNIZED - Fraud/Order not recognized</li><li>CREDIT_NOT_PROCESSED - Agreed refund not processed</li><li>NOT_RECOGNIZED - New/renewal order not recognized</li><li>AUTHORIZATION_PROBLEM - Authorization problem</li><li>INFO_REQUEST - Information request</li><li>UNKNOWN - Unknown</li></ul></td></tr><tr><td><code>OrderNo</code></td><td><strong>String</strong><br>The consecutive order number 2Checkout associates with orders and displays in the <a href="https://secure.avangate.com/cpanel/reports.php">Order search</a> area of your account.</td></tr><tr><td><code>ExternalReference</code></td><td><strong>String</strong><br>Set external reference identifiers for orders. Enables you to replicate the functionality of the <strong>REF</strong> parameter included Integero Buy Links. Maximum 100 characters. If there is a need for longer references, you can apply an md5 hash for any string value, resulting in a 32 characters string. You can verify the hash after the order notification, on the client side.</td></tr><tr><td><code>Status</code></td><td><p><strong>String</strong></p><p>The status of the order:</p><ul><li>AUTHRECEIVED – 2Checkout blocks the amount corresponding to the transaction, but the process of collecting funds is incomplete.</li><li>PENDING - 2Checkout has yet to block the amount corresponding to the transaction or shoppers used an offline payment method like wire transfer.</li><li>COMPLETE – The shopper completed the transaction for the purchase and 2Checkout or you fulfilled the order (when required).</li><li>CANCELED – 2Checkout cancels orders for which shoppers fail to transfer funds in due time.</li><li>REVERSED – 2Checkout reverses order transactions that never reach the Complete/Finished stage. Shoppers never complete transactions for such purchases.</li><li>REFUND – 2Checkout refunds orders only after they reach the Complete/Finished stage and returns the funds collected to shoppers.</li></ul></td></tr><tr><td><code>ApproveStatus</code></td><td><p><strong>String</strong></p><p>The status of the order resulted from the evaluation by the 2Checkout anti-fraud system or by a member of the anti-fraud department. This status varies for new purchases and for orders requiring customers to make manual payments.</p><p>Possible values:</p><ul><li><strong>WAITING</strong>: The 2Checkout anti-fraud system or a member of the anti-fraud department has yet to approve the order.</li><li><strong>OK</strong>: The 2Checkout anti-fraud system or a member of the anti-fraud department approved the order.</li><li><strong>INVALIDDATA</strong>: Shopper-supplied data is invalid – 2Checkout did not approve the order.</li><li><strong>FRAUD</strong>: The order is fraudulent.</li></ul></td></tr><tr><td><code>VendorApproveStatus</code></td><td><p><strong>String</strong></p><p>Shows if you approved or not a partner order. Possible values:</p><ul><li>OK</li><li>WAITING</li><li>REJECTED</li></ul></td></tr><tr><td><code>Language</code></td><td><strong>String</strong><br>ISO 639-1 two-letter code. Language used for the purchase process. Example: “en.”</td></tr><tr><td><code>OrderDate</code></td><td><strong>String</strong><br>Y-m-d H:i:s (2014-05-22 00:12:12) The datetime stamp (in the API time zone defined in cPanel) when customers place their orders.</td></tr><tr><td><code>FinishDate</code></td><td><p><strong>String</strong><br>Y-m-d H:i:s (2014-05-22 00:12:12) The datetime stamp (in the API time zone defined in cPanel) when the order reach the Complete status.</p><p>NULL for order that did not reach the Complete/Finished stage.</p></td></tr><tr><td><code>Source</code></td><td><p><strong>String</strong><br>The link source for the sales. Enables you to replicate the functionality of the <strong>SRC</strong> (separate link identifier) parameter when included Integero Buy Links. Use the SRC parameter to track sale sources.</p><p>Maximum length 255 characters. Cannot be null.</p></td></tr><tr><td><code>Affiliate</code></td><td><strong>Object</strong><br>Details below.</td></tr><tr><td><code>Affiliate.AffiliateCode</code></td><td><strong>String</strong><br>The unique code of the affiliate who refer orders.</td></tr><tr><td><code>Affiliate.AffiliateSource</code></td><td><strong>String</strong><br>The link source for affiliate referred sales. Similar to the functionality of the <strong>SRC</strong> (separate link identifier) parameter included Integero Buy Links, but controlled by the <strong>AFFSRC</strong> parameter. Affiliates use the <strong>AFFSRC</strong> parameter to track sale sources for their referrals. Maximum length 255 characters.</td></tr><tr><td><code>Affiliate.AffiliateName</code></td><td><strong>String</strong><br>Affiliate name.</td></tr><tr><td><code>Affiliate.AffiliateUrl</code></td><td><strong>String</strong><br>Affiliate website URL from the Affiliate Details.</td></tr><tr><td><code>RecurringEnabled</code></td><td><strong>Boolean</strong><br><strong>True</strong> of <strong>false</strong>, depending on whether the shoppers checked the subscription auto-renewal checkbox or not, during the purchase process.</td></tr><tr><td><code>HasShipping</code></td><td><strong>Boolean</strong><br><strong>True</strong> of <strong>false</strong>, depending on whether the order requires shipping.</td></tr><tr><td><code>DeliveryInformation</code></td><td><p><strong>Object</strong></p><p>Details below</p></td></tr><tr><td><code>DeliveryInformation.ShippingMethod</code></td><td><p><strong>Object</strong></p><p>Details below</p></td></tr><tr><td><code>DeliveryInformation.ShippingMethod.Code</code></td><td><strong>String</strong><br>Unique system-identified for your shipping method.</td></tr><tr><td><code>DeliveryInformation.ShippingMethod.TrackingURL</code></td><td><strong>String</strong><br>Tracking URL provided to customers who purchase physical goods.</td></tr><tr><td><code>DeliveryInformation.ShippingMethod.TrackingNumber</code></td><td><strong>String</strong><br>Tracking Number provided to customers for tracking the delivery of their physical products.</td></tr><tr><td><code>DeliveryInformation.ShippingMethod.Comment</code></td><td><strong>String</strong><br>Additional information provided to customers who purchsae physical goods.</td></tr><tr><td><code>BillingDetails</code></td><td><strong>Object</strong><br>Details below. </td></tr><tr><td><code>BillingDetails.FirstName</code></td><td><strong>String</strong><br>Shopper name.</td></tr><tr><td><code>BillingDetails.LastName</code></td><td><strong>String</strong><br>Shopper surname.</td></tr><tr><td><code>BillingDetails.CountryCode</code></td><td><strong>String</strong><br>Shopper country. ISO 3166 two-letter code.</td></tr><tr><td><code>BillingDetails.State</code></td><td><strong>String</strong> – Required for US, Turkey, India and Romania<br>The state in the shopper's country. Mandatory when you set the Billing Country to US, Turkey, India and Romania. Use case insensitive utf8 strings for the full name, or just the two letter code.</td></tr><tr><td><code>BillingDetails.City</code></td><td><strong>String</strong><br>Shopper city.</td></tr><tr><td><code>BillingDetails.Address1</code></td><td><strong>String</strong><br>Shopper address.</td></tr><tr><td><code>BillingDetails.Address2</code></td><td><strong>String</strong><br>Shopper address.</td></tr><tr><td><code>BillingDetails.Zip</code></td><td><strong>String</strong><br>ZIP/ Postal code.</td></tr><tr><td><code>BillingDetails.Email</code></td><td><strong>String</strong><br>Shopper email address.</td></tr><tr><td><code>BillingDetails.Phone</code></td><td><strong>String</strong><br>Shopper phone number. Mandatory when you set Brazil as the Billing Country. Can be NULL.</td></tr><tr><td><code>BillingDetails.Company</code></td><td><strong>String</strong><br>Company name. Can be null for end users. When present, you also need to provide the FiscalCode.</td></tr><tr><td><code>BillingDetails.FiscalCode</code></td><td><p><strong>String</strong> – Required for Brazil<br>• For companies, it needs to be the VAT ID. 2Checkout will validate the value provided and throw an error if the VAT ID is invalid/incorrect when calling <strong>setPaymentDetails</strong>. When present, you also need to provide the <code>Company name</code>.</p><p>• Mandatory when the Billing Country is set to Brazil. For Brazilian customers it represents the Fiscal Code (CPF/CNPJ).</p><p>• Mandatory when the Billing Country is set to India and purchase is made by a Company.</p><p>• Can be null for end users.</p></td></tr><tr><td><code>DeliveryDetails</code></td><td><p><strong>Object</strong></p><p>Optional. When missing, 2Checkout uses the same details as for the BillingDetails object.<br>Details below. </p></td></tr><tr><td><code>DeliveryDetails.FirstName</code></td><td><strong>String</strong><br>Shopper name from the delivery details.</td></tr><tr><td><code>DeliveryDetails.LastName</code></td><td><strong>String</strong><br>Shopper surname from the delivery details.</td></tr><tr><td><code>DeliveryDetails.CountryCode</code></td><td><strong>String</strong><br>Shopper country. ISO 3166 two-letter code from the delivery details.</td></tr><tr><td><code>DeliveryDetails.State</code></td><td><strong>String</strong> – Required for US, Turkey, and Romania<br>The state in the shopper's country from the delivery details. Mandatory when you set the Billing Country to US, Turkey, and Romania. Use case insensitive utf8 strings for the full name, or just the two letter code.</td></tr><tr><td><code>DeliveryDetails.City</code></td><td><strong>String</strong><br>Shopper city from the delivery details.</td></tr><tr><td><code>DeliveryDetails.Address1</code></td><td><strong>String</strong><br>Shopper address from the delivery details.</td></tr><tr><td><code>DeliveryDetails.Address2</code></td><td><strong>String</strong><br>Shopper address from the delivery details.</td></tr><tr><td><code>DeliveryDetails.Zip</code></td><td><strong>String</strong><br>ZIP/ Postal code from the delivery details.</td></tr><tr><td><code>DeliveryDetails.Email</code></td><td><strong>String</strong><br>Shopper email address from the delivery details.</td></tr><tr><td><code>DeliveryDetails.Phone</code></td><td><strong>String</strong><br>Shopper phone number from the delivery details. Mandatory when you set Brazil as the Billing Country. Can be NULL.</td></tr><tr><td><code>DeliveryDetails.Company</code></td><td><strong>String</strong><br>Company name from the delivery details. Can be null for end users. When present, you also need to provide the FiscalCode.</td></tr><tr><td><code>PaymentDetails</code></td><td><strong>Object</strong><br>Adapt this object to the desired payment method.</td></tr><tr><td><code>PaymentDetails.Type</code></td><td><p><strong>String</strong></p><p>The payment method:</p><ul><li><strong>CC</strong> (credit/debit card - including local Brazilian cards).</li><li><strong>PAYPAL</strong></li><li><strong>PAYPAL_EXPRESS</strong></li><li><strong>CCNOPCI</strong> (credit/debit card for non-PCI certified merchants).</li><li><strong>TEST</strong> (for test orders).</li><li><strong>PREVIOUS_ORDER</strong> (place new orders using the reference of a previous order).</li><li><strong>EXISTING_PAYMENT_DATA</strong> (use a card one of your customers already used to purchase from your account).</li><li><strong>WIRE</strong> – the placeOrder response includes Wire payment details.</li><li><strong>CHECK</strong> – the placeOrder response includes Check payment details.</li><li><strong>PURCHASEORDER</strong> - use for orders with POs.</li><li><strong>FREE –</strong> for 0 value orders for which you’re not requiring customers to provide payment details.</li><li><strong>GOOGLE PAY</strong></li></ul></td></tr><tr><td><code>PaymentDetails.Currency</code></td><td><strong>String</strong><br>The currency ISO code for the payment - ISO 4217. Example: “usd.”</td></tr><tr><td><code>PaymentDetails.PaymentMethod</code></td><td><p><strong>Object</strong><br>Object structure and parameters differ according to payment method selected and API method (placing orders (POST) vs. retrieving order data (GET)). For payments with credit cards, PalPay Express, previous order reference and purchase order use the objects below.</p><p>For payments with check and wire, send only the ‘CHECH’ and ‘WIRE’ strings.</p><p><strong>null</strong> for 0 value orders for which you’re not requiring customers to enter payment details.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.PaymentDetailsCard</code></td><td><strong>Object</strong><br>Details below. </td></tr><tr><td><code>PaymentDetails.PaymentMethod.PaymentDetailsCard.CardType</code></td><td><strong>String</strong><br>visa, visaelectron, mastercard, maestro, amex, discover, dankort, cartebleue, jcb, hipercard, elo</td></tr><tr><td><code>PaymentDetails.PaymentMethod.PaymentDetailsCard.FirstDigits</code></td><td><strong>String</strong><br>First four digits of the credit card.</td></tr><tr><td><code>PaymentDetails.PaymentMethod.PaymentDetailsCard.LastDigits</code></td><td><strong>String</strong><br>Last four digits of the credit card.</td></tr><tr><td><code>PaymentDetails.PaymentMethod.PaymentDetailsCard.RecurringEnabled</code></td><td><strong>Boolean</strong><br><strong>True</strong> of <strong>false</strong>, depending on whether the order has active recurring options</td></tr><tr><td><code>PaymentDetails.PaymentMethod.PaymentDetailsCard.Vendor3DSReturnURL</code></td><td><strong>String</strong><br>URL to which customers are redirected after a successful 3DS process.</td></tr><tr><td><code>PaymentDetails.PaymentMethod.PaymentDetailsCard.Vendor3DSCancelURL</code></td><td><strong>String</strong><br>URL to which customers are redirected after a failed 3DS process.</td></tr><tr><td><code>PaymentDetails.PaymentMethod.PaymentDetailsCard.InstallmentsNumber</code></td><td><strong>String</strong><br>Number of installments needed for covering the order total.</td></tr><tr><td><code>PaymentDetails.PaymentMethod.CheckPaymentDetails</code></td><td><strong>Object</strong><br>Details below. </td></tr><tr><td><code>PaymentDetails.PaymentMethod.CheckPaymentDetails.Beneficiary</code></td><td><p><strong>String</strong><br>The beneficiary of the payment.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.CheckPaymentDetails.CheckPostalAddress</code></td><td><p><strong>String</strong><br>The address of the beneficiary.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.CheckPaymentDetails.Amount</code></td><td><p><strong>Float</strong><br>The total costs incurred by the customer for an order.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.CheckPaymentDetails.Currency</code></td><td><p><strong>String</strong><br>The currency ISO code of the order/payment - ISO 4217.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.PayPalExpress</code></td><td><strong>Object</strong><br>Details below. </td></tr><tr><td><code>PaymentDetails.PaymentMethod.PayPalExpress.Email</code></td><td><strong>String</strong><br>Email address customers use for their PayPal account.</td></tr><tr><td><code>PaymentDetails.PaymentMethod.PayPalExpress.ReturnURL</code></td><td><strong>String</strong><br>The PayPal Express Checkout redirect URL returned by calling the getPayPalExpressCheckoutRedirectURL method. The return URL is the page on your website to which PayPal redirects your buyer's browser after the buyer logs Integero PayPal and approves the payment. Typically, this is a secure page (<a href="https://.../">https://...</a>) on your site.</td></tr><tr><td><code>PaymentDetails.PaymentMethod.PayPalExpress.CancelURL</code></td><td><strong>String</strong><br>The cancel URL is the page on your website to which PayPal redirects your buyer's browser if the buyer does not approve the payment. Typically, this is the secure page (<a href="https://.../">https://...</a>) on your site from which you redirected the buyer to PayPal.</td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails</code></td><td><strong>Object</strong><br>Details below. </td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.Amount</code></td><td><p><strong>Float</strong><br>The total costs customers incur.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.Currency</code></td><td><p><strong>String</strong><br>The currency ISO code of the order - ISO 4217.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.PaymentReference</code></td><td><p><strong>String</strong><br>Transaction identifier.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.RoutingNumber</code></td><td><p><strong>String</strong><br>Identification number assigned to financial institutions.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.BankAccounts</code></td><td><strong>Optional (array of objects)</strong><br>Details below. </td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.BankAccounts.Beneficiary</code></td><td><p><strong>String</strong><br>The beneficiary of the payment.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.BankAccounts.BankName</code></td><td><p><strong>String</strong><br>The name of the beneficiary's bank.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.BankAccounts.BankCountry</code></td><td><p><strong>String</strong><br>The country of the beneficiary's bank.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.BankAccounts.BankCity</code></td><td><p><strong>String</strong><br>The city of the beneficiary's bank.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.BankAccounts.BankAddress</code></td><td><p><strong>String</strong><br>The address of the beneficiary's bank.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.BankAccounts.BankAccount</code></td><td><p><strong>String</strong><br>The number for the account in which customers transfer the funds.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.BankAccounts.BankAccountIban</code></td><td><p><strong>String</strong><br>The IBAN of the beneficiary's bank.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.BankAccounts.BankAccountSwiftCode</code></td><td><p><strong>String</strong><br>The Swift Code of the beneficiary's bank.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.PaymentMethod.WirePaymentDetails.BankAccounts.Currency</code></td><td><p><strong>String</strong><br>The currency ISO code for the bank account - ISO 4217.</p><p>Can be NULL.</p></td></tr><tr><td><code>PaymentDetails.CustomerIP</code></td><td><strong>String</strong><br>Shopper IP.</td></tr><tr><td><code>CustomerDetails</code></td><td><p><strong>Object</strong></p><p>2Checkout populates the parameters of the customer entity with information from the customer whose AvangateCustomerReference or ExternalCustomerReference you send during the purchase.<br>Details below. </p></td></tr><tr><td><code>CustomerDetails.AvangateCustomerReference</code></td><td><strong>Integer</strong><br>System-generated 2Checkout customer reference. Aggregate subscriptions under the same Customer account if the products they're associated to are purchased by the same shopper by adding the <strong>AV_CUSTOMERID</strong> (case sensitive) parameter to buy links. The 2Checkout system generates default customer numerical (Integer) IDs (AV_CUSTOMERID) automatically for all orders containing products that feature subscriptions.</td></tr><tr><td><code>CustomerDetails.ExternalCustomerReference</code></td><td><strong>String</strong><br>The external customer reference you control. Aggregate subscriptions under the same Customer account if the products they're associated to are purchased by the same shopper by adding the <code>CUSTOMERID</code> <strong>(case sensitive) parameter</strong> to buy links.</td></tr><tr><td><code>CustomerDetails.FirstName</code></td><td><strong>String</strong><br>Customer's first name. </td></tr><tr><td><code>CustomerDetails.LastName</code></td><td><strong>String</strong><br>Customer's last name.</td></tr><tr><td><code>CustomerDetails.CountryCode</code></td><td><strong>String</strong><br>Customer's country code (ISO 3166 two-letter code).</td></tr><tr><td><code>CustomerDetails.State</code></td><td><strong>String</strong><br>Customer's state. For example, "Alabama","Alaska","Arizona".</td></tr><tr><td><code>CustomerDetails.City</code></td><td><strong>String</strong><br>Customer's city.</td></tr><tr><td><code>CustomerDetails.Address1</code></td><td><strong>String</strong><br>Customer's address.</td></tr><tr><td><code>CustomerDetails.Address2</code></td><td><strong>String</strong><br>Customer's address.</td></tr><tr><td><code>CustomerDetails.Zip</code></td><td><strong>String</strong><br>Zip code.</td></tr><tr><td><code>CustomerDetails.Email</code></td><td><strong>String</strong><br>Customer's email.</td></tr><tr><td><code>CustomerDetails.Phone</code></td><td><strong>String</strong><br>Customer's phone number.</td></tr><tr><td><code>CustomerDetails.Company</code></td><td><strong>String</strong><br>Company name.</td></tr><tr><td><code>CustomerDetails.FiscalCode</code></td><td><p><strong>String</strong><br>For companies, it needs to be the VAT ID. 2Checkout validates this values and throws an error if the VAT ID is invalid/incorrect. When present, you need to also provide Company name.</p><p>Can be null for end users.</p></td></tr><tr><td><code>CustomerDetails.Fax</code></td><td><strong>String</strong><br>Customer's fax number.</td></tr><tr><td><code>CustomerDetails.Enabled</code></td><td><strong>Boolean</strong><br><strong>True</strong> of <strong>false</strong>, depending on whether the customer account is active or inactive. An active customer account features at least one <strong>Active</strong> or <strong>Past due</strong> subscription.</td></tr><tr><td><code>CustomerDetails.Trial</code></td><td><strong>Boolean</strong><br><strong>True</strong> of <strong>false</strong>, depending on whether the customer account features only trials or also paid subscriptions.</td></tr><tr><td><code>CustomerDetails.Language</code></td><td><strong>String</strong><br>ISO 639-1 two-letter code. Example: “en.”</td></tr><tr><td><code>CustomerDetails.ExistingCards</code></td><td><strong>Optional (array of objects)</strong><br>Details below. </td></tr><tr><td><code>CustomerDetails.ExistingCards.TransientToken</code></td><td><strong>Object</strong><br>Populated only when you retrieve <strong>customer information</strong> by SSOToken.</td></tr><tr><td><code>CustomerDetails.ExistingCards.TransientToken.Token</code></td><td><strong>String</strong><br>Token for the EXISTING_PAYMENT_DATA flow. Use it to charge customers using cards they used in the past for purchases from your 2Checkout account.</td></tr><tr><td><code>CustomerDetails.ExistingCards.CardType</code></td><td><strong>String</strong><br>visa, visaelectron, mastercard, maestro, amex, discover, dankort, cartebleue, jcb, hipercard, elo</td></tr><tr><td><code>CustomerDetails.ExistingCards.LastDigits</code></td><td><strong>String</strong><br>Last four digits of the credit card.</td></tr><tr><td><code>CustomerDetails.ExistingCards.ExpirationMonth</code></td><td><strong>String</strong><br>Card expiration month.</td></tr><tr><td><code>CustomerDetails.ExistingCards.ExpirationYear</code></td><td><strong>String</strong><br>Card expiration year.</td></tr><tr><td><code>CustomerDetails.ExistingCards.NameOnCard</code></td><td><strong>String</strong><br>Card holder name.</td></tr><tr><td><code>Origin</code></td><td><p><strong>String</strong></p><p>2Checkout automatically tracks the source of purchases:</p><ul><li><strong>Web</strong> – When customers use the desktop version of the 2Checkout shopping cart.</li><li><strong>API</strong> - When customers use a custom, API-based ordering Integererface.</li><li><strong>Mobile</strong> - When customers use the mobile version of the 2Checkout shopping cart.</li><li><strong>Automatic Billing</strong> – For auto-renewals and trial conversions</li></ul></td></tr><tr><td><code>AvangateCommission</code></td><td><strong>Integer</strong><br>2Checkout's commission for the order.</td></tr><tr><td><code>OrderFlow</code></td><td><p><strong>String</strong><br><strong>PURCHASE_ORDER</strong> - Sent only when shoppers used Purchase Orders.</p><p><strong>REGULAR</strong> - Sent in all other cases.</p></td></tr><tr><td><code>GiftDetails</code></td><td><strong>Object</strong><br>Contains contact details for the recipient of a gift purchase.</td></tr><tr><td><code>GiftDetails.FirstName</code></td><td><strong>String</strong><br>First name of gift recipient.</td></tr><tr><td><code>GiftDetails.LastName</code></td><td><strong>String</strong><br>Last name of gift recipient.</td></tr><tr><td><code>GiftDetails.Email</code></td><td><strong>String</strong><br>Email of gift recipient. 2Checkout uses this email for the delivery/fulfillment process.</td></tr><tr><td><code>GiftDetails.GiftNote</code></td><td><strong>String</strong><br>Custom text shoppers provide as a message to the gift recipient.</td></tr><tr><td><code>PODetails</code></td><td><strong>Object (optional)</strong><br>Details below. </td></tr><tr><td><code>PODetails.Status</code></td><td><p><strong>String</strong><br>PO status. Possible values:</p><ul><li>AWAITING_UPLOAD - <strong>Awaiting form submission</strong> - Waiting for the customer to submit the PO form</li><li>TIME_EXPIRED - <strong>Expired, form not received</strong> - The customer did not submit the PO form</li><li>AWAITING_MERCHANT - <strong>Awaiting your confirmation</strong> - PO approved by 2Checkout, awaiting vendor confirmation</li><li>MERCHANT_TIME_EXPIRED - <strong>Expired, PO not confirmed</strong> - You didn't confirm/reject the PO</li><li>AWAITING_MERCHANT - <strong>Rejected</strong> - You rejected the PO</li><li>AWAITING_PAYMENT - <strong>Awaiting payment</strong> - You approved the PO, waiting for payment</li><li>AWAITING_PAYMENT - <strong>Expired, not paid</strong> - The customer did not complete the PO payment. 2Checkout accepts  payments up to 30 days after the PO payment Integererval expires</li><li>NOT_PAID - <strong>Canceled, not paid</strong> - The customer did not complete the PO payment</li><li>NOT_PAID - <strong>Canceled by 2Checkout</strong> - 2Checkout canceled the PO</li><li>NOT_PAID - <strong>Canceled via API</strong> - You canceled the PO (via API)</li><li>PAID - <strong>Complete</strong> - Customer paid the PO. The order is complete </li></ul></td></tr><tr><td><code>PODetails.AutoApprove</code></td><td><strong>Boolean</strong><br><strong>True</strong> of <strong>false</strong>, depending on whether you set POs to auto-approve or not.</td></tr><tr><td><code>PODetails.RequireDocumentUpload</code></td><td><strong>Boolean</strong><br><strong>True</strong> of <strong>false</strong>, depending on whether require document upload or not.</td></tr><tr><td><code>PODetails.NetPaymentTerms</code></td><td><strong>Integer</strong><br>The term of net payment in days.</td></tr><tr><td><code>PODetails.CopyPreviousDocuments</code></td><td><strong>Boolean</strong><br><strong>True</strong> of <strong>false</strong>, depending on whether copy documents from previous order or not.</td></tr><tr><td><code>PODetails.PdfFormUrl</code></td><td><strong>String</strong><br>URL of Purchase Order form which needs to be printed, signed and uploaded.</td></tr><tr><td><code>ExtraInformation</code></td><td><strong>Object</strong><br>Details below. </td></tr><tr><td><code>ExtraInformation.PaymentLink</code></td><td><p><strong>String</strong><br>Can be:</p><p>1. The PO doc upload link - If you set AutoApprove as FALSE on the original order and before shoppers upload the PO. </p><p>2. Payment link for orders with POs. Business customers can use the PaymentLink to finalize payment for orders with POs. If you set AutoApprove as TRUE on the original order and if 2Checkout and you approve the PO. </p></td></tr><tr><td><code>PartnerCode</code></td><td><strong>String</strong><br>Partner code you configured for your partner. NULL for eStore orders.</td></tr><tr><td><code>PartnerMargin</code></td><td><strong>Float</strong><br>Partner margin you set for the order. NULL for eStore orders.</td></tr><tr><td><code>PartnerMarginPercent</code></td><td><strong>Float</strong><br>The percentage of the partner margin from the net value of the products ordered, minus the value of any discounts. NULL for eStore orders.</td></tr><tr><td><code>ExtraMargin</code></td><td><strong>Float</strong><br>Extra margin you offer by editing partner orders. NULL for eStore orders.</td></tr><tr><td><code>ExtraMarginPercent</code></td><td><strong>Float</strong><br>The percentage of the extra partner margin from the net value of the products ordered, minus the partner margin and the value of any discounts. NULL for eStore orders.</td></tr><tr><td><code>ExtraDiscount</code></td><td><strong>Float</strong><br>Extra discount you offer by editing partner orders. NULL for eStore orders.</td></tr><tr><td><code>ExtraDiscountPercent</code></td><td><strong>Float</strong><br>The percentage of the partner margin from the net value of the products ordered, minus the value of any coupon discounts. NULL for eStore orders.</td></tr><tr><td><code>LocalTime</code></td><td><p><strong>String</strong><br>Local shopper time in the following format: Y-m-d H:i:s.</p><p>This parameter can impact the fraud score of an order when it's missing, NULL or incorrectly formatted.</p></td></tr><tr><td><code>TestOrder</code></td><td><strong>Boolean</strong><br>True for test orders. False of regular orders.</td></tr><tr><td><code>Errors</code></td><td><strong>Array of strings</strong><br>Payment gateway processing errors.</td></tr><tr><td><code>Items</code></td><td><strong>Array of objects</strong><br>Details below. </td></tr><tr><td><code>Items.ProductDetails</code></td><td><strong>Object</strong></td></tr><tr><td><code>Items.ProductDetails.Name</code></td><td><strong>String</strong><br>Product name.</td></tr><tr><td><code>Items.ProductDetails.ExtraInfo</code></td><td><strong>String</strong><br>The text entered in the <strong>Additional information</strong> field when generating Buy links, or via the <strong>INFO[PRODUCT_ID]</strong> parameter used in <strong>Buy links</strong>.</td></tr><tr><td><code>Items.ProductDetails.RenewalStatus</code></td><td><p><strong>Boolean</strong></p><ul><li><strong>true</strong> for orders renewing subscriptions.</li><li><strong>false</strong> for all other orders: new purchases, upgrades.</li></ul></td></tr><tr><td><code>Items.ProductDetails.Subscriptions</code></td><td><strong>Object</strong></td></tr><tr><td><code>Items.ProductDetails.Subscriptions.SubscriptionReference</code></td><td><strong>String</strong><br>Unique, system-generated subscription identifier.</td></tr><tr><td><code>Items.ProductDetails.Subscriptions.PurchaseDate</code></td><td><p><strong>String</strong><br>The date time stamp when shoppers acquired their subscriptions corresponding to the moment when the 2Checkout system marks the purchase as finished. Format (YYYY-MM-DD HH:mm:ss). Default GMT+02:00.</p><p> </p><p>e.g. 2015-08-11 15:18:52</p></td></tr><tr><td><code>Items.ProductDetails.Subscriptions.SubscriptionStartDate</code></td><td><p><strong>String</strong></p><p>Example: 2015-09-29 17:57:59</p></td></tr><tr><td><code>Items.ProductDetails.Subscriptions.ExpirationDate</code></td><td><p><strong>String</strong><br>The date time stamp of upcoming renewal/expiration for subscriptions not taking Integero account grace period settings.</p><p>Format (YYYY-MM-DD HH:mm:ss). Default GMT+02:00.</p><p>e.g. 2015-09-11 15:18:52</p></td></tr><tr><td><code>Items.ProductDetails.Subscriptions.Lifetime</code></td><td><p><strong>Boolean</strong></p><ul><li><strong>true</strong> – For non-recurring, evergreen subscriptions.</li><li><strong>false</strong> – For recurring subscriptions with a specific billing cycle from 7 days to 36 months.</li></ul></td></tr><tr><td><code>Items.ProductDetails.Subscriptions.Trial</code></td><td><p><strong>Boolean</strong></p><ul><li><strong>true</strong> – For trial subscriptions.</li><li><strong>false</strong> – For non-trial, recurring subscriptions with a specific billing cycle from 7 days to 36 months.</li></ul></td></tr><tr><td><code>Items.ProductDetails.Subscriptions.Enabled</code></td><td><p><strong>Boolean</strong></p><ul><li><strong>true</strong> – For <strong>active</strong> and <strong>past due</strong> subscriptions.</li><li><strong>false</strong> – For expired and cancelled subscriptions.</li></ul></td></tr><tr><td><code>Items.ProductDetails.Subscriptions.RecurringEnabled</code></td><td><p><strong>Boolean</strong></p><ul><li><strong>true</strong> – For subscriptions with active recurring options</li><li><strong>false</strong> – For subscriptions without recurring options.</li></ul></td></tr><tr><td><code>Items.ProductDetails.Tangible</code></td><td><p><strong>Boolean</strong></p><ul><li><strong>true</strong> – For products with physical delivery.</li><li><strong>false</strong> – For products that don't require physical delivery.</li></ul></td></tr><tr><td><code>Items.ProductDetails.IsDynamic</code></td><td><p><strong>Boolean</strong></p><ul><li><strong>true</strong> – For products created with dynamic information.</li><li><strong>false</strong> – For catalog products.</li></ul></td></tr><tr><td><code>Items.ProductDetails.ShortDescription</code></td><td><strong>String</strong><br>Short product description</td></tr><tr><td><code>Items.ProductDetails.DeliveryInformation</code></td><td><strong>Object</strong><br>Details below.</td></tr><tr><td><code>Items.ProductDetails.DeliveryInformation.Delivery</code></td><td><strong>String</strong><br>Delivery information.</td></tr><tr><td><code>Items.ProductDetails.DeliveryInformation.DownloadFile</code></td><td><strong>Object</strong><br>Information related to the download file.</td></tr><tr><td><code>Items.ProductDetails.DeliveryInformation.DeliveryDescription</code></td><td><strong>String</strong><br>Delivery description.</td></tr><tr><td><code>Items.ProductDetails.DeliveryInformation.CodesDescription</code></td><td><strong>String</strong><br>Description of the codes delivered.</td></tr><tr><td><code>Items.ProductDetails.DeliveryInformation.Codes</code></td><td><strong>Array</strong><br>Array with the codes delivered.</td></tr><tr><td><code>Items.PriceOptions</code></td><td><strong>Array of objects</strong><br>Array of price option groups.</td></tr><tr><td><code>Items.PriceOptions.Code</code></td><td><strong>String</strong><br>Pricing option code. </td></tr><tr><td><code>Items.PriceOptions.Name</code></td><td><strong>String</strong><br>Pricing option name.</td></tr><tr><td><code>Items.PriceOptions.Required</code></td><td><p><strong>Boolean</strong></p><p>Possible values:</p><ul><li>true, if the pricing option is mandatory </li><li>false, if the pricing option is optional</li></ul></td></tr><tr><td><code>Items.PriceOptions.Options</code></td><td><strong>Optional (array of objects)</strong><br>Array of pricing options.</td></tr><tr><td><code>Items.PriceOptions.Options.Name</code></td><td><strong>String</strong><br>Pricing option name.</td></tr><tr><td><code>Items.PriceOptions.Options.Value</code></td><td><strong>String</strong><br>Pricing option code.</td></tr><tr><td><code>Items.PriceOptions.Options.Surcharge</code></td><td><strong>Float</strong><br>Surcharge of the pricing option. For renewal orders, the renewal price includes the pricing option surcharge from the initial order.</td></tr><tr><td><code>Items.Price</code></td><td><p><strong>Object</strong><br>This object returns the price per unit at order line level.</p><p>In the case of trials, the object returns the costs for the trial to full subscription conversion.</p></td></tr><tr><td><code>Items.Price.UnitNetPrice</code></td><td><strong>Float</strong><br>The value per product unit, excluding sales tax/VAT expressed in the payment currency.</td></tr><tr><td><code>Items.Price.UnitGrossPrice</code></td><td><strong>Float</strong><br>Total value per product unit, including sales tax/VAT expressed in the payment currency. <code>UnitGrossPrice</code> does not reflect any discounts.</td></tr><tr><td><code>Items.Price.UnitVAT</code></td><td><strong>Float</strong><br>Sales tax/VAT per product unit expressed in the payment currency.</td></tr><tr><td><code>Items.Price.UnitDiscount</code></td><td><strong>Float</strong><br>Value of the discount per product unit expressed in the payment currency.</td></tr><tr><td><code>Items.Price.UnitNetDiscountedPrice</code></td><td><strong>Float</strong><br>The value per product unit, expressed in the payment currency, excluding sales tax/VAT, from which 2Checkout deducts the unit discount.</td></tr><tr><td><code>Items.Price.UnitGrossDiscountedPrice</code></td><td><strong>Float</strong><br>Total costs shoppers incur per product unit<strong>,</strong> expressed in the payment currency<strong>.</strong> This value includes sales tax/VAT, 2Checkout and affiliate commissions, but 2Checkout deducts the value of any discounts.</td></tr><tr><td><code>Items.Price.UnitAffiliateCommission</code></td><td><p><strong>Float</strong><br>Value of the affiliate commission per product unit calculated expressed in the payment currency.</p><p>2Checkout deducts discounts from the costs incurred by shoppers before calculating affiliate commissions.</p><p>2Checkout does not take Integero account shipping costs when calculating affiliate commissions.</p><p>NULL when 2Checkout does not apply an affiliate commission.</p></td></tr><tr><td><code>Items.Price.Currency</code></td><td><strong>String</strong><br>The currency ISO code for the payment - ISO 4217. Example: usd.</td></tr><tr><td><code>Items.Price.NetPrice</code></td><td><strong>Float</strong><br>The value per order line, excluding sales tax/VAT expressed in the payment currency.</td></tr><tr><td><code>Items.Price.GrossPrice</code></td><td><strong>Float</strong><br>Total value per order line, including sales tax/VAT expressed in the payment currency. <code>UnitGrossPrice</code> does not reflect any discounts.</td></tr><tr><td><code>Items.Price.NetDiscountedPrice</code></td><td><strong>Float</strong><br>The <code>NetPrice</code> value per order line (in the payment currency), excluding sales tax/VAT, from which 2Checkout deducts discounts.</td></tr><tr><td><code>Items.Price.GrossDiscountedPrice</code></td><td><p><strong>Float</strong></p><p>Total costs shoppers incur per order line<strong>,</strong> expressed in the payment currency<strong>.</strong> This value includes sales tax/VAT, 2Checkout and affiliate commissions, but 2Checkout deducts the value of any discounts.</p><p>Example:</p><ul><li>UnitNetPrice: 99</li><li>UnitGrossPrice: 120.39</li><li>UnitVAT: 21.39</li><li>UnitDiscount: 9.9</li><li>UnitNetDiscountedPrice: 89.1</li><li>UnitGrossDiscountedPrice: 110.49</li><li>UnitAffiliateCommission: 22.28</li><li>Currency: "usd"</li><li>NetPrice: 198</li><li>GrossPrice: 240.77</li><li>NetDiscountedPrice: 178.2</li><li>GrossDiscountedPrice: 220.97</li><li>Discount: 19.8</li><li>VAT: 42.77</li><li>AffiliateCommission: 44.56</li></ul></td></tr><tr><td><code>Items.Price.Discount</code></td><td><strong>Float</strong><br>Value of the discounts per order line expressed in the payment currency.</td></tr><tr><td><code>Items.Price.VAT</code></td><td><strong>Float</strong><br>Value of sales tax/VAT per order line expressed in the payment currency.</td></tr><tr><td><code>Items.Price.AffiliateCommission</code></td><td><strong>Float</strong><br>Value of the affiliate commission per order line, calculated from the <code>NetDiscountedPrice</code> expressed in the payment currency. Or NULL. 2Checkout does not take Integero account shipping costs when calculating affiliate commissions.</td></tr><tr><td><code>Items.Price.VATPercent</code></td><td><strong>Integer</strong><br>Percentage of the VAT/tax applied on purchase.</td></tr><tr><td><code>Items.Price.HandlingFeeNetPrice</code></td><td><strong>Integer</strong><br>Handling fee applied to your NET price configuration.</td></tr><tr><td><code>Items.Price.HandlingFeeGrossPrice</code></td><td><strong>Integer</strong><br>Handling fee applied to your GROSS price configuration.</td></tr><tr><td> <code>Items.Quantity</code></td><td><strong>Integer</strong><br>Number of units</td></tr><tr><td><code>Items.SKU</code></td><td><strong>String</strong><br>SKU identifier.</td></tr><tr><td><code>Items.LineItemReference</code></td><td><strong>String</strong><br>System generated reference for the line item.</td></tr><tr><td><code>Items.PurchaseType</code></td><td><p><strong>String</strong></p><p>Purchase type for orders placed with dynamic information. Possible values:</p><ul><li>PRODUCT</li><li>TAX</li><li>COUPON</li><li>SHIPPING</li></ul></td></tr><tr><td><code>Items.ExternalReference</code></td><td><strong>String</strong><br>External order reference.</td></tr><tr><td><code>Items.SubscriptionStartDate</code></td><td><strong>String</strong><br>Set subscription starting date. </td></tr><tr><td><code>Items.CrossSell</code></td><td><strong>Object</strong><br>Details below. </td></tr><tr><td><code>Items.CrossSell.ParentCode</code></td><td><strong>String</strong><br>The product code of the master product you set to trigger the campaign.</td></tr><tr><td><code>Items.CrossSell.CampaignCode</code></td><td><strong>String</strong><br>Unique, system-generated identifier for cross-sell campaigns.</td></tr><tr><td><code>Items.Trial</code></td><td><strong>Object</strong><br>Details below. </td></tr><tr><td><code>Items.Trial.Period</code></td><td><strong>Integer</strong><br>The length of the trial subscription lifetime in days.</td></tr><tr><td><code>Items.Trial.GrossPrice</code></td><td><strong>Float</strong><br>Total trial price in the payment currency before 2Checkout deducts any taxes, discounts, etc.</td></tr><tr><td><code>Items.Trial.VAT</code></td><td><strong>Float</strong><br>The total value of taxes for the trial in the payment currency, before 2Checkout deducts any discounts.</td></tr><tr><td><code>Items.Trial.NetPrice</code></td><td><strong>Float</strong><br>Total trial price in the payment currency, not including taxes, before 2Checkout deducts any discounts.</td></tr><tr><td><code>Items.AdditionalFields</code></td><td><strong>Optional (array of objects)</strong><br>Details below. </td></tr><tr><td><code>Items.Code</code></td><td><strong>String</strong><br>The alpha-numeric characters, underscores and dashes that are set as the field identifier.</td></tr><tr><td><code>Items.Text</code></td><td><strong>String</strong><br>Field text visible to shoppers in the cart.</td></tr><tr><td><code>Items.Value</code></td><td><strong>String</strong><br>Selected field value.</td></tr><tr><td><code>Items.Promotion</code></td><td><strong>Object</strong><br>Details below. </td></tr><tr><td><code>Items.Promotion.Name</code></td><td><strong>String</strong><br>Promotion name.</td></tr><tr><td><code>Items.Promotion.Description</code></td><td><strong>String</strong><br>Promotion description.</td></tr><tr><td><code>Items.Promotion.StartDate</code></td><td><strong>String</strong><br>The date when you set the promotion to start. NULL for promotions that start immediately after you create them.</td></tr><tr><td><code>Items.Promotion.EndDate</code></td><td><strong>String</strong><br>The date when you set the promotion to end. NULL for promotions you want active indefinitely.</td></tr><tr><td><code>Items.Promotion.MaximumOrdersNumber</code></td><td><p><strong>Integer</strong><br>2Checkout only applies the promotion to a maximum number of orders you define.</p><p>Can be NULL if you want the promotion to apply to an unlimited number of orders.</p></td></tr><tr><td><code>Items.Promotion.MaximumQuantity</code></td><td><strong>Integer</strong><br>Discount only applies to a maximum number of units purchased through a single order, smaller than the quantity you defined. Shoppers purchase any extra units at full price. Can be NULL if you want the promotion to apply to an unlimited number units.</td></tr><tr><td><code>Items.Promotion.InstantDiscount</code></td><td><strong>Boolean</strong><br>The instant discount option auto-applies the discount for ALL selected products, without the need for shoppers to enter a discount coupon.</td></tr><tr><td><code>Items.Promotion.Coupon</code></td><td><strong>String</strong><br>Promotion coupon/voucher.</td></tr><tr><td><code>Items.Promotion.DiscountLabel</code></td><td><strong>String</strong><br>Discounts can be set as a percentage from the product price or as a fixed amount in the chosen currency.</td></tr><tr><td><code>Items.Promotion.Enabled</code></td><td><strong>String</strong><br><strong>true</strong> or <strong>false</strong>, depending on whether a promotion is active or disabled. </td></tr><tr><td><code>Items.Promotion.Type</code></td><td><p><strong>String</strong></p><ul><li>REGULAR – product/cart line level discounts.</li><li>ORDER – quantity discounts.</li><li>GLOBAL – order-level discounts.</li><li>AFFILIATE – for discounts created by affiliates.</li></ul></td></tr><tr><td><code>Promotions</code></td><td><strong>Array of objects</strong><br>Details below. </td></tr><tr><td><code>Promotions.Name</code></td><td><strong>String</strong><br>Promotion name.</td></tr><tr><td><code>Promotions.Description</code></td><td><strong>String</strong><br>Promotion description.</td></tr><tr><td><code>Promotions.StartDate</code></td><td><strong>String</strong><br>The date when you set the promotion to start. NULL for promotions that start immediately after you create them.</td></tr><tr><td><code>Promotions.EndDate</code></td><td><strong>String</strong><br>The date when you set the promotion to end. NULL for promotions you want active indefinitely.</td></tr><tr><td><code>Promotions.MaximumOrdersNumber</code></td><td><p><strong>Integer</strong><br>2Checkout only applies the promotion to a maximum number of orders you define.</p><p>Can be NULL if you want the promotion to apply to an unlimited number of orders.</p></td></tr><tr><td><code>Promotions.MaximumQuantity</code></td><td><strong>Integer</strong><br>Discount only applies to a specific number of units purchased at once, smaller than the maximum quantity you defined. Shoppers purchase any extra units at full price. Can be NULL if you want the promotion to apply to an unlimited number units.</td></tr><tr><td><code>Promotions.InstantDiscount</code></td><td><strong>Boolean</strong><br>The instant discount option auto-applies the discount for ALL selected products, without the need for shoppers to enter a discount coupon.</td></tr><tr><td><code>Promotions.Coupon</code></td><td><strong>String</strong><br>Promotion coupon/voucher.</td></tr><tr><td><code>Promotions.DiscountLabel</code></td><td><strong>String</strong><br>Discounts can be set as a percentage from the product price or as a fixed amount in the payment currency.</td></tr><tr><td><code>Promotions.Enabled</code></td><td><strong>String</strong><br><strong>True</strong> or <strong>false</strong>, depending on whether a promotion is active or disabled. </td></tr><tr><td><code>Promotions.Type</code></td><td><p><strong>String</strong></p><ul><li>REGULAR – product/cart line level discounts.</li><li>ORDER – quantity discounts.</li><li>GLOBAL – order-level discounts.</li><li>AFFILIATE – for discounts created by affiliates.</li></ul></td></tr><tr><td><code>AdditionalFields</code></td><td><strong>Array of objects</strong><br>Details below. </td></tr><tr><td><code>AdditionalFields.Code</code></td><td><strong>String</strong><br>The alpha-numeric characters, underscores and dashes that are set as the field identifier.</td></tr><tr><td><code>AdditionalFields.Text</code></td><td><strong>String</strong><br>Field text visible to shoppers in the cart.</td></tr><tr><td><code>AdditionalFields.Value</code></td><td><strong>String</strong><br>Selected field value.</td></tr><tr><td><code>Currency</code></td><td><strong>String</strong><br>The currency ISO code for the payment - ISO 4217. Example: usd.</td></tr><tr><td><code>NetPrice</code></td><td><strong>Float</strong><br>Order value excluding sales tax/VAT expressed in the payment currency.</td></tr><tr><td><code>GrossPrice</code></td><td><strong>Float</strong><br>Total order value, including sales tax/VAT expressed in the payment currency. <code>GrossPrice</code> does not reflect any discounts.</td></tr><tr><td><code>NetDiscountedPrice</code></td><td><strong>Float</strong><br>The <code>NetPrice</code> order value excluding sales tax/VAT, from which 2Checkout deducts discounts. <code>NetDiscountedPrice</code> is expressed in the payment currency.</td></tr><tr><td><code>GrossDiscountedPrice</code></td><td><p><strong>Float</strong></p><p>Total costs shoppers incur<strong>,</strong> expressed in the payment currency<strong>.</strong> This value includes sales tax/VAT, 2Checkout and affiliate commissions, but 2Checkout deducts the value of any discounts.</p><p>For example:</p><ul><li>Currency: "usd"</li><li>NetPrice: 396</li><li>GrossPrice: 486.29</li><li>NetDiscountedPrice: 376.2</li><li>GrossDiscountedPrice: 466.49</li><li>Discount: 19.8</li><li>VAT: 90.29</li><li>AffiliateCommission: 94.05</li></ul></td></tr><tr><td><code>Discount</code></td><td><strong>Float</strong><br>Value of the discounts for an order expressed in the payment currency.</td></tr><tr><td><code>VAT</code></td><td><strong>Float</strong><br>Value of sales tax/VAT expressed in the payment currency.</td></tr><tr><td><code>AffiliateCommission</code></td><td><strong>Float</strong><br>Value of the affiliate commission for the order calculated from the <code>NetDiscountedPrice</code> expressed in the payment currency. Or NULL. 2Checkout does not take Integero account shipping costs when calculating affiliate commissions.</td></tr><tr><td><code>MerchantCode</code></td><td><strong>String</strong><br>Merchant account code. Can be found in Control Panel, System Settings.</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.2checkout.com/soap-api-reference/soap-api-6.0/api-responses/order-with-dynamic-products.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
