Skip to main content

Retrieve price matrix for product

Overview

Use the GetPriceMatrix API call to retrieve details that are used to add or update a special price promotion.

Request parameters

Paremeters Type Required Description
sessionID String Required The unique identifier of the session.
PriceMatrixRequest Array of Objects Required Contains details that are used to add or update a special price promotion.

PriceMatrixRequestObject

Object Required  

ProductCode

String Required Product code for the price matrix.

PricingConfigurationCode

String Required Pricing configuration code for the price matrix, must be related to the product.

Response

Parameters Type Description
PriceMatrix Array of Objects Only for this type of promotion. It is generated by getPriceMatrix and used to set promotion special prices.
ProductCode String Product code for the price matrix.
PricingConfigurationCode String Pricing configuration code for the price matrix, must be related to the product.
OptionHash String Unique identifier of one combination of price configuration options.
Options Array of objects Describes price configuration options identified by OptionHash.

GroupName

String  

OptionText

String  
Prices Array of Objects Promotion prices by currency, price for default currency is required.

Value

Int Decimal.

Currency

String ISO currency code.

Request sample 

<?php

require('PATH_TO_AUTH');


$priceMatrixRequestObject1 = new stdClass;
$priceMatrixRequestObject1->productCode = "474FF7C0FD"
$priceMatrixRequestObject1->pricingConfigurationCode = "514EE48419"

$requestBody = [
    $priceMatrixRequestObject1
]

try {
    $priceMatrix = $client->addPromotion($sessionID, $requestBody);
} catch (SoapFault $e) {
    echo "NewPromotion: " . $e->getMessage();
    exit;
}

var_dump("Promotion", $priceMatrix);

A/B testing campaigns for promotions

Overview

Set up A/B testing campaigns for your promotions to identify what type of discount is more efficient.

Requirements & limitations

  1. You can test up to five promotions in one experiment.
  2. You can only select pairs of promotions that have at least one common product.
  3. Promotions applied through the COUPON parameter directly into the URL are not taken into account in the A/B test. "Auto-apply" promotions, however, are taken into account. Nonetheless, promotions with the “Auto-apply” function will not appear in the A/B testing available promotions drop-down.
  4. Only regular promotions are available for use in A/B testing campaigns.

Important

When the shopper places the order, the test is considered successful regardless of the order or payment status.

Setup

  1. Go to the Promotions page and define the promotions that you want to test. Choose between percentage-based discounts and fixed discounts.
  2. Navigate to the A/B Testing page and click the Campaigns tab.
  3. Scroll until you find the Promotions section and click Edit Campaign on an inactive campaign.
  4. Fill in the details of the new campaign, such as the campaign name, maximum number of tests and the date when the campaign should end.
  5. Create a new scenario by selecting a promotion from the drop-down menu and assigning the percentage of traffic you want to go through it. You can choose between existing promotions and assign them as A/B testing campaign variants. You can also test specific promotions against using no promotion at all by checking the No promotion option.
  6. Click Add Scenario.
  7. Repeat steps 5 and 6 until you have used the entire available traffic.
  8. Click Save campaign.
  9. Go back to the Campaigns tab and click the Start Campaign button when you want the campaign to begin.

Where can I see what promotions are used in my A/B tests?

When you open a promotion's configuration page, a notification informs you if the promotion is being used in an A/B test at that moment.

Product files manager

Overview

2Checkout supports automated delivery your digital product files to shoppers immediately after successfully placing an order. The files are stored on 2Checkout's secure, high bandwidth servers and scanned for malware before being available to your shoppers. You can assign multiple product files to one product in the download page, in case your delivery requires separate installation files. If your product has support for multiple operating systems: Windows, MAC OSX, etc, your shoppers can receive and download the product files for all supported versions.

Availability

All 2Checkout accounts.

Requirements

  1. Upload file size is limited. For larger files please contact 2Checkout.
  2. Total storage size is limited based on the type of your 2Checkout account. Contact 2Checkout for more details.
  3. Download URLs are limited in time and number of tries, to avoid the risk of stolen or resold codes.

