Online Payment URL
myKaarma enables dealers to take online payments from customers using PayIsland. In order use payIsland, you need to generate a Payment URL and sent it to the customer. The generated payment URL is public and will not require any authentication.
Use the following endpoint to generate and send a Payment URL to the customer:
POST /v3/department/{serviceSubscriberDepartmentToken}/url
Authentication
Basic authentication is used to authenticate the request.
Resource Path Parameters
This endpoint has only one parameter in the URL, serviceSubscriberDepartmentToken
. This is the department UUID of the dealership for which you are taking the payment.
Request
Variable Name | Description |
---|---|
clientSideRedirectUrl | URL to which the user will be redirected once the transaction is complete. |
cssRef | Link of the myKaarma skin which will be applied to the online payment page. |
customerIdentifiers | It contains details about the customer such as name, phone numbers, emails, customerID, etc. |
dealerAssociateIdentifier | It cointains details about the dealer associate such as name, email and dealerAssociate ID. |
paymentDetails | It contains details about the payment such as amount, invoice URL, payment type (auth or sale), payment description, etc. |
saveCard | Set this to true in order to tokenize and save the card. |
ttl (Time-to-live) | Life of the payment URL in milliseconds. |
webHookUrl | Webhook URL to hit after the payment is complete. |
Response
Variable Name | Description |
---|---|
customerId | Customer ID for which the payment URL was generated. |
invoiceId | Invoice ID of the payment. |
paymentUrl | The Payisland URL which was sent to the customer. |
Request Object
{
"address": {
"zipCode": "string"
},
"clientSideRedirectUrl": "string",
"cssRef": "string",
"customerIdentifiers": {
"bestTimeToContact": {
"endTime": "string",
"startTime": "string"
},
"campaignId": "string",
"customerId": "string",
"customerKey": "string",
"emails": [
{
"emailAddress": "string",
"isPreferred": true,
"label": "string",
"okToEmail": true
}
],
"firstName": "string",
"lastName": "string",
"phoneNumbers": [
{
"isPreferred": true,
"label": "string",
"okToCall": true,
"okToText": true,
"phoneNumber": "string"
}
],
"preferredCommunication": "string"
},
"dealerAssociateIdentifier": {
"dealerAssociateEmail": "string",
"dealerAssociateFirstName": "string",
"dealerAssociateId": "string",
"dealerAssociateLastName": "string"
},
"flags": {
"footerToAdd": true,
"useMyKaarmaEmailPaymentRequest": true,
"useMyKaarmaEmailReceipt": true,
"useMyKaarmaTextPaymentReceipt": true,
"useMyKaarmaTextPaymentRequest": true
},
"language": "string",
"orderRef": "string",
"paymentDetails": {
"additionalCharges": [
{
"additionalChargeAmount": 0,
"additionalChargeDescription": "string"
}
],
"amount": 0,
"currency": "string",
"invoiceUrl": "string",
"paymentDescription": "string",
"paymentReceiptFormat": "string",
"paymentType": "string",
"preAuth": "string",
"processedFor": "string",
"requireSignature": "string",
"retryCount": 0,
"signatureCoordinates": {
"height": 0,
"pageNumber": 0,
"width": 0,
"x": 0,
"y": 0
},
"verifyAVS": true,
"verifyZipCode": true
},
"saveCard": true,
"ttl": 0,
"webHookUrl": "string"
}
Response Object
{
"customerId": "string",
"error": {
"errorCode": "string",
"errorDescription": "string"
},
"invoiceId": "string",
"paymentUrl": "string",
"warnings": [
{
"warningCode": "string",
"warningDescription": "string"
}
]
}