Skip to Contact an Expert Skip to Main Content
cardpointe logo
Developer Docs
Statuspage
Search Icon
Support
hamburger-menu
    Developer Docs
    Statuspage
  • Support
  1. Payment Industry Certifications and Compliance
  2. Merchant Surcharge Program
  • Payment Industry Certifications and Compliance
  • 3-D Secure 2.0
  • Merchant Surcharge Program
    • Overview
    • Understanding the Merchant Surcharge Program
    • Important Considerations
    • Integrated Payment Application Changes
    • CardPointe Payment Application Changes
    • On This Page

      Overview
      • What's New?
    • On This Page

      Understanding the Merchant Surcharge Program
    • On This Page

      Important Considerations
      • Card Brand Requirements
      • Merchant Surcharge Program Guidelines
    • On This Page

      Integrated Payment Application Changes
      • CardPointe Gateway API
      • CardPointe Mobile SDK
      • CardPointe Integrated Terminal
    • On This Page

      CardPointe Payment Application Changes
      • CardPointe Virtual Terminal
      • CardPointe Hosted Payment Page
      • CardPointe Mobile
      • CardPointe Retail Terminal
  • Public PGP Key
  • Refund Authorizations
  • Visa Decline Rules and Responses
  • Visa and Mastercard Stored Credential Transaction Framework Mandate
  • Fiserv ACH Account Validation

Effective October 16th, 2024, the Merchant Surcharge Program supports flexible credit card surcharge rates of 1.0% to 3.0%.

 

Previously, the credit card surcharge rate was fixed at 3.0%.

Overview 

 

Surcharging allows merchants to add a "% checkout fee" to a credit card transaction, paid by the cardholder, to help cover the merchant’s credit card processing fees.

 

The CardPointe Gateway supports the Merchant Surcharge Program to allow eligible merchants to add a surcharge on applicable credit card transactions. This guide provides an overview of the Merchant Surcharge Program as it relates to the CardPointe Gateway, including card brand requirements and related application changes.

 

You should review this guide to help determine if the Merchant Surcharge Program is right for your business.

The Merchant Surcharge Program is only available to qualifying merchants enrolled in a Merchant Services account and processing on the First Data Rapid Connect platform.

What's New?

Date Updated: October 16th, 2024 

The Merchant Surcharge Program now supports flexible credit card surcharge rates of 1.0% to 3.0%. 

 

Previously, the credit card surcharge rate was fixed at 3.0%.

Understanding the Merchant Surcharge Program 

 

When you enroll in the Merchant Surcharge program, a surcharge rate will be set for your merchant account. Once enabled, this surcharge rate will automatically be applied to the subtotal amount of all eligible transactions.

 

Eligible transactions are all credit card payments, including recurring payments.

For card-not-present transactions, if the cardholder resides in a restricted region the surcharge will not be applied. 

Depending on the application(s) you use to accept payments, you may need to make minor changes to your integration or business processes. See Integrated Payment Application Changes for updates to the CardPointe Gateway API, and CardPointe Payment Application Changes for updates to the CardPointe Virtual Terminal, HPP, and other applications.

Important Considerations 

 

Review the following important considerations to determine if the Merchant Surcharge Program is right for your business.

Card Brand Requirements

  • Review state and local regulations for surcharging. The following US states and territories do not allow surcharging:

     

    States
    • Connecticut (CT)
    • Massachusetts (MA)
    Territories
    • Puerto Rico
    Armed Forces Locations
    • Domestic (AF)
    • EU (AE)
    • Pacific (AP)
    • US (AA)

     

    Merchant locations within these regions cannot enroll in the Merchant Surcharge Program or add a surcharge to their transactions. Additionally, cardholders residing in these locations are exempt from surcharging for card-not-present e-commerce, mail, telephone, and recurring transactions. For these transactions, the CardPointe Gateway disables surcharging at the transaction level when a cardholder's postal code matches a restricted region.

  • Update in-store and in-app messaging to clearly notify cardholders that a surcharge will be applied to applicable transactions.

    See the following examples, provided by Visa, for more information: https://usa.visa.com/dam/VCOM/download/merchants/sample-surcharge-disclosure-signage.pdf.

