Skip to main content

Overview

Introduction

Use the Avangate API to create, update and extract product catalog and pricing information for your account, place orders and manage subscriptions.

Workflow

  1. Use the following URLs:

https://api.avangate.com/soap/3.0/

Full service description is available at: https://api.avangate.com/soap/3.0/?wsdl

  1. Authenticate using the login method and create a session (connection).
  2. Throughout the lifetime of the session (max 10 minutes) you can invoke all Avangate API methods. To invoke methods you need to send a request to Avangate.
  3. The Avangate system provides responses for all requests.

Code samples

The code samples included in this document work with PHP version 5.6.  

 

UnionPay (to be deprecated)

   This payment method will be deprecated. It is only currently available on API. A new version is available here.

Overview

UnionPay is a payment method available worldwide, but very popular in APAC countries. It supports recurring payments.

Availability

UnionPay is very popular in China, Macau, Hong Kong, and Singapore.

Supported currencies

CNY, USD, EUR, GBP, AUD, CAD, CHF, JPY, PLN, SEK, RUB, BRL, ZAR.

Workflow

  1. Consumers place orders and choose to pay with UnionPay.
  2. Consumers are redirected to UnionPay and select their preferred authentication method
  3. UnionPay submits the authorization request to 2Checkout.
  4. The issuer provides feedback with the result of the transaction to UnionPay. When a transaction is successful the funds are transferred to UnionPay.
  5. UnionPay provides feedback with the result of the transaction to an intermediary payment processor.
  6. The payment process provides feedback with the result of the transaction to the 2Checkout.
  7. UnionPay provides reporting to the payment processor.
  8. The payment processor settles the funds directly into 2Checkout's local bank account, issues reports, and invoices.

F.A.Q.

  1. What email does 2Checkout send to shoppers to confirm orders?
    • 2Checkout send emails similar to those used for the Wire transfer process, treating UnionPay as an offline payment method (not instantaneous).
  2. Does 2Checkout send follow-up emails for unfinished payments with UnionPay?
    • 2Checkout sends the same type of emails as it does for other offline payment methods: Bank/Wire transfer, Boleto/Pix, Konbini, Giropay. The first email is sent 7 days after shoppers place their order.
  3. How long does 2Checkout try to collect funds for an unfinished payment?
    • 2Checkout performs daily, successive tries to collect funds for orders placed using UnionPay as a payment method for 30 days.

Neteller

Overview

Neteller is a digital wallet that allows you to perform online payments in multiple currencies. Neteller provides businesses and individuals with a fast, simple and secure way to pay online. The Neteller account is an online stored-value account that over 23 million account holders use to transfer funds to Neteller merchants.

Availability

Neteller is available on all 2Checkout accounts. Go to Payment methods to enable it on your account.

Neteller is available worldwide, except for Japan.

Benefits

  • Enhanced payment experience. Neteller Money Transfer is a fast, simple, and secure way to instantly send money online.
  • Increased market share. Neteller is an online payments provider with over 23 million account holders.
  • Safer payment environment. Neteller uses industry best practices to offer its holders a secure payment environment.

Currencies

2Checkout supports Neteller payments in the following currencies: 

  • EUR
  • USD
  • GBP

Purchase flow

  1. Shoppers select the Neteller payment method during checkout and continue to the next step.
  2. 2Checkout redirects them to Neteller.
  3. They log in to their Neteller account and confirm the payment.
  4. Once the payment is done, 2Checkout redirects shoppers to the shopping cart Thank you page.

Recurring billing

Neteller does not support recurring billing for subscription renewals.

IPN

IPN notifications for orders placed with Neteller have the value NETELLER associated with the PAYMETHOD_CODE parameter.

Refunds

Neteller supports automatic refunds.

Lead management

You can engage your customers through Lead Management campaigns, for turning unfinished payments into complete orders. More details here.

 

Order search chargeback info export

Overview

Use Order search data portability capabilities to generate and export a chargeback dispute report.

