Skip to main content

Partner order fulfillment

Overview

Take advantage of the rich set of fulfillment options available in the 2Checkout platform when dealing with your partners if your business relies on electronic software distribution (ESD), Software as a Service (SaaS), or both. When configuring your products, you can leverage the same fulfillment options whether you're selling the offerings directly through your web store (via eStore) or to partners (via Channel Manager):

  • Fulfillment made through 2Checkout delivery - You can opt to have 2Checkout deal with all aspects related to the delivery of your products, such as serving binary keys and activation codes to your partners, their end users or both.
  • Fulfillment made by you - You will be solely responsible with providing your partners, their end users or both with the necessary resources to start using purchased products. It's critical that you also confirm order fulfillment in your 2Checkout Control Panel to finalize orders - read fulfillment confirmation for partner orders guidance below. For partner orders, subscriptions are generated when partners place their orders, or when you place orders on behalf of your partners. The option Start subscription after fulfillment only works for products sold through eStore.
  • Fulfillment made immediately after payment confirmation - This option is used in scenarios in which you don't distribute activation keys to customers, but instead offer access to online services or subscriptions-based applications, to name a couple of examples.

Fulfillment status for partner orders

Review the fulfillment status for subscriptions sold to your partners by accessing order details.

Partner orders are not included in the Fulfillment Confirmations area of the Control Panel. To check the fulfillment status of subscriptions purchased by partners follow these steps:

  1. Go to Orders & customers -> Order search.
  2. Select the Partner orders tab.
  3. Search the order for which you'd like to check fulfillment status and click to edit it.
  4. Scroll down to the bottom of the partner order details screen, in the Attach end user information area.
  5. Click on the fields featuring product name and the system will display a table sporting the Fulfillment status column.

Fulfillment status possible values:

  1. Not fulfilled. Fulfillment is blocked due to various reasons including lack of payment/credit, missing reseller / end user details.
  2. Fulfilled. Fulfillment was finalized.
  3. Waiting for fulfillment confirmation. You need to confirm fulfillment.
  4. Fulfillment not required. No fulfillment confirmation is required.
  5. Fulfillment confirmed. Fulfillment has been confirmed.

Fulfillment made through 2Checkout delivery

2Checkout handles deliveries/fulfillments on your behalf, however, there are a number of extra steps that need to be taken in order to advance the order finalization process to this stage. Depending on the partner or partnership program configuration, you or your partner could be required to one or all of the following:

  • Attach end user information;
  • Attach reseller information;
  • Offer a credit limit or pay the partner invoice associated to this order.

Fulfillment made by you

You handle deliveries/fulfillment.

There could be a number of extra steps required to advance the order finalization process to this stage. Depending on the partner or partnership program configuration, you or your partner could be required to one or all of the following:

  • Attach end user information;
  • Attach reseller information;
  • Offer a credit limit or pay the partner invoice associated to this order.

Confirm fulfillment for partner orders

Provided that those steps required of those enumerated above have been dealt with, you still need to confirm delivery/fulfillment to finalize the order. To do so, follow these steps:

  1. Check the checkbox next to the subscription reference with the Waiting for fulfillment confirmation status.
  2. Click the drop down menu for the With selected option and select Confirm fulfillment.
  3. Click the Confirm fulfillment button.

Partner orders are not featured under the Fulfillment confirmations area in the Control Panel. You need to access each partner order details page to view or confirm fulfillment/delivery.

Activate subscription after fulfillment

Subscriptions (purchased outside of the credit flow) can be generated with a start date in the future, matching the date when the order will be paid and fulfilled/delivered to your customer.

  1. Go to Dashboard > Partner management > Partners.

    Partner management

  2. For the needed partner click on Edit, then go to Commercial settings.

    Commercial settings

  3. Scroll down to the Delivery settings section. Select Activate subscription after codes delivery.

    Activate subscription after codes delivery

  4. The subscription activation will happen in 3 circumstances:

    • Automatically, if fulfilment is configured to be automatically done by 2Checkout after the order is confirmed. Only if Email codes to End users setting is enabled.
    • Manually from Merchant Control Panel.
      • Go to Dashboard > Order & customers > Order search > Partner orders.
      • Click on the needed order, select the subscription(s) and choose the Confirm delivery option.

      Confirm delivery

    • Manually from Partner Control Panel.
      • Go to Dashboard > Orders > All orders.
      • View the needed order, select the subscription reference, choose the Activate subscription option and then click once more on Activate subscription.

      Activate subscription

