Developer
  • Getting started keyboard_arrow_down

    Discover

    • arrow_forward
      EV Charging

      Discover our unattended POS solution for the ev market

    Our solutions

    • arrow_forward
      CCV Terminal

      Integrate with a CCV Terminal

    • arrow_forward
      SoftPOS

      Turn your own device into a payment terminal

    • arrow_forward
      CCV Online Payments

      Accepting online payments in your platform without technical knowledge

    • arrow_forward

    • arrow_forward

    Connect to the CCV Platform

    Integrate our products into your software. Let's make payment happen together!

    Look at all the possibilities
  • Documentation
  • API Reference
menu
    • expand_less Payment API
      • expand_more General
        • Communication
        • Environments
        • Authentication
        • Idempotency
        • Transaction Types
        • Webhooks
        • Notifications
        • Error Handling
        • Security & Privacy
        • Return URL
      • expand_less Online Payments
        • expand_more Quick Start
          • Initial Setup
          • Create Payment
        • expand_more Basic Operations
          • Create A Payment
          • Refund A Payment
          • Authorise & Capture Payments
          • Query The Payment Status
        • expand_less Payment Features
          • expand_less 3D-Secure 2
            • SCA And 3D-Secure 2
            • Compliance Guide
            • Out Of Scope Transactions
            • Exemptions
          • Payment Links
          • Merchant Initiated Payments
          • Embedded Card Payments
          • Mandates
          • Customers & Loyalty
          • Partial Payment
        • expand_more Payment Methods
          • American Express
          • Apple Pay
          • Google Pay
          • expand_more Bancontact
            • Bancontact Walled Initiated Payments (WIP)
            • Bancontact Deferred Sales
          • Bancontact Mobile
          • Banktransfer
          • IDEAL
          • Klarna
          • Landingpage
          • Maestro
          • Mastercard
          • Payconiq
          • Paypal
          • Visa
        • expand_more Payouts
          • Split Payout
          • Test Payout
        • expand_more Developer Resources
          • Currencies
          • Languages
          • Payment Testing
          • Test Cards
      • expand_more In-person Payments
        • expand_more SoftPOS
          • expand_more General
            • Getting Started
            • Device Requirements
            • SoftPOS TerminalIds
            • SoftPOS Errors
            • Currencies
            • Languages
            • Network And Connectivity
            • Release Notes
          • expand_more Basic Operations
            • Install A Terminal
            • Make A Payment
            • Handling Receipts
          • expand_more API Reference
            • SoftPOS - API Reference
    • expand_more Board Your Merchants At CCV
      • expand_more General
        • Getting Started
        • Authentication
      • expand_more Boarding API
        • StartOrder
        • AddSalesPackage
        • AddProductPSPStandalone
        • AddProductPSPSubmerchant
        • AddTerminalPackage
        • SetShoppingCartPricingDetails
        • SubmitOrder
        • Boarding
      • API Reference
    • expand_more Android Rest Beta API
      • expand_more General
        • Getting Started
        • Brands
        • Supported Languages
      • expand_more Basic Operations
        • Make A Payment
        • Cancel A Payment
        • Handling Receipts
        • Show Display Messages
        • Recover A Payment
      • expand_more Payment Features
        • Authorise & Capture
        • Capture
      • expand_more Terminal Features
        • Transaction Overview
        • Brands
        • Period Closing
        • Terminal - Status
      • expand_more Tokenization
        • Tokenization - Get A Card Token
        • Read A Mifare Card
        • Custom Text On Terminal
      • expand_more API Reference
        • API Reference
    • expand_more Android SDK
      • expand_more General
        • Getting Started
        • Demo Application - Android SDK
        • Result States
        • Language Codes
        • Error Handling
        • Logging
        • EP2
        • Download SDK
        • Release Notes
      • expand_more Basic Operations
        • Make A Payment
        • Stop Ongoing Payment
        • Recover A Payment - Android SDK
      • expand_more Payment Features
        • Account Selection - Android SDK
        • Additional Receipt Text - Android SDK
        • Allow Or Deny Card Brands - Android SDK
        • Authorisation By Voice - Android SDK
        • Authorise - Android SDK
        • Capture - Android SDK
        • Card Detection - Android SDK
        • Card Detection Deprecated - Android SDK
        • Card Token - Android SDK
        • Card Validation - Android SDK
        • Customer Display - Android SDK
        • E-Receipt - Android SDK
        • Manual Card Information Entry - Android SDK
        • Payment Reversal - Android SDK
        • Refund - Android SDK
        • Request Transaction Information - Android SDK
        • Reservation - Android SDK
        • German Eichrecht - Android SDK
      • expand_more SDK Guides
        • Activate Terminal - Android SDK
        • Card Circuits - Android SDK
        • Card Reader Status - Android SDK
        • Card Reader Status - Android SDK
        • Check Password - Android SDK
        • Factory Reset - Android SDK
        • Get Config - Android SDK
        • Get Status - Android SDK
        • Mobile Phone Prepaid - Android SDK
        • Online Agent - Android SDK
        • Partial Period Closing - Android SDK
        • Period Closing - Android SDK
        • Possible Transaction Types - Android SDK
        • Retrieve Last Ticket - Android SDK
        • Retrieve Open Pre Authorisations - Android SDK
        • Startup - Android SDK
        • Taxfree - Android SDK
        • Terminal Administration - Android SDK
        • Terminal Discovery - Android SDK
        • Ticket Reprint Period Closing - Android SDK
        • Transaction Overview - Android SDK
        • Check Password - Android SDK
      • expand_more Hardware Access
        • Getting Started
        • NFC - Android SDK
        • Printing - Android SDK
        • QR And Barcode Scanner - Android SDK
      • expand_more API Reference
        • API Documentation
    • Android App Requirements
    • expand_more Certification
      • Introduction
      • expand_more Attended Certification Tests
        • expand_more Aborting
          • F1A - Regular Abort By Merchant
          • F1B - Failing Abort By Merchant
          • F1D - Hammering Abort By Merchant
        • expand_more Allowed Amounts
          • S1A - Transaction With Amount Of EUR 0,00
          • S1B - Transaction With Negative Amount
          • S1C - Transaction With Highest Possible Amount
          • S1D - Over-Amount Transaction
        • expand_more Connection Lost
          • Q1B - Manual Transaction Recovery
          • Q1C - Ethernet Connection With ITS Fails
          • Q1F - Device Unavailable
          • Q1G - Terminal Not Responding
          • T1A - Automatic Transaction Recovery
        • expand_more E Journal
          • M1A - Store E-Journal
          • M2A - ECR/POS Print Journal Receipts
          • M3A - ECR/POS Storing Journal Receipts
        • expand_more Reprint Ticket
          • L1A - Reprint Ticket
          • L1B - Reprint Ticket Declined Transaction
          • L2A - Reprint Ticket No Printer Available
          • L2B - Reprint Ticket Declined Transaction No Printer Available
        • expand_more Tickets
          • U1A - Request For Identification
          • U1B - Request For Signature
          • U1C - Request For Signature And Identification
          • U1D - Failing Transaction No Receipt
          • U1E - Split Payment
        • expand_more Time Out
          • R1A - Time Out On Presenting A Card
          • R1B - Time Out During Pin Entry
        • expand_more Transactions
          • C1A - Happy Flow
          • C1B - Happy Flow Contactless
          • C1D - Happy Flow Magnetic Stripe
          • C1E - Declined Transaction By Host
          • C1E - Transaction Aborted By Cardholder
          • C1F - Absence Of Thousand Separator
          • C1G - Cashier Display Messages
        • expand_more Validation
          • H1A - Too Many Fingers
          • H1B - Not Removing Card
          • H2A - Power Loss Or Closing Of ECR/POS During Transaction
      • expand_more Unattended Certification Tests
        • expand_more User Guidance
          • C1 - Successful Payment
          • C2 - Next Cardholder
          • C3 - Abort On PIN Entry
          • C4 - Time Out During PIN Entry
          • C5 - No Amount Entered
          • C6 - Language Selection
          • C7 - Amount To Authorise
          • C8 - Available Funds
        • expand_more Device Selection
          • D1 - Device Selection
          • D2 - Invalid Device
          • D3 - Charger Selection Abort
          • D4 - No Charger Selected
          • D5 - Authorisation With No Free Devices
        • expand_more Product Delivery
          • E1 - Product Selection
          • E2 - Enabled Products
          • E3 - Invalid Product Entered
          • E4 - Product Selection Aborted
          • E5 - No Product Selected
          • E6 - Max Delivery Time
          • E7 - Abort Session
          • E7 - Abort By POS
          • E9 - Not Started Charging In Time
          • E10 - Take More Fuel Than AVF
          • E10 - Multiple Sessions Mixed
          • E12 - Postpone Card Financial Advice On New Cardholder Card
          • E13 - Abort Session On Card Reinsert
        • expand_more Receipts
          • F1 - Cardholder Retrieve Receipt Info
          • F2 - Cardholder Receipt Retrieval
          • F3 - Reprint Ticket
          • F4 - F8 - Ticket Printing And Content
          • F9 - TrackingToken Deleted
          • F10 - Printer Paper Low
          • F11 - CardPayment Erased From Storage
          • F12 - E-Receipt Received By Cardholder
          • F13 - E-Receipt Failure
        • expand_more Transaction Limit Handeling Maestro
          • G1 - Maestro CardPayment 1 Euro
          • G2 - Maestro CardPayment 30 Euro
          • G3 - Maestro CardPayment 60 Euro
          • G4 - Maestro CardPayment 500 Euro
        • expand_more Transaction Limit Handeling Mastercard
          • H1 - Mastercard CardPayment 1 Euro
          • H2 - Mastercard CardPayment 30 Euro
          • H3 - Mastercard CardPayment 60 Euro
          • H4 - Mastercard CardPayment 500 Euro
        • expand_more Mifare Handling
          • I1 - Happy Flow Mifare
          • I2 - Unknown Mifare Card
          • I3 - No Mifare Card Presented
          • I4 - Mastercard Presented
        • expand_more Card Circuits
          • L1 - Available Card Circuits
        • expand_more Reconciliation
          • M1 - Reconciliation As Function
          • M2 - Reconciliation By New Shiftnumber
          • M3 - POS Auto Triggers Reconciliation With Closure
        • expand_more Journal
          • N1 - Journal Accessible By Authorized Employees
          • N2 - Journal Cannot Be Altered
        • expand_more Exception Flows
          • O1 - Unknown Card Session
          • O2 - Maximum Time Out
          • O3 - Device Unavailable
          • O4 - Time Out Card-Type Fallback
          • O5 - Time Out On Presenting Card
          • O6 - App Stability
          • O7 - Automatic Startup
          • O8 - Sleep Mode Not Supported
          • O8 - Sleep Mode Supported
        • expand_more Recovery
          • X1 - Recovery After Communication Failure
          • X2 - Recovery After CCV Component Update
          • X3 - Recovery After 24 Hour Reboot
          • X4 - Recovery After CCV-Fusion Client Restart
          • Y1 - Recovery After Power Failure With No Battery Backup
          • Y2 - Recovery After Power Failure With Battery Backup
      • expand_more SoftPOS Certification Tests
        • expand_more Success Scenarios
          • Installation Success - SoftPOS Certification Test
          • Payment Success - SoftPOS Certification Test
        • expand_more Failed Scenarios
          • Installation Failed - CCV SoftPOS App Not Installed - SoftPOS Certification Test
          • Payment Failed - Declined - SoftPOS Certification Test
          • Payment Failed - CCV SoftPOS App Is Closed During Payment - SoftPOS Certification Test
          • Payment Failed -CCV SoftPOS App Is Killed During Payment - SoftPOS Certification Test
          • Payment Failed - SoftPOS App Not Installed Anymore - SoftPOS Certification Test
        • expand_more Other Scenarios
          • Other Scenario - Data Cleared Of The CCV SoftPOS App - SoftPOS Certification Test
    • expand_more Development Kits
      • SoftPOS Dev Kit
      • IM30 Dev Kit
    • Glossary

