SAP BRIM Batch Rate Usage and Charge the Total

Version 1.0.0

Rate a batch of usage events in one call, then charge the account for the aggregate total.

1 workflow 1 source API 1 provider
View Spec View on GitHub BillingEnterpriseOrder-to-CashRevenue ManagementSAPSubscription ManagementUsage-Based PricingArazzoWorkflows

Provider

sap-brim-billing-and-revenue-innovation-management

Workflows

batch-rate-and-charge
Rate a batch of usage events and charge the aggregate total.
Rates a batch of usage events in a single request and charges the account for the total charge reported in the batch summary.
2 steps inputs: accountId, chargeType, events outputs: chargeId, remainingBalance, successCount, totalChargeValue
1
rateBatch
rateUsageEventBatch
Rate the full batch of usage events in a single request.
2
chargeTotal
chargeAccount
Charge the account for the aggregate total returned by the batch.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: SAP BRIM Batch Rate Usage and Charge the Total
  summary: Rate a batch of usage events in one call, then charge the account for the aggregate total.
  description: >-
    Rates many usage events at once on SAP BRIM Convergent Charging and bills the
    aggregate. The workflow submits a batch of usage events for rating, reads the
    batch summary total it returns, and charges the account for that total amount.
    The charge amount is taken directly from the batch rating summary. Every step
    spells out its request inline so the flow can be read and executed without
    opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: convergentChargingApi
  url: ../openapi/sap-brim-convergent-charging-openapi.yml
  type: openapi
workflows:
- workflowId: batch-rate-and-charge
  summary: Rate a batch of usage events and charge the aggregate total.
  description: >-
    Rates a batch of usage events in a single request and charges the account
    for the total charge reported in the batch summary.
  inputs:
    type: object
    required:
    - accountId
    - events
    properties:
      accountId:
        type: string
        description: Identifier of the account to charge for the batch total.
      events:
        type: array
        description: >-
          Array of rating requests, each with subscriberId, serviceType,
          quantity, and usageTimestamp (and optional unit, pricingPlanId).
        items:
          type: object
      chargeType:
        type: string
        description: Charging model for the aggregate charge (PREPAID or POSTPAID).
  steps:
  - stepId: rateBatch
    description: Rate the full batch of usage events in a single request.
    operationId: rateUsageEventBatch
    requestBody:
      contentType: application/json
      payload:
        events: $inputs.events
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      results: $response.body#/results
      totalChargeValue: $response.body#/summary/totalCharge/value
      totalChargeCurrency: $response.body#/summary/totalCharge/currency
      successCount: $response.body#/summary/successCount
  - stepId: chargeTotal
    description: Charge the account for the aggregate total returned by the batch.
    operationId: chargeAccount
    requestBody:
      contentType: application/json
      payload:
        accountId: $inputs.accountId
        amount:
          value: $steps.rateBatch.outputs.totalChargeValue
          currency: $steps.rateBatch.outputs.totalChargeCurrency
        chargeType: $inputs.chargeType
        description: Aggregate charge for batch-rated usage events
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      chargeId: $response.body#/chargeId
      status: $response.body#/status
      remainingBalance: $response.body#/remainingBalance
  outputs:
    successCount: $steps.rateBatch.outputs.successCount
    totalChargeValue: $steps.rateBatch.outputs.totalChargeValue
    chargeId: $steps.chargeTotal.outputs.chargeId
    remainingBalance: $steps.chargeTotal.outputs.remainingBalance

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/sap-brim-billing-and-revenue-innovation-management-batch-rate-and-charge-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.