Merchant Disclaimer

As a merchant enrolled in the Merchant Surcharge Program, you are responsible for your compliance with the Card Brand requirements. Note the following:

  • There may be other disclosure requirements related to surcharging depending on your type of business and where you are located. Please review the Card Brand rules and any state laws to determine what applies to your business. You are solely responsible for preparing disclosures that comply with applicable laws.

  • Notices/Disclosures indicating that you are assessing a surcharge on credit card purchases must be posted at all points of customer interface, including point of entry and point of sale/transaction.

  • Some states have additional disclosure requirements whereby businesses are not allowed to advertise one price, and then add a surcharge at the point of sale when a consumer elects to pay with a credit card. Instead, businesses are required to inform consumers of the higher credit card price for each product or service by posting the higher prices. In these states, merchants must clearly post the dollar and cents amount of each product or service offered. Additionally, businesses may be required to inform consumers of the higher credit card price for each product or service by posting the dollar and cents amount of the higher price.

    Specifically, for New York state merchants, the state of New York requires merchants that surcharge customers to display the maximum price that a consumer might pay for a product, regardless of payment method. This means the total price displayed should include the surcharge amount in dollars and cents. Refer to the official New York State Senate website for details: https://www.nysenate.gov/legislation/bills/2023/A2672/amendment/B

  • In addition to card brand regulations and other applicable laws, merchants in Colorado are responsible for ensuring that they are in compliance with Colorado state law, including but not limited to Colorado Senate Bill 21-091. See https://leg.colorado.gov/bills/sb21-091 for more information.

  • Colorado merchants must present the following disclosure to their merchants:

    TO COVER THE COST OF PROCESSING A CREDIT OR CHARGE CARD TRANSACTION, AND PURSUANT TO SECTION 5-2-212, COLORADO REVISED STATUTES, A SELLER OR LESSOR MAY IMPOSE A PROCESSING SURCHARGE IN AN AMOUNT NOT TO EXCEED THE MERCHANT DISCOUNT FEE THAT THE SELLER OR LESSOR INCURS IN PROCESSING THE SALES OR LEASE TRANSACTION. A SELLER OR LESSOR SHALL NOT IMPOSE A PROCESSING SURCHARGE ON PAYMENTS MADE BY USE OF CASH, A CHECK, OR A DEBIT CARD OR REDEMPTION OF A GIFT CARD.

Merchant Surcharge Program Guidelines

In addition to the requirements each merchant must meet to enable surcharging, note the following restrictions and limitations:

  • Surcharges cannot be applied to transactions when the cardholder is paying with a Signature Debit, PIN Debit, PINless Debit, or Prepaid card. For these payment types, the surcharge will not be applied.

  • Surcharges cannot be applied to card-not-present e-commerce, mail, telephone, and recurring transactions when the cardholder's postal code matches a restricted region. For these transactions, the merchant must provide the cardholder's postal code to validate the cardholder's eligibility. If the postal code matches a restricted region, the surcharge will not be applied.

  • The Credit Card Surcharge Rate is applied to the post-tax amount of the transaction by the CardPointe Gateway.

  • The Credit Card Surcharge Rate cannot vary at the transaction level. The Credit Card Surcharge Rate is set for the merchant account, and automatically applied to applicable transactions.

  • The Credit Card Surcharge Rate cannot be applied to partial authorizations. Partial authorizations are automatically disabled on surcharge-eligible transactions.

Note the following CardPointe product restrictions:

  • The CardPointe Mobile App is currently not supported for use with the Merchant Surcharge Program. Merchants enrolled in the program should not attempt to process transactions using CardPointe Mobile, because the transactions will decline.
  • Merchants enrolled in the AMEX ESA program cannot enroll in the Fiserv Merchant Surcharge Program.

  • Merchants enrolled in the Discover Direct program cannot enroll in the Fiserv Merchant Surcharge Program