Create a custom template for the chargeback report in order search

Before generating a chargeback report you need to create its corresponding order search export template. Follow these steps:

  1. Go to Orders & customers -> Order search.
  2. Run a search. Optional: you can filter results, but this is not necessary.
  3. Click Export.
  4. Click Edit templates in the pop-up.
  5. Click Add new template on the Export Templates settings page.
  6. Enter a unique name for this order search export template. For example: Custom Chargebacks Report.
  7. Select the information that will be included in this report. For example:
    • Under Order:
      • Reference no
      • Order date
      • Chargeback status
      • Chargeback reason
    • Under Product:
      • Product ID
      • Product
    • Under Price:
      • Currency
      • General total
    • Under Customer and End User information:
      • Client
    • This enables you to choose the column headers of the order search report which can be exported as a .CSV (comma separated values) or an .XLS (Excel) file, or the XML elements when the export is a XML file.
  8. Once you selected the type of details to be included into the report, click the arrow button between the Additional Column headers and the Template Column headers fields.
  9. The desired details will be added to the Template Column headers. Click Save to add the new template to the list of existing items.

Note: You can include additional info in the report, based on your account's specific setup.

For complete guidance on order search export templates please read: Custom order search export templates - XML , CSV, XLS.

Export a custom chargeback report using order search

  1. Navigate to Order search under Orders & customers.
  2. Under order status, select Finished. Chargebacks can only be opened for finished orders.
  3. Select the desired order search interval.
  4. Run a search.
  5. Click the Export button.
  6. In the pop-up, select the desired download format, for example CSV.
  7. Open the menu under Export Templates and select the custom chargeback export template you created. Click Export.
  8. Save the exported chargebacks report locally on your machine, and open it with your preferred CSV editor (you can use Office Excel for example).

The report will include all orders returned to the search you performed, but you can filter content based on the Chargeback reason and Chargeback status column headers.

 

Field name Description Data type Length

Chargeback Status

The status of the chargeback dispute from the moment the report is generated.

Possible values:

OPEN = a chargeback was opened by a customer and the dispute continues to be unresolved.

WON = the dispute was won by you and no money were paid back to the customer.

LOST = the dispute was lost and the entire value of the order was reimbursed to the customer.

NONE = if a chargeback wasn't requested.

string

VARCHAR(20)

Chargeback Reason

The reason why the chargeback was initiated. Possible values:

 

1. Order not fulfilled/not delivered: Customers claim that they did now receive the product they purchased or that they cannot access the service acquired.

2. Product(s) not as described/unfunctional:Customers claim that the product/subscription/service purchased does not work or functions differently than you advertised it would.

3. Duplicate order: Customers claim that they were charged twice when purchasing the same product.

4. Fraud/Order not recognized:Customers claim that they don't recognize the charge.

5. Agreed refund not processed: Customers have opened a chargeback dispute because the refund they agreed on with you failed to process.

6. New/renewal order not recognized: Customers have opened a chargeback dispute because the refund they agreed on with you failed to process.

7. Authorization problem:Customers claim that the payment authorization failed and are surprised to see that the charge went through.

8. Information request: The customer's bank requested details about a charge. This is a temporary status, which can be closed once customers recognize the charge, or result in a chargeback for one of the reasons listed above.

string

VARCHAR(80)

Overview

Introduction

Use the Avangate API to create, update and extract product catalog and pricing information for your account, place orders and manage subscriptions.

Workflow

  1. Use the following URLs:

https://api.avangate.com/soap/4.0/

Full service description is available at: https://api.avangate.com/soap/4.0/?wsdl

  1. Authenticate using the login method and create a session (connection).
  2. Throughout the lifetime of the session (max 10 minutes) you can invoke all Avangate API methods. To invoke methods you need to send a request to Avangate.
  3. The Avangate system provides responses for all requests.

Code samples

The code samples included in this document work with PHP version 5.6.  

 

