Skip to main content

Import subscriptions and credit card data

Import subscriptions and credit card data

Last updated: 20-Feb-2025
Rate this article:

Overview

Migrate your subscription and customer credit card data from your or a third-party system and store it securely in the 2Checkout vault.

Availability

2Checkout Enterprise Edition accounts.

Contact 2Checkout Support directly to inquire about subscription and card migration costs.

Requirements

  • PCI compliance. All entities involved in the process of migrating sensitive card information need to be PCI compliant. 2Checkout enjoys a Level 1 PCI DSS certification. Before moving forward with any data migration you need to contact 2Checkout Support directly for compliance.
  • Data format. Read below for details of the PGP-encrypted CSV file structure.
  • Valid import data. Filter data to migrate only active subscriptions and customers into the 2Checkout platform.
  • Pre-migration checklist. Match all requirements on the pre-migration checklist.

Filter import data

To minimize the risk and rate of refunds/chargebacks, filter the import data, and communicate your customers to only migrate those who are aware that 2Checkout will process future recurring charges or manual payments.

Pre-migration checklist

eStore

  • Configure the products for which you’re importing subscriptions using the 2Checkout Merchant Control Panel. Match the 2Checkout Product ID of configured items with the product ID of subscriptions you’re importing via the CSV file, or the import process will fail. Also, make sure the renewal settings are correctly configured for each product.
  • Build a valid CSV file using the structure guidance described below, and include all mandatory fields.

Partner channel subscriptions

  • On top of the requirements above, also configure partner details in the 2Checkout Control Panel and use their unique partner ID when importing new subscriptions.
  • Merchants can see partner information at the subscription level so that they can identify this information for imported subscriptions as well.

Data format and structure

To import:

  • Package the data as CSV (comma-separated values) file.
  • Include the mandatory items described below on the header line and populate values where information is also required.
When importing subscriptions, you should keep in mind that the processing capacity of the browser supports about 2500  lines in the csv file, and anything more than this threshold might result in failure. Thus, we recommend that you import batches lower than 2500 lines.
Field name Type Required Can be empty? Description
LicenseUniqueId String (max length 250 chars) Yes Yes Your unique identifier for the subscription. You can use the LicenseUniqueId to map identifiers in your own system with subscription IDs in 2Checkout. 
LicenceCode String No Yes System-generated 2Checkout unique subscription reference.
Can be empty only if you supplied the LicenseUniqueId.

