cardknox-sdk-js
SDK
HTTPS
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. The SDK will check that the entry exists if there are network errors.
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
Process a transaction
Args | Returns | |
---|---|---|
Type | TransactionRequest | TransactionResponse |
Get Signature
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 | |
deviceIpPort | String | IP port of your device. Default is "10009" | |
deviceIpProtocol | String | The protocol to use to talk to the device. Defaults to the location protocol |
xCommand
List of supported transaction types.
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 |