Javascript SDK

The Cardknox Javascript SDK allows for integration between Cardknox and web applications. It offers incredible flexibility in that it supports a wide variety of platforms and does not require any application to be installed on the merchant's device.
The JavaScript SDK is currently compatible with the PAX S300, S920, and A series devices.

Load our SDK. The latest version can be found here.
<script src="https://cdn.cardknox.com/sdk-js/1.0.2111.1801-beta/cardknox-sdk.min.js"></script>

To enable https on the Pax device, please contact support.
To avoid the need for a self-signed certificate, Cardknox provides a SSL certificate pointing to the local IP address. The format for the host name is <ip-{IP address replacing the periods with dashes}.mylocaldevice.com> i.e. for IP address 192.168.1.1 the host name would be ip-192-168-1-1.mylocaldevice.com. The SDK will automatically format the host name correctly when the protocol is https.
A DNS entry must exist, mapping the host name to the IP address.
To create a DNS entry, use the tool located here. This can also be done via API.
curl --request POST \
--url http://localdevice.us-west-2.elasticbeanstalk.com/api/dnsrecord/save \
--header 'Content-Type: multipart/form-data' \
--form ip=192.168.1.1

Process a transaction
​
Args
Returns
Type
TransactionRequest
TransactionResponse
​

Prompts for signature on the device
This returns a base64 encoded PNG without the data header.
​
Args
Returns
Type
Settings
String
​

TransactionRequest
Name
Type
Description
Valid values
xSoftwareName
String
Your software name
​
xSoftwareVersion
String
Your software version
​
xCommand
String
Transaction type
Enum xCommand
xAmount
Number
Transaction amount.
Format: #.##
xTip
Number
Tip amount included in the transaction amount.
Format: #.##
xInvoice
String
Invoice number
​
xCustom02
String
Custom data
Max length of 4 (will be truncated)
xAllowDuplicate
Boolean
If true, host will not check for duplicate
​
settings
Settings
Transaction settings, these should be the same for all transactions
​
​

settings
Name
Type
Description
Valid values
deviceIpAddress
String
IP address of your device. When the protocol is https the mylocaldevice.com domain name will be used. See HTTPS​
05.06.007.08
deviceIpPort
String
IP port of your device. Default is "10009"
10009
deviceIpProtocol
String
The protocol to use to talk to the device. Defaults to the location protocol
https
​

List of supported transaction types.
xCommand
These enums are available from the SDK.
Name
Command
CC_SALE
cc:sale
CC_CREDIT
cc:credit
CC_AUTHONLY
cc:authonly
CC_CAPTURE
cc:capture
CC_POSTAUTH
cc:postauth
CC_VOID
cc:void
CC_VOIDRELEASE
cc:voidrelease
CC_VOIDREFUND
cc:voidrefund
CC_BALANCE
cc:balance
EBTFS_SALE
ebtfs:sale
EBTFS_CREDIT
ebtfs:credit
EBTFS_BALANCE
ebtfs:balance
EBTCB_SALE
ebtcb:sale
EBTCB_BALANCE
ebtcb:balance
GIFT_REDEEM
gift:redeem
GIFT_ISSUE
gift:issue
GIFT_BALANCE
gift:balance
Export as PDF
Copy link
On this page
Overview
Sample Page and Latest Version Number
Find Us on GitHub
Javascript SDK
Getting Started
HTTPS
SDK Functions