Card Present Connect | Parking Developer Guide

This section describes how to use this guide and where to find further information.
Audience and Purpose
This guide is written for application developers who want to integrate payment processing for parking services. These API services are available using the REST API. Implementing these API services requires software development skills and knowledge of parking payment practices. You must write code that uses the REST API request and response fields to integrate the payment services into your existing parking payment system.
Conventions
This special statement is used in this document:
IMPORTANT
An
Important
statement contains information essential to successfully completing a task or learning a concept.
Customer Support
For support information about any service, visit the Support Center:

Recent Revisions to This Document

26.05.01

Initial release.

Introduction to Parking

Card Present Connect | Parking supports multiple payment models for the parking industry. This solution accommodates various attended and unattended parking operation models, from street meters to gated facilities, with transaction types tailored to each model.
Use this guide to:
  • Understand supported parking payment services.
  • Map transaction types to your parking operations.
  • Implement the payment flows that are applicable to your business.
The parking payment services described in this guide are supported by information already published in the Card Present Connect | Retail Integration Guide. The guide contains detailed payload examples and field‑level specifications that support the parking transaction flows discussed here.

Supported Card Types and Entry Modes for Parking

These card types are supported for parking transactions:
  • Mastercard
  • Visa
These card entry modes are supported for parking transactions:
  • EMV contact and contactless
  • Magnetic stripe swipe

Enabling a Solution on the Card Present Connect Platform

Before you can implement card-present payment services, you must enable the Card Present Connect platform and complete the required account, integration, and certification activities.
Follow these steps to complete required activities and enable the Card Present Connect platform:
  1. Set up a
    Visa Acceptance Solutions
    merchant account. To get started, contact your sales engineer, alliance partner, or technical account manager.
  2. Integrate the
    Visa Acceptance Solutions
    APIs for use on the Card Present Connect platform.
  3. Integrate your terminal’s key management encryption and decryption with the Card Present Connect platform.
  4. Complete message-level validation (MLV) and Level 3 (L3) device certification. To get started, contact your sales engineer, alliance partner, or technical account manager.

Validation and Certification

Work with your payment technology provider (PTP) to allocate time to complete the message-level validation (MLV) and EMV Level 3 certification with your EV charging processing system. You must pass MLV before beginning EMV Level 3 certification. You must complete validation and certification before your system can go live.

Message-Level Validation

Message-level validation (MLV) is a script-based, field-level validation against
Visa Acceptance Solutions
specifications.
Your PTP uses amount-based test triggers to send transactions to a test environment and the Visa Certification Management System for decryption. The test results are XML or RESTful output,
Business Center
test transactions, and log prints.
Visa Acceptance Solutions
uses these tests to validate the results:
  • Cross-edit checks
  • Data element validation
  • Interchange compliance
  • Data mapping validation

EMV Level 3 Certification

This topic is an overview of the Level 3 certification with
Visa Acceptance Solutions
and
Visa Platform Connect
. For details on how to design an EMV Level 3 certified payment application, see EMV Book 3 on the EMVCo website: https://www.emvco.com.
Certification
is a formal process that for validating the device and application compliance with card scheme acceptance requirements. The certification team uses a brand test tool and simulator. The process includes these elements:
  • Using a card simulator such as ICC or Fime.
  • Failed case analysis and resolution.
  • For Mastercard certification, your PTP submits results to Mastercard and pays the costs for approved partners that Mastercard uses.
  • For Visa certification,
    Visa Acceptance Solutions
    submits results to Visa.
  • Waivers from the card schemes for exceptions.
  • Card scheme responses or Letter of Approval (LOA) to signify acceptance and Level 3 certification.
Although the processes and support for Global Card Present Connect projects and direct merchant and acquirer projects are different, the timelines are essentially the same.

Parking Payment Models

The Parking solution supports various parking payment models on attended and unattended devices. These typical parking payment models are discussed in this guide:
  • On-street parking meter
  • Kiosk
  • Booth
  • Tap and Go
