# Virtual Terminal

The Virtual Terminal is a tool that can be used to initiate payments for card-not-present (CNP) transactions. Virtual Terminal allows merchants to accept payments over the telephone or email. When the cardholder shares their card details over the phone or via email, the merchant must comply with PCI DSS obligations and  securely store the card details.

Payment triggered by the Virtual Terminal can be actions like captured, refunded, cancelled or voided via the transaction details available in the Transaction Reports.&#x20;

The Virtual Terminal capabilities include pre-authorization which can be followed-up manually by a capture. Currently, supported service providers are ABS and NETS.

Combining 3-D Secure and mail or telephone orders is not possible.

{% embed url="<https://vimeo.com/1140505189/59c3ea3c45?fe=cm&fl=pl>" %}

## Requirements <a href="#requirements" id="requirements"></a>

{% hint style="warning" %}
Before you start using the Virtual Terminal and in order to start accepting eCommerce transactions, you will need to generate a [Secure Card Capture Key](/online-payments/api-integration-methods-auth-and-endpoints/secure-card-capture-key.md).
{% endhint %}

## Access <a href="#access" id="access"></a>

Your level of access determines if you can process payments via the Virtual Terminal.

✅ **Access:**

* Merchant Cashier — Initiate payment and cancel/void payment
* Merchant Supervisor — Initiate payment, capture/refund/cancel/void payment

🚫 **No access:**

* Merchant Admin
* Merchant Reviewer
* Merchant User

## How to use the Virtual Terminal   <a href="#how-to-use-the-virtual-terminal-__00a0" id="how-to-use-the-virtual-terminal-__00a0"></a>

### Payment settings <a href="#payment-settings" id="payment-settings"></a>

You must set the following configurations to initiate the payment:&#x20;

<div data-with-frame="true"><img src="https://verifone.cloud/sites/default/files/inline-images/VT%20Promo%20Code.jpg" alt="" width="375"></div>

1. Select your **Organization**. The *Organization* drop-down list is displayed only if your user has access to more than one organization and there are more than 20 applicable Payment Provider Contracts.
2. Select the **Payment Provider Contract** (PPC) linked to your organization. The payment provider contract is configured to accept a set of payment methods. If the organization has only one PPC, the PPC drop-down list will not be displayed.

   <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p>For Virtual Terminal the Payment Provider Contract needs to have mail/telephone (MOTO) available as sales channel.<br>If the <em>Allow unmatched refunds</em> option is enabled for your Payment Provide Contract, the <strong>Unlinked refund</strong> checkbox will be displayed. For more information check the <a href="/pages/sFs6CxQ9QodwrAEBNKR6">Unmatched Refunds </a>documentation.</p></div>