Integrated Payment Application Changes 

 

The following topics describe important changes to the CardPointe Gateway API and related integrated payment applications to support the Merchant Surcharge Program.

CardPointe Gateway API

If your application is integrated with the CardPointe Gateway API, you will need to make minor updates to your integration to support additional response fields returned when surcharging is enabled, as well as minor updates to your authorization and capture requests, to ensure that surcharges are handled correctly.

 

As described in the Card Brand Requirements above, you must also display in-app disclosure that a credit card surcharge is will be applied.

Additionally, if your application is not already collecting and providing the cardholder's postal code in the payment request, you must update your integration to include this data. Once surcharging is enabled for a merchant account, all card-not-present transactions for that merchant must include a postal code for validation purposes.

New Authorization Request Parameters 

FieldMax LengthType Description

fee_excluded_amount

14N

When allowing the customer to provide a tip amount on a receipt, and then performing a delayed capture/tip adjustment on the initial authorization amount, include the customer-specified tip amount in the fee_excluded_amount field to exclude the tip amount from the surcharge calculation. 

For example, when capturing a $10 authorization, with a $4 tip adjustment, the capture request includes "amount":"1400" and "fee_excluded_amount":"400" to ensure that the $4 tip amount is excluded from the surcharge calculation. 

Note: When the tip amount is included in the authorization, the surcharge is applied to the tip amount as well.

postal9AN

For card-not-present e-commerce, mail, telephone, and recurring transactions, merchants must gather the cardholder's postal code and include it in the authorization request to ensure that cardholders in restricted territories are not surcharged.

If surcharging is enabled, but no postal code is supplied in the authorization request, the transaction will be declined by the CardPointe Gateway. If the cardholder's postal code is included, but matches a restricted location, then the surcharge will be waived and the transaction will be processed normally.

waiver1AN

For forced credits, when the initial authorization did not include a surcharge, include "waiver":"y" in the request to avoid adding the configured surcharge amount to the forced credit.

New Response Fields 

Field Max LengthTypeDescription
fee_amount14NThe surcharge amount applied to the transaction, in dollars and cents. "0.00" if the surcharge was waived or bypassed.
fee_authcode6NDuplicate of the authcode field.
fee_format7ANThe surcharge format configured for the merchant account. Always "percent" when a surcharge is successfully applied to the transaction. Empty ("") if the surcharge was waived or bypassed.
fee_merchid--Not applicable for surcharge transactions; returns an empty value ("").
fee_retref-

-

Not applicable for surcharge transactions; returns an empty value ("").
fee_type13ANThe type of fee applied to the transaction. Always "SURCHRG" when a surcharge is successfully applied. "SURCHRG_WAIVED" if the surcharge was waived or bypassed.
fee_value3NThe surcharge rate applied to the transaction,  for example, "300" when a 3.0% surcharge is successfully applied. Returns "0" if the surcharge was waived or bypassed.

Request and Response Examples 

Expand the following examples to see how the CardPointe Gateway handles the following scenarios for merchants enrolled in the Merchant Surcharge Program.

    
       
Request

{
  "merchid": "777777777778",
  "account": "9370197441551006",
  "amount": "5000",
  "expiry": "1224"
}

Response

{
  "fee_value": "350",
  "amount": "51.75",
  "resptext": "Approval",
  "fee_authcode": "PPS468",
  "commcard": "N",
  "cvvresp": "P",
  "fee_type": "SURCHRG",
  "respcode": "000",
  "avsresp": "Z",
  "entrymode": "Keyed",
  "merchid": "777777777778",
  "token": "9370197441551006",
  "authcode": "PPS468",
  "respproc": "RPCT",
  "fee_amount": "1.75",
  "bintype": "",
  "fee_format": "percent",
  "expiry": "1224",
  "retref": "132519139221",
  "respstat": "A",
  "fee_retref": "",
  "account": "9370197441551006",
  "fee_merchid": ""
}
    

    
       