Workflow

  1. Go to Setup -> Fulfillment-> Product files.
  2. Choose a file to upload and give it a display name.
  3. Add a description for the product file, that will be displayed in the download product page. HTML tags are allowed.
  4. Optionally, give the file a version.
  5. Click Add file.

    Upload files and your shoppers get the option to download a fully registered version of your digital products immediately after successfully placing an order.
    2Checkout sends shoppers emails including download links for the purchased products and they can instantly download these from our servers.

    Security

    Once the file is uploaded, 2Checkout scans it for malware. You can see the scan status of the file in the Scan status column:

    • Clean - Product file is clean and is being delivered to shoppers.
    • In progress - Product file is being uploaded and scanned. During a file update process, old files are still available to shoppers.
    • Under review - Product file is being reviewed by 2Checkout. During this process, old files are still available to shoppers.
    • Malicious - Product file was marked as malicious and is not being delivered to shoppers. If this status is a result of a file update, the last clean version is still available to your shoppers.

    Update files

    If you have a new version of a file that already exists, click Edit and follow instructions on screen to make the latest version available to your shoppers. This assumes that the key codes of the old version will still work with the new application.

    Shoppers purchasing the Download Insurance Service always receive the latest available files. To keep multiple file versions available, add a new file with a different file version.

    Assign new products

    Assign a file to products from the Assign new products section in the edit file page. You can assign one file to multiple products by selecting the products available from the list to which the file should be assigned. Click here to learn how to assign multiple files to a single product.

    When you assign a file to a new product, you need to select the delivery services for which the product file will be available. Keep in mind that the availability setup you choose impacts and overwrites your product fulfillment configurations. Check your product setup to make sure that the files you assigned have the desired download, Backup Media, Download Insurance Service and partner availability setup.

    Requirements

    You can assign files only to products with delivery type set to Fulfillment made through 2Checkout.

    Assigned products

    In the Assigned products section from the edit file page you can see the products to which each file is assigned.

    The products are listed together with the delivery services available: download link, Backup Media, download insurance service (DIS), and partner (channel manager). Go to Product > Fulfillment in case you want to edit the file availability for delivery services, as changes are not allowed from the product edit page.

      Advanced pricing options

      Overview

      Use pricing options to define complex pricing models for your products, adding cost components for each option or combination of options your shoppers can purchase. The capabilities at your disposal make it easy for you to easily adapt products or subscriptions to customer and market needs. 

      You can configure pricing options and control: 

      • Billing cycles
      • Number of users or seats
      • Product type (basic, professional, etc.)
      • Support versions
      • Usage and overage options
      • And more

      Availability

      All 2Checkout accounts.

      Requirements

      Create at least a product/subscription plan before defining pricing.

      Impact

      Depending on your configuration, you can have a pricing option or a collection of pricing options that impact a single product/subscription plat or multiple products/subscription plans. 

      Type

      The type controls the mechanism of displaying pricing options to shoppers in the cart.

      1. Radio - single selection from a list of options. 
      2. Dropdown - single selection from a dropdown with options.
      3. Checkbox - multi-selection using checkboxes. 
      4. Scale - used for overage pricing.
      5. Pay per usage - metered billing. 

      Currency

      All currencies are mandatory when configuring pricing options. By default, the price is zero (0) and you need to change this value for all currencies available for your account. 2Checkout does not convert prices for product options automatically, you're required to specify each one manually. 

      Set up pricing options

      Navigate to the Pricing tab for any product/subscription plan you created, included those you're setting up for the first time. Scroll down to the bottom of the pricing details page, to the Pricing options groups area.

      • For Dynamic pricing (with base price) - set option costs at the level of each pricing options group.
      • For Static pricing (without base price) - set costs globally at the intersection of each possible option.

      Radio, Checkbox, Dropdown pricing options 

      1. Click Create new pricing options groups.
      2. Enter the Group name (Required) - This label is displayed to shoppers in the cart and is included on invoices. 
      3. Enter the Group description (Optional) - This text is displayed to shoppers in the cart and is included on invoices. 
      4. Select the type: 
      • Radio
      • Checkbox
      • Dropdown 
      1. Enter a unique code (Required) - this is an identifier used in the 2Checkout API, product import/export, and for Buy Links query parameters.
      2. Add the first option.
      3. Enter the Option name (Required)
      4. Enter the Option description (Optional)
      5. Enter a unique code (Required) - this is an identifier displayed in the cart, included on invoices and for Buy Links query parameters.
      6. Define impact on the price per unit (available only for products with dynamic pricing (with base price) configurations).
      • Add to
        • Base price - Price impact can be either a fixed amount or a percentage.
        • Calculated sum - Price impact can be either a percentage.
      • Subtract from 
        • Base price - Price impact can be either a percentage.
        • Calculated sum
      1. Define impact on subscription lifecycle
      • Adds - Add the desired number of months to the default billing cycle interval of a subscription. Adding one month to a monthly subscription purchased on April 22nd pushes the expiration/renewal deadline to June 22nd. 
      • Subtracts - Subtract the desired number of months to the default billing cycle interval of a subscription. Subtracting 12 months from a 2-year subscription purchased on April 22nd, 2016, pushed the expiration/renewal deadline to April 22nd, 2017 instead of April 22nd, 2018. 
      • Non-recurring - Increase the lifetime of a subscription indefinitely at the moment of purchase, making it evergreen. 

      Regular & Pay per use Scale pricing options

      Metered billing is available only for Dynamic pricing (with base price) configurations.

      1. Click Create new pricing options groups.
      2. Enter the Group name (Required) - This label is displayed to shoppers in the cart and is included on invoices. 
      3. Enter the Group description (Optional) - This text is displayed to shoppers in the cart and is included on invoices. 
      4. Select the type: 
      • Scale - for tiered charges
      • Pay per use - for metered billing
      1. Enter a unique code (Required) - this is an identifier used in the 2Checkout API, product import/export, and for Buy Links query parameters.
      2. Add the first scale or tier.
      3. Specify the interval.
      4. Define impact on the price per unit of tiered/metered resources (available only for products with dynamic pricing (with base price) configurations).
      • Add - add a specific cost for each unit of tiered/metered resource. 
      • Subtract - subtract a specific price for each unit of tiered/metered resource.
      1. Define impact on subscription lifecycle
      • Adds - Add the desired number of months to the default billing cycle interval of a subscription. Adding one month to a monthly subscription purchased on April 22nd pushes the expiration/renewal deadline to June 22nd. 
      • Subtracts - Subtract the desired number of months to the default billing cycle interval of a subscription. Subtracting 12 months from a 2-year subscription purchased on April 22nd, 2016, pushed the expiration/renewal deadline to April 22nd, 2017 instead of April 22nd, 2018. 
      • Non-recurring - Increase the lifetime of a subscription indefinitely at the moment of purchase, making it evergreen. 

      Unique codes 

      The 2Checkout system automatically assigns unique identifiers/codes to all pricing option groups you create. The unique IDs enable you to create multiple pricing option groups with the same details, including, name, description, options, and pricing details and still manage them as standalone entities while having the 2Checkout system easily differentiate between them.

      Multi-language pricing options

      The 2Checkout system supports localization with Multi-language pricing options capabilities. Tailor pricing options and pricing options groups to specific markets in accordance with the languages activated for your account. Details including Group name and description as well as Option name and description, can all be unique in accordance with different languages. It's mandatory to at least set up Group name and description as well as Option name and description in English. When different languages are selected, the details will be adapted if you configured them. If not, the 2Checkout cart defaults to English.

      Mark a pricing options group as required

      You first need to configure a pre-selected option for a pricing options group. Then, when you check the Required option for a product:

      • You require shoppers landing on the product page to choose one of the pricing options configured in the group to continue to checkout.
      • 2Checkout takes into account the pre-selected option you set for all shoppers landing in the checkout, using the setup to calculate the price of the product. 

      Custom, per-product pricing configuration groups

      The 2Checkout platform enables you to customize pricing configuration groups per product. This means that a pricing configuration group associated with multiple products can feature custom values that impact only a single item. This functionality can be accessed by navigating to the Pricing tab, selecting the desired pricing configuration, scrolling down to the bottom of the screen, and clicking on the name of the item that you want to be customized from the list of active pricing options groups.

      Check the checkbox next to the Use with different impact on price option, and define custom pricing that impacts just the product you're editing.

      Hide pricing option groups

      To improve account maintenance and product configuration management, 2Checkout allows you to hide one or multiple pricing configuration options to avoid frequent issues, caused by events such as:

      • Human errors
      • Product upload errors
      • Outdated product portfolio
      • Outdated custom 2Checkout developments

      Important: You can only assign visible product pricing configurations to your products.

      Filter pricing options

      Follow the steps below to filter the existing pricing options on your account.

      1. Go to Setup -> Products.
      2. Click Edit on the product containing the pricing options that you want to view
      3. Go to the Pricing tab.
      4. Click Edit on the pricing configuration that you want to view.
      5. Use the Display filter to choose the pricing option groups that you want to view. You can view:
        • Visible items
        • Hidden items
        • All items

      Hide/show pricing options

      Follow the steps below to hide or display specific pricing option groups.

      1. Go to Setup -> Products.
      2. Click Edit on the product containing the pricing options that you want to view
      3. Go to the Pricing tab.
      4. Click Edit on the pricing configuration that you want to view.
      5. Use the checkboxes to select the pricing option groups that you want to hide.
      6. Click Hide selected.
        • To unhide hidden pricing option groups, follow the same steps, and click Unhide selected.

      Important: Pricing options visibility is product-specific. If Product A and Product B both have Pricing Option X assigned to them, hiding Pricing Option X from Product A does not hide it from Product B as well.

      FAQ

      1. Can I delete a pricing options group?
        • This functionality is not available at this point in time. You can deactivate pricing group options at the product/subscription plan level, and they will no longer impact the price of that specific item. Alternatively, edit unused, irrelevant or obsolete pricing group options by changing parameters including Group name, Group description, and options type, to obtain completely new options.
      2. Can I modify pricing options?
        • All pricing options you created are available in the Pricing options groups area under the Pricing tab for all of your products. You can always select the Group name/label in order to access an overview of the options, and click on edit to alter the values as needed.
      3. Can the same pricing options group be applied to different products?
        • Keep in mind that the settings are global, so if you edit them for one product, they will automatically impact all others that they're associated with.
      4. Can I use multiple pricing options groups for the same product?
        • Products sold through 2Checkout support multiple pricing variations simultaneously, such as volume discounts and pricing options.

      Shipping in API

      Overview

      Use the API methods displayed above to create orders for physical products.

      Search the shipping methods defined in your Control Panel, and extract information on how the shipping price is calculated.

       

      Search price option groups

      Overview

      Use the searchPriceOptionGroups to extract information on the price option groups you configured.

      Parameters

      Parameters Type/Description

      sessionID

      Required (string)

       

      Session identifier, the output of the Login method. Include sessionID into all your requests. 2Checkout throws an exception if the values are incorrect. The sessionID expires in 10 minutes.

      PriceOptionGroupSearch

      Optional (object)

       

      Details below.

      PriceOptionGroupSearch

      Object

      Name

      Optional (string)

       

      The name of the pricing options groups configured in the 2Checkout system.

      Can be NULL.

      Types

      Optional (array)

       

      Possible values:

      · RADIO

      · CHECKBOX

      · INTERVAL

      · COMBO

      Can be NULL.

      Limit

      Optional (int)

       

      Number of results displayed per page. Default maximum value is 10.

      Can be NULL.

      Page

      Optional (int)

       

      A specific page of search results. Default value is 1.

      Can be NULL.

      Response

      Parameters Type/Description

      PriceOptionGroup

      Array of objects

      Request

      <?php
      
      require ('PATH_TO_AUTH');
      
      $SearchOptions = new \stdClass();
      //$searchObject->Name = 'optionGroupA';
      $SearchOptions->Types = ["RADIO"];
      $SearchOptions->Pagination = new stdClass();
      $SearchOptions->Pagination->Page = 1;
      $SearchOptions->Pagination->Limit = 200;
      
      $jsonRpcRequest = new stdClass();
      $jsonRpcRequest->jsonrpc = '2.0';
      $jsonRpcRequest->method = 'searchPriceOptionGroups';
      $jsonRpcRequest->params = array($sessionID, $SearchOptions);
      $jsonRpcRequest->id = $i++;
      
      $searchProducts = callRPC($jsonRpcRequest, $host);
      
      ?>
      

      Retrieve partner pricing lists

      Overview

      Get information about all the pricing lists available to a specific partner and which can be used for a new purchase.

      Requirements

      Parameters

      Parameter Type/Description
      sessionID String (Int)
        Session identifier, which is the output of the Login method. An exception will be thrown if the values are incorrect

      Response

      Parameter Type/Description
      SimplePricingList Array of Objects
        An array of pricing list objects with the structure described below.

      Request

      <?php
      
      require('PATH_TO_AUTH'); // Authentication example: https://knowledgecenter.avangate.com/Integration/Channel_Manager_API/SOAP/02Authentication
      require('PATH_TO_setPartner'); // setPartner example: https://knowledgecenter.avangate.com/Integration/Channel_Manager_API/SOAP/06Reference/Partner/00Set_partner
      
      try {
          $PartnerPricingLists= $client->getPartnerPricingLists ($sessionID);
      } catch (SoapFault $e) {
          echo "PricingLists: " . $e->getMessage();
          exit;
      }
      var_dump ("PricingLists", $PartnerPricingLists);
      

      Errors

      Error Description

      INVALID_PARTNER

      No partner is set

      PARTNER_PRICING_LISTS_NOT_FOUND

      There are no pricing lists with provided code.

       

      Payment Services Directive 2 (PSD2)

      Overview

      In 2007, against the backdrop of a continuously growing eCommerce market, the European Commission (EC) and the European Banking Authority (EBA) concluded that it was time consumers were offered a wider choice of secure payment services. Thus, the two regulatory bodies encouraged the rise of non-bank financial institutions that could provide the digital market with faster payment options, but at the same time increasing consumer protection and transaction transparency. This is how the first Payment Services Directive (PSD) came into being.

      In 2015, in an eCommerce market dominated by increasing mobile usage and internet payments, the EC decided to review and adjust the PSD to the current digital context, adding necessary improvements to ensure customer security. As a result, PSD2 came into effect on January 13th, 2018 bringing clear changes and significant enhancements to the payment industry regulations.

       

      Payment Services Directive 2 (PSD2)

      What is PSD2 bringing new?

      With an initial start on January 13th, 2018, the Payment Services Directive 2 (PSD2) has taken effect in the entire European Union in the local legislation. Although not all areas are in effect yet, PSD2’s biggest relevant changes for the European online sellers are related to:

      • Security of payments done by European Union shoppers through mandatory Strong Consumer Authentication component (SCA)
      • Access to an account (XS2A) for account information and payment initiation services –allowing bank customers to give access to third-party providers to retrieve data and initiate payments directly from banks accounts
      • Recurring transactions treatment

      PSD2 Requirements

      The PSD2 requirements are based on three pillars:

      • Pillar 1 addresses transparency in terms of pricing, extended customer rights, and stricter reporting standards for banks. It applies to transactions where at least one party (one Leg out) is in the European Economic Area (EEA).
      • Pillar 2 concerns security, including requirements for strong customer authentication (SCA). This impacts all parties involved in the eCommerce flow.
      • Pillar 3 sets out the technological requirements by which banks must allow Payment Institutes to use their infrastructure to access account data and initiate payments on behalf of customers. 

      Compliance with PSD2 is to be implemented in two stages: Pillar 1 (transparency) became effective on January 13th, 2018, while Pillars 2 and 3 must come into force on September 14th, 2019.

      Strong Customer Authentication (SCA)

      To prevent ever-evolving fraud methods, starting September 14th, 2019, Payment Service Providers (PSPs), such as 2Checkout, must apply extra security steps to implement SCA and further protect the confidentiality of consumers’ data.

      SCA increases the smoothness and the security of the transaction, therefore increasing the trust level of the merchant and the consumer bank who will be more willing to authorize and to complete the consumer's purchase because they trust the security of the transaction.
      The implementation of SCA will be based on a 3-layer authentication method, out of which at least two layers will be mandatory for customers:

      • knowledge (something the customer knows, like a password or PIN),
      • possession (something the customer has, such as a smartphone, application, token) and
      • inherence (something the customer is – fingerprint or face recognition).

      For card-based payments, this resulted in the implementation of 3D Secure version 2 (3DS2 or EMV 3DS). 3D Secure has been employed to secure online card transactions since 2001, but now a new version has been developed to meet the PSD2 SCA requirements. Basically, to be able to accept payments from the world’s largest card networks (Visa, Mastercard, Amex,etc.), any merchant will need to have implemented 3D Secure version 2 for their online store. The initial start will be mainly EU-based merchants and their clients. Outside the EU, the current implementation pace of the 3D Secure 2 is considered slow and less dominant.
      3D Secure 2 is an evolutionary step from its predecessor and allows the card issuer (bank) to use a wider range of data-points from the transaction to run a risk-based analysis. For low-risk transactions and low-value (< 30 EUR), the card issuer will not send an authentication request to the cardholder, although authenticating the transaction. However, for all other customer-initiated transactions, the cardholder will be required to authenticate with an SMS/APP or other biometric means.
      3D Secure 2 will be mobile-friendly unlike its previous version, so it will display a responsive design easily adjustable to any mobile device and will also bring improvements in terms of UX.
      SCA applies also to alternative payment methods, but it’s important to note that many e-wallets, or other mobile payment services, already have SCA implemented, as these services already use multiple-step authentication.

      What is the 3D Secure version 2 flow?

      Unlike 3D Secure version 1, 3D Secure version 2 makes it easier for banks to offer innovative authentication experiences through their mobile banking applications. Instead of entering a password or just receiving a text message on their mobile phone, the cardholder can authenticate a payment through the banking application by simply using their fingerprint or even facial recognition.

      The second improvement in user experience is that 3D Secure 2 is designed to embed the challenge flow directly within the web and mobile checkout flows, without requiring full page redirects.

      3DS 2.0 flow.png

      3D Secure version 2 is the technical solution to comply with the SCA regulations. 2Checkout will support two types of flows:

      • Frictionless flow – if the issuing bank considers the transaction to be secure, shoppers don't have to authenticate themselves, hence no friction in the payment process,
      • Challenge flow – if the issuing bank requires more proof to authenticate a transaction, it can request additional information from the customer like a password that the cardholder will need to provide via an SMS or a generated token from a mobile device and fill it into the issuer webpage, just as it happens now with the current version of the 3D Secure. 

      Transactions that require Strong Consumer Authentication (SCA)

      SCA will be required for all customer-initiated online transactions (CIT) within Europe, which means most payment options (contactless payments included) and bank transfers are performed with SCA. In the case of online payments, SCA will apply to transactions where both the business and the cardholder’s banks are located within the European Economic Area (EEA).

      The 3D Secure version 2 protocol itself will allow payment providers like 2Checkout to request exemptions from SCA and skip authentication for low-risk payments. Payments that require SCA will need to go through the ‘challenge’ flow, whereas transactions that can be exempted from SCA can be sent through the ‘frictionless’ flow.

      An online seller cannot apply for these exemptions themselves, but a payment provider can apply on their behalf.

      SCA Exemptions

      The SCA exemptions mentioned below refer only to online transactions (eCommerce), but it’s good to remember that there are other offline transactions that are impacted by SCA which, however, will not be mentioned here. Merchant-initiated transactions (MIT), such as recurring billing will not require SCA, with some exceptions. Read the list below to find out the SCA exemptions that apply to online commerce transactions:

      Use cases Exemption criteria
      Recurring transactions – renewals that do not change the price or recurrence No need for SCA if no details of the recurring transaction are changed. However, any changes in transaction details (new card, new name, new address, different price, different recurrence) will require SCA.
      Merchant-initiated transactions (MIT) Merchant-initiated transactions (MIT) exemptions fall within the PSD2, if they fulfill all the following conditions:
      • MIT's for periodic payments where the first payment is an SCA-based payment
      • When there is a pre-existing mandated agreement in place (including CoF* transactions initiated by the merchant)
      • A dynamic ID linking is made between initial CIT and the subsequent MIT's
      Low-value transactions (< €30) The amount of the electronic payment transaction must be less than €30.
      For low-value transactions (<30 euro) with recurring payments, the first transaction is subject to SCA. The follow-up transactions are limited to either a maximum number of 5 transactions (max 150 euro in total) with equal value (maximum €30 each transaction) or a maximum of €100 (per the highest transaction)  for several transactions that can differ in amount. This should be agreed beforehand with the PSP.
      Low-risk transactions PSPs are exempt from SCA when a transaction risk analysis (TRA) is provided, which means that the amount of online card transactions is lower than the exemption threshold value (ETV) corresponding to the PSP reference fraud rate. These thresholds are set at a very low level and we do not expect 2Checkout to be able to comply with these.
      An online card transaction is considered low-risk when it meets the all following criteria in combination with the risk analysis:
      • No abnormal spending behavior from the payer
      • No unusual information about the payer’s device
      • No malware detected during the authentication process
      • No fraud attempts identified during payment
      • No abnormal location for the payer
      • The location of the payee (business) must NOT be high-risk (OFAC countries especially)
      Checking payment account information Viewing the balance or payment transactions made in the last 90 days through one or more designated accounts.
      Paying trusted beneficiaries Payment made by the payer towards a payee included in a white list of trusted beneficiaries previously confirmed by the payer through their ASPSP (bank). It’s not expected that this will become generally available as of September 2019.
      Transactions outside the EEA SCA regulations apply to all online payments within the EEA where both legs of the transaction (i.e. the beneficiary and the cardholder) are within the EEA. One-leg transactions (where either the beneficiary or the cardholder are outside the EEA) are not included.
      *Note: Card-on-File (CoF) transactions are transactions where the card number is not obtained from the cardholder. Instead, this data is either obtained from a file stored by a merchant, or from a token obtained through the Payment Gateway.

      Impact for merchants

      • Increased security for transactions, limiting the fraud cases and also decrease of chargebacks
      • Customer experience will be affected as the SCA will introduce new steps in the checkout and might affect conversion rates, therefore merchants need to have communication and choose the best flows for their shopper to avoid disruption as much as possible. Online sellers, 2Checkout as well, will attempt to use SCA as little as possible, but it won’t be possible to avoid it completely. The exemption has to be sought from and granted by the shopper’s issuing bank, who remains the ultimate arbiter on this.
      • UX for mobile checkout experience will be improved, as 3D Secure version 2 is focused on mobile and tablet, which was an issue with the current version, thus it will increase conversion rates from mobile visitors
      • Competitive prices as a result of market openness and the fact that banks will share their data to be used by third parties

      Impact for shoppers

      • Safer and more secure payments, limiting the fraud cases
      • Lengthier checkout flow due to the two mandatory authentication layers for customers
      • Lower prices for payments/banking and non-banking services due to increased market competitiveness on longer-term

      How we help our merchants

      2Checkout payment solutions are constantly optimized and updated to follow the latest bank and card network regulations and will apply relevant exemptions for low-risk payments to only trigger authentication when required. We have designed our SCA-ready payment solutions to let you take advantage of exemptions when possible and help protect your conversion.

      We are upgrading our checkout pages and our payment APIs that support strong customer authentication, in a way that is designed to keep changes for merchants at a minimum and minimize the impact of SCA on your checkout conversion.

      Recommendations for online merchants

      • Multiple models flexibility and having intelligent payment routing with a multitude of processors with SCA support helps merchants worry less about the conversions/authorization rates impact as we can test user experience impact by routing the transactions to different flows treating exceptions of SCA and/or combination of authentication factors implementations
      • Having access to alternative payment methods that were already built-in with SCA traits will give additional choice to buyers without disrupting their flow – i.e. iDeal, Bancontact, SEPA Payments, mobile wallets
      • Having analytics, customization and advanced ordering engine/eCommerce will empower merchants to understand and reduce friction with proper communication or different flows (i.e. retry pages, change of payment method, abandons recovery, dunning, etc). We see this as an upgrade of technologies in the financial ecosystem and immediate impact on Card, not Present transactions is a growth of omnichannel with focus on mobile but also increased subscriptions volumes given the transparency of the renewal process (if different pricing or recurring interval subscriber is informed and asked to authenticate).

       

      Convert a trial

      Overview

      Use the convertTrial method to convert a trial to a paid subscription. In the eventuality of a conversion failure, you can use convertTrial again for the same trial subscription only after you let 24 hours pass since the initial attempt. The 2Checkout system attempts to automatically convert trials before they expire to full subscriptions unless you made an attempt that failed less than 24 hours before the scheduled expiration deadline.

      In case the trial conversion fails due to a transaction issue, the 2Checkout system sends unfinished payment follow-up emails to customers, provided that you set up lead management for your account.

      Parameters

      Parameters Type/Description

      SubscriptionReference

      Required (string)

       

      Unique, system-generated subscription identifier of the trial that you convert to a paid subscription. The unique identifier from the 2Checkout system:

      • Must belong to an active trial subscription with the recurring billing system (auto-renewal) enabled.
      • The initial order placed to access the trial subscription must be finalized (status Finished).

      Note: This method does not work for canceled and/or expired trial subscriptions.

       

      2Checkout charges customers using the payment data attached to the trial subscription. In the case of credit/debit cards, if customers update their payment information in myAccount or if you update these details on behalf of your subscribers, the 2Checkout system uses the latest card info provided to charge subscription renewals.

      ExtendSubscriptionFromPaymentDate

      Optional (boolean)

       

      true = Set the moment of the conversion as the start date of the full subscription. 

      Example: A 7-day trial purchased on October 29 for a monthly subscription converted on October 30 with $ExtendSubscriptionFromPaymentDate = true; features the following Billing cycle expiration: Nov 30, 2013, and 2Checkout scraps the initial trial expiration date November 5.

       

      false = Set initial trial expiration deadline as the full subscription start date. 

      Example: A 10-day trial purchased on October 29 for a monthly subscription converted on October 30 with $ExtendSubscriptionFromPaymentDate = false; features the following Billing cycle expiration: December 9, with the first month period of the subscription added to the trial lifetime stretching until November 8.

       

      Can be NULL. If not set, the default value is false.

      Response

      Parameters Type/Description

      Boolean

      true or false depending on whether the changes were successful or not.

      Request

      
      <?php
      
      require ('PATH_TO_AUTH'); 
       
      $SubscriptionReference = 'BF44555C6C';
      
      $ExtendSubscriptionFromPaymentDate = true; //false can also be used if you want the subscription start date to be the moment when the trial was set to initially expire.
      
      try {
          $convertedTrial = $client->convertTrial($sessionID, $SubscriptionReference, $ExtendSubscriptionFromPaymentDate);
      }
      catch (SoapFault $e) {
          echo "convertedTrial: " . $e->getMessage();
          exit;
      }
      var_dump("convertedTrial", $convertedTrial);
      

       

      Need help?

      Do you have a question? If you didn’t find the answer you are looking for in our documentation, you can contact our Support teams for more information. If you have a technical issue or question, please contact us. We are happy to help.

      Not yet a Verifone customer?

      We’ll help you choose the right payment solution for your business, wherever you want to sell, in-person or online. Our team of experts will happily discuss your needs.

      Verifone logo