When first importing subscriptions into the 2Checkout system, LicenceCode is not required.
AvangateIdProduct Numeric Yes No Must match the product ID of an item configured in the 2Checkout platform.
PurchaseDate Datetime Yes No Subscription purchase date. Format: yyyy-mm-dd hh:mm:ss. Default time zone is GMT +2.
ExpirationDate Datetime Yes No Subscription expiration date. Format: yyyy-mm-dd hh:mm:ss. Default time zone is GMT +2. 
ProductName String (max length 155 chars) Yes No The product name.
Quantity Numeric Yes No 2Checkout renews subscriptions using this number of units.
FirstName String (max length 40 characters) Yes No End-user first name.
LastName String (max length 40 characters) Yes No End-user last name.
Email String (max length 80 characters) Yes No End-user email. 2Checkout uses it to send out email notifications.
IdPartner String No No The unique ID of the partner. This field is required and cannot be empty when importing Partner channel subscriptions.
Language String Yes Yes ISO 639-1 two-letter code. 2Checkout sends out notifications in the language you assign to the subscription. Supported languages available are the ones activated for your account. When not provided, the default value is: en.
ProductVersion String (max length 50 characters) Yes Yes Subscription product version.
ProductExtra String (max length 100 characters) Yes Yes Product additional information. See sales links for details.
Company String (max length 50 characters) Yes Yes Business customer company name.
Phone String (max length 40 characters) Yes Yes End-user phone.
Fax String (max length 40 characters) Yes Yes End-user fax.
Address1 String (max length 100 characters) Yes No End-user address.
Address2 String (max length 100 characters) Yes Yes End-user address (additional).
Zip String (max length 20 characters) Yes No End-user zip code. Required when the provided CountryCode is "US".
City String (max length 30 characters) Yes No End-user city.
State String (max length 30 characters) Yes No End-user state. Required when the provided CountryCode is “US”.
CountryCode String (max length 2 characters) Yes No Two-letter customer ISO country code.
ProductOptions String (max length 255 characters) Yes Yes Product options codes separated by "//". When specified, the product options codes must match pricing options of existing pricing configurations.
ActivationCode String (max length 255 characters) Yes Yes The delivered activation code for the product. Activation codes have to be unique.
ExternalCustomerId String (max length 255 characters) No No The identifier for same customer using one or more subscriptions. Cannot be empty if you include the header in the file.
RenewalPriceListCode String Yes No Use this parameter to attach a specific price list to an imported subscription.
The 2Checkout system uses the price list to calculate the costs for the renewal process of the subscription.
You need to assign the price list to the partner defined using IdPartner and also assign the product set using AvangateIdProduct to the price list using the RenewalPriceListCode specified.
2Checkout validates the fact that IdPartner, RenewalPriceListCode and 2CheckoutIdProduct are linked.
If you do not attach a price list to a subscription, 2Checkout uses the first pricing list assigned to the partner that also contains the product with which the subscription is associated.
CardNumber Numeric No No Format: Do not use spaces, dashes, etc. For example, enter 4111111111111111 for this credit card number: 4111 1111 1111 1111.
Add the CardNumber field to the CSV file when importing credit / debit card data along with subscriptions. Placement of the CardNumber field in the CSV file does not impact the importing process. When no credit card numbers are provided, the 2Checkout system still imports the subscription, but without payment data. Only 2Checkout can import CSVs containing card data.
Cannot be empty if you include the CardNumber header in the file.
CardExpirationDate Numeric (max length 4 chars) No No Format: MMYY. For example, enter 0414 for April 2014.
Add the CardExpirationDate field to the CSV file when importing credit / debit card data along with subscriptions. Placement of the CardExpirationDate field in the CSV file does not impact the importing process. When no credit card numbers are provided, the 2Checkout system still imports the subscription, but without payment data. Only 2Checkout can import CSVs containing card data.
Cannot be empty if you include the CardExpirationDate header in the file.
Value Numeric No No Subscription value. The total costs incurred by the customer through the lifecycle of the subscription before you imported the subscription into the 2Checkout system.
When you provide it you must also set ValueCurrency.
2Checkout uses this information to calculate the subscription value and total customer value.
2Checkout converts values into your account’s default settlement currency using the exchange rate at the time of the import, unless ValueCurrency is the same as the default settlement currency.
FiscalCode String No Yes Business registration number (VAT ID/ ABN/ IRD/ GST)
Test Numeric No Yes Available only for eStore subscriptions. Use 1 to import a test subscription. Exclude the parameter or set the value to 0 to import regular subscriptions. Test subscriptions enable you to try out flows like manual and auto-renewal, and upgrade. Check out the documentation for additional details.
ValueCurrency String (max length 3 chars) No No The currency associated to the subscription value. Mandatory when you also set the Value.
AdditionalInfo String (max length 255 chars) No No Extra information that you can attach to a subscription, such as the source of the initial purchase.
NextRenewalPrice Numeric No No The future costs that subscribers would incur when renewing subscriptions. Accompany it with NextRenewalPriceCurrency and CustomPriceBillingCyclesLeft.
NextRenewalPriceCurrency String (max length 3 chars) No No The currency associated with the subscription next renewal price value. Mandatory when you provide NextRenewalPrice.
CustomPriceBillingCyclesLeft Numeric No No The number of billing cycles for which 2Checkout uses a custom renewal price you set up. Mandatory when you also provide NextRenewalPrice.
SubscriptionStartDate Datetime No No Subscription start date. Format: yyyy-mm-dd hh:mm:ss. Default time zone is GMT + 2.
IdAffiliate Numeric No Yes

Unique affiliate identifier from the 2Checkout platform. Use the ID to commission a specific 2Checkout Network affiliate for subscription renewal charges. Possible values:

  • 0 – Removes the affiliate attached to a subscription. This causes 2Checkout to stop commissioning the affiliate for renewal charges.
  • 12345 – Assigns the subscription to the affiliates having the ID 12345.

When this column is missing or its corresponding values are empty, 2Checkout does not change the affiliates attached to the subscriptions.

LastPurchasePrice Numeric No Yes Last purchase price (The amount paid by customer on last order placed for an existing subscription).
Note: When provided, it must be accompanied by LastPurchasePriceCurrency.
LastPurchasePriceCurrency String No Yes Last purchase price currency.
Note: Mandatory when LastPurchasePrice is provided.
LastRenewalPurchaseDate String No Yes Last purchase date.
 
For custom imports, contact 2Checkout.

Card data validation

The 2Checkout system handles syntax validation of card type, number, and expiration date. 2Checkout does not pre-authorize the cards during the import process. You cannot import credit/debit card info for non-recurring (lifetime) subscriptions.

Workflow

  1. Contact 2Checkout Support with a request to start the migration process and follow through the compliance assessment process.
  2. Either create or have the third-party you’re working with build the subscription data CSV file.
  3. Upload the file to a designated SFTP account provided by 2Checkout.

PGP encryption

You must encrypt all transfer of sensitive payment data, including when working with 2Checkout to import card information. Use the following PGP public key:

-----BEGIN PGP PUBLIC KEY BLOCK-----

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
=Y5Ea
-----END PGP PUBLIC KEY BLOCK-----
Rate this article:

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