3. Select your **Transaction Type.** Depending on your Organization setup, you may have two options: **Sale** (for single purchases) and **Recurring** (see the [Stored credentials](/online-payments/stored-credentials.md) documentation.)
4. Select the **Authorization Type** (Authorization, Authorization with capture or Preauthorization - see more details in the [Transaction Types and Statuses ](broken://spaces/Q3smMgXPN2Pd9t38gg1d/pages/D5SsUYk2ja6STlo4ptL4)documentation).&#x20;

   <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p>The transaction and authorization types are displayed only if they are  supported by the chosen processor. </p></div>
5. Enter the value of the payment in the **Amount** field. The currency code will be determined based on the Payment Provider Contract. If a contract is configured to process multiple currencies, the currency code field will be a select box. The default currency will pre-populate as per your Organization's setup.

   * (**For** [Westpac](/online-payments/supported-acquirers.md#westpac)) In the *Transaction Settings* section, you can select the **Amount & product** option. For this option, you can use the [Product Catalog](/online-payments/pay-by-link/product-catalog.md) feature.
   * In the *Product Name* field, you can choose one of three options:

     <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p>You can turn ON or OFF the <em>Use Product Catalog</em> option by selecting the toggle button. If turned OFF, the product information will be added manually and the product will not be added to the <em>Product Catalog</em> page. </p></div>

     * Search the product by product name and the details will prepopulate in their respective fields.
     * **Add to product catalog**: if a product is not present in the catalog, then you can proceed by adding a product to the catalog. Follow the steps from the [Add new product](/online-payments/pay-by-link/product-catalog.md#add) section, within the [Product catalog](/online-payments/pay-by-link/product-catalog.md) documentation.
     * **Manually enter product**: this option disables the *Use Product Catalog* feature and allows you to enter the product manually (enter the product description, quantity, the price per unit). The total price will be calculated based on quantity. The product entered manually will not be saved in the catalog. Use the **Add Product** button for additional product lines.<br>

       <div data-with-frame="true"><figure><img src="https://verifone.cloud/sites/default/files/inline-images/image_73.png" alt="" width="375"><figcaption></figcaption></figure></div>

   \
   You can also specify per product line item whether it is taxable or not, by enabling the **GST** (Goods and Services Tax) toggle button. <br>

   <div data-with-frame="true"><figure><img src="https://verifone.cloud/sites/default/files/inline-images/1_129.JPG" alt="" width="375"><figcaption></figcaption></figure></div>
6. The **Merchant Reference** (optional) is either an Order ID from the ordering system or a random string. The purpose for this field is to accommodate for the merchants' own administration. If no information is entered, a default value of **DefaultMerch** will be used.
7. The **Transaction Description** (optional) is the information which will show up on the customers bank statement. Doing Business As (DBA name) — required when registering with the schemes. If the dynamic descriptor is not being used, the Doing Business As (DBA) name will be used as reference on the bank statement.
8. For the Israel market, the Virtual Terminal also supports new transaction types: **instalments, sale preferred Isracard and Sale Direct Debit.** Additional information on instalments can be found [here](/online-payments/checkout/instalments/instalments-in-israel.md).
9. The **Promo Code** (optional) field can be completed with a code offered by the merchant to customers who can use it to receive a discounted price when buying products online.
10. Once the configuration has been completed, click on **Continue to Payment** to proceed to the next step.

### Payment form <a href="#payment-form" id="payment-form"></a>

On the next page, you will see the **Payment form**. Here, you input the customer's card number, expiration date, and CVV.

<div data-with-frame="true"><img src="https://verifone.cloud/sites/default/files/inline-images/2_52.JPG" alt="" height="513" width="473"></div>

{% hint style="info" %}
Make sure you store the *Merchant Reference* for your records.
{% endhint %}

1. Enter the Card Number, Expiration date, and CVV.
2. Click on **Pay** to complete the transaction, or only authorize the funds.

### Payment status <a href="#payment-status" id="payment-status"></a>

Once a transaction is completed successfully, a confirmation will be displayed.

<div data-with-frame="true"><img src="https://verifone.cloud/sites/default/files/inline-images/VT%20Transaction%20Processed.jpg" alt="" height="572" width="498"></div>

You can now do the following:&#x20;

* Click on **New Transaction** to start a new transaction
* Click on **More Details** to review transaction details

The transaction can be found in *Orders / Transactions report* by searching for the **Merchant Reference**.

<div data-with-frame="true"><img src="https://verifone.cloud/sites/default/files/inline-images/1_54.jpg" alt=""></div>

If you are using **Woodforest** or **Worldpay US** as an acquirer, the *Payment status* page will also include the Authorization code.

If the transaction failed, the page would look like this:

<div data-with-frame="true"><img src="https://verifone.cloud/sites/default/files/inline-images/3_51.JPG" alt="" width="375"></div>

## Merchant action scenarios <a href="#merchant-action-scenarios" id="merchant-action-scenarios"></a>

Once all the payment settings are configured, you enter the card number. The card number is the customer's card number. After typing in the first six digits, the form displays which brand the card is.

Here is an overview of the various scenarios:

<table data-full-width="true"><thead><tr><th width="136" valign="top">Card type</th><th width="90" valign="top">Card validated</th><th valign="top">Portal display</th><th valign="top">Merchant actions</th><th valign="top">Additional actions</th></tr></thead><tbody><tr><td valign="top">Single brand</td><td valign="top">Y</td><td valign="top">Card brand provided</td><td valign="top">Fill in the expiration date of the customer's card</td><td valign="top">If the transaction is authorized, a confirmation screen is shown.</td></tr><tr><td valign="top">Single brand</td><td valign="top">N</td><td valign="top"><p>An error message is displayed. </p><p>If the expiration date is in the past, an error message explains what is wrong with the input.</p></td><td valign="top"><p>Choose to ask for the CVV or not.</p><ul><li>Store how the card details were received (Telephone/Mail)</li><li>Initiate the payment</li></ul></td><td valign="top"><p>If the CVV check is negative, highlight the result.</p><p>Example: The CVV does not match the required length.</p><p>Ask the user which payment action should be taken - cancel or refund.</p></td></tr><tr><td valign="top">Dual-branded</td><td valign="top">Y</td><td valign="top"><ul><li>If the PPC is configured for one of the brands and the brand that is not configured cannot be selected.</li><li>If the PPC is configured for both brands, the cashier can ask the cardholder which scheme to process the transaction.</li></ul></td><td valign="top"><p>Choose to ask for the CVV or not.</p><ul><li>Store how the card details were received (Telephone/Mail)</li><li>Initiate the payment</li></ul></td><td valign="top">If the transaction is authorized, a confirmation screen is shown</td></tr><tr><td valign="top">Dual-branded</td><td valign="top">N</td><td valign="top">If the <em>bin lookup</em> fails, an error message is shown to the user</td><td valign="top">Choose to ask for the CVV or not</td><td valign="top"><p>The user initiates the payment.</p><p>If the CVV check is negative, highlight the result.</p><p>Ask the user which payment action should be taken - cancel or refund.</p></td></tr></tbody></table>

## Transactions with Stored Credentials <a href="#transactions-with-stored-credentials" id="transactions-with-stored-credentials"></a>

Stored Credential Payments through the Virtual Terminal follow the same flow as any other Payments through the Virtual Terminal.

There are two types of recurring transactions: SIGN-UP and CHARGE.

The Sign-up transaction is the initial transaction used to actually enroll the shopper for a recurring sequence.

The Charge transaction is (one of) the transactions done with a re-use token, which was created with the Sign-up transaction.

Verifone's Virtual Terminal allows merchants in Israel to do Stored Credential Transactions via UI. The Virtual Terminal UI enables filling out Stored Credential Framework-specific fields as part of MOTO Transactions.

### ABS transactions - functional aspects <a href="#abs-transactions-__002d-functional-aspects" id="abs-transactions-__002d-functional-aspects"></a>

Virtual Terminal supports recurring transactions using ABS WEB provider.&#x20;

The following Stored Credentials Framework-specific functionality is present on the Payment settings page. You need to perform the following steps:

1. Select *Transaction Type* **Recurring**.
2. Use the checkbox to indicate if the Transaction intended to be done is a Sign-up Transaction. If it is ticked, the following Stored Credential-specific fields are shown:

   * **Token scope**: As a drop-down menu, the possibility to select the Token Scope to be used for this Transaction
   * **Total number of payments**: An optional field asking for the count of total number of payments, where the field accepts any number value without validation
   * **Total value**: An optional field asking for the total value of all the Transactions following this Sign-up Transaction. The amount field accepts any number value without validation.
   * **Processing model:** A radio button offering a selection between the available Stored Credential processing models, which can be:
     * **Recurring**
       * If the **Recurring** processing model is selected, then the following additional field is shown:
         * **Frequency**: A field asking for the frequency of the following Charge Transactions. The amount field accepts any number value without validation up to a maximum of 52.
     * **None**
       * If the **None** processing model is selected, then the following additional field is shown:
         * **Merchant sign-up code**: An optional field asking for the Merchant sign-up code.
   * **Amount**: A field asking for the Transaction amount. If it is a Sign-up Transaction for ABS, the Transaction amount is fixed 0.01.

   <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><p>For ABS, a Sign-up Transaction is a Pre-Authorization Transaction that should not be Captured.</p></div>
3. Leave the box unchecked if the Transaction intended is a Charge Transaction. If it is unticked, the following Stored Credential-specific fields are shown:
   * **Sign-up reference**: A field asking for the reference received for a Sign-up Transaction, which can be:
     * ABS UID
     * Verifone Stored Credential Reference
   * **Standing order number**: An optional field asking for the sequence number of this Charge Transaction. The field accepts any number value without validation.
   * **Processing model**: A radio button offering a selection between the available [Stored Credential processing models](/online-payments/stored-credentials.md#how-it-works), which can be:
     * Recurring
     * Unscheduled Credential on File

### Woodforest and Worldpay US transactions - functional aspects <a href="#woodforest-and-worldpay-us__00a0transactions-__002d-functional-aspects" id="woodforest-and-worldpay-us__00a0transactions-__002d-functional-aspects"></a>

Virtual Terminal supports recurring transactions using the Woodforest and Worldpay US providers. The sign up transaction must be created using ecommerce API.

The following Stored Credentials Framework-specific functionality is present on the Payment settings page. You need to perform the following steps:

1. Select *Transaction Type* **Recurring**.
2. Use the checkbox to indicate if the Transaction intended to be done is a Sign-up Transaction. If it is ticked, the following Stored Credential-specific fields are shown:

   * **Processing model**: A radio button offering a selection between the available [Stored Credential processing models](/online-payments/stored-credentials.md#how-it-works), which can be:
     * None
     * Recurring

   Details on use cases for stored credentials can be found in the article located [here](/online-payments/stored-credentials.md).

   * **Amount**: A field asking for the Transaction amount
   * **Amount is taxable**: A checkbox you need to click on if the amount is to be taxed.&#x20;
   * **Tax Amount**: The amount of tax to be paid on the purchase. This is only displayed if the **Amount is taxable** checkbox is checked.&#x20;
   * **PO Number (Purchase Order Number)**: The number of the purchase as assigned by you.&#x20;
   * **Merchant Reference**: Optional field that can be used to pass an internal reference ID
   * **Transaction Description:** Optional field that can be used to pass information directly on the customer's bank statement
3. Leave the box unchecked if the Transaction intended is a Charge Transaction. If it is unticked, the following Stored Credential-specific fields are shown:
   * **Sign-up reference**: A field asking for the reference received for a Sign-up Transaction, which can be:
     * Verifone Stored Credential Reference
   * **Processing model**: A radio button offering a selection between the available [Stored Credential processing models](/online-payments/stored-credentials.md#how-it-works), which can be:
     * Credential on File
     * Recurring
     * Unscheduled Credential on File

<div data-with-frame="true"><img src="https://verifone.cloud/sites/default/files/inline-images/6_12.JPG" alt="" height="675" width="465"></div>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.verifone.com/online-payments/virtual-terminal.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
