Sample code for 30+ languages & platforms
PureBasic

JSON Parsing with Sample Data for a Merchant/Payment Transaction

See more JSON Examples

Demonstrates how to load the following JSON into a JSON object and access the values for this document:
{
"id":"8a829449561d9dcb01571dbee3b275b1",
"paymentType":"DB",
"paymentBrand":"VISA",
"amount":"156.00",
"currency":"EUR",
"merchantTransactionId":"E8A39B31-6FA3-4014-A195-3074DF5BF7A1",
"result":{
	"code":"000.100.110",
	"description":"Request successfully processed in 'Merchant in Integrator Test Mode'"
},
"resultDetails":{
	"ConnectorTxID3":"12311312",
	"ConnectorTxID1":"717473"
},
"card":{
	"bin":"420000",
	"last4Digits":"0000",
	"holder":"Andreas",
	"expiryMonth":"12",
	"expiryYear":"2018"
},
"risk":{
	"score":"100"
},
"buildNumber":"4b471ea5366e5e9c9a21392a39769f8d7b40b4e8@2016-09-08 13:31:54 +0000",
"timestamp":"2016-09-12 09:33:52+0000",
}

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkJsonObject.pb"

Procedure ChilkatExample()

    success.i = 0

    json.i = CkJsonObject::ckCreate()
    If json.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    ; Load the JSON into the object.
    ; Call json.Load to load from a string rather than a file...
    success = CkJsonObject::ckLoadFile(json,"qa_data/json/merchantPayment.json")
    ; We are assuming success..

    ; Get the easy stuff:
    Debug "id: " + CkJsonObject::ckStringOf(json,"id")
    Debug "paymentType: " + CkJsonObject::ckStringOf(json,"paymentType")
    Debug "currency: " + CkJsonObject::ckStringOf(json,"currency")
    Debug "buildNumber: " + CkJsonObject::ckStringOf(json,"buildNumber")

    ; Get information that's nested within a sub-object:
    Debug "result: code: " + CkJsonObject::ckStringOf(json,"result.code")
    Debug "result: description: " + CkJsonObject::ckStringOf(json,"result.description")

    Debug "card: bin: " + CkJsonObject::ckStringOf(json,"card.bin")
    Debug "card: last4Digits: " + CkJsonObject::ckStringOf(json,"card.last4Digits")


    CkJsonObject::ckDispose(json)


    ProcedureReturn
EndProcedure