Payment API

  • General
    • Communication
    • Environments
    • Authentication
    • Idempotency
    • Transaction Types
    • Webhooks
    • Notifications
    • Error Handling
    • Security & Privacy
    • Return URL
  • Online Payments
    • Quick Start expand_more
      • Initial Setup
      • Create Payment
    • Basic Operations expand_more
      • Create A Payment
      • Refund A Payment
      • Authorise & Capture Payments
      • Query The Payment Status
    • Payment Features
      • 3D-Secure 2
        • SCA And 3D-Secure 2
        • Compliance Guide
        • Out Of Scope Transactions
        • Exemptions
      • Payment Links
      • Merchant Initiated Payments
      • Embedded Card Payments
      • Mandates
      • Customers & Loyalty
      • Partial Payment
    • Payment Methods expand_more
      • American Express
      • Apple Pay
      • Google Pay
      • Bancontact expand_more
        • Bancontact Walled Initiated Payments (WIP)
        • Bancontact Deferred Sales
      • Bancontact Mobile
      • Banktransfer
      • IDEAL
      • Klarna
      • Landingpage
      • Maestro
      • Mastercard
      • Payconiq
      • Paypal
      • Visa
    • Payouts expand_more
      • Split Payout
      • Test Payout
    • Developer Resources expand_more
      • Currencies
      • Languages
      • Payment Testing
      • Test Cards
  • In-person Payments
    • SoftPOS expand_more
      • General expand_more
        • Getting Started
        • Device Requirements
        • SoftPOS TerminalIds
        • SoftPOS Errors
        • Currencies
        • Languages
        • Network And Connectivity
        • Release Notes
      • Basic Operations expand_more
        • Install A Terminal
        • Make A Payment
        • Handling Receipts
      • API Reference expand_more
        • SoftPOS - API Reference

