Javascript SDK
Due to ongoing third-party vendor issues, we are currently unable to provide full support for our Javascript SDK. We apologize for any inconvenience and are actively working to resolve the issue as soon as possible.
In the meantime, we recommend that new customers explore alternative integration options. For existing customers, the documentation will remain available for reference.
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.
<script src="https://cdn.cardknox.com/sdk-js/1.0.2111.1801-beta/cardknox-sdk.min.js"></script>
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.
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 |
Last modified 7mo ago