The list does not include all types of parking payment models.

On-Street Parking Meter Payment Model

This section is an overview of a typical on-street parking meter payment model.
Terminal Types
Unattended payment devices.
Typical Implementation Patterns
Pre-authorize for the maximum parking time, capture the actual amount charged, and reverse any unused funds.
Request an incremental authorization when the driver extends the parking time.
Payment Services
For information about payment services supported for unattended devices, see Unattended Parking Payment Services.

Kiosk or Booth Parking Payment Model

This section is an overview of a typical parking kiosk or booth payment model. Payment terminals used in this model can be attended or unattended. Typically, booths are attended and kiosks are unattended.
Terminal Types
Attended or unattended payment devices.
Typical Implementation Patterns
Process a sale transaction for the calculated parking fee.
Issue a refund for payment errors or cancellations.
Payment Services
For information about supported payment services for attended devices, see Attended Parking Payment Services. For information about payment services for unattended devices, see Unattended Parking Payment Services.

Tap and Go Parking Payment Model

This section is an overview of a typical tap-and-go parking payment model.
Terminal Types
Unattended payment devices.
Typical Implementation Patterns
Pre-authorize on entry and capture the actual parking fee on exit.
Send an account verification request (AVR) before entry to validate the payment card.
Request an incremental authorization when the driver extends the parking time.
Payment Services
For information about payment services supported for unattended devices, see Unattended Parking Payment Services.

Parking Payment Services

The Parking solution provides various REST API payment services for attended and unattended parking devices. Supported services are documented by device type first. Details about payment services that use the same request and response fields follow. Examples include Incremental Authorization on Parking Devices and Capture on Parking Devices.
IMPORTANT
The parking payment services described in this guide are supported by information published in the Card Present Connect | Retail Integration Guide. The guide contains detailed payload examples and field‑level specifications that support the parking transaction flows discussed here.

Parking Transaction Descriptions

This table lists the valid values for the
clientReferenceInformation.comments
REST API field used in Parking payment services.
Service
Field Value
Description
Authorization
Parking AVR
Zero-dollar account verification request (AVR)
Authorization
Parking Authorization
Request to place a hold on cardholder’s account. Capture or reversal required.
Incremental authorization
Parking Incremental Auth
Request for an incremental authorization when final amount is higher than the estimated amount.
Reversal
REVERSAL
Reverse an authorization request, including incremental authorization.
Reversal
REVERSAL Timeout
Reverse an authorization that did not receive a response. Use
clientReferenceInformation.transactionId
value from the original transaction.
Capture
Parking Capture
Captures final amount.
Capture
Parking Capture Less Than Auth
Captures of a final amount less than the initial authorization amount. Automatic, host-generated partial reversal request is sent for the unused amount.
Sale
Parking Sale
Combined authorization and capture. Final amount known.
Refund
REFUND Capture
Credit of a previous capture transaction. Used when a capture cannot be voided.
Refund
REFUND Payment
Credit of a previous sale transaction. Used when a sale cannot be voided.
Credit
Parking Standalone Credit
Credit with no reference to a previous transaction.
Void
VOID Capture
Void capture. Prior to merchant configured TC33 file generation time. Typically same day.
Void
VOID Payment
Void sale. Prior to merchant configured TC33 file generation time. Typically same day.
Void
VOID Refund
Void refund. Prior to merchant configured TC33 file generation time. Typically same day.
Void
VOID Credit
Void credit. Prior to merchant configured TC33 file generation time. Typically same day.
Void Timeout
VOID Timeout
Void a capture, sale, refund or credit that did not receive a response. Use the
clientReferenceInformation.transactionId
value from original transaction.

EMV and Card Data for Parking Payment Services

You can request these parking payment services with EMV and card data:
  • Authorization: standard and incremental
  • Capture
  • Credit
This table shows which EMV tags are:
  • M: mandatory
  • P: prohibited
  • O: optional
  • C: conditional (Send the tag when it is present in card and terminal.)