Request

{
  "merchid": "777777777778",
  "account": "9457943444201933",
  "amount": "5000",
  "expiry": "1222"
}

Response

{
  "fee_value": "0",
  "amount": "50.00",
  "resptext": "Approval",
  "fee_authcode": "PPS015",
  "commcard": "N",
  "cvvresp": "P",
  "fee_type": "SURCHRG_WAIVED",
  "respcode": "000",
  "avsresp": "Z",
  "entrymode": "Keyed",
  "merchid": "777777777778",
  "token": "9457943444201933",
  "authcode": "PPS015",
  "respproc": "RPCT",
  "fee_amount": "0.00",
  "bintype": "",
  "fee_format": "",
  "expiry": "1222",
  "retref": "132495138187",
  "respstat": "A",
  "fee_retref": "",
  "account": "9457943444201933",
  "fee_merchid": ""
}
    

    
       
Request

{
  "retref": "132498138370",
  "merchid": "777777777778"
}

Response

{
  "fee_value": "350",
  "amount": "51.75",
  "resptext": "Approval",
  "fee_authcode": "REFUND",
  "fee_type": "SURCHRG",
  "respcode": "00",
  "merchid": "777777777778",
  "respproc": "PPS",
  "fee_amount": "1.75",
  "fee_format": "percent",
  "retref": "132499138378",
  "respstat": "A",
  "fee_retref": "",
  "fee_merchid": ""
}
    

    
       
Request

{
  "retref": "132501138471",
  "merchid": "777777777778"
}

Response

{
  "fee_value": "0",
  "amount": "0.00",
  "resptext": "Approval",
  "fee_authcode": "REVERS",
  "fee_type": "SURCHRG",
  "respcode": "000",
  "merchid": "777777777778",
  "authcode": "REVERS",
  "respproc": "RPCT",
  "fee_amount": "0.00",
  "fee_format": "",
  "currency": "USD",
  "retref": "132501138471",
  "respstat": "A",
  "fee_retref": "",
  "fee_merchid": ""
}
    

    
       
Request

{
  "merchid": "777777777778",
  "account": "9370197441551006",
  "amount": "5000",
  "expiry": "1224"
}

Response

{
  "amount": "0.00",
  "resptext": "Surcharge Not Supported",
  "cardproc": "RPCT",
  "commcard": "N",
  "respcode": "104",
  "entrymode": "ECommerce",
  "merchid": "777777777778",
  "token": "9370197441551006",
  "respproc": "PPS",
  "bintype": "",
  "expiry": "1224",
  "retref": "132518139170",
  "respstat": "C",
  "account": "9370197441551006"
}
    

    
       
Request

{
  "merchid": "777777777778",
  "account": "9370197441551006",
  "amount": "5000",
  "expiry": "1224",
  "postal": "06857"
}

Response

{
  "fee_value": "0",
  "amount": "50.00",
  "resptext": "Approval",
  "fee_authcode": "PPS020",
  "commcard": "N",
  "cvvresp": "P",
  "fee_type": "SURCHRG_WAIVED",
  "respcode": "000",
  "avsresp": "Z",
  "entrymode": "ECommerce",
  "merchid": "777777777778",
  "token": "9370197441551006",
  "authcode": "PPS020",
  "respproc": "RPCT",
  "fee_amount": "0.00",
  "bintype": "",
  "fee_format": "",
  "expiry": "1224",
  "retref": "132513138902",
  "respstat": "A",
  "fee_retref": "",
  "account": "9370197441551006",
  "fee_merchid": ""
}
    

    
       
Request

{
  "merchid": "777777777778",
  "retref": "132515139031",
  "amount":"6000",
  "fee_excluded_amount":"1000"
}

Response

