Upgrade price
Overview
Retrieve the upgrade price for a subscription.
Attributes
Parameters |
Type/Description |
BillingPrice |
Double |
|
The price Avangate charges the customer, without taxes. |
BillingGrossPrice |
Double |
|
The price Avangate charges the customer, including taxes. |
BillingCurrency |
String |
|
The currency ISO code used for the payment - ISO 4217. |
Quantity |
Int |
|
The mandatory quantity for the upgrade (you cannot make partial upgrades) |
DisplayPrice |
Double |
|
Display price. |
DisplayGrossPrice |
Double |
|
Display price before deductions. |
DisplayCurrency |
String |
|
Display currency. ISO 4217 code. |
Discount | Float |
Applied discounts | |
DiscountedProratedPrice | Float |
Prorated net price for the upgrade with applied discounts | |
DiscountedProratedGrossPrice | Float |
Prorated gross price for the upgrade with applied discounts | |
DiscountedBillingPrice | Float |
Net billing price available for the upgrade process with applied discounts | |
DiscountedBillingGrossPrice | Float |
Gross billing price available for the upgrade process with applied discounts | |
DisplayDiscount | Float |
Discount displayed for the upgrade process | |
DiscountedDisplayPrice | Float |
Net display price available for the upgrade process with applied discounts | |
DiscountedDisplayGrossPrice | Float |
Gross display price available for the upgrade process with applied discounts |
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 youStart 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:
- Go to Orders & customers -> Order search.
- Select the Partner orders tab.
- Search the order for which you'd like to check fulfillment status and click to edit it.
- Scroll down to the bottom of the partner order details screen, in the Attach end user information area.
- Click on the fields featuring product name and the system will display a table sporting the Fulfillment status column.
Fulfillment status possible values:
- Not fulfilled. Fulfillment is blocked due to various reasons including lack of payment/credit, missing reseller / end user details.
- Fulfilled. Fulfillment was finalized.
- Waiting for fulfillment confirmation. You need to confirm fulfillment.
- Fulfillment not required. No fulfillment confirmation is required.
- 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:
- Check the checkbox next to the subscription reference with the Waiting for fulfillment confirmation status.
- Click the drop down menu for the With selected option and select Confirm fulfillment.
- 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 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.
-
Go to Dashboard > Partner management > Partners.
-
For the needed partner click on Edit, then go to Commercial settings.
-
Scroll down to the Delivery settings section. Select Delayed subscription start.
- 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.
- If only the Delayed subscription start option was enabled, click on the needed order, select the subscription(s), choose the Activate subscription option, select the date and click on Save.
- If the Automatically activate subscription after codes delivery option was enabled too, click on the needed order, select the subscription(s) and choose the Confirm delivery option.
- If only the Delayed subscription start option was enabled, click on the needed order, select the subscription(s), choose the Activate subscription option, select the date and click on Save.
- Manually from Partner Control Panel.
- Go to Dashboard > Orders > All orders. View the needed order, select the subscription reference, choose the Activate subscription option, select a future date or leave the Now option and then click on Save.
- Go to Dashboard > Orders > All orders. View the needed order, select the subscription reference, choose the Activate subscription option, select a future date or leave the Now option and then click on Save.
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
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:
|
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:
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:
|
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.
- Go to Subscriptions Management.
- Run a search to identify the subscription you want to edit.
- Click View.
- 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.
- 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.
- The URL where the customer needs to be redirected is provided in the API response, in the PaymentMethod object, under the Authorize3DS object.
- 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.
- 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:
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. |