In order to process a payment via CardConnect for a given ticket, you need to send a valid touchlessTicketsaveRequest. The request encodes the following: the ticket GUID, a payment method (including a valid CardConnect Token), a billing address, and an amount to be charged.
- The ticket GUID (The ticket id)
- The payment method (A valid payment method)
- A billing address (Used for AVS verification; this may or may not need to be correct for the tokenized card based on the facilities merchant account configuration.)
- value (The amount to be charged to the tokenized payment method and associated with the ticket)
|
{ "billingAddress": { "address": "string", "address2": "string", "addressName": "string", "attention": "string", "city": "string", "company": "string", "country": "string", "defaultAddress": false, "documentId": "string", "fullName": "string", "state": "string", "userId": "string", "zip": "string" }, "output": "string", "paymentMethod": { "addressId": "string", "bankAccountNumber": "string", "bankAccountType": "CHECKING", "bankRoutingNumber": "string", "class": "string", "creationDate": "2021-04-11T23:53:46.458Z", "creditCardCVV": "string", "creditCardCompanyName": "string", "creditCardExpirationDate": "string", "creditCardExpirationDateWithoutSlash": "string", "creditCardHolderName": "string", "creditCardPAN": "string", "creditCardPANWithoutSpace": "string", "creditCardType": "string", "defaultPaymentMethod": false, "driversLicense": "string", "driversLicenseState": "string", "ecommerce": "string", "ecommerceMode": "string", "error": false, "errorDateTime": "2021-04-11T23:53:46.458Z", "errorMessage": "string", "garageId": "string", "id": "string", "isSaveCard": true, "paymentMethodName": "string", "paymentToken": "string", "paymentType": "CASH", "userId": "string" }, "ticketId": "string", "value": 0 } |
In order for the request to be routed correctly, the request must be sent from a domain associated with the company. If you have any questions or concerns please reach out to your Valet Manager development contact.
Sample Request:
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json'
--header 'api_key: apiKey' --header 'Authorization: Bearer <token> -d '{ \
"billingAddress": { \ "address": "string", \ "address2": "string", \
"addressName": "string", \ "attention": "string", \ "channels": [ \
"string" \ ], \ "city": "string", \ "class": "string", \
"company": "string", \ "country": "string", \ "defaultAddress": false, \
"documentId": "string", \ "fullName": "string", \ "state": "string", \
"userId": "string", \ "zip": "string" \ }, \ "output": "string", \
"paymentMethod": { \ "addressId": "string", \ "bankAccountNumber": "string", \
"bankAccountType": "CHECKING", \ "bankRoutingNumber": "string", \
"channels": [ \ "string" \ ], \ "class": "string", \
"creationDate": "2021-04-11T23:53:46.458Z", \ "creditCardCVV": "string", \
"creditCardCompanyName": "string", \ "creditCardExpirationDate": "string", \
"creditCardExpirationDateWithoutSlash": "string", \ "creditCardHolderName": "string", \
"creditCardPAN": "string", \ "creditCardPANWithoutSpace": "string", \
"creditCardType": "string", \ "defaultPaymentMethod": false, \
"driversLicense": "string", \ "driversLicenseState": "string", \
"ecommerce": "string", \ "ecommerceMode": "string", \ "error": false, \
"errorDateTime": "2021-04-11T23:53:46.458Z", \ "errorMessage": "string", \
"garageId": "string", \ "id": "string", \ "isSaveCard": true, \
"paymentMethodName": "string", \ "paymentToken": "string", \ "paymentType": "CASH",
\"userId": "string" \ }, \ "ticketId": "8d93b9e5-3293-4f5f-8307-584206f057d", \
"value": 0 \ }' 'https://demo.api.valet-manager.com/tickets/closeTouchlessTicket'