Skip to main content

Verifi Global Payment Gateway


Verifi Global Payment Gateway

Verifi's Global Payment Gateway specializes in providing advanced fraud and risk management services. The Verifi gateway can connect to all domestic payment processors and a variety of international payment processors. Verifi's portfolio of managed services include chargeback representment, cardholder dispute resolution network, decline salvage, and data analytics. Merchants with high chargeback rates look to Verifi for their expertise in chargeback prevention, management, and dispute resolution.

Enable the Verifi Gateway for Your Tenant

Contact Zuora Global Support to enable this gateway in your tenant.

Configure the Payment Gateway

Once the gateway is enabled for your tenant, configure your gateway by going to Payments Settings > Setup Payment Gateway page. When selecting a Gateway Type, choose Verifi. 

Common Fields for Configuration

There are some common fields you must complete for every gateway configuration. We recommend reviewing our Setup Payment Gateway documentation for information on these common fields: 

  • Name
  • Use Gateway Test Environment
  • Cards Accepted
  • Default Authorization Amount
  • Verify new payment method (optional)
  • Verify updated payment method (optional)

Default Authorization Amount

The Verifi gateway accepts only a $0.00 authorization amount, which Verifi will use to perform card validation. For $0.00 authorizations the Verifi validate() is used to process a non-financial transaction against the credit card. This type of authorization will still return a response for both Address Verification Service (AVS) and Card Verification Value (CVV) Code. Verifi's API documentation states "some processing networks may return an invalid authorization code and this value should be ignored."

Since Zuora's payment gateway configuration allows you to define any authorization amount you want, we will use the Verifi auth() if you configure the default authorization amount to be greater than $0.00. The auth() does process a financial transaction against the credit card, but this transaction is immediately reversed using the void().


In addition to the common fields, every gateway has unique requirements and information (such as credentials) that you must provide to configure the gateway in Zuora. For Verifi, you must enter a username, password, and product. 

User Name

This is the username assigned to you (the merchant) by Verifi. It is a numeric 50 digit value that identifies you in the Verifi gateway.


This is the password for the username. 


Zuora will default the product to "Subscription" but this field can be modified.  The text in this field is passed into Verifi's Merchant Defined Field 3 (MDF3). See the Additional Gateway Information "Merchant Defined Fields" below for more information. 

Testing Your Configuration

We recommend testing your selected payment gateway using both your payment gateway's test and production (live) environments.  Once you have completed testing in the gateway's test environment, it is recommended that you perform a test in your live production environment with a real credit card. If there are any differences in the configuration of your testing and production accounts, testing in production ensures your production merchant account is set up properly and can successfully connect to the production environment.

Accessing Your Gateway's Test Environment

Some payment gateways provide separate credentials for merchants to access their testing environment, some gateways use the same credentials for testing as for the production (live) environment but direct test transactions to a different URL, and other gateways do a little of both. Verifi provides credentials for their test environment in the Verifi API Documentation under the "Testing Information" section. See "Test Credit Cards and Testing Scenarios" below for more information on how to obtain this document. 

Accessing the Gateway Test or Live Environment from Zuora

When configuring the Verifi payment gateway in Zuora, you can indicate whether you would like to use the Verifi test environment or the Verifi live environment. 

  • If Use Gateway Test Environment is selected, Zuora will direct payment transactions to your Verifi's test environment.
  • If Use Gateway Test Environment is not selected (disabled), Zuora will direct payment transactions to the Verifi production environment.

     Your credentials for the Test and Live Environments will be different. Obtain your Test credentials from the Verifi API Documentation (see "Testing Information").

Test Credit Cards and Testing Scenarios

Test credit card numbers and testing scenarios can be found in Verifi's API Documentation (see "Testing Information" on page 32). Zuora Global Support has a copy of this document which we can provide you, however, we recommend contacting your Verifi implementation manager, account manager, or the Verifi Support team for the latest version of this document. This guide provides specific credit card account numbers and data to include in your testing to generate specific gateway responses.

General Testing Information

Integration Testing

Zuora owns and manages the integration to Verifi on an ongoing basis, thoroughly testing the integration with every new release. The Verifi integration documentation is helpful if you are integrating Verifi directly with your website, however, you do not need to perform any integration or certification testing to submit transactions to Verifi via the Zuora application. The intended audience for the integration guides are technical integrators, however, these documents can be helpful to non-technical integrators who can refer to it for information on testing and troubleshooting gateway errors. Integration guides and all necessary documentation are provided to you by your Verifi implementation team. 