{
  "fee_value": "350",
  "amount": "61.75",
  "resptext": "Approval",
  "setlstat": "Queued for Capture",
  "fee_authcode": "PPS021",
  "fee_type": "SURCHRG",
  "respcode": "000",
  "batchid": "292",
  "merchid": "777777777778",
  "token": "9370197441551006",
  "authcode": "PPS021",
  "respproc": "RPCT",
  "fee_amount": "1.75",
  "fee_format": "percent",
  "retref": "132515139031",
  "respstat": "A",
  "fee_retref": "",
  "account": "9370197441551006",
  "fee_merchid": ""
}
    

    
       
Request

{
  "merchid": "777777777778",
  "account": "9370197441551006",
  "amount": "-5000",
  "expiry": "1224",
  "waiver": "Y"
}

Response

{
  "fee_value": "0",
  "amount": "-50.00",
  "resptext": "Approval",
  "fee_authcode": "REFUND",
  "commcard": "N",
  "cvvresp": "U",
  "fee_type": "SURCHRG_WAIVED",
  "respcode": "00",
  "batchid": "292",
  "avsresp": "U",
  "entrymode": "Keyed",
  "merchid": "777777777778",
  "token": "9370197441551006",
  "authcode": "REFUND",
  "respproc": "PPS",
  "fee_amount": "0.00",
  "bintype": "",
  "fee_format": "",
  "expiry": "1224",
  "retref": "132517139123",
  "respstat": "A",
  "fee_retref": "",
  "account": "9370197441551006",
  "fee_merchid": ""
}
    

    
       
Request

{
  "merchid": "777777777778",
  "account": "9370197441551006",
  "amount": "-5000",
  "expiry": "1224"
}

Response

{
  "fee_value": "350",
  "amount": "-51.75",
  "resptext": "Approval",
  "fee_authcode": "REFUND",
  "commcard": "N",
  "cvvresp": "U",
  "fee_type": "SURCHRG",
  "respcode": "00",
  "batchid": "292",
  "avsresp": "U",
  "entrymode": "Keyed",
  "merchid": "777777777778",
  "token": "9370197441551006",
  "authcode": "REFUND",
  "respproc": "PPS",
  "fee_amount": "-1.75",
  "bintype": "",
  "fee_format": "percent",
  "expiry": "1224",
  "retref": "132516139077",
  "respstat": "A",
  "fee_retref": "",
  "account": "9370197441551006",
  "fee_merchid": ""
}
    

CardPointe Mobile SDK

If your mobile application is integrated with the CardPointe Mobile SDKs for tokenization, and the CardPointe Gateway API for payments, you will need to update your application to align with the CardPointe Gateway API changes described above. 

 

As described in the Card Brand Requirements above, you must also display in-app disclosure that a credit card surcharge will be applied.

CardPointe Integrated Terminal

The CardPointe Integrated Terminal solution supports credit card surcharging with minimal updates to existing integrations.

 

See the CardPointe Integrated Terminal Developer Guide for integration details and requirements.

CardPointe Payment Application Changes 

 

The Merchant Surcharge Program is currently supported on the CardPointe Virtual Terminal and the CardPointe Hosted Payment Page (HPP).

 

Enhancements to support the Merchant Surcharge Program will be available in future updates of the CardPointe Mobile Application.

The changes to these applications are currently in development; additional information will be available as development completes.

CardPointe Virtual Terminal

The CardPointe Virtual Terminal has been enhanced with support for the Merchant Surcharge Program. Merchants enrolled in the program will have a credit card surcharge automatically applied to all eligible credit card transactions, including billing plan payments, processed on the Virtual Terminal.

 

The Virtual Terminal and transaction receipts include an itemized breakdown of the subtotal, credit card surcharge amount, and total amount of the transaction, when the credit card surcharge is applied.

 

In addition to the requirements described in Important Considerations earlier in this guide, note the following important changes and considerations for surcharging on the Virtual Terminal.

You must notify cardholders that a credit card surcharge will be applied to credit card payments, including payments using a Customer Profile when the payment method is a credit card, and the cardholder's zip code is not a restricted location.

