VBScript Stripe: List Balance History

Back to Index

Returns a list of transactions that have contributed to the Stripe account balance (e.g., charges, transfers, and so forth). The transactions are returned in sorted order, with the most recent transactions appearing first.

Documentation: https://stripe.com/docs/api/curl#balance_history

CURL Command

curl https://api.stripe.com/v1/balance/history?limit=3 \
   -u STRIPE_SECRET_KEY: \
   -G

VBScript Example

Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set outFile = fso.CreateTextFile("output.txt", True)

set rest = CreateObject("Chilkat_9_5_0.Rest")

'  URL: https://api.stripe.com/v1/balance/history?limit=3
bTls = 1
port = 443
bAutoReconnect = 1
success = rest.Connect("api.stripe.com",port,bTls,bAutoReconnect)
If (success <> 1) Then
    outFile.WriteLine("ConnectFailReason: " & rest.ConnectFailReason)
    outFile.WriteLine(rest.LastErrorText)
    WScript.Quit
End If

success = rest.SetAuthBasic("STRIPE_SECRET_KEY","")

set sbResponseBody = CreateObject("Chilkat_9_5_0.StringBuilder")
success = rest.FullRequestNoBodySb("GET","/v1/balance/history?limit=3",sbResponseBody)
If (success <> 1) Then
    outFile.WriteLine(rest.LastErrorText)
    WScript.Quit
End If

set jsonResponse = CreateObject("Chilkat_9_5_0.JsonObject")
success = jsonResponse.LoadSb(sbResponseBody)

object = jsonResponse.StringOf("object")
url = jsonResponse.StringOf("url")
has_more = jsonResponse.BoolOf("has_more")
i = 0
count_i = jsonResponse.SizeOfArray("data")
Do While i < count_i
    jsonResponse.I = i
    id = jsonResponse.StringOf("data[i].id")
    object = jsonResponse.StringOf("data[i].object")
    amount = jsonResponse.IntOf("data[i].amount")
    available_on = jsonResponse.IntOf("data[i].available_on")
    created = jsonResponse.IntOf("data[i].created")
    currency = jsonResponse.StringOf("data[i].currency")
    description = jsonResponse.IsNullOf("data[i].description")
    exchange_rate = jsonResponse.IsNullOf("data[i].exchange_rate")
    fee = jsonResponse.IntOf("data[i].fee")
    net = jsonResponse.IntOf("data[i].net")
    source = jsonResponse.StringOf("data[i].source")
    status = jsonResponse.StringOf("data[i].status")
    type = jsonResponse.StringOf("data[i].type")
    j = 0
    count_j = jsonResponse.SizeOfArray("data[i].fee_details")
    Do While j < count_j
        jsonResponse.J = j
        j = j + 1
    Loop
    i = i + 1
Loop

outFile.Close

Sample JSON Response Body

{
  "object": "list",
  "url": "/v1/balance/history",
  "has_more": false,
  "data": [
    {
      "id": "txn_1BnETJGswQrCoh0XxO2tGYr7",
      "object": "balance_transaction",
      "amount": 100,
      "available_on": 1516662781,
      "created": 1516662781,
      "currency": "usd",
      "description": null,
      "exchange_rate": null,
      "fee": 0,
      "fee_details": [
      ],
      "net": 100,
      "source": "ch_1BnETJGswQrCoh0XTs0EERBj",
      "status": "pending",
      "type": "charge"
    }
  ]
}