VBScript
VBScript
Isabel Connect List Transactions
See more Ibanity Examples
Get a list of transactions for an account.Chilkat VBScript Downloads
Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
'Create a Unicode (utf-16) output text file.
Set outFile = fso.CreateTextFile("output.txt", True, True)
success = 0
' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
set http = CreateObject("Chilkat.Http")
' Implements the following CURL command:
' curl -X GET https://api.ibanity.com/isabel-connect/accounts/93ecb1fdbfb7848e7b7896c0f2d207aed3d8b4c1/transactions \
' --cert certificate.pem:qwertyuiop1 \
' --key private_key.pem \
' -H "Authorization: Bearer access_token_1603365408" \
' -H "Accept: application/vnd.api+json"
' Ibanity provides the certificate + private key in PFX format. This example will use the .pfx instead of the pair of PEM files.
' (It is also possible to implement using Chilkat with the PEM files, but PFX is easier.)
success = http.SetSslClientCertPfx("qa_data/pfx/my_ibanity_certificate.pfx","my_pfx_password")
If (success = 0) Then
outFile.WriteLine(http.LastErrorText)
WScript.Quit
End If
' Load the previously obtained access token.
set jsonToken = CreateObject("Chilkat.JsonObject")
success = jsonToken.LoadFile("qa_data/tokens/isabel_access_token.json")
If (success = 0) Then
outFile.WriteLine("No existing access token.")
WScript.Quit
End If
' This causes the "Authorization: Bearer ***" header to be added to the HTTP request.
http.AuthToken = jsonToken.StringOf("access_token")
http.Accept = "application/vnd.api+json"
success = http.SetUrlVar("id","93ecb1fdbfb7848e7b7896c0f2d207aed3d8b4c1")
jsonStr = http.QuickGetStr("https://api.ibanity.com/isabel-connect/accounts/{$id}/transactions")
If (http.LastMethodSuccess = 0) Then
outFile.WriteLine(http.LastErrorText)
WScript.Quit
End If
set jResp = CreateObject("Chilkat.JsonObject")
success = jResp.Load(jsonStr)
jResp.EmitCompact = 0
outFile.WriteLine("Response Body:")
outFile.WriteLine(jResp.Emit())
respStatusCode = http.LastStatus
outFile.WriteLine("Response Status Code = " & respStatusCode)
If (respStatusCode >= 400) Then
outFile.WriteLine("Response Header:")
outFile.WriteLine(http.LastResponseHeader)
outFile.WriteLine("Failed.")
WScript.Quit
End If
' Sample JSON response:
' (Sample code for parsing the JSON response is shown below)
' {
' "data": [
' {
' "attributes": {
' "amount": 80000,
' "counterpartAccountReference": "BE21210123456703",
' "counterpartFinancialInstitutionBic": "GEBABEBB",
' "counterpartName": "MYBESTCLIENT",
' "endToEndId": "UNIQUE CODE CUSTOMER",
' "executionDate": "2018-10-15T08:34:17.417Z",
' "internalId": "UNIQUE CODE BANK",
' "remittanceInformation": "123456789002",
' "remittanceInformationType": "structured-be",
' "status": "Booked",
' "valueDate": "2018-10-15T08:52:43.962Z"
' },
' "id": "14e2bff5-e365-4bc7-bf48-76b7bcd464e9",
' "type": "transaction"
' },
' {
' "attributes": {
' "amount": 40000,
' "counterpartAccountReference": "BE58400101010179",
' "counterpartFinancialInstitutionBic": "KREDBEBB",
' "counterpartName": "MYGOODCLIENT",
' "endToEndId": null,
' "executionDate": "2018-10-15T08:34:17.417Z",
' "internalId": null,
' "remittanceInformation": "FREE COMMUNICATION",
' "remittanceInformationType": "unstructured",
' "status": "Booked",
' "valueDate": "2018-10-15T08:52:43.962Z"
' },
' "id": "29b0f52e-a389-4ff8-88e1-cc30c12b789f",
' "type": "transaction"
' },
' {
' "attributes": {
' "amount": -20000,
' "counterpartAccountReference": "BE56300694353788",
' "counterpartFinancialInstitutionBic": null,
' "counterpartName": "MY SUPPLIER",
' "endToEndId": null,
' "executionDate": "2018-10-15T08:34:17.417Z",
' "internalId": null,
' "remittanceInformation": "999000000171",
' "remittanceInformationType": "structured-be",
' "status": "Booked",
' "valueDate": "2018-10-15T08:52:43.962Z"
' },
' "id": "7d79a28e-b45d-4595-b98e-7c18871ee208",
' "type": "transaction"
' }
' ],
' "meta": {
' "paging": {
' "offset": 0,
' "total": 3
' }
' }
' }
' Sample code for parsing the JSON response...
' Use the following online tool to generate parsing code from sample JSON:
' Generate Parsing Code from JSON
metaPagingOffset = jResp.IntOf("meta.paging.offset")
metaPagingTotal = jResp.IntOf("meta.paging.total")
i = 0
count_i = jResp.SizeOfArray("data")
Do While i < count_i
jResp.I = i
attributesAmount = jResp.IntOf("data[i].attributes.amount")
attributesCounterpartAccountReference = jResp.StringOf("data[i].attributes.counterpartAccountReference")
attributesCounterpartFinancialInstitutionBic = jResp.StringOf("data[i].attributes.counterpartFinancialInstitutionBic")
attributesCounterpartName = jResp.StringOf("data[i].attributes.counterpartName")
attributesEndToEndId = jResp.StringOf("data[i].attributes.endToEndId")
attributesExecutionDate = jResp.StringOf("data[i].attributes.executionDate")
attributesInternalId = jResp.StringOf("data[i].attributes.internalId")
attributesRemittanceInformation = jResp.StringOf("data[i].attributes.remittanceInformation")
attributesRemittanceInformationType = jResp.StringOf("data[i].attributes.remittanceInformationType")
attributesStatus = jResp.StringOf("data[i].attributes.status")
attributesValueDate = jResp.StringOf("data[i].attributes.valueDate")
id = jResp.StringOf("data[i].id")
v_type = jResp.StringOf("data[i].type")
i = i + 1
Loop
outFile.Close