EMV Data Elements and Tags
Data Element
EMV Tag
Mastercard
Visa
Transaction Date
9A
M
M
Transaction Type
9C
M
M
Transaction Currency Code
5F2A
M
M
Terminal Country Code
9F1A
M
M
Amount Authorized
9F02
M
M
Amount Other
9F03
M
M
Application PAN Sequence Number
5F34
C
O
Application Transaction Counter (ATC)
9F36
M
M
Application Interchange Profile (AIP)
82
M
M
Dedicated File (DF) Name
84
M
M
Terminal Verification Results (TVR)
95
M
M
Issuer Application Data
9F10
M
M
Application Cryptogram
9F26
M
M
Cryptogram Information Data (CID)
9F27
M
O
Terminal Capabilities
9F33
M
M
Cardholder Verification Method (CVM) Results
9F34
M
O
Unpredictable Number (UN)
9F37
M
M
Form Factor Indicator
9F6E
O (Authorization)
P (Refund)
C

Attended Parking Payment Services

This section provides information about Parking REST API payment services for attended devices, including fixed payment terminals and mobile point-of-sale (mPOS) devices. Details about payment services that use the same request and response fields for attended and unattended devices follow the device-type sections. Examples: Incremental Authorization on Parking Devices and Capture on Parking Devices.
Attended devices
are payment terminals operated by staff or located in environments where assistance is available. These devices support transaction types optimized for attended operations, which are discussed in this section.
Apply these implementation considerations when configuring parking payment services for attended devices:
  • Attended mPOS devices payment requests must include the
    pointOfSaleInformation.catLevel
    .
  • Pre-authorization requests for EMV contact transactions must include EMV tags in follow-on capture requests.
  • When the capture amount is less than the authorization amount, the host sends an automatic partial reversal for the unused amount. Automatic partial reversals are supported for attended and unattended payment services.
  • Both stand-alone and linked refunds are supported for attended operations.

Sale on mPOS Attended Parking Devices

This section describes how to process a mobile point-of-sale (mPOS) sale on attended parking devices.

Endpoint

Production:
POST
https://api.visaacceptance.com
/pts/v2/payments
Test:
POST
https://apitest.visaacceptance.com
/pts/v2/payments

Required Fields for a Sale on mPOS Attended Parking Devices

IMPORTANT
Sale requests on mPOS attended devices must include the
pointOfSaleInformation.catLevel
field to identify the terminal as attended.
clientReferenceInformation.code
clientReferenceInformation.comments
Set the value to
Parking Sale
.
clientReferenceInformation.partner.developerId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.solutionId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.thirdPartyCertificationNumber
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.transactionId
merchantInformation.transactionLocalDateTime
orderInformation.amountDetails.currency
rderInformation.amountDetails.totalAmount
paymentInformation.card.type
paymentInformation.initiationChannel
pointOfSaleInformation.catLevel
Set the value to
6
.
pointOfSaleInformation.emv.cardSequenceNumber
pointOfSaleInformation.emv.tags
pointOfSaleInformation.entryMode
pointOfSaleInformation.isDedicatedHardwareTerminal
A value is required for Mastercard transactions.
pointOfSaleInformation.serviceCode
pointOfSaleInformation.terminalCapability
pointOfSaleInformation.terminalPinCapability
pointOfSaleInformation.trackData
processingInformation.authorizationOptions.authIndicator
Set the value to
0
.
processingInformation.capture
Set the value to
true
.
processingInformation.commerceIndicator
Set the value to
retail
.

REST Example: Sale for Mastercard on mPOS Attended Parking Devices

