Sample code for 30+ languages & platforms
B4X Requires Chilkat v11.0.0+

CardConnect Signature Capture

See more CardConnect Examples

Demonstrates how to upload a BMP image of a handwritten signature.
This signature capture service augments an existing authorization record with the provided signature data. ...

See https://developer.cardconnect.com/cardconnect-api?lang=json#signature-capture

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

'  This example assumes the Chilkat API to have been previously unlocked.
'  See Global Unlock Sample for sample code.

Dim http As ChilkatHttp
http.Initialize("http")

http.BasicAuth = True
http.Login = "API_USERNAME"
http.Password = "API_PASSWORD"

'  Build and send the following JSON:

'  {
'    "merchid": "MERCHANT_ID",
'    "retref": "112989260941",
'    "signature": "BASE64_GZIPPED_BMP_DATA"
'  }

Dim json As ChilkatJsonObject
json.Initialize
json.UpdateString("merchid", "MERCHANT_ID")
json.UpdateString("retref", "106631225001")

'  Load the .bmp containing a 200px x 100px signature.
Dim bd As ChilkatBinData
bd.Initialize
success = bd.LoadFile("qa_data/bmp/signature.bmp")
'  Gzip compress.
Dim gzip As ChilkatGzip
gzip.Initialize("gzip")
success = gzip.CompressBd(bd)
'  Add to the JSON in base64 format
json.UpdateString("signature", bd.GetEncoded("base64"))

Dim url As String = "https://<site>.cardconnect.com:<port>/cardconnect/rest/sigcap"

Dim resp As ChilkatHttpResponse
resp.Initialize
success = http.HttpStr("PUT", url, json.Emit, "utf-8", "application/json", resp)
If success = False Then
    Log(http.LastErrorText)
    Return
End If


'  A response status of 200 indicates potential success.  The JSON response body
'  must be examined to determine if it was truly successful or an error.
Log("response status code = " & resp.StatusCode)

Dim jsonResp As ChilkatJsonObject
jsonResp.Initialize
jsonResp.Load(resp.BodyStr)
jsonResp.EmitCompact = False

Log("response JSON:")
Log(jsonResp.Emit)

'  A successful response looks like this:

'  {
'    "resptext": "signature stored",
'    "retref": "106631225001",
'    "respcode": "02",
'    "merchid": "MERCHANT_ID"
'  }