Fulfillment made immediately after payment confirmation

You do not need to confirm fulfillment. The 2Checkout system will finalize this order without requiring fulfillment/delivery confirmation.

There could be a number of extra steps required to advance the order finalization process to this stage. Depending on the partner or partnership program configuration, you or your partner could be required to one or all of the following:

  • Attach end user information;
  • Attach reseller information;
  • Offer a credit limit or pay the partner invoice associated to this order.

Lead management

Overview

2Checkout's lead management is a smart and simple way to reduce customer churn and get useful insights into what drives customers to cancel automatic renewals. Use the Lead object to configure lead management campaigns via SOAP API 6.0 to reduce unfinished payments and cart abandonment.

You can use lead management to:

  • run a report on unfinished payments;
  • send abandoned shopping cart follow-up emails;
  • request invoices.

Charge reminder

Overview

2Checkout acts as a Merchant of Record for your online products and services, therefore we send transaction-related information to shoppers (payment receipt/electronic delivery emails, invoices, etc.).

Furthermore, when checking their financial statement, your shoppers will be able to recognize transactions performed through 2Checkout by a specific identifier that most probably does not resemble the name of the website/company the shopper made the purchase from (e.g., avg8.com*website.com).

To mitigate refund/chargeback risk from shoppers who cannot associate the statement information with the payment they performed, 2Checkout sends them an email to remind of their previous purchase and notify them about the details they would be seeing on their statement.

Availability

Enabled by default if you signed up for a 2Checkout account after September 30, 2016.

We will work with you on the next steps and activation if you signed up for an account prior to September 30, 2016.

Charge Reminder Email Notification

To reduce the risk of refunds/chargebacks, 2Checkout sends out charge reminder notifications to your shoppers, notifying them, post-purchase, about the payment previously performed.

We send out two email notifications after each complete order (except for zero value orders and refunds), as follows:

  • The first notification five days after 2Checkout marks the order as complete
  • The second notification on the 5th of the first month after 2Checkout marks the order as complete

For example, if the order is complete on October 10th, 2016, the first notification will be sent on October 15th, 2016, while the second one will be sent on November 5th, 2016.

The only exception to the rule is when the first notification is sent during the first five days of the month; in this case, the second notification will not be sent, to avoid spam.

For example, if the order is complete on October 30th, 2016, we will only send one notification - on November 4th, 2016. 

Sample

Charge Reminder Sample

Preview and test email

Navigate to the Email template manager section to preview and test the charge reminder notification sent to your shoppers.

If you cannot see the email, it means 2Checkout has not yet activated it for your account.

Subscription history

Overview

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

Retrieve subscription history

Subscription history object

Parameters Type/Description

ReferenceNo

String

 

Unique, system-generated order reference number.

Type

String

 

Purchase type:

  • SALE
  • RENEWAL
  • UPGRADE

SubscriptionReference

String

 

Unique, system-generated subscription reference.

StartDate

String

 

Subscription start date(YYYY-MM-DD) - StartDate is mandatory when importing subscription data. If you changed the time zone for the 2Checkout API by editing system settings under Account settings, then the StartDate you provide must be in accordance with your custom configuration.

ExpirationDate

String

 

Subscription expiration date(YYYY-MM-DD) - ExpirationDate is mandatory when importing subscription data. If you changed the time zone for the 2Checkout API by editing system settings under Account settings, then the ExpirationDate you provide must be in accordance with your custom configuration.

Lifetime

Boolean

 

Possible values:

  • True – the subscription is evergreen

False – the subscription has a recurring billing cycle less than or equal to three years.

SKU

String

 

Stock keeping unit you defined.

DeliveryInfo

Object

 

Object with information about the delivery made to the customer - structure described below

PartnerCode

String

 

Possible values:

  • Empty = ecommerce order
  • Partner Code

Place free partner orders

Overview

In addition to enabling your partners to place free orders (with 0 value), 2Checkout also allows you to place free partner orders for:

  • New acquisitions
  • Renewals
  • Upgrades

Free partner orders can be placed even for those partners that you did not configure a credit limit, or that exceeded their credit limit.