What's on this page

  • Exemptions And Out Of Scope Transactions
  • Account Setup
  • Authentication Exemptions
    • Transaction Risk Analysis
    • Low-Value Payment
    • Trusted Beneficiary
    • Secure Corporate Payment
    • Recurring & Instalment transactions
  • Liability Shift
  • How to request an exemption?
    • Using Card Payment Page
    • Using Card On File
Online Payments / Payment Features / 3D-Secure 2 / Exemptions

Exemptions And Out Of Scope Transactions

The European Payment Services Directive 2 Regulatory Technical Standard (PDS2 RTS) requires that all card-based transactions apply Strong Customer Authentication (SCA) starting January 1st, 2021.

These regulations add additional friction to the payment flow in the form of authentication of a cardholder. Transactions are allowed to request an exemption to reduce friction as much as possible at the cost of fraud protection. The use of exemptions will speed up the checkout process significantly but will require time to settle. For example, issuers will need to learn the interactions between cardholders and merchants to apply for exemptions by themselves or approve requested exemptions. Furthermore, the implementation of exemptions by the payment industry is still ongoing.

Aside from exemptions, the directive also defines several use cases that are out of scope for SCA which do not require any form of authentication. For example, a monthly subscription must be able to continue without the interaction of the cardholder. The only new requirement is that the initial transaction must use SCA.

