Cross-Provider Workflow

Stripe Balance to Google Sheet Reconciliation

Version 1.0.0

Read the Stripe balance and transactions, then append them to a Google Sheet.

1 workflow 2 source APIs 2 providers
View Spec View on GitHub ArazzoWorkflowsCross-Provider

Providers Orchestrated

stripe google-sheets

Workflows

balance-to-sheet
Read Stripe balance and transactions, then append to a sheet.
Reads the Stripe balance and recent balance transactions, then appends a reconciliation row to a Google Sheet.
3 steps inputs: limit, range, spreadsheetId outputs: available, updatedRange
1
get-balance
$sourceDescriptions.stripeBalanceApi.getBalance
Read the current Stripe account balance.
2
get-transactions
$sourceDescriptions.stripeBalanceApi.getBalanceTransactions
Read recent Stripe balance transactions.
3
append-to-sheet
$sourceDescriptions.googleSheetsApi.appendValues
Append the balance figures to a Google Sheet.

Source API Descriptions

Arazzo Workflow Specification

fin-stripe-balance-to-sheet-recon.yml Raw ↑
arazzo: 1.0.1
info:
  title: Stripe Balance to Google Sheet Reconciliation
  summary: Read the Stripe balance and transactions, then append them to a Google Sheet.
  description: >-
    A treasury-reconciliation workflow that reads the current Stripe account
    balance and recent balance transactions, then appends them to a Google Sheet
    so finance can reconcile available and pending funds against the books.
    Demonstrates exporting balance and ledger data from a payments provider into
    a spreadsheet.
  version: 1.0.0
sourceDescriptions:
  - name: stripeBalanceApi
    url: https://raw.githubusercontent.com/api-evangelist/stripe/refs/heads/main/openapi/stripe-balance-api-openapi.yml
    type: openapi
  - name: googleSheetsApi
    url: https://raw.githubusercontent.com/api-evangelist/google-sheets/refs/heads/main/openapi/google-sheets-openapi.yml
    type: openapi
workflows:
  - workflowId: balance-to-sheet
    summary: Read Stripe balance and transactions, then append to a sheet.
    description: >-
      Reads the Stripe balance and recent balance transactions, then appends a
      reconciliation row to a Google Sheet.
    inputs:
      type: object
      properties:
        limit:
          type: integer
        spreadsheetId:
          type: string
        range:
          type: string
    steps:
      - stepId: get-balance
        description: Read the current Stripe account balance.
        operationId: $sourceDescriptions.stripeBalanceApi.getBalance
        successCriteria:
          - condition: $statusCode == 200
        outputs:
          available: $response.body#/available
          pending: $response.body#/pending
      - stepId: get-transactions
        description: Read recent Stripe balance transactions.
        operationId: $sourceDescriptions.stripeBalanceApi.getBalanceTransactions
        parameters:
          - name: limit
            in: query
            value: $inputs.limit
        successCriteria:
          - condition: $statusCode == 200
        outputs:
          transactions: $response.body#/data
      - stepId: append-to-sheet
        description: Append the balance figures to a Google Sheet.
        operationId: $sourceDescriptions.googleSheetsApi.appendValues
        parameters:
          - name: spreadsheetId
            in: path
            value: $inputs.spreadsheetId
          - name: range
            in: path
            value: $inputs.range
          - name: valueInputOption
            in: query
            value: USER_ENTERED
        requestBody:
          contentType: application/json
          payload:
            range: $inputs.range
            majorDimension: ROWS
            values:
              - - Stripe Balance Snapshot
        successCriteria:
          - condition: $statusCode == 200
        outputs:
          updatedRange: $response.body#/updates/updatedRange
    outputs:
      available: $steps.get-balance.outputs.available
      updatedRange: $steps.append-to-sheet.outputs.updatedRange