Cardholder Zip Codes  

  • For card-not-present (e-commerce, mail, telephone, and billing plan) credit card transactions, you must enter the cardholder's zip code to ensure that cardholders in restricted territories are not surcharged. You will be unable to process these transactions on the Virtual Terminal without entering the zip code.

  • Additionally, all Customer Profiles used for billing plans must include a valid zip code. For existing billing plans, ensure that the associated profile includes the cardholder's zip code. Billing plan transactions without a zip code will be declined by the CardPointe Gateway.

  • If a cardholder's zip code matches a restricted territory, the surcharge will not be applied.

Billing Plans 

  • As mentioned above, all billing plan transactions must include a valid zip code in the associated Customer Profile; billing plan transactions without a zip code will be declined by the CardPointe Gateway.

  • Existing billing plans must be updated to charge the proper amount, per the agreement with the cardholder, unless you obtain the cardholder's agreement to continue the billing plan at the increased cost.

Tips and Tip Adjustments 

  • For tips collected at the time of the sale, the tip value is included in the surcharge calculation.

  • For tip adjustments after the time of sale, the tip value is excluded from the surcharge calculation.

  • Only one of these tipping models can be enabled at a time.

Card-Present Transactions 

  • CardPointe Integrated Terminals support card-present credit card surcharging, for merchants enrolled in the Merchant Surcharge Program.

    See Credit Card Surcharging in the CardPointe Integrated Terminal Developer Guide for detailed information and requirements

  • Card-present credit card surcharging is also supported on the CardPointe Virtual Terminal, when using a supported card reader device to accept card-present payments.

 

 

CardPointe Hosted Payment Page (HPP)

For merchants enrolled in the Merchant Surcharge Program the HPP displays a surcharge disclaimer and itemized Subtotal, Credit Card Surcharge, and Total amounts on the Payment Page and receipt for eligible credit card transactions.

 

In addition to the requirements described in Important Considerations earlier in this guide, note the following considerations for surcharging on the HPP:

  • If the customer enters a debit card number on the payment page, the surcharge is not applied, and the surcharge details are not displayed on the Payment Page or receipt.
  • If the customer's postal code matches a location that does not permit surcharging, the surcharge is not applied, and the surcharge details are not displayed on the Payment Page or receipt.

CardPointe Mobile

Support for the Merchant Surcharge Program on the CardPointe Mobile apps for Android and iOS is currently in development.

The CardPointe Mobile app is not supported for use with the Merchant Surcharge Program at this time. Merchants enrolled in the program should not attempt to process transactions using the CardPointe Mobile app, because transactions will decline.

CardPointe Retail Terminal

Merchants using a Desk-series CardPointe Retail Terminal can automatically accept a surcharge on applicable transactions.
 

For merchants enrolled in the Merchant Surcharge Program, the terminal will now display a credit card surcharge subtotal, fee amount, and total. When a payment card is presented, the terminal determines the card type and applies or waives the surcharge accordingly.
 

Additionally, the receipt generated by the terminal includes a surcharge disclaimer and line item details when a credit card surcharge is applied.
 

Note the following important considerations.

Tips and Gratuity

 

  • Tip at time of sale

    For retail and counter service merchants who accept gratuity on the terminal at the time of sale, the tip is included in the subtotal amount prior to the surcharge calculation, and this calculation is displayed to the cardholder on the terminal.
     

  • Tip on receipt (tip adjustment)

    For restaurant and table service merchants who accept gratuity on a receipt, the receipt includes a disclaimer that a surcharge will be applied to credit card transactions.
     

Refunds and Returns

 

When refunding a transaction, we recommend prompting the customer to provide the same card used in the original sale to ensure that the correct amount is refunded to the customer. 
 

Using different cards can result in an incorrect refund amount if a surcharge is applied in either the authorization or refund, but waived in the other, due to different card types (credit and debit) used in both transactions.

For example:
 

  1. A customer makes a $100 purchase with a credit card, and a surcharge is applied, totaling $103.

  2. The customer returns the purchase for a refund, and presents a debit card.

  3. You refund the original sale amount, and the surcharge is waived, returning $100 to the cardholder.

Site Selector