Quote from Visa November 2018:

SCA exemptions are defined based on the level of risk, amount, recurrence and the payment channel used for the execution of the payment. These exemptions allow PSPs to achieve the right balance between convenience of the payment experience and fraud reduction. The SCA exemptions are available only to PSPs. The SCA exemptions are not available to merchants, unregulated payment gateways or other unregulated entities. The Issuer retains the ability to take the ultimate decision on the application of the exemption.

In this guide, we provide an overview of the currently available exemptions and show you how they can be requested using our PSP. Also, we list the most common use cases for exemptions and out of scope transactions to help you decide which are most suited for your business case.

Account Setup

CCV Pay supports all SCA exemptions but some require additional configuration of your account. Contact onlinepayments@ccv.eu in case you have any questions or when you are instructed to by the documentation.

Authentication Exemptions

If a transaction can benefit from an exemption or the risk of fraud is low, an exemption can be requested.

Transaction Risk Analysis

Actively monitoring for fraud and have mechanisms in place to prevent fraud, resulting in a low fraud rate, allows for the use of the TRA exemption. The TRA informs the issuer of the card that the risk analysis is performed before requesting the authorisation. A merchant or acquirer can request this exemptions, CCV Pay will not apply the exemption on your behalf. The merchant needs approval of the acquirer to apply the exemption. Without approval the acquirer may discard the exemption before sending to the issuer, or worse, reject the authorisation request.