You control the price of products, and ultimately, the costs your partners incur. Products with 0 (zero) value can result from:

  • Configuring a 100% general margin for new acquisitions, renewals and upgrades;
  • Configuring a 100% margin per product/category;
  • Editing placed orders and setting:
    • A 100% discount or entering a value equal to that of the product;
    • A 100% margin, (either 100% extra margin or a 100% default partner margin), or the sum of the two reaching 100% or enter a value equal to that of the product;
    • Forcing the Total Price of the product to be 0;
  • Configuring product pricing for new acquisitions, renewals and upgrades and setting the price to 0.

Free orders placed on behalf of your partners are confirmed automatically regardless of the per-partner order confirmation settings.

Partner invoices are also generated automatically for approved (confirmed) zero value orders you placed for your partners, regardless of the per-partner partner generation settings. When editing non-free partner orders placed, reducing their price to 0 and saving the changes will cause the partner invoices to be generated automatically (such orders need to be confirmed manually if auto-approval is not enabled).

While multiple non-free partner orders can be added to the same partner invoice, the 2Checkout system will automatically issue a standalone partner invoice for each individual free partner order.

Since no payment is required, free orders that have been confirmed will automatically move to the Complete status, giving green light to the delivery process.

If additional details are required, such as end-user information or reseller data, you or your partner will need to first attach the info, and only then will the order be considered Complete and the delivery process start.

Disable subscription for free orders

Placed partner orders with zero value cannot be canceled or refunded.

As a workaround, consider disabling the subscriptions for the orders.

  1. Go to Subscriptions Management.
  2. Run a search to identify the subscription you want to edit.
  3. Click View.
  4. Click Cancel immediately.

3D Secure flow for API orders

Overview

3D Secure is a system designed to increase the security of online transactions using cards by checking customer identities before allowing them to finalize the purchase. 3D Secure works by redirecting your customers to pages provided by their banks, where they need to enter additional security tokens or passwords to trigger the completion of the charge.

By using 3D Secure, you get additional protection from liability for fraudulent card payments, with your customers having to go through an extra layer of authentication.

Introducing Dynamic 3D Secure via API

Starting with 2Checkout API 5.0, your orders placed via API are processed automatically through the Dynamic 3D Secure flow. Dynamic 3D Secure is a mechanism that allows us to evaluate a transaction in real-time based on a range of rule parameters that are able to determine if 3D Secure should be enabled or not.

Based on specific filters set in our backend system, 3D Secure will be enabled or not on a transaction basis in real-time. The list of filters includes:

  • Credit card issuing country
  • Billing country 
  • IP country 
  • Order amount

If one of these filters is not matching with the thresholds set in the 2Checkout system, 3D Secure will be enabled. Otherwise, the transaction is considered to be safe and can go through without 3D Secure.

Availability

Placing orders via API with the 3D Secure flow is available starting with version 5 of 2Checkout's API.

Benefits

Place orders via API starting with version 5, and let Dynamic 3D Secure mechanism bring you the following advantages:

  • Increased authorization rates – we measured and observed that in specific countries the use of 3D Secure could have an overwhelmingly positive impact (United Kingdom, Russia) while in other countries it has a negative impact (United States, China).
  • Mitigated fraud risks – 3D Secure significantly decreased the fraud rate for your incoming orders.
  • Less chargeback – the use of 3D Secure can reduce the number of chargebacks in some cases (e.g. reasons like fraud/not recognized) as customers are not allowed to open a chargeback with their bank.

How it works

For credit card orders placed starting with 2Checkout API 5.0, you need to pass through additional parameters that support the Dynamic 3D Secure flow.

  1. Once the order has been placed with the customer’s billing details, in order to confirm the payment, the shopper needs to be redirected to a 3D Secure confirmation page. 
  2. The URL where the customer needs to be redirected is provided in the API response, in the PaymentMethod object, under the Authorize3DS object. 
  3. Here, the redirect URL needs to be created by taking the Href attribute (the URL of the authorization page) and adding the parameters provided in the Params object. 
  4. The key-value pairs are the parameters that need to be attached to the URL, where the key is the parameter name and the value is its value. 

For example, for the below parameters:

{
"PaymentMethod": {
    "Authorize3DS": {
    "Href": "https://api.avangate.com/5.0/scripts/credit_card/authorize",
    "Method": "GET",
    "Params": {
        "avng8apitoken": "1234567890abcdef",
            }
        }
    }
}    
    

