SetuClient.Payments.BBPS (Setu Client v1.0.0)

Copy Markdown View Source

Setu BBPS BillCollect client.

Provides get_transaction/2 for querying settled BBPS transactions, plus helper functions for building biller-side bill-fetch responses and settlement split objects.

Setu docs: https://docs.setu.co/payments/bbps

Summary

Functions

Builds a bill map for inclusion in a bill-fetch response.

Builds a bill-fetch response body for your /bills/fetch/ endpoint.

Builds a settlement split object for BBPS payment routing (up to 5 parts).

Fetches a BBPS transaction by its Setu platform ID.

Functions

build_bill(params)

@spec build_bill(map()) :: map()

Builds a bill map for inclusion in a bill-fetch response.

Required

  • :biller_bill_id, :amount (paise)

build_bill_fetch_response(customer, bills)

@spec build_bill_fetch_response(map(), [map()]) :: map()

Builds a bill-fetch response body for your /bills/fetch/ endpoint.

build_settlement(primary_account, parts \\ [])

@spec build_settlement(map(), [map()]) :: map()

Builds a settlement split object for BBPS payment routing (up to 5 parts).

get_transaction(cfg, txn_id)

@spec get_transaction(SetuClient.Config.t(), String.t()) ::
  {:ok, map()} | {:error, SetuClient.Error.t()}

Fetches a BBPS transaction by its Setu platform ID.

GET /v1/bbps/transactions/{id}