Low-Value Payment

Transactions below 30 euros do not require SCA. However, once every while, the issuer must verify the identity of the cardholder using SCA. The PSD2 RTS defines the frequency of these checks. The issuer is the one to confirm whether or not a transaction is subject to SCA. Using the LVP exemption is a last resort if you want to try to get an exemption for a payment.

Trusted Beneficiary

The Trusted Beneficiary exemption is applicable when a cardholder explicitly agrees to trust the merchant for future payments. Explicitly means that you must inform the cardholder what the intent of the request is and register the choice of the cardholder. Do not imply the choice of the cardholder e.g. using a hidden checkbox. By not clearly stating the request for trust, the risk of fraud or disputes can increase.

This exemption can also be applied by the issuer. The issuer can ask the cardholder during the authentication process to trust you. In the future, CCV Pay will add to the API if the issuer questioned the cardholder and the cardholder’s choice.

Mastercard and Visa require additional setup before you can use this exemption. Also, there are additional costs per scheme. If you would like to benefit from this exemption, contact our customer support with your request.

Secure Corporate Payment

A Secure Corporate Payment utilizes a corporate card. Identification of these cards are critical to apply for the exemption. These kind of cards are common in the travel and hospitality sector.

Acquirers and issuers can identify these cards and apply for the exemption on your behalf. They will be held liable in case of fraud.

Recurring & Instalment transactions

A recurring or instalment transaction is part of a sequence or chain initiated by the merchant. The initial transaction of the chain requires SCA to set up an agreement between the merchant and the cardholder. The merchant can use the agreement as a mandate for subsequent transactions.

Due to the similarities with a merchant initiated transaction, Visa and Mastercard define the same requirements for recurring/instalment.

Liability Shift

The new regulation has implications on the liability in case of a fraudulent transaction. In general, the following applies:

  • If no 3-D Secure is used, the merchant/acquirer is liable
  • If the merchant/acquirer applies for an exemption and
    • the issuer requests a challenge, the issuer is liable
    • the issuer acknowledges the exemption, the merchant/acquirer is liable
  • If the issuer applies for an exemption, the issuer is liable
  • If the transaction is a subsequent transaction (MIT/Recurring/Instalments), the acquirer is liable

How to request an exemption?

SCA exemptions are like all aspects of SCA only applicable for card and Google Pay payments. Bancontact does not support 3-D Secure 2. Requesting an exemption for Bancontact will have no impact.

There are 4 standardized exemptions as defined in the PSD2 RTS. See authentication exemptions for a detailed explanation.

Request an exemption for a payment by adding $details.authExemption to the request with one of the following values.

Name Description
TRANSACTION_RISK_ANALYSIS Choose to trigger the Risk analysis for each transaction or to disable the TRA from being applied.
LOW_VALUE Transactions with an amount lower than 30 EURO. Every 5 transactions authentication is required or if the total amount of 100 euro non authenticated transactions is exceeded.
SECURE_CORPORATE Business to Business.
TRUSTED_BENEFICIARY A cardholder can indicate that the merchant is trusted and that authentication is no longer required.

