API reference · Communities & institutions

Credit union obligations

GET Read what the board forgave, and to whom

GET /credit-union/{reference}/fees/waivers

Pass insider=true for the insider return alone.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Query parameters

NameDefault
insider
page0
size25

Example

Response: GenericResponseFeeWaiverPageResponse

curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/fees/waivers?insider=value&page=value&size=25" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Waivers retrieved successfully

POST Raise a fee obligation

POST /credit-union/{reference}/obligation

A billed charge has no posting to ride on, so it becomes an obligation with a due date and an ageing. A member's annual subscription and an affiliated society's dues are the same shape and share this path. A shared service fee or a supervision fee is refused without a recorded consumption, and a suspended union may raise nothing discretionary at all.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: RaiseObligationRequest · Response: GenericResponseFeeObligationResponse

curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/obligation" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
  "chargeEvent": "MEMBERSHIP_ENTRANCE",
  "subjectPositionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
  "subjectUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
  "periodLabel": "2026",
  "basisAmount": 0,
  "dueOn": "2026-09-25",
  "consumptionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
  "idempotencyKey": "string"
}'

Responses

StatusWhen
200Obligation raised successfully

GET Read a fee obligation

GET /credit-union/{reference}/obligation/{obligationReference}

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference
obligationReference

Example

Response: GenericResponseFeeObligationResponse

curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/obligation/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Obligation retrieved successfully

POST Record a settlement against an obligation

POST /credit-union/{reference}/obligation/{obligationReference}/settle

Records what was paid and the posting that paid it. Settled and waived together can never exceed the amount owed.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
obligationReference

Example

Request body: SettleObligationRequest · Response: GenericResponseFeeObligationResponse

curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/obligation/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/settle" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
  "amount": 0,
  "transactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}'

Responses

StatusWhen
200Obligation settled successfully

POST Waive an obligation

POST /credit-union/{reference}/obligation/{obligationReference}/waive

A waiver is a charge decided against, not an absent charge, so it is recorded with its reason and reported as income foregone. Waiving a charge to an office holder, or to someone whose membership derives from one, needs a recorded board approval and appears in the insider return. Some charges are not the union's to forgive.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference
obligationReference

Example

Request body: WaiveObligationRequest · Response: GenericResponseFeeObligationResponse

curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/obligation/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/waive" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
  "amount": 0,
  "reason": "string",
  "approvalReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}'

Responses

StatusWhen
200Obligation waived successfully

GET Read the obligation ageing

GET /credit-union/{reference}/obligations/ageing

Members and affiliated societies in one report. Modelling them separately produced two ageing reports that disagreed.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live

Path parameters

Name
reference

Query parameters

NameDefault
statusOptional
positionOptional
societyOptional
page0
size25

Example

Response: GenericResponseFeeObligationPageResponse

curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/obligations/ageing?page=value&size=25" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV"

Responses

StatusWhen
200Obligation ageing retrieved successfully

Generated from the OpenAPI document. Branch on the HTTP status: there is no machine-readable error code on the wire. Errors