Performance and Volume Testing

In general, gateway testing environments are intended to give merchants the opportunity to test their gateway and integrations to their gateway, in order to work out any bugs before going to the production environment. Some gateway test environments are shared amongst multiple merchants, and other gateways provide unique testing environments for each merchant. Additionally, gateway test environments (also referred to as certification or sandbox environments) do not have the same high availability or performance capability as production environments. As such, they are not intended for load testing. Merchants performing high volumes of load testing that puts a strain on a shared test environment may receive a warning from the gateway or have their access to the testing environment suspended

Troubleshooting Gateway Errors

There are several ways to obtain information about gateway errors:

  • Look up the transaction by the transaction ID number (in the Zuora payment detail page, this is the Reference ID and Secondary Reference ID numbers) in your Verifi gateway virtual terminal to see if more information is provided; often you will see more than just the response (reasons) code and response message in Zuora.
  • Review Verifi's API Documentation for transaction response codes and descriptions.
  • For additional assistance or to obtain the Verifi API Documentation, you can contact the Verifi support team.

Make Sure You Are Not Re-Trying an Invalid Card Too Many Times

We recommend that you check the payment in Zuora to see how many times the same payment method has been re-tried for payment and failed. If there have been several retries, check the error messages from the beginning with the first failure and the more recent failures to determine if the error message is the same. If a merchant tries to process a payment against the same credit card too many times despite receiving errors, this could trigger warnings to the card issuing bank. The card issuing bank may place an alert on the account and not allow any further transactions from the merchant using that payment method. When a merchant has been flagged, the error received on the payment may not state the reason why, instead it might be a generic error decline error. In this case, the merchant (Zuora customer) should work with Verifi and/or your payment processor to see if they can identify the problem with the payment method. If the processor does not know, then the merchant and/or the cardholder can try calling their card issuing bank to look into the issue.

Duplicate Transaction Decline Error

If you receive an "Error Processing Transaction.300 Duplicate Transaction REFID: 326976199" it may be caused by a duplicate check by Verifi. The Verifi gateway checks for duplicates when orders are submitted within 20 minutes of each other and the same payment method, same dollar amount for the transaction, and same order ID are used for the transaction (see below for more information on order ID) are used for the transaction.

Additional Gateway Information

Payment Methods Supported

See Supported Payment Methods by gateway documentation for the most up to date information. 

Merchant Defined Fields (Optional)

Zuora supports all of Verifi's Merchant Defined Fields (MDFs) from MDF1 through MDF20, allowing up to twenty MDFs to be passed per payment method authorization, payment, or refund transaction. MDF Fields are used to provide Verifi with important information about your business that Verifi will use when processing the transaction. Verifi may use this information for advanced transaction analysis, to trigger rules and filtering, as well as dynamically routing transactions. Information passed in these MDF fields should be accurate as the information is especially critical to mitigating and remediating fraud and risk.

The table below contains 3 columns: 

  • Verifi MDF Field Name: This is the name of the field in the Verifi gateway. In the API these fields are represented like this: Merchant Defined Field 1 is merchant_defined_field_1. 
  • Verifi Description: Listed are common data points to give you an idea as to the type of data commonly passed in these fields. You may not use all these fields or pass the exact data, as you would only pass the information and MDFs applicable to your business. 
  • Zuora Data Passed in MDF Field: Zuora will pass information in these fields by default with every payment and refund transactions (including create/update payment method, payment, create refund). Any of the Zuora data passed can be overriden using Zuora's gateway options, allowing you to customize the data passed in any of the 20 Verifi MDF fields.

Verifi MDF Field Descriptions

Verifi MDF Field Name

Verifi Description

Zuora Data Passed In MDF Field

Merchant Defined Field 1

Customer ID

Customer Account Number

Merchant Defined Field 2

Level of Continuity Indicator Account Age

Total Number of Processed Payments for the Payment Method

Merchant Defined Field 3

Product Group/Brand

Text from the Product Field on the Gateway Configuration

Merchant Defined Field 4

Product ID, SKU(s)


Merchant Defined Field 5

Sales Center ID, URL


Merchant Defined Field 6

Sales Center Agent ID

Customer Account Sales Rep Name

Merchant Defined Field 7

Affiliate ID


Merchant Defined Field 8

Campaign ID


Merchant Defined Field 9

Retry Count
(Recurring Payments)