Using Card Payment Page

  1. Initiate a new transaction with the 3-D Secure 2 compliant data

    {
        "amount" : 10.99,
        "currency" : "eur",
        "method" : "card",
        "returnUrl" : "https://shop.merchant.com/return?order=123456",
        "merchantOrderReference" : "123456",
        "description" : "Order 123456",
        "language" : "nld",
        "billingAddress": "Westvoortsedijk",
        "billingCity": "Arnhem",
        "billingState": "GE",
        "billingPostalCode" :"6827 AT",
        "billingCountry": "NL",
        "billingHouseNumber": "55",
        "accountInfo": {
            "accountIdentifier": "7cec0016-0bf3-45c7-bc1a-7916750a39a2",
            "accountCreationDate": "20190101",
            "passwordChangeIndicator": "CHANGED_DURING_TRANSACTION",
            "email": "john.doe@ccvlab.eu",
            "workPhoneCountry": "31",
            "workPhoneNumber": "11193500",
            "authenticationMethod": "OWN_CREDENTIALS"
        },
        "merchantRiskIndicator": {
            "deliveryEmailAddress": "johny.doe@ccvlab.eu",
            "deliveryTimeframe": "SAME_DAY",
            "passwordChangeIndicator": "CHANGED_DURING_TRANSACTION",
            "shippingIndicator": "BILLING_ADDRESS"
        },
        "threeds2RequestInfo": {
            "challengeIndicator": "NO_PREFERENCE",
            "transactionType": "GOODS_AND_SERVICES_PURCHASE"
        },
        "details": {
            "authExemption": "TRANSACTION_RISK_ANALYSIS"
        }
    }
    
  2. CCV Pay responds with a generated transaction containing a unique payUrl

    {
         "method": "card",
         "reference": "C200603121922297CB87E190.2",
         "currency": "eur",
         "created": 1591179562332,
         "language": "nld",
         "billingAddress": "Westvoortsedijk",
         "billingCity": "Arnhem",
         "billingPostalCode": "6827 AT",
         "billingCountry": "NL",
         "amount": 10.99,
         "billingState": "GE",
         "merchantOrderReference": "123456",
         "billingHouseNumber": "55",
         "returnUrl": "https://shop.merchant.com/return?order=123456",
         "payUrl": "https://onlinepayments.ccv.eu/card/payment.html?reference=C200603121922297CB87E190.2",
         "lastUpdate": 1591179562332,
         "cancelUrl": "https://onlinepayments.ccv.eu/card/cancel/merchant?reference=C200603121922297CB87E190.2",
         "description": "Order 123456",
         "status": "pending",
         "type": "sale"
    }
    
  3. Redirect the customer to the payUrl

  4. The customer submits card data

  5. CCV Pay sends the authorisation including the requested exemption to the issuer

Multiple scenario’s are possible

  1. The issuer acknowledges and approves the authorisation: CCV Pay marks the transaction as a success and returns the customer to the returnUrl
  2. The issuer soft declines the authorisation: CCV Pay requests authentication including the exemption
    1. The issuer acknowledges the exemption: CCV Pay resubmits the authorisation with proof of authentication and returns the customer to the returnUrl
    2. The issuer requests a challenge: CCV Pay will show the challenge in a pop-up for the customer to complete. After completion, CCV Pay resubmits the authorisation with proof of authentication if authenticated and return the customer to the returnUrl
    3. The issuer denies the exemption: CCV Pay will mark the transaction as failed and return the customer to the returnUrl
  3. The issuer hard declines the authorisation: CCV Pay marks the transaction as failed and returns the customer to the returnUrl

Using Card On File

When using our vault to provide the cardholders card data, you can also use the exemptions as described above. The only addition is that you provide the details.vaultAccessToken as a reference to the card on file.

Go to

Home
Documentation




Cookies Privacy Statement