Request
{ "clientReferenceInformation": { "code": "test123", "comments": "Parking Sale", "partner": { "developerId": "prodDeveloperId", "thirdPartyCertificationNumber": "prodTPCN", "solutionId": "prodSolutionId" }, "transactionId": "UniqueTranID" }, "processingInformation": { "commerceIndicator": "retail", "capture": true, "authorizationOptions": { "authIndicator": 1 } }, "paymentInformation": { "card": { "type": "002" }, "initiationChannel": "00" }, "orderInformation": { "amountDetails": { "totalAmount": "20.00", "currency": "EUR" } }, "pointOfSaleInformation": { "entryMode": "contactless", "catLevel": 6, "isDedicatedHardwareTerminal": "0", "terminalPinCapability": 0, "emv": { "cardSequenceNumber": "01", "tags": "9A032203259C01005F2A0206049F1A0206049F02060000000080009F03060000000000005F3401019F3602000282021B808407A0000000041010950500200080019F10120110A0000F040000000000000000000000FF9F260843C74BCF90E3126C9F2701809F33036008089F34033F00029F37044D65B4D89F6E0700560000303000" }, "trackData": ";541333xx89700042=49122010123456789?", "terminalCapability": 4, "serviceCode": "201" }, "merchantInformation": { "transactionLocalDateTime": "20260225115959" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/7720615545406407503813/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/7720615545406407503813" } }, "clientReferenceInformation": { "code": "test123", "comments": "Parking Sale", "partner": { "developerId": "prodDeveloperId", "solutionId": "prodSolutionId" }, "transactionId": "UniqueTranID" }, "id": "7720615545406407503813", "issuerInformation": { "clearingData": "6700210103F0F7F2031AF0F0F0F0F0F0F4F0F0F9F3F0F0F8F4F0F7F3F9F4F94040404040", "transactionInformation": "LWkYd_0-Z4XIhyufsEssq2" }, "orderInformation": { "amountDetails": { "totalAmount": "20.00", "authorizedAmount": "20.00", "currency": "EUR" } }, "paymentAccountInformation": { "card": { "type": "002" } }, "paymentInformation": { "accountFeatures": { "category": "M", "group": "0" }, "tokenizedCard": { "type": "002" }, "card": { "type": "002" } }, "pointOfSaleInformation": { "emv": { "tags": "5F3401019F2701809F34033F0002" } }, "processorInformation": { "systemTraceAuditNumber": "050630", "merchantNumber": "12345678901", "approvalCode": "552642", "networkTransactionId": "0225MCC0000OA", "retrievalReferenceNumber": "605623050630", "transactionId": "0225MCC0000OA", "responseCode": "00", "avs": { "code": "2" } }, "reconciliationId": "7720615545406407503813", "status": "AUTHORIZED", "submitTimeUtc": "2026-02-25T23:19:15Z" }

Pre-Authorization on Attended Parking Devices

Use this information to process a pre-authorization on attended parking devices.

Endpoint

Production:
POST
https://api.visaacceptance.com
/pts/v2/payments
Test:
POST
https://apitest.visaacceptance.com
/pts/v2/payments

Required Fields for a Pre-Authorization on Attended Parking Devices

clientReferenceInformation.code
clientReferenceInformation.comments
Set the value to
Parking Auth
.
clientReferenceInformation.partner.developerId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.solutionId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.thirdPartyCertificationNumber
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.transactionId
merchantInformation.transactionLocalDateTime
orderInformation.amountDetails.currency
orderInformation.amountDetails.totalAmount
paymentInformation.card.type
pointOfSaleInformation.emv.cardSequenceNumber
pointOfSaleInformation.emv.tags
pointOfSaleInformation.entryMode
pointOfSaleInformation.terminalCapability
pointOfSaleInformation.terminalPinCapability
pointOfSaleInformation.trackData
processingInformation.authorizationOptions.authIndicator
Set the value to
0
.
processingInformation.commerceIndicator
Set the value to
retail
.

REST Example: Pre-Authorization for Visa on Attended Parking Devices

Request
{ "clientReferenceInformation": { "code": "test123", "comments": "Parking Auth", "partner": { "developerId": "prodDeveloperId", "thirdPartyCertificationNumber": "prodTPCN", "solutionId": "prodSolutionId" }, "transactionId": "UniqueTranID" }, "processingInformation": { "commerceIndicator": "retail", "authorizationOptions": { "authIndicator": 0 } }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "20.00", "currency": "USD" } }, "pointOfSaleInformation": { "entryMode": "contactless", "terminalCapability": 4, "terminalPinCapability": 0, "emv": { "tags": "9F100706011103A000009F26089302EDF8DC3C6E519F02060000000011009F03060000000000009F1A020840950500000000005F2A0208409A031807039C01009F37043444BDD7820200009F360200019F330360B0E89F1E04123456789F2701809F6E04207000009F7C140000000000000000000000000000000000000000", "cardSequenceNumber": "01" }, "trackData": ";4761739xx1010135=28122011758928889?" }, "merchantInformation": { "transactionLocalDateTime": "20260225115959" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/7720595927166430303812/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/7720595927166430303812" }, "capture": { "method": "POST", "href": "/pts/v2/payments/7720595927166430303812/captures" } }, "clientReferenceInformation": { "code": "test123", "comments": "Parking Auth", "partner": { "developerId": "prodDeveloperId", "solutionId": "prodSolutionId" }, "transactionId": "UniqueTranID" }, "id": "7720595927166430303812", "orderInformation": { "amountDetails": { "authorizedAmount": "20.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "accountFeatures": { "category": "F", "group": "0" }, "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "emv": { "tags": "9F36020001910A7D517A9478FA6AD53030" } }, "processorInformation": { "systemTraceAuditNumber": "035730", "paymentAccountReferenceNumber": "V0010013018036783719331133719", "merchantNumber": "123456789023", "approvalCode": "012317", "networkTransactionId": "306056819920688", "settlementDate": "6061", "retrievalReferenceNumber": "605622035730", "transactionId": "306056819920688", "responseCode": "00", "avs": { "code": "2" } }, "reconciliationId": "7720595927166430303812", "status": "AUTHORIZED", "submitTimeUtc": "2026-02-25T22:46:32Z" }

Unattended Parking Payment Services

This section provides information about Parking REST API payment services for unattended devices. Details about payment services that use the same request and response fields for attended and unattended devices follow the device-type sections. Examples include Incremental Authorization on Parking Devices and Capture on Parking Devices.
Unattended devices
are payment terminals that operate without staff assistance. These devices include parking meters, automated kiosks, and entry/exit gate systems.
Processing payments on unattended devices requires the use of specific API fields and transaction types, which are discussed in this section.
Apply these implementation considerations when configuring parking payment services for your devices:
  • Pre-authorization requests for EMV contact transactions must include EMV tags in follow-on capture requests.
  • Unattended sale and pre-authorization requests must include the
    pointOfSaleInformation.catLevel
    field to identify the terminal as unattended.
  • Account verification requests (AVRs) validate payment cards without authorizing funds.
  • Incremental authorizations support extended parking sessions.
  • When the capture amount is less than the authorization amount, the host sends an automatic partial reversal for the unused amount. Automatic partial reversals are supported for attended and unattended payment services.

Sale on Unattended Parking Devices

Use this information to process a sale on unattended devices. A sale combines an authorization and a capture into a single transaction.

Endpoint

Production:
POST
https://api.visaacceptance.com
/pts/v2/payments
Test:
POST
https://apitest.visaacceptance.com
/pts/v2/payments

Required Fields for a Sale on Unattended Parking Devices

IMPORTANT
Sale requests on unattended devices must include the
pointOfSaleInformation.catLevel
field to identify the terminal as unattended.
clientReferenceInformation.code
clientReferenceInformation.comments
Set the value to
Parking Sale
.
clientReferenceInformation.partner.developerId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.solutionId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.thirdPartyCertificationNumber
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.transactionId
merchantInformation.transactionLocalDateTime
orderInformation.amountDetails.currency
orderInformation.amountDetails.totalAmount
paymentInformation.card.type
pointOfSaleInformation.catLevel
Set this value to
2
.
pointOfSaleInformation.emv.cardSequenceNumber
A value is required when EMV Tag 5F34 is configured on the ICC/chip.
pointOfSaleInformation.emv.tags
pointOfSaleInformation.entryMode
pointOfSaleInformation.terminalCapability
pointOfSaleInformation.terminalPinCapability
pointOfSaleInformation.trackData
processingInformation.authorizationOptions.authIndicator
Set the value to
1
.
processingInformation.capture
Set this value to
true
.
processingInformation.commerceIndicator
Set the value to
retail
.

REST Example: Sale for Visa on Unattended Parking Devices

Request
{ "clientReferenceInformation": { "code": "test123", "comments": "Parking Sale", "partner": { "developerId": "prodDeveloperId", "thirdPartyCertificationNumber": "prodTPCN", "solutionId": "prodSolutionId" }, "transactionId": "UniqueTranID" }, "processingInformation": { "capture": true, "commerceIndicator": "retail", "authorizationOptions": { "authIndicator": 1 } }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "20.00", "currency": "USD" } }, "pointOfSaleInformation": { "catLevel": 2, "entryMode": "contact", "terminalCapability": 4, "terminalPinCapability": 0, "emv": { "tags": "9F100706011103A000009F26089302EDF8DC3C6E519F02060000000011009F03060000000000009F1A020840950500000000005F2A0208409A031807039C01009F37043444BDD7820200009F360200019F330360B0E89F1E04123456789F2701809F6E04207000009F7C140000000000000000000000000000000000000000", "cardSequenceNumber": "01" }, "trackData": ";4761739xx1010135=28122011758928889?" }, "merchantInformation": { "transactionLocalDateTime": "20260225115959" } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/payments/7720609780516677203814/voids" }, "self": { "method": "GET", "href": "/pts/v2/payments/7720609780516677203814" } }, "clientReferenceInformation": { "code": "test123", "comments": "Parking Sale", "partner": { "developerId": "prodDeveloperId", "solutionId": "prodSolutionId" }, "transactionId": "UniqueTranID" }, "id": "7720609780516677203814", "orderInformation": { "amountDetails": { "totalAmount": "20.00", "authorizedAmount": "20.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "accountFeatures": { "category": "F", "group": "0" }, "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "emv": { "tags": "9F36020001910A7D517A9478FA6AD53030" } }, "processorInformation": { "systemTraceAuditNumber": "035756", "paymentAccountReferenceNumber": "V0010013018036783719331133719", "merchantNumber": "123456789023", "approvalCode": "073453", "networkTransactionId": "306056833783948", "settlementDate": "6061", "retrievalReferenceNumber": "605623035756", "transactionId": "306056833783948", "responseCode": "00", "avs": { "code": "2" } }, "reconciliationId": "7720609780516677203814", "status": "AUTHORIZED", "submitTimeUtc": "2026-02-25T23:09:38Z" }

Pre-Authorization on Unattended Parking Devices

Use this information to process a pre-authorization on unattended parking devices.

Endpoint

Production:
POST
https://api.visaacceptance.com
/pts/v2/payments
Test:
POST
https://apitest.visaacceptance.com
/pts/v2/payments

Required Fields for a Pre-Authorization on Unattended Parking Devices

IMPORTANT
Pre-authorization requests on unattended devices must include the
pointOfSaleInformation.catLevel
field to identify the terminal as unattended.
clientReferenceInformation.code
clientReferenceInformation.comments
Set the value to
Parking Auth
.
clientReferenceInformation.partner.developerId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.solutionId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.thirdPartyCertificationNumber
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.transactionId
merchantInformation.transactionLocalDateTime
orderInformation.amountDetails.currency
orderInformation.amountDetails.totalAmount
paymentInformation.card.type
pointOfSaleInformation.catLevel
Set the value to
2
.
pointOfSaleInformation.emv.cardSequenceNumber
pointOfSaleInformation.emv.tags
pointOfSaleInformation.entryMode
pointOfSaleInformation.terminalCapability
pointOfSaleInformation.terminalPinCapability
pointOfSaleInformation.trackData
processingInformation.authorizationOptions.authIndicator
Set the value to
0
.
processingInformation.commerceIndicator
Set the value to
retail
.

REST Example: Pre-Authorization for Visa on Unattended Parking Devices

Request
{ "clientReferenceInformation": { "code": "test123", "comments": "Parking Auth", "partner": { "developerId": "prodDeveloperId", "thirdPartyCertificationNumber": "prodTPCN", "solutionId": "prodSolutionId" }, "transactionId": "UniqueTranID3" }, "processingInformation": { "commerceIndicator": "retail", "authorizationOptions": { "authIndicator": 0 } }, "paymentInformation": { "card": { "type": "001" } }, "orderInformation": { "amountDetails": { "totalAmount": "20.00", "currency": "USD" } }, "pointOfSaleInformation": { "catLevel": 2, "entryMode": "contact", "terminalCapability": 4, "terminalPinCapability": 0, "emv": { "tags": "9F100706011103A000009F26089302EDF8DC3C6E519F02060000000011009F03060000000000009F1A020840950500000000005F2A0208409A031807039C01009F37043444BDD7820200009F360200019F330360B0E89F1E04123456789F2701809F6E04207000009F7C140000000000000000000000000000000000000000", "cardSequenceNumber": "01" }, "trackData": ";4761739xx1010135=28122011758928889?" }, "merchantInformation": { "transactionLocalDateTime": "20260225115959" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/7768803589646057404807/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/7768803589646057404807" }, "capture": { "method": "POST", "href": "/pts/v2/payments/7768803589646057404807/captures" } }, "clearingInformation": { "accountfundingSource": "D" }, "clientReferenceInformation": { "code": "test123", "comments": "Parking Auth", "partner": { "developerId": "prodDeveloperId", "solutionId": "prodSolutionId" }, "transactionId": "UniqueTranID3" }, "id": "7768803589646057404807", "orderInformation": { "amountDetails": { "authorizedAmount": "20.00", "currency": "USD" } }, "paymentAccountInformation": { "card": { "type": "001" } }, "paymentInformation": { "accountFeatures": { "category": "F", "group": "0" }, "tokenizedCard": { "type": "001" }, "card": { "type": "001" } }, "pointOfSaleInformation": { "emv": { "tags": "9F36020001910A7D517A9478FA6AD53030" } }, "processorInformation": { "systemTraceAuditNumber": "015657", "paymentAccountReferenceNumber": "V0010013018036783719331133719", "merchantNumber": "123456789012", "approvalCode": "093477", "networkTransactionId": "306112643598142", "settlementDate": "6117", "retrievalReferenceNumber": "611217015657", "transactionId": "306112643598142", "responseCode": "00", "avs": { "code": "2" } }, "reconciliationId": "7768803589646057404807", "status": "AUTHORIZED", "submitTimeUtc": "2026-04-22T17:52:39Z" }

Incremental Authorization on Parking Devices

Use this information to process an incremental authorization on attended or unattended parking devices. You can process multiple incremental authorizations for a single parking session.
Process an incremental authorization when the final transaction amount of the parking session is more than the amount of the initial authorization. When the final transaction amount is less than the total authorized amount, an automatic, host-generated partial reversal request is sent.

Endpoint

Production:
PATCH
https://api.visaacceptance.com
/pts/v2/payments/
{id}
Test:
PATCH
https://apitest.visaacceptance.com
/pts/v2/payments/
{id}
The
{id}
is the transaction ID returned in the original authorization response.

Required Fields for an Incremental Authorization on Parking Devices

clientReferenceInformation.code
clientReferenceInformation.comments
Set the value to
Parking Incremental Auth
.
clientReferenceInformation.partner.developerId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.solutionId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.thirdPartyCertificationNumber
Visa Acceptance Solutions
provides the value for this field.
merchantInformation.transactionLocalDateTime
orderInformation.amountDetails.currency
orderInformation.amountDetails.totalAmount
processingInformation.authorizationOptions.initiator.storedCredentialUsed
Set the value to
true
.

REST Example: Incremental Authorization for Visa on Parking Devices

Request
{ "clientReferenceInformation": { "code": "test123", "comments": "Parking Incremental Auth", "partner": { "developerId": "prodDeveloperId", "thirdPartyCertificationNumber": "prodTPCN", "solutionId": "prodSolutionId" } }, "processingInformation": { "authorizationOptions": { "initiator": { "storedCredentialUsed": true } } }, "orderInformation": { "amountDetails": { "totalAmount": "10.00", "currency": "USD" } }, "merchantInformation": { "transactionLocalDateTime": "20260225115959" } }
Response to a Successful Request
{ "_links": { "authReversal": { "method": "POST", "href": "/pts/v2/payments/7720595927166430303812/reversals" }, "self": { "method": "GET", "href": "/pts/v2/payments/7720598519496636603812" }, "capture": { "method": "POST", "href": "/pts/v2/payments/7720595927166430303812/captures" } }, "clientReferenceInformation": { "comments": "Parking Incremental Auth", "code": "test123", "partner": { "developerId": "prodDeveloperId", "solutionId": "prodSolutionId" } }, "id": "7720598519496636603812", "orderInformation": { "amountDetails": { "totalAmount": "30.00", "authorizedAmount": "10.00", "currency": "USD" } }, "paymentInformation": { "accountFeatures": { "category": "F" } }, "processorInformation": { "systemTraceAuditNumber": "035730", "approvalCode": "097617", "transactionId": "306056819920688", "responseCode": "00" }, "reconciliationId": "7720595927166430303812", "status": "AUTHORIZED", "submitTimeUtc": "2026-02-25T22:50:52Z" }

Capture on Parking Devices

Use this information to process a capture on attended or unattended parking devices.

Endpoint

Production:
POST
https://api.visaacceptance.com
/pts/v2/payments/
{id}
/captures
Test:
POST
https://apitest.visaacceptance.com
/pts/v2/payments/
{id}
/captures
The
{id}
is the transaction ID returned in the authorization response.

Required Fields for a Capture on Parking Devices

IMPORTANT
For pre-authorized EMV contact transactions, the follow-on capture requests must include EMV tags.
clientReferenceInformation.code
clientReferenceInformation.comments
Set the value to
Parking Capture
.
clientReferenceInformation.partner.developerId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.solutionId
Visa Acceptance Solutions
provides the value for this field.
clientReferenceInformation.partner.thirdPartyCertificationNumber
Visa Acceptance Solutions
provides the value for this field.
orderInformation.amountDetails.currency
orderInformation.amountDetails.totalAmount
pointOfSaleInformation.emv.tags
This field is required for contact entry mode only.

REST Example: Capture for Visa on Parking Devices

Request
{ "clientReferenceInformation": { "code": "test123", "comments": "Parking Capture", "partner": { "developerId": "prodDeveloperId", "thirdPartyCertificationNumber": "prodTPCN", "solutionId": "prodSolutionId" } }, "orderInformation": { "amountDetails": { "totalAmount": "30.00", "currency": "USD" } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/captures/7720607252186978303813/voids" }, "self": { "method": "GET", "href": "/pts/v2/captures/7720607252186978303813" } }, "clientReferenceInformation": { "comments": "Parking Capture", "code": "test123", "partner": { "developerId": "prodDeveloperId", "solutionId": "prodSolutionId" } }, "id": "7720607252186978303813", "orderInformation": { "amountDetails": { "totalAmount": "30.00", "currency": "USD" } }, "reconciliationId": "7720606726016948703813", "status": "PENDING", "submitTimeUtc": "2026-02-25T23:05:25Z" }