Number of Consecutive Failed Payments for the Payment Method

Merchant Defined Field 10

Shipping Method


Merchant Defined Field 11

Order Channel


Merchant Defined Field 12

Verify Indicator


Merchant Defined Field 13

Refund Indicator


Merchant Defined Field 14

Product Position


Merchant Defined Field 15

Acquisition Cost


Merchant Defined Field 16

Review Indicator


Merchant Defined Field 17



Merchant Defined Field 18

Device Profiling Session ID

Device Session Profiling ID from the Payment Method

Merchant Defined Field 19

Card Product Indicator Code


Merchant Defined Field 20

Verifi Processed


API Support Only for MDFs

MDFs are only supported via the Zuora API, with exception of MDF3 which can be configured when setting up your Verifi payment gateway using the field for "Product" (under Credentials). In the Zuora API, these MDFs are represented like this: Merchant Defined Field 1 is merchant_defined_field_1. If you would like to pass in different data for one of the MDFs in which Zuora passes default information (these are MDF1, MDF 2, MDF3, MDF6, MDF9, MDF18), you can do so utilizing gateway options.

Sale vs Authorize and Capture (Delayed Capture) Verifi API Calls

Sale transactions are immediately flagged for settlement, as is standard for most gateways. All payments in Zuora are submitted as a Sale transaction. 

If you have a use case where you need to authorize a payment amount prior to capturing the payment, you will need the delayed capture functionality. For example, your company sells goods online but ships the product at a later time. You want to authorize a payment amount at the time of the order, and when the goods are shipped you capture the payment. 

Delayed capture is supported in this integration by passing the transaction data using the Verifi auth and capture API calls. An authorization is typically active for 3-7 days from the authorization date (however this can vary by different card issuing banks), and the payment can be captured as long as the authorization is active. Upon capture, the payment transaction is flagged for settlement and for most credit card transactions, settlement can be almost immediate.

Delayed Capture: Single Capture

The integration allows you to capture a payment amount equal to or less than the authorized amount. The authorization can only be captured once (this is a single capture). Therefore, you cannot capture part of an authorization amount now, then capture the remaining at a later time. If you have a use case that requires capturing partial payment upfront and capturing the remaining payment amount at a later time, you should create two separate authorizations and two separate captures.

Order ID

The integration uses the PaymentMethodId as the Order Id in the payment method verify() from which a payment method gets created. For a Payment transaction, the PaymentId is used as the Order Id in the sale() when the payment is created. Zuora does not pass an Order ID for Refund transactions to the payment gateway. To clarify, PaymentMethodID is not used in the void, auth, or capture API calls. 

Settlement Cut Off Time

Payment gateways have a cut off time by which payment transactions have to be received by the gateway if you want the payment(s) to be submitted for settlement that same day. Some gateways, such as Verifi, alllow you to customize this cutoff time. 

  • Daily Cutoff Time = 00:00 GMT (midnight) but is customizable. 
  • Extended Void Period = 00:00 - 02:00 GMT
    Verifi provides an extended Void Period to allow void transactions to be submitted which may cancel a payment that is pending settlement. 

Enable Additional Gateway Services Using Gateway Options (Optional)

You can use Zuora's gateway options to enable additional services provided by Verifi such as:

Gateway options allow you to pass in custom information with your transactions (any value can be passed) and Verifi can use the data to enable or trigger additional gateway services.  For example, gateway options can be used to pass in information such as IP Address or Device Session ID. 

As previously mentioned, you can use gateway options to overwrite the data which Zuora passes over by default in the Merchant Defined Fields (MDF), specifically MDF1, MDF 2, MDF 3, MDF6, MF9, MDF18. 

To enable additional services provided by Verifi, you will need to be signed up for the service through Verifi and the service must be enabled for your Verifi merchant account. Please direct inquiries regarding Verifi's gateway features associated fees to use such features to your Verifi account manager. 

Soft Descriptors (Optional)

Merchant soft descriptors are supported with the integration, allowing you to submit any information you want about the purchase. This soft descriptor appears on your customer's credit card statement and helps identify what the charge is for. Examples of soft descriptors are your product name, company name, store locations. Using soft descriptors helps prevent chargebacks that occur when a customer does not recognize a charge on their credit card and mistakes it for fraud. 

Zuora API Mapping for Soft Descriptors

The Zuora API fields for soft descriptors map to the Verifi API fields as follows:

Zuora API Field Name Zuora API Object Verifi API Name Field Type Field Size