The URL should be constructed as follows: https://api.avangate.com/5.0/scripts...34567890abcdef.

5. Once the shopper confirms the payment, they will be redirected to the URL provided by you in the Vendor3DSReturnURL. If the payment fails due to 3DS (order could not be validated), then the customer will be returned to the URL provided in Vendor3DSCancelURL.

Send the following parameters as part of the PaymentMethod object:

Parameters Description
Vendor3DSReturnURL Required (string)
  URL address to which customers are redirected after the 3DS details get validated by the bank and the order is successfully authorized.
Vendor3DSCancelURL Required (string)
  URL address to which customers are redirected if the 3DS details were not validated or the order could not be authorized.

 

Subscription upgrade

Overview

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

Retrieve upgrade options

Subscription upgrade object

Parameters Type/Description

ProductInfo

Object

               

Details below.

 

ProductId

Int

 

 

Unique, system-generated product identifier belonging to the upgrade product.

 

ProductCode

String

 

 

Unique product identifier that you control belonging to the upgrade product.

 

ProductName

String

 

 

Product name

 

ProductVersion

String

 

 

The product version number that you control.

 

ProductEnabled

Boolean

 

 

Possible values:

0 – You disabled this product.

1 – You enabled this product.

 

ProductType

String

 

 

REGULAR or BUNDLE

 

Currency

String

 

 

The currency for prices. The currency ISO code used for the payment - ISO 4217.

 

DefaultCurrency

String

 

 

The product's default currency which is set in the Control Panel. The currency ISO code to be used for the payment - ISO 4217.

 

Price

Double

 

 

Product price. Can be null for flat pricing schemes. You need to call getPrice with Quantity, Currency and Price Options parameters to get a valid price.

 

GiftOption

String

 

 

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

 

IdGroup

Int

 

 

Product Group ID number.

 

GroupName

String

 

 

The name of the Product Group.

 

ShortDescription

String

 

 

The product's short description.

 

ProductImage

String

 

 

URLs to the product images uploaded into the Avangate platform.

 

Languages

Array of strings

 

 

Array of ISO language codes for the product - ISO 639-1.

 

PriceIntervals

Array of objects

 

 

Pricing intervals.

 

PriceType

String

 

 

NET or GROSS

 

PriceSchema

String

 

 

FLAT or DYNAMIC

Quantity

Int

 

Number of units available for the upgrade order.

PriceOptions

Array of objects

 

Details below.

 

Id

String

 

 

Pricing options ID.

 

Name

String

 

 

Pricing options group name.

 

Description

String

 

 

The description of the Pricing options group

 

Required

Boolean

 

 

True or False depending on whether you set the Pricing options group asrequired or not.

 

Type

String

 

 

Pricing options group type:

  • COMBO
  • CHECKBOX
  • RADIO

INTERVAL

 

Options

Array of objects

 

 

Details below.

 

 

Name

String

 

 

 

The name of the option inside the Pricing options group

 

 

Value

String

 

 

 

The code of the option inside the Pricing options group

 

 

Default

Boolean

 

 

 

True or false.

 

 

Description

String

 

 

 

The description of the option inside the Pricing options group.

 

 

MinValue

Int

 

 

 

Start value of a scale interval.

 

 

MaxValue

Int

 

 

 

End value of a scale interval.

Additional fields

Overview

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

  Retrieve an additional field                               Retrieve assigned additional fields                              Retrieve all additional fields    

Additional fields object

Parameters Object

Label

String

 

Field text.

Code

String

 

Field identifier. Alpha-numeric chars, underscores and dashes.

Type

String

 

Field type:

  • LISTBOX
  • CHECKBOX
  • TEXT
  • HIDDEN

ApplyTo

Sting

 

  • ORDER
  • PRODUCT

Values

Array of values

 

Custom values you control.

ValidationRule

String

 

The validation rule restricting the type of information shoppers can enter in the additional field during the purchase process.

Translations

Array of objects

 

Details below.

                Label

String

 

Field text translated in the language of the Translations object.

               Values

Object

 

Custom values you control translated in the language of the Translations object.

               Language

String

 

ISO language code. (ISO 639-1 two-letter code).

 

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