Purchase Orders
Overview
Purchase Orders are shopper-generated commercial documents set up to act as offers to acquire products/services. They contain details such as the type, quantity, pricing info, as well as additional information of the products or services you provide to customers. A Purchase Order becomes a sales contract binding the parties after you approve it.
Availability
This type of payment method is designed exclusively for business customers worldwide. Filling in the company name is mandatory when providing billing information during the purchase process.
To allow your customers to place Purchase Orders, you need to make sure this feature is active on your account. Contact 2Checkout to confirm the availability of Purchase Orders on your account.
If you need to apply specific terms to individual Purchase Orders, 2Checkout allows you to set a custom payment term to any PO, before confirming it. This feature is available on-demand, so you need to contact 2Checkout to enable it for your account.
How to enable Purchase Orders
- Log in to your 2Checkout Merchant Control Panel.
- Navigate to Setup → Ordering options → Payments methods.
- Scroll down to the Purchase order and enable the option by clicking on the Activate button.
- If the payment method is already activated, the settings will look as in the image below.
5. Since Purchase Orders involve fulfillment/delivery of the product before payment, you also need to decide on the maximum amount of time you would like to give your customers for completing payment. You can configure this option here for up to 90 days.
Supported payment methods
Shoppers can pay for Purchase Orders with either one of the following payment methods:
- Credit cards
- PayPal
- Wire/Bank transfer
- Direct Debit
- Other payment methods activated for your account
Supported currencies
While customers worldwide can use Purchase Orders, the supported transactional currencies are detailed below.
Country | Currency |
---|---|
United States of America | USD |
United Kingdom | GBP |
Romania | RON |
Turkey | TRY |
ROW | EUR/USD |
Recurring billing
2Checkout supports recurring billing (auto-renewal) for subscriptions generated with purchase orders. Customers can use purchase orders (POs) to place an order for a subscription, pay by credit cards, Direct Debit, or PayPal, and then activate automatic renewal for that subscription and the payment information on file. This means that the next automatic renewal will generate an automated charge on that card, Direct Debit or PayPal account, without a PO being issued. Also, customers can use Purchase Orders to manually renew their subscriptions.
Purchase flow
- The shopper selects the Purchase Order as a payment method when placing the order. Customers using Purchase Orders (POs) as the payment method during the ordering process have the option of setting identifiers for their orders designed to track and manage purchases in their own system. The Shopper reference number or Internal PO Number entered during the ordering process will be included in:
- The invoice generated once the order is approved
- In the Order Search Export file
- IPN (Instant Payment Notification)
- Past-due Purchase Order payment notifications
- Order level details page for the purchase
- 2Checkout registers the order.
- The shopper receives a Finalize your payment email with a pre-filled Purchase Order form that he or she must sign and send back to 2Checkout.
- The shopper sends the PO to 2Checkout by fax, email, or uploads it directly via a secure connection. 2Checkout automatically places the process of delivering orders for which PO was selected as the payment option on hold until the shopper provides the signed Purchase Order form.
- The 2Checkout anti-fraud team verifies every PO in detail. If the document uploaded is incomplete or contains incorrect details, the 2Checkout team informs the shopper about the incomplete Purchase Order form via email and provides guidance on the next steps.
- If you have configured your account to be notified of pending POs, you receive a notification email (sent to the email address defined under Order Notifications Email) informing you about the Purchase Order when 2Checkout approves it.
- The PO form will be uploaded as a part of the order it’s tied to and shared with you for confirmation. You can find it in Control Panel, on the order’s page. The shopper also receives the Purchase Order #[order reference] - status update email confirmation and more information regarding the products/services delivery.
- You confirm or reject the PO in the Purchase Orders area of the Control Panel, located under Orders & customers. In this section, you can also view the Purchase Order form. If you approve the PO, 2Checkout delivers the Finalize your payment – [order reference] order email to the shopper with instructions on how he or she can finalize the payment.
- You can auto-approve purchase orders at the moment the PO form is submitted. This feature is available on-demand, so you need to contact 2Checkout to enable it for your account.
- The shopper finalizes the payment via one of the available payment methods.
- Credit/debit card
- PayPal
- Check
- Bank/Wire transfer
- Other payment methods activated for your account
10. 2Checkout receives the payment and updates the order status to Complete.
11. You receive the payment from 2Checkout.
If shoppers don’t pay for the order within the Purchase Order time limit, the online payment methods from the Finalizing the order email don’t work anymore. Shoppers can only pay for the order through wire transfer or check after the Purchase Order time limit expires.
Canceling purchase orders
To cancel a purchase order, regardless of the purchase order status, follow the steps below.
- In your Merchant Control Panel, navigate to Orders & customers → Purchase orders.
- Search for the order you want to cancel and click its reference number.
- Click Cancel purchase order.
You can set a custom date for the cancelation of purchase orders after the expiration of the payment terms set by you. If the payment terms set by you (i.e. 30 days) expire, you can choose to have the PO canceled right away, skipping the 'Expired, not paid' status.
The custom period for PO cancelation can be set on-demand, so you need to contact 2Checkout to enable it for your account.
Purchase Orders Notifications
Email notifications
The 2Checkout email monitor gives you greater visibility on the emails that your customers receive from 2Checkout. You can choose to receive Purchase Order emails by simply entering the email address that you want the email forwarded to.
If you enable the email monitor for Purchase Order emails, you will receive all of the shopper emails. 2Checkout sends follow-up emails in the following situations:
Enable the email monitor
- Log in to your 2Checkout Merchant Control Panel account.
- Go to Integrations → Webhooks and API.
- In the Webhooks and API window, scroll down to the Notifications section.
- Check the box labeled "Email monitor" to enable this module and receive copies of the emails that 2Checkout sends to your customers. The System settings section notifies you whether the email monitor is enabled or not for your account.
- Check the box labeled Purchase order emails and enter the email addresses in the To field. You can choose to send the emails as a Carbon copy (CC) or Blind carbon copy (BCC). Important: If you need to enter multiple email addresses you can separate them using a comma. The To field is limited to 250 characters, including commas. For greater flexibility, recipients of different email categories do not need to be the same.
- Click Update to save your settings.
If you enable the email monitor for Purchase Order emails, you will receive all of the shopper emails in that category in the following situations:
- Purchase Order Confirmation – after the shopper has placed the order
- Finalize your payment – after you have accepted the order
- Purchase Order Status Update in the following cases:
- You did not receive the PO and the order has expired
- You failed to validate the order
- You canceled the order
- Your order confirmation is expected
- Payment is due in 7 days
- Payment is due in 1 day
- Payment was due
- The order has been canceled
Instant Payment Notifications
The 2Checkout system automatically sends IPNs (Instant Payment Notifications) based on specific processes triggered by either you or your shopper.
The IPN_PURCHASE_ORDER_INFO parameter’s values refer to the reason why the ORDERSTATUS parameter has a certain value. To see the IPN_PURCHASE_ORDER_INFO parameter in the IPN, you must first enable it from the Control Panel.
Enable IPN_PURCHASE_ORDER_INFO
- Log in to your 2Checkout account.
- Go to Account settings.
- Click Edit system settings.
- Go to IPN settings.
- Check the IPN_PURCHASE_ORDER_INFO checkbox
- Click Save.
IPN status list
For a better understanding of when 2Checkout sends IPNs, consult the table below.
Activity | Order status (Control Panel) | PO status (Control Panel) | IPN triggered (Yes/No) | IPN ORDERSTATUS | IPN_PURCHASE_ORDER_INFO |
Order placed by customer using PO | Unfinished | Awaiting form submission | Yes | PENDING | NEW_PURCHASE_ORDER |
Customer uploads PO document | Unfinished | Awaiting form submission | No | N/A | N/A |
PO approved by 2Checkout support team | Unfinished | Awaiting your confirmation | No | N/A | N/A |
PO approved by you | Unfinished | Awaiting payment | Yes (after electronic delivery) | PURCHASE_PENDING | PENDING_PAYMENT |
PO paid by customer | Finished | Complete | Yes | COMPLETE | COMPLETE |
Payment not received within time interval | Unfinished | Expired, not paid | Yes | PURCHASE_PENDING | EXPIRED_NO_PAYMENT |
Payment not received within time interval + 90 days | Canceled | Canceled, not paid | Yes | CANCELED | EXPIRED_NO_PAYMENT |
Document not received within time interval | Canceled | Expired, form not received | Yes | CANCELED | EXPIRED_NO_DOCUMENT |
Rejected by you | Canceled | Rejected | Yes | CANCELED | REJECTED |
You don’t approve nor reject the PO within time interval | Canceled | Expired, PO not confirmed | Yes | CANCELED | EXPIRED_NO_CONFIRMATION |
2Checkout cancels the order | Canceled | Canceled by 2Checkout | Yes | CANCELED | CANCELED |
You cancel the PO via API | Canceled | Canceled via API | Yes | CANCELED | CANCELED_API |
For POs using the 2Checkout API and setting auto-approval to false the initial status of the PO is AWAITING_UPLOAD, corresponding to an order status of Unfinished.
Purchase Orders Submission and Payment Time Limit
Shoppers have up to 90 days at their disposal to submit the signed Purchase Order form to 2Checkout, depending on the number of days you set in the Merchant Control Panel. Failure to upload the pre-filled Purchase Order form ahead of the time limit results in the cancelation of the order. Failure to process the payment ahead of the time limit does not result in the cancelation of the subscription.
Configure the submission time limit
Set the time limit to less than 90 days if you want, by following the steps below.
- Go to Setup -> Ordering options.
- Scroll down to the Purchase order enabled option. Make sure the option is enabled and enter the desired number of days for the Purchase order delay field. If you set the value to 1, the shopper receives the payment notification email only if he uploads the Purchase Order form on the same day and 2Checkout approves it.
Failure to submit the Purchase Order form ahead of the time limit set in this field results in the cancelation of the order. All purchase orders must be dated and signed according to the guidance provided in the email. If you reject a Purchase Order, the system informs shoppers that you have canceled the order.
Configure the payment time limit
This feature is available on demand. Contact 2Checkout to enable it for your account. If you need to apply specific terms to individual Purchase Orders, 2Checkout allows you to set a custom payment term to any PO, before confirming it.
After clicking Confirm PO, you can either keep the existing payment term and confirm the Purchase Order, or set a new payment term and then confirm the Purchase Order. You can see the changes you make to the payment term in the Order history section. The maximum number of days you can set as payment terms can differ for each account.
Customers can finalize transactions for POs using instant payment methods like credit cards until 2Checkout cancels the PO.
Cancel a purchase order
You can cancel all purchase orders except those associated with Finalized orders, for which 2Checkout completed the delivery/fulfillment process and collected the payment from customers.
Shoppers receive an automatic notification with the status change reflecting the purchase order change. In those cases in which you cancel POs after approving them, 2Checkout sends shoppers an invoice reversal notification.
Purchase Orders Delivery and Payment
2Checkout fulfills/delivers orders immediately after you approve POs and generates the shopper invoices. While delivery takes place, 2Checkout continues to keep track of orders with POs, monitoring the evolution of the process until customers finalize the transactions for their purchase. 2Checkout sends customers shopper invoices and notifications encouraging them to finalize payments. Depending on when the shopper makes payments, transactions can take as much as a few months.
In order to give shoppers the chance to make all necessary payments, the 2Checkout system generates and sends out notifications of the money due once per week (7 days apart). The 2Checkout system sends the first notification email seven days before the Purchase Order time limit and calculates the time limit using the following formula:
Purchase Order vendor approval date + Purchase Order time limit – 7 days
Shoppers can make the payment through credit card, check, PayPal, bank/wire transfer, direct debit, and a range of additional payment methods activated for your account.
If shoppers don’t pay for the order within the Purchase Order time limit, the online payment methods from the Finalizing the order won’t work anymore. Shoppers can only pay for the order through wire transfer or check after the Purchase Order time limit expires.
2Checkout automatically cancels expired unpaid Purchase Orders 90 days after the expiration of the Purchase Order time limit. The automatic cancelation does not apply to partially paid Purchase Orders.
2Checkout includes all orders with approved Purchase Orders that it already fulfilled/delivered into a single Draft Invoice available in the Control Panel. However, the actual payments for the orders do not accompany the Draft Invoice. Instead, 2Checkout transfers the money for orders with POs into your account once the shopper makes the necessary payments. While Draft Invoices can contain multiple orders, 2Checkout makes payments for each order individually, in accordance with the money received from your customers.
Purchase Order Invoices
The Finance documents section allows you to run reports on Purchase Order invoices based on the invoice date.
Generate purchase order reports
Generate reports on Purchase order invoices based on the invoice date in the Purchase orders section.
- Use the Purchase orders section to choose the invoice date or interval and click Search once you're done.
- The report is displayed below and it contains 10 results/page. You can extend the displayed results number to 200 results/page.
- To export the entire report as a CSV file you can use the Export as CSV button.
- Click the More info button to see more information about a specific invoice.
- You can also download invoices in HTML format from the Actions column.
2Checkout allows you to download multiple types of reports for each Purchase Order:
- Products overview report
- Orders overview report
- Products Report
Click the corresponding download links for each of these reports to download them.
2Checkout includes all fulfilled/delivered Purchase Orders into a single Draft Invoice available in the Control Panel. However, the actual payments for the orders do not accompany the Draft Invoice. 2Checkout transfers the Purchase Order payments into your account once customers make the necessary payments. While Draft Invoices can contain multiple orders, 2Checkout processes payments for each order individually, in accordance with the payments received from your customers.
Draft invoices and paid PO information
You can find draft invoices under the PO invoices tab of the Merchant Control Panel, under Reports Center → Accounting.
2Checkout includes information on Purchase Orders into your Sales Reports, both in the body of the email and in the attached files. You can get insight into all approved Purchase Orders, as well as into the POs that 2Checkout received payments for (representing the money that 2Checkout transfers to your account with your next payment). Access info on upcoming payments for POs already paid for by shoppers in the Accounting Summary area of the CP, under Reports center -> Accounting.
Payments for which the Download Invoice button is greyed out are associated with purchase orders. Downloadable invoices are available for all other payment methods used by shoppers.
CRO for digital marketers
It wasn't that long ago when having a marketing plan and instinct was enough. And if you could actually demonstrate results, well, you were way ahead of the game. Those days are long gone. Today, metrics matter. Digital marketers are under constant pressure to continually prove and improve the value of their programs. Thus the evolution of conversion rate optimization strategies. Download this eBook on CRO for Digital Marketers. You'll learn:
Find out why CRO is one of the best marketing investments you can make. |
![]() |
Pricing
Overview
Update subscription plan/product pricing using the PriceOptionsGroup and the PricingConfiguration objects.
PriceOptionsGroup
Use this object to add/create and edit/update price options for your account.
Parameters | Type/Description | |||
---|---|---|---|---|
PriceOptionsGroup |
Object |
|||
Name |
String |
|||
|
Price option group name. Use this parameter when adding a new price options group. To edit the name of a price option group use the Name parameter under the Translations object. |
|||
Description |
String |
|||
|
Pricing option group description. |
|||
Translations |
Array of objects |
|||
|
Details below. |
|||
|
Name |
String |
||
|
|
Product pricing options group name, localized under Options. |
||
|
Description |
String |
||
|
|
Product pricing options group description, localized under Options. |
||
|
Language |
String |
||
|
|
ISO language code. (ISO 639-1 two-letter code). |
||
Code |
String |
|||
|
Unique code that The 2Checkout system generates or set for each pricing options group. |
|||
Type |
String |
|||
|
The type of the pricing options group. Possible values: · RADIO · CHECKBOX · INTERVAL · COMBO |
|||
Options |
Array of objects |
|||
|
Details below. |
|||
|
Name |
String |
||
|
|
Pricing option child name. |
||
|
Description |
String |
||
|
|
Pricing option child description. |
||
|
Translations |
Array of objects |
||
|
|
Details above. |
||
|
|
Name |
String |
|
|
|
|
Localized product pricing options group name under PriceOptionGroup. Localized pricing option child name under Options. |
|
|
|
Description |
String |
|
|
|
|
Localized product pricing options group description under PriceOptionGroup. Localized pricing option child description under Options. |
|
|
|
Language |
String |
|
|
|
|
ISO language code. (ISO 639-1 two-letter code). |
|
|
Code |
String |
||
|
|
The code you set or that the 2Checkout system generated for each pricing option child inside a pricing options group parent. |
||
|
ScaleMin |
Int |
||
|
|
The minimum value of a scale interval set for each pricing option child inside a pricing options group parent of the type INTERVAL. |
||
|
ScaleMax |
Int |
||
|
|
The maximum value of a scale interval set for each pricing option child inside a pricing options group parent of the type INTERVAL. |
||
|
SubscriptionImpact |
Object |
||
|
|
Details below. |
||
|
Months |
String |
||
|
|
The value in months the 2Checkout system adds or subtracts from the initial billing cycle of a subscription. |
||
|
Impact |
String |
||
|
|
Possible values: · ADD · SUBTRACT · LIFETIME |
||
|
PriceImpact |
Object |
||
|
|
Details below. |
||
|
|
ImpactOn |
String |
|
|
|
|
Possible values:
|
|
|
|
Impact |
String |
|
|
|
|
Impact on price per unit:
|
|
|
|
Percent |
String |
|
|
|
|
The value of the percentage out of the price per product unit, when you use PERCENT for Method. |
|
|
|
Method |
String |
|
|
|
|
Possible values: · PERCENT · FIXED |
|
|
|
Amounts |
Array of objects. |
|
|
|
|
Details below. |
|
|
|
|
Currency |
String |
|
|
|
|
Currency ISO code - ISO 4217. |
|
|
|
Amount |
String |
|
|
|
|
The amount defined for each specific currency active for your account, when you use FIXED for Method. |
|
Default |
Boolean |
||
|
|
TRUE for preselected options. Missing for options that are not preselected. |
||
Required |
boolean |
|||
|
True if you made the pricing option group mandatory. |
PriceOptionGroup
Use this object to search for, retrieve information on price option groups (including those assigned to specific products) for your account.
Parameters | Type/Description |
---|---|
PriceOptionGroup |
Array of objects |
Name |
String |
|
Price option group name.
Use this parameter when adding a new price options group.
To edit the name of a price option group use the Name parameter under the Translations object. |
Description |
String |
|
Pricing option group description. |
Translations |
Array of objects |
|
Details below. |
Code |
String |
|
Unique code that The 2Checkout system generates or set for each pricing options group. |
Type |
String |
|
The type of the pricing options group. Possible values: · RADIO · CHECKBOX · INTERVAL · COMBO |
Options |
Array of PriceOption objects |
|
Details below. |
Parameters | Type/Description |
---|---|
PriceOption |
Object |
Code |
String |
|
The code you set or that the 2Checkout system generated for each pricing option child inside a pricing options group parent. |
ScaleMin |
Int |
|
The minimum value of a scale interval set for each pricing option child inside a pricing options group parent of the type INTERVAL. |
ScaleMax |
Int |
|
The maximum value of a scale interval set for each pricing option child inside a pricing options group parent of the type INTERVAL. |
SubscriptionImpact |
SubscriptionLifetimeImpact object |
|
Details below. |
PriceImpact |
Object |
|
Details below. |
Default |
Boolean |
|
TRUE for preselected options. Missing for options that are not preselected. |
Name |
String |
|
Pricing option child name. |
Description |
String |
|
Pricing option child description. |
Translations |
Array of objects |
|
Details below. |
Parameters | Type/Description |
---|---|
SubscriptionLifetimeImpact |
Object |
Months |
String |
|
The value in months the 2Checkout system adds or subtracts from the initial billing cycle of a subscription. |
Impact |
String |
|
Possible values: · ADD · SUBTRACT · LIFETIME |
Parameters | Type/Description |
---|---|
PriceImpact |
Object |
ImpactOn |
String |
|
Possible values:
|
Impact |
String |
|
Impact on price per unit:
|
Percent |
String |
|
The value of the percentage out of the price per product unit, when you usePERCENT for Method. |
Method |
String |
|
Possible values: · PERCENT · FIXED |
Amounts |
Array of objects. |
|
Details below. |
Parameters | Type/Description |
---|---|
Amount |
Object |
Currency |
String |
|
Currency ISO code - ISO 4217. |
Amount |
String |
|
The amount defined for each specific currency active for your account, when you use FIXED for Method. |
Parameters | Type/Description |
---|---|
Translations |
Object |
Name |
String |
|
Localized product pricing options group name under PriceOptionGroup. Localized pricing option child name under Options. |
Description |
String |
|
Localized product pricing options group description underPriceOptionGroup. Localized pricing option child description under Options. |
Language |
String |
|
ISO language code. (ISO 639-1 two-letter code). |
PricingConfiguration
Use this object to add/create and update/edit pricing configurations for your account. You can assign one or multiple price option groups to pricing configurations.
You identify a pricing configuration using its unique identifier: Code.
Parameters | Type/Description | |||
---|---|---|---|---|
PricingConfiguration |
Object |
|||
Name |
String |
|||
|
Pricing configuration name. |
|||
Code |
String |
|||
|
System-generated identifier. Read-only. |
|||
Default |
Boolean |
|||
|
True for the default pricing configuration |
|||
BillingCountries |
Array of strings |
|||
|
ISO codes of the countries assigned to the pricing configuration. Empty unless a pricing configuration has specific countries assigned. |
|||
PricingSchema |
String |
|||
|
DYNAMIC – With a base price FLAT – Without a base price |
|||
PriceType |
String |
|||
|
Possible values: • NET • GROSS |
|||
DefaultCurrency |
String |
|||
|
The ISO code of the default currency for the pricing configuration |
|||
Prices |
Object |
|||
|
Details below. |
|||
|
Regular |
Array of objects |
||
|
|
Details below. |
||
|
|
Amount |
Int |
|
|
|
|
The price of the product. Use -1 to delete it. |
|
|
|
Currency |
String |
|
|
|
|
ISO code of the currency for the product price. |
|
|
|
MinQuantity |
Int |
|
|
|
|
The minimum quantity of volume discounts. Default is 1. |
|
|
|
MaxQuantity |
Int |
|
|
|
|
The maximum quantity of volume discounts. Default is 99999. |
|
|
|
OptionCodes |
Array of objects |
|
|
|
|
Details below. |
|
|
|
|
Code |
String |
|
|
|
|
System generated pricing options group code (you can also configure it) that the 2Checkout system uses to calculate product prices for pricing configurations without a base price. |
|
|
|
Options |
StringArray |
|
|
|
|
The pricing options group option code you configured that the 2Checkout system uses to calculate product prices for pricing configurations without a base price. |
|
Renewal |
Array of objects |
||
|
|
Details below. |
||
|
|
Amount |
Int |
|
|
|
|
The price of the product. Use -1 to delete it. |
|
|
|
Currency |
String |
|
|
|
|
ISO code of the currency for the product price. |
|
|
|
MinQuantity |
Int |
|
|
|
|
The minimum quantity of volume discounts. Default is 1. |
|
|
|
MaxQuantity |
Int |
|
|
|
|
The maximum quantity of volume discounts. Default is 99999. |
|
|
|
OptionCodes |
Array of objects |
|
|
|
|
Details below. |
|
PriceOptions |
Array of objects |
|||
|
Details below. |
|||
|
Code |
String |
||
|
|
System generated pricing options group code (you can also configure it) that the 2Checkout system uses to calculate product prices for pricing configurations without a base price. |
||
|
Required |
Boolean |
||
|
|
true – you set the price options group as required during the purchase process. false - you did not set the price options group as required during the purchase process. |
Product
Overview
Use the Product object to create/add, update/edit and retrieve subscription plans/products for your account. You can control:
- Product information
- Pricing
- Subscription plan settings and renewal configuration
- Subscription plan recurring billing
- Fulfillment
- Shipping classes
- Localization
Parameters | Type/Description | |
---|---|---|
Product
|
Object |
|
AvangateId |
String |
|
|
Unique, system-generated 2Checkout product ID. Read-only. |
|
ProductCode |
String |
|
|
The product code that you can define for each of your offerings. Needs to be unique. |
|
ProductType |
String |
|
|
REGULAR or BUNDLE |
|
ProductName |
String |
|
|
The name of the product |
|
ProductVersion |
String |
|
|
The product version number |
|
GroupName |
String |
|
|
The name of the Product Group to which the product belongs |
|
ShippingClass |
Object |
|
|
Existing shipping class object with the structure detailed below. |
|
|
Name |
String |
|
|
The name of the shipping class |
|
Amount |
Decimal |
|
|
The shipping costs |
|
Currency |
String |
|
|
The currency ISO code used for shipping costs - ISO 4217. |
|
ApplyTo |
String |
|
|
Possible values: • PRODUCT • ORDER |
|
Type |
Possible values: • FIXED • PERCENT |
GiftOption |
Boolean |
|
|
True or false depending on whether the product can be gifted or not. |
|
ShortDescription |
String |
|
|
The product's short description |
|
LongDescription |
String |
|
|
The product's long description |
|
SystemRequirements |
String |
|
|
System requirements |
|
ProductCategory |
String |
|
|
Product category |
|
Platforms |
Array of Platform objects |
|
|
Array of objects detailing the platforms supported by the application. Details below. |
|
|
PlatformName |
String |
|
|
The label of the platform per the product configuration. |
|
Category |
String |
|
|
Platform category per product configuration. |
ProductImages |
Array of Image objects |
|
|
Image object. Details below. Read-only. |
|
|
Default |
Boolean |
|
|
True or False depending on whether you set the image stored at the address in the URL parameter as default or not. |
|
URL |
String |
|
|
The location of the image on the 2Checkout system. |
TrialUrl |
String (anyURI) |
|
|
The URL from where shoppers can download trial software. |
|
TrialDescription |
String |
|
|
Descriptive text entered for trials. |
|
Enabled |
Boolean |
|
|
True/false depending on whether the products are active or disabled. When empty, 2Checkout marks the product as disabled. |
|
AdditionalFields |
Array of AdditionalFieldAssigned objects |
|
|
Array of existing additional fields assigned to products. Details below. |
|
|
Label |
String |
|
|
The name of the additional field assigned to a product. |
|
Code |
String |
|
|
The code of the additional field assigned to a product. |
|
Enabled |
Boolean |
|
|
True or false depending on whether the assigned product field is enabled or not. |
|
Required |
Boolean |
|
|
True or false depending on whether the assigned product field is required or not. |
|
URLParameter |
String |
|
|
The value of the system generated URL parameter for the product field that can be used in Buy Links. |
Translations |
Array of ProductTranslation objects |
|
|
Details below. |
|
|
LongDescription |
String |
|
|
The translated long description in the language corresponding to the Translation object. |
|
TrialUrl |
String |
|
|
The trial URL for users speaking the language corresponding to the Translation object. |
|
TrialDescription |
String |
|
|
|
|
SystemRequirements |
String |
|
|
Localized system requirements. |
|
Name |
String |
|
|
Localized product name. |
|
Description |
String |
|
|
Localized product short description. |
|
Language |
String |
|
|
ISO 639-1 two-letter code. |
PricingConfigurations |
Array of PricingConfiguration objects |
|
|
Details below. 2Checkout creates pricing configurations during the process when you add a product. |
|
|
Name |
String |
|
|
Pricing configuration name |
|
Code |
String |
|
|
System-generated identifier. |
|
Default |
boolean |
|
|
True for the default pricing configuration |
|
BillingCountries |
Array of strings |
|
|
ISO codes of the countries assigned to the pricing configuration. Empty unless specific countries are assigned to a pricing configuration. |
|
PricingSchema |
String |
|
|
DYNAMIC – With a base price FLAT – Without a base price |
|
PriceType |
String |
|
|
Possible values: NET / GROSS |
|
DefaultCurrency |
String |
|
|
The ISO code of the default currency for the pricing configuration |
|
Prices |
Object |
|
|
Details below. |
|
Regular |
Array of objects |
|
|
Details below. |
|
Amount |
Int |
|
|
The price of the product. |
|
Currency |
String |
|
|
ISO code of the currency for the product price. |
|
MinQuantity |
Int |
|
|
The minimum quantity of volume discounts. Default is 1. |
|
MaxQuantity |
Int |
|
|
The maximum quantity of volume discounts. Default is 99999. |
|
OptionCodes |
Array of objects |
|
|
Details below. |
|
Code |
String |
|
|
Price option identifier. |
|
Options |
Array of strings |
|
|
The pricing options group option code you configured that the 2Checkout system uses to calculate product prices for pricing configurations without a base price. |
|
Renewal |
Array of objects |
|
|
Details below. |
|
Amount |
Int |
|
|
The price of the product. |
|
Currency |
String |
|
|
ISO code of the currency for the product price. |
|
MinQuantity |
Int |
|
|
The minimum quantity of volume discounts. Default is 1. |
|
MaxQuantity |
Int |
|
|
The maximum quantity of volume discounts. Default is 99999. |
|
OptionCodes |
Array of PriceOptionCode objects |
|
|
Details below. |
|
Code |
String |
|
|
Price option identifier. |
|
Options |
Array of strings |
|
|
The pricing options group option code you configured that the 2Checkout system uses to calculate product prices for pricing configurations without a base price. |
|
PriceOptions |
Array of AssignedPriceOptionGroup objects |
|
|
Details below. |
|
Code |
String |
|
|
System generated pricing options group code (you can also configure it) that the 2Checkout system uses to calculate product prices for pricing configurations without a base price. |
|
Required |
Boolean |
|
|
True or False depending on whether you want to make it mandatory for shoppers to select the price option during the puyrchase process. |
BundleProducts |
Array of BundleProductCode objects |
|
|
Details below. |
|
|
ProductId |
String |
|
|
Unique, system-generated product ID. |
|
ProductCode |
String |
|
|
Editable product code that you control. |
Fulfillment |
String |
|
|
BY_AVANGATE NO_DELIVERY – The 2Checkout system finalizes orders immediately after it receives payment confirmation. BY_VENDOR – you are responsible for delivering/fulfilling orders |
|
Prices |
Array of Price objects |
|
|
Use this object only when Pricing Configurations are not available for your account. Details below. |
|
|
Amount |
Int |
|
|
The price of the product. |
|
Currency |
String |
|
|
ISO code of the currency for the product price. |
|
MinQuantity |
Int |
|
|
The minimum quantity of volume discounts. Default is 1. |
|
MaxQuantity |
Int |
|
|
The maximum quantity of volume discounts. Default is 99999. |
|
OptionCodes |
Array of objects |
|
|
Details below. |
|
Code |
String |
|
|
Price option identifier. |
|
Options |
Array of strings |
|
|
The pricing options group option code you configured that the 2Checkout system uses to calculate product prices for pricing configurations without a base price. |
GeneratesSubscription |
Boolean |
|
|
TRUE or FALSE depending on whether you set the product to generate subscriptions or not.
NULL for bundles for which you set the following subscription management option: “Use the subscription settings of each product in the bundle” |
|
SubscriptionInformation |
ProductSubscriptionInformation Object |
|
|
Details below. NULL for bundles which you set to use the renewal settings of child products and not of the parent bundle. |
|
|
DeprecatedProducts |
Array |
|
|
Deprecated products. |
|
BundleRenewalManagement String |
|
|
|
Possible values:
Can be NULL. |
|
BillingCycle |
String |
|
|
The number of subscription billing cycle units (months or days). Possible values:
Days
Months
|
|
BillingCycleUnits |
String |
|
|
The units of the billing cycle:
D - days |
|
IsOneTimeFee |
Boolean |
|
|
True or False depending on whether the subscription is evergreen or not. |
|
ContractPeriod |
Object |
|
|
Details below. |
|
Period |
Int |
|
|
The contract period in months or days. -1 for unlimited contracts. |
|
PeriodUnits |
String |
|
|
The contract period units days | months |
|
IsUnlimited |
Boolean |
|
|
This flag is true if the contract is for an unlimited period |
|
Action |
String |
|
|
The action performed after the subscription expires. Possible values CANCEL | RESTART |
|
EmailsDuringContract Boolean |
|
|
|
True or False depending on whether you suppress renewal notification emails throughout the duration of the contract or not. |
|
UsageBilling |
Int |
|
|
The usage billing interval must be smaller than or equal to the grace period.
Interval of time within the grace period, when the 2Checkout system attempts to automatically charge customers for recurring costs and additional metered usage fees (in arrears). 2Checkout renews subscriptions only after subscribers make all outstanding payments per the renewal settings (from the expiration or the renewal date). If automatic renewal and usage charges fail, subscriptions can be manually renewed only by the end of the grace period, after which they expire.
Can be NULL. |
|
GracePeriod |
Object |
|
Type |
String |
|
|
CUSTOM – you configured grace period setting at product level. GLOBAL – global grace period settings apply. |
|
Period |
String |
|
|
Number of days set for the grace period. |
|
PeriodUnits |
String |
|
|
D - Days. |
|
IsUnlimited |
Boolean |
|
|
TRUE or FALSE depending on whether you set the grace period to unlimited or not. |
|
RenewalEmails |
Object |
|
|
Details below. Can be NULL. Available only in Product API 2.5 and later. |
|
Type |
String |
|
|
GLOBAL - Send emails according to the global renewal notification settings. CUSTOM – per product renewal notification settings |
|
Settings |
Object (can be NULL) |
|
|
Details below. |
|
ManualRenewal |
Object (can be NULL) |
|
|
Details below. |
|
Before30Days |
Boolean |
|
|
True or False. |
|
Before15Days |
Boolean |
|
|
True or False. |
|
Before7Days |
Boolean |
|
|
True or False. |
|
Before1Day |
Boolean |
|
|
True or False. |
|
OnExpirationDate |
Boolean |
|
|
True or False. |
|
After5Days |
Boolean |
|
|
True or False. |
|
After15Days |
Boolean |
|
|
True or False. |
|
AutomaticRenewal |
Object (can be NULL) |
|
|
Details below. |
|
Before30Days |
Boolean |
|
|
True or False. |
|
Before15Days |
Boolean |
|
|
True or False. |
|
Before7Days |
Boolean |
|
|
True or False. |
|
Before1Day |
Boolean |
|
|
True or False. |
|
OnExpirationDate |
Boolean |
|
|
True or False. |
|
After5Days |
Boolean |
|
|
True or False. |
|
After15Days |
Boolean |
|
|
True or False. |
FulfillmentInformation |
Object |
|
|
Details below. Can be NULL. Available only in Product API 2.5 and later. |
|
|
IsStartAfterFulfillment |
Boolean |
|
|
True or False. Depending on whether you want the subscription lifetime to start afther the completion of the fulfillment process or not. |
|
IsElectronicCode |
Boolean |
|
|
True or False. Depending on whether you configure the delivery of keys/codes for the product or not. |
|
IsDownloadLink |
Boolean |
|
|
True or False. Depending on whether you configure the delivery of a product file or not. |
|
IsBackupMedia |
Boolean |
|
|
True or False. Depending on whether you configure the delivery of backup media or not. |
|
IsDownloadInsuranceService |
Boolean |
|
|
True or False. Depending on whether you enable the Download Insurance Service or not, for a product for which you configure a product file. |
|
IsInstantDeliveryThankYouPage |
Boolean |
|
|
True or False. Depending on whether you enable instant delivery in the Thank You page or not. |
|
IsDisplayInPartnersCPanel |
Boolean |
|
|
True or False. Depending on whether you share access to the product file with your channel partners or not. |
ReturnMethod | Object | |
Information on the customer redirect method after a successful purchase. | ||
Type | String | |
Possible values:
|
||
URL | String | |
Website to which customers are redirected after a successful purchase. Example: "http://mySuccessURL.com" | ||
|
CodeList |
Object (can be NULL) |
|
|
Details below. |
|
Code |
String |
|
|
The unique code list identifier. |
|
Name |
String |
|
|
Name of the code list. |
|
Type |
String |
|
|
Code list type:
|
|
BackupMedia |
Object (can be NULL) |
|
|
Details below. |
|
Code |
String |
|
|
The unique backup media identifier. |
|
Name |
String |
|
|
Name of the backup CD/DVD. |
|
Type |
String |
|
|
Media type: CD |
|
ProductFile |
Object (can be NULL) |
|
|
Details below. |
|
Code |
String |
|
|
Unique product file identifier. |
|
Name |
String |
|
|
Display name. |
|
File |
String |
|
|
Name of the product file. |
|
Version |
String |
|
|
File version. |
|
Size |
String |
|
|
File size. |
|
Type |
String |
|
|
File type. |
|
LastUpdate |
String |
|
|
YYYY-MM-DD HH-MM-SS. Date time stamp when you last updated the file. |
|
AdditionalInformationByEmail |
String (can be NULL) |
|
|
The text you set up in the Additional fulfillment information - by email area. |
|
AdditionalInformationEmailTranslations |
Object (can be NULL) |
|
|
Array of localized Additional fulfillment information - by email texts. |
|
AdditionalThankYouPage |
String (can be NULL) |
|
|
The text you set up in the Additional fulfillment information - "Thank you" page area. |
|
AdditionalThankYouPageTranslations |
Array (can be NULL) |
|
|
Array of localized Additional fulfillment information - "Thank you" page texts. |
Payment methods
Overview
Leverage 2Checkout's Monetization Platform to sell in over 200 countries and territories, in over 45 payment methods and 100 billing currencies.
Want to sell worldwide? Learn how 2Checkout can help with over 45 payment methods and 100 display and billing currencies.
Availability
Online Payment Methods
All online payment methods are available for 2Monetize.
Online payment methods marked with * are available for 2Sell and 2Subscribe in all listed currencies.
Offline Payment Methods
Offline payment methods marked with ** are available for 2Sell and 2Subscribe only in USD, and in all other listed currencies for 2Monetize.
Online Payment Methods
Credit/Debit Cards (With/Without Installments) Payment Methods
Payment method | Availability | Renewal support/recurrent billing | Currencies |
---|---|---|---|
Visa* | Worldwide | Yes | All from list |
Visa Electron* (debit card) | Worldwide | No | All from list |
MasterCard* | Worldwide | Yes | All from list |
Maestro* | Worldwide | No | All from list |
Eurocard (Mastercard) | Scandinavia, Baltic countries | Yes | EUR |
American Express* (credit card) | Worldwide | Yes | USD, EUR, GBP, AUD, CAD, JPY, MXN |
Discover/Novus* (credit card) | Worldwide (Primarily issued in USA America, it can be processed worldwide) | Yes | USD |
Dankort /VISA (debit card) | Denmark | Yes | EUR, DKK |
Bancontact | Belgium | No | EUR |
Postepay (Visa) | Italy | Yes | EUR |
JCB (Japan Credit Bureau)* (credit card) | Austria, Bahrain, Bangladesh, Bulgaria, China, Germany, Hong Kong, Indonesia, Japan, Lebanon, Mongolia, Pakistan, Philippines, Russia, Singapore, Spain, Taiwan, Thailand, Vietnam, Laos, USA, South Korea | Yes | USD, EUR, JPY |
CB/Carte Bancaire (local debit card, formerly Carte Bleue) | France | Yes | EUR |
UnionPay | China, Macau, Hong Kong, Singapore, and other markets, mostly in APAC | Yes | CNY/RMB, USD, EUR, GBP, AUD, CAD, CHF, JPY, PLN, SEK, RUB, BRL, ZAR |
Local cards in Turkey (Visa/MasterCard) | Turkey | Yes | TRY |
Local cards in Brazil (Visa/MasterCard)* | Brazil | Yes | BRL |
Local Cards with installments in Turkey (Bonus, World, CardFinans, BankAsya, Paraf, Maximum, Axess) |
Turkey | Not in combination with installments. | TRY |
Local Cards with installments in Brazil (Elo Card, Hipercard)* | Brazil | Elo Card & Hipercard support recurring billing but not in combination with installments. | BRL |
Local cards in India (Visa/MasterCard)* | India | Yes | INR |
RuPay | India | Yes | INR |
Digital Wallets Payment Methods
Payment method | Availability | Renewal support/recurrent billing | Currencies |
---|---|---|---|
PayPal* | Worldwide | Yes | All from list |
PayPal Express* | Worldwide | Yes | All from list |
Alipay | China, Hong Kong, Taiwan | Yes | CNY, USD |
Apple Pay | Check here the list of countries where Apple Pay is available. | Yes | All from list |
MobilePay | Denmark | No | DKK |
Vipps | Norway | No | NOK |
WeChat Pay | China, Hong Kong | No | USD, CNY, HKD |
Skrill Wallet | Worldwide (except Japan) | Yes | EUR, USD, GBP |
Neteller | Worldwide (except Japan) | No | EUR, USD, GBP |
Online Banking Payment Methods
Payment method | Availability | Renewal support/recurrent billing | Currencies |
---|---|---|---|
iDEAL | The Netherlands | Auto-renewal supported through Direct Debit. | EUR |
OP-Pohjola | Finland | No | EUR |
Nordea | Finland | No | EUR |
Danske | Finland | No | EUR |
Trustly | Austria, Belgium, Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, Germany, Hungary, Ireland, Italy, Latvia, Lithuania, Netherlands, Poland, Romania, Slovakia, Slovenia, Spain, Sweden, UK. | No | CZK, DKK, EUR, GBP, HUF, PLN, RON, SEK |
QR code bank transfer | Czech Republic | No | CZK |
Netbanking | India | No | INR |
Direct Debit Payment Methods
Payment method | Availability | Renewal support/recurrent billing | Currencies |
---|---|---|---|
Direct Debit SEPA | Germany, Austria, Spain, Belgium, France, the Netherlands | Yes | EUR |
Direct Debit UK | UK | Yes | GBP |
eCheck/ACH | United States of America | Yes | USD |
Offline Payment Methods
Payment method | Type | Availability | Renewal support / recurrent billing | Currencies |
---|---|---|---|---|
Wire/Bank transfer - SEPA countries** | bank transfer | Austria, Belgium, Cyprus, Estonia, Finland, France, Germany, Greece, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Portugal, Slovakia, Slovenia, Spain | No | EUR |
Wire/Bank Transfer - non-SEPA countries** | bank transfer | Rest of the world | No | USD, EUR, GBP, RON, TRY |
Purchase Order | purchase order | Worldwide | No | USD, EUR, GBP, RON, TRY |
Boleto/Pix* | cash/online | Brazil | No | BRL |
Sample Refund Policy
Overview
Due to industry regulations, all websites must have a viewable privacy policy and refund policy. We have created sample policies for you to use, or you can write your own, if you choose so.
Refund Policy
The refund policy explains how you handle returns, refunds, and exchanges. You can display this policy on either the product page or the checkout page of your website. 2Checkout makes every effort to refer refund requests to you, the seller, but reserves the right to issue a refund if necessary.
Though “No Refund” Policies are generally permitted, 2Checkout strongly recommends against this business practice because it often leads to high customer chargebacks. There are certain situations where 2Checkout cannot permit “No Refund” Policies. If this applies to you, 2Checkout will let you know.
Sample Refund Policy (for Goods)
This is a sample that you can use to create/customize the refund policyfor goods to be displayed on your website:
If you are not 100% satisfied with your purchase, you can either return your order for a full refund or exchange it for something else. You can return or exchange your purchase for up to 120 days from the purchase date. Returned or exchanged products must be in the condition you received them and in the original box and/or packaging.
Sample Refund Policy (for Services)
This is a sample that you can use to create/customize the refund policy for services to be displayed on your website:
If you are not 100% satisfied with your purchase, within 120 days from the purchase date, we will fully refund the cost of your order.
API 6.0 Error Codes
Learn how to handle APIv6 error codes.