Recurring promotions

Overview

Apply promotions to recurring charges, overwriting the renewal price configured for each product included in the promotion.

Availability

You can configure all regular promotions to apply to either all recurring charges or a limited number.

Adding a recurring promotion

  1. Go to Marketing tools -> Promotions -> Regular promotions.
  2. Click Add regular promotion.
  3. Give the promotion a suggestive title and description. Shoppers can see the promotion title during purchase.
    • Add localized promotion names for any of the supported languages. The 2Checkout shopping cart automatically displays localized promotion names based on the selected shopping cart language.
  4. Select when you want the promotion to run. You can limit promotions to a specific time interval or let them run indefinitely. To start a promotion as soon as you mark it Active, leave the start date empty. If you don't set the end date, the promotion will stop when the maximum number of orders has been reached or will continue to run if the maximum number of orders is unlimited.
  5. Choose the coupon/voucher type:
    • Single - one voucher to impact multiple orders;
    • Multiple - individual and unique, per-order vouchers.
  6. Choose whether to restrict the promotion to a number of orders, or apply it for all orders. This option is only available for single coupons.
  7. Fill in the promotion coupon/voucher code. The maximum length of a coupon code is 255 alphanumeric characters.
    • Single: enter the coupon values manually
    • Multiple: either add the values manually one coupon per line, or use the coupon generator available in the Merchant Control Panel to generate 5, 10, 20, 30, 50, or 100 vouchers at a time and either append them to an existing list or replace existing items. The generator creates random vouchers that resemble this: D8C10E32. 2Checkout recommends limiting the number of coupon codes to a maximum of 25000.
  8. Choose whether or not to apply discounts automatically. Only available for single coupons. This option applies discounts to all selected products in all orders, without the need for shoppers to enter the coupon manually.
  9. Configure the recurring settings. You can apply it to none, to one recurring charge, to all or to a specific number of recurring charges after which the renewal price is recalculated.
  10. Choose whether or not to publish the promotion to the 2Checkout Affiliate Network.
  11. Activate the promotion.
  12. Select the products to be included in the promotion.
  13. Click Save.

Renewal discounts

As an alternative to recurring promotions, you can configure renewal discounts. In this case, the coupon is applied automatically per product during renewal. 

  1. Go to Setup -> Renewal -> Renewal discounts.
  2. Click Add renewal discount.
  3. Enter a promotion title (visible to shoppers during purchase) and description.
    • Add localized promotion names for any of the supported languages. The 2Checkout shopping cart automatically displays localized promotion names based on the selected shopping cart language.
  4. Enter the discount coupon code in the discount code field.
  5. Set the discount to either percentage-based or fixed.
  6. Select the number of renewal charges to apply the discount to. You can apply it to:
    • one renewal charge 
    • each renewal charge
      • Formally named The first renewal charge only
      • Discounted price will be calculated on each renewal.
    • all renewal charges
      • Discounted price is only calculated once and used for all future renewals (usage costs are not impacted).
    • each number of renewal charges (defined by you)
      • Formally named A limited number of charges
      • Discounted price is calculated every x renewal charges.
  7. Save the promotion.

By choosing to apply the discount to all renewal charges, 2Checkout will set the discounted price as the subscription custom price.

Extract invoices

Overview

Use the getInvoices method to extract shopper invoices from the Avangate system based on unique order references. The method returns the binary code for invoices in the PDF file format, Base64 encoded (Base64 is used to represent binary data in the ASCII string format).

getInvoices works for COMPLETE orders for which an invoice was already issued. For refunded orders, getInvoices provides two shopper invoices, one for the original order and the second for the refund, reflecting the repayment made.

In the case of cross-selling orders which contain products from different merchants, getInvoice enables you to re-send only the invoices for your own offerings.

Parameters

Parameters Type/Description

sessionID

Required (string)

 

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

reference

Required (string)

 

Unique, system generated reference for orders.

Request

<?php

require ('PATH_TO_AUTH');

$reference = 'ORDER_REFERENCE';

$jsonRpcRequest = array (
'method' => 'getInvoices',
'params' => array($sessionID, $Reference),
'id' => $i++,
'jsonrpc' => '2.0');

var_dump (callRPC((Object)$jsonRpcRequest, $host, true));

Response

Parameters Type/Description

InvoicesData

Array of objects

 

 

Details below.

 

Sale

String

 

 

Base64 encoded PDF file containing an invoice for a Complete order.

 

Cancellation

String

 

 

Base64 encoded PDF file containing a cancellation invoice.

 

Refunds

Array of string

 

 

Base64 encoded PDF files containing invoices for Refunds.

Validate order source

Overview

2Checkout provides a HASH signature enabling you to check the source and validity of placed orders in scenarios requiring customers to go through extra steps after successfully finishing the ordering process to access the purchased product/service.

An example is requiring some additional information from your customers after they place the order to let them access their subscription.

  1. The customer places the order and views the Thank you page.
  2. The customer is redirect to your website via a link containing all parameters necessary for you to validate the order.
  3. You need to check the data sent by the 2Checkout system.

Usage

2Checkout offers the following elements that you can use for validation:

  1. The securityHashSource string. securityHashSource is a serialized value of the order reference number, order status, list of products IDs, list of quantities for each product and order date.

    Example: securityHashSource components:

    • order reference number (643276 - 6 characters); 

    • the order status (AUTHRECEIVED - 12 chars);

    • two products (with IDs 123456 - 6 chars, and 234567 - 6 chars);

    • quantities for each product ( 2 x 123456 and 3 x 234567);

    • order date (2012-11-02 20:32:12 - 19 characters); 
      The esulting securityHashSource is: 664327612AUTHRECEIVED61212345662345671213192012-11-02 20:32:12 - logically divided as following (6)643276(12)AUTHRECEIVED(6)12123456(6)234567(1)2(1)3(19)2012-11-02 20:32:12.

      Explanation: (no. of chars) ref. no. value (no. of chars) order status (no. of chars for each product id) product id (no. of chars for each quantity) quantity value (no. of chars) order date value. Note: datetime stamps sent use the timezone of the 2Checkout servers.

  2. The securityHash string is created using hmac for the securityHashSource and your 2Checkout secret code. For PHP: hash_hmac('md5', $hashSource, $SECRETKEY).
  3. Order date is also offered to help with hash integrity, ensuring that it cannot be used twice. Order date can also be parsed from the securityHashSource (standard string of 19 chars).

Extract invoices

Overview

Use the getInvoices method to extract shopper invoices from the 2Checkout system based on unique order references. The method returns the binary code for invoices in the PDF file format, Base64 encoded (Base64 is used to represent binary data in the ASCII string format).

getInvoices works for COMPLETE orders for which an invoice was already issued. For refunded orders, getInvoices provides two shopper invoices, one for the original order and the second for the refund, reflecting the repayment made.

In the case of cross-selling orders which contain products from different merchants, getInvoice enables you to re-send only the invoices for your own offerings.

Parameters

Parameters Type/Description

sessionID

Required (string)

 

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

reference

Required (string)

 

Unique, system generated reference for orders.

Response

Parameters Type/Description

InvoicesData

Array of objects

 

 

Details below.

 

Sale

String

 

 

Base64 encoded PDF file containing an invoice for a Complete order.

 

Cancellation

String

 

 

Base64 encoded PDF file containing a cancellation invoice.

 

Refunds

Array of string

 

 

Base64 encoded PDF files containing invoices for Refunds.

Request

<?php

require ('PATH_TO_AUTH');

$reference = 'ORDER_REFERENCE';

try {
    $invoices = $client->getInvoices($sessionID, $reference);
}
catch (SoapFault $e) {
    echo "invoices: " . $e->getMessage();
    exit;
}
var_dump("invoices", $invoices);

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