API reference · Communities & institutions
Credit union inbound rails and suspense POST Accept an inbound credit POST /credit-union/{reference}/inbound-credit
Idempotent on the provider's reference, replay-windowed, and tolerant of a reversal that arrives before its credit. What does not resolve goes to suspense, never to the closest member number.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live Content-Typeapplication/json
Path parameters Query parameters Name Default signatureVerifiedtrue providerSentAtOptional
Example Request body: InboundCreditRequest · Response: GenericResponseInboundCreditResponse
curl Request Response
Copy curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/inbound-credit?signatureVerified=True" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"railCode": "MOBILE_MONEY",
"providerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"payerIdentifier": "string",
"payerName": "Ada Okafor",
"rawReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"amount": 0,
"currencyCode": "string",
"receivedAt": "2026-09-25T10:00:00Z",
"valueDate": "2026-09-25",
"reversalOfProviderReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}' Copy {
"railCode": "MOBILE_MONEY",
"providerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"payerIdentifier": "string",
"payerName": "Ada Okafor",
"rawReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"amount": 0,
"currencyCode": "string",
"receivedAt": "2026-09-25T10:00:00Z",
"valueDate": "2026-09-25",
"reversalOfProviderReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
} Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"providerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"payerIdentifier": "string",
"payerName": "Ada Okafor",
"rawReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"amount": 0,
"currencyCode": "string",
"receivedAt": "2026-09-25T10:00:00Z",
"valueDate": "2026-09-25",
"status": "MATCHED",
"resolvedPositionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolvedDepositAccountReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"postedTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolution": "CREDITED_TO_MEMBER",
"resolvedByUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolutionNote": "string",
"resolvedAt": "2026-09-25T10:00:00Z",
"ageInDaysInSuspense": 0
},
"description": "Inbound credit accepted successfully"
} Responses Status When 200Inbound credit accepted successfully
POST Resolve money sitting in suspense POST /credit-union/{reference}/inbound-credit/{creditReference}/resolution
An operator act with a reason, recorded. Returning the money to the payer is a first-class outcome and is often the right one.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live Content-Typeapplication/json
Path parameters Name referencecreditReference
Example Request body: ResolveSuspenseRequest · Response: GenericResponseInboundCreditResponse
curl Request Response
Copy curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/inbound-credit/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/resolution" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"resolution": "CREDITED_TO_MEMBER",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"depositAccountReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"transferToUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"note": "string"
}' Copy {
"resolution": "CREDITED_TO_MEMBER",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"depositAccountReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"transferToUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"note": "string"
} Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"providerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"payerIdentifier": "string",
"payerName": "Ada Okafor",
"rawReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"amount": 0,
"currencyCode": "string",
"receivedAt": "2026-09-25T10:00:00Z",
"valueDate": "2026-09-25",
"status": "MATCHED",
"resolvedPositionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolvedDepositAccountReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"postedTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolution": "CREDITED_TO_MEMBER",
"resolvedByUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolutionNote": "string",
"resolvedAt": "2026-09-25T10:00:00Z",
"ageInDaysInSuspense": 0
},
"description": "Suspense resolved successfully"
} Responses Status When 200Suspense resolved successfully
GET Read the inbound credit register GET /credit-union/{reference}/inbound-credits
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Name Default statusOptional page0 size50
Example Response: GenericResponseListInboundCreditResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/inbound-credits?page=value&size=50" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": [
{
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"providerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"payerIdentifier": "string",
"payerName": "Ada Okafor",
"rawReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"amount": 0,
"currencyCode": "string",
"receivedAt": "2026-09-25T10:00:00Z",
"valueDate": "2026-09-25",
"status": "MATCHED",
"resolvedPositionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolvedDepositAccountReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"postedTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolution": "CREDITED_TO_MEMBER",
"resolvedByUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolutionNote": "string",
"resolvedAt": "2026-09-25T10:00:00Z",
"ageInDaysInSuspense": 0
}
],
"description": "Inbound credits retrieved successfully"
} Responses Status When 200Inbound credits retrieved successfully
POST Bind a rail to this union POST /credit-union/{reference}/rail-binding
Settlement must reach the society that owns the member. Where money genuinely lands centrally it is an inter-society payable, and the parent's deposit pocket is never touched.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live Content-Typeapplication/json
Path parameters Example Request body: IntegrationBindingRequest · Response: GenericResponseIntegrationBindingResponse
curl Request Response
Copy curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/rail-binding" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"railCode": "MOBILE_MONEY",
"ownerUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementRoute": "DIRECT_TO_OWNING_SOCIETY",
"providerSubIdentifier": "string",
"credentialReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"effectiveFrom": "2026-09-25",
"replayWindowMinutes": 0
}' Copy {
"railCode": "MOBILE_MONEY",
"ownerUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementRoute": "DIRECT_TO_OWNING_SOCIETY",
"providerSubIdentifier": "string",
"credentialReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"effectiveFrom": "2026-09-25",
"replayWindowMinutes": 0
} Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"ownerUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementRoute": "DIRECT_TO_OWNING_SOCIETY",
"providerSubIdentifier": "string",
"credentialReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"status": "DRAFT",
"template": true,
"adoptedFromTemplateReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"effectiveFrom": "2026-09-25",
"effectiveTo": "2026-09-25",
"replayWindowMinutes": 0,
"revocationReason": "string"
},
"description": "Rail bound successfully"
} Responses Status When 200Rail bound successfully
POST Publish a binding template for affiliates POST /credit-union/{reference}/rail-binding/template
A parent publishes and a child adopts, so a society is never opted into a rail by someone else. Credentials are referenced, never copied into the child's row.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live Content-Typeapplication/json
Path parameters Example Request body: IntegrationBindingRequest · Response: GenericResponseIntegrationBindingResponse
curl Request Response
Copy curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/rail-binding/template" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"railCode": "MOBILE_MONEY",
"ownerUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementRoute": "DIRECT_TO_OWNING_SOCIETY",
"providerSubIdentifier": "string",
"credentialReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"effectiveFrom": "2026-09-25",
"replayWindowMinutes": 0
}' Copy {
"railCode": "MOBILE_MONEY",
"ownerUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementRoute": "DIRECT_TO_OWNING_SOCIETY",
"providerSubIdentifier": "string",
"credentialReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"effectiveFrom": "2026-09-25",
"replayWindowMinutes": 0
} Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"ownerUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementRoute": "DIRECT_TO_OWNING_SOCIETY",
"providerSubIdentifier": "string",
"credentialReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"status": "DRAFT",
"template": true,
"adoptedFromTemplateReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"effectiveFrom": "2026-09-25",
"effectiveTo": "2026-09-25",
"replayWindowMinutes": 0,
"revocationReason": "string"
},
"description": "Binding template published successfully"
} Responses Status When 200Binding template published successfully
DELETE Revoke a binding DELETE /credit-union/{reference}/rail-binding/{bindingReference}
Revocation is not retroactive: money in flight settles under the old binding.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name referencebindingReference
Query parameters Name Default reasonOptional
Example Response: GenericResponseIntegrationBindingResponse
curl Response
Copy curl -X DELETE "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/rail-binding/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"ownerUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementRoute": "DIRECT_TO_OWNING_SOCIETY",
"providerSubIdentifier": "string",
"credentialReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"status": "DRAFT",
"template": true,
"adoptedFromTemplateReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"effectiveFrom": "2026-09-25",
"effectiveTo": "2026-09-25",
"replayWindowMinutes": 0,
"revocationReason": "string"
},
"description": "Binding revoked successfully"
} Responses Status When 200Binding revoked successfully
POST Adopt a parent's binding template POST /credit-union/{reference}/rail-binding/{templateReference}/adoption
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name referencetemplateReference
Query parameters Name Default providerSubIdentifierOptional
Example Response: GenericResponseIntegrationBindingResponse
curl Response
Copy curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/rail-binding/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/adoption" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"ownerUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementRoute": "DIRECT_TO_OWNING_SOCIETY",
"providerSubIdentifier": "string",
"credentialReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"status": "DRAFT",
"template": true,
"adoptedFromTemplateReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"effectiveFrom": "2026-09-25",
"effectiveTo": "2026-09-25",
"replayWindowMinutes": 0,
"revocationReason": "string"
},
"description": "Binding adopted successfully"
} Responses Status When 200Binding adopted successfully
GET List this union's rail bindings GET /credit-union/{reference}/rail-bindings
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: GenericResponseListIntegrationBindingResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/rail-bindings" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": [
{
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"ownerUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementUnionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"settlementRoute": "DIRECT_TO_OWNING_SOCIETY",
"providerSubIdentifier": "string",
"credentialReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"status": "DRAFT",
"template": true,
"adoptedFromTemplateReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"effectiveFrom": "2026-09-25",
"effectiveTo": "2026-09-25",
"replayWindowMinutes": 0,
"revocationReason": "string"
}
],
"description": "Rail bindings retrieved successfully"
} Responses Status When 200Rail bindings retrieved successfully
PUT Set how inbound references parse PUT /credit-union/{reference}/reference-rule
The reference is a routing key with a grammar this union owns. Leaving the default product unset is the safer choice: a deposit landing in share capital when the member meant savings changes their borrowing capacity.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live Content-Typeapplication/json
Path parameters Example Request body: InboundReferenceRuleRequest · Response: GenericResponseInboundReferenceRuleResponse
curl Request Response
Copy curl -X PUT "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/reference-rule" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"railCode": "MOBILE_MONEY",
"segmentOrder": "BUCKET_THEN_MEMBER",
"bucketLength": 0,
"bucketProductCodes": {},
"defaultDepositProductCode": "string",
"caseSensitive": true,
"checkDigit": true,
"memberSegmentLength": 0
}' Copy {
"railCode": "MOBILE_MONEY",
"segmentOrder": "BUCKET_THEN_MEMBER",
"bucketLength": 0,
"bucketProductCodes": {},
"defaultDepositProductCode": "string",
"caseSensitive": true,
"checkDigit": true,
"memberSegmentLength": 0
} Copy {
"data": {
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"segmentOrder": "BUCKET_THEN_MEMBER",
"bucketLength": 0,
"bucketProductCodes": {},
"defaultDepositProductCode": "string",
"caseSensitive": true,
"checkDigit": true,
"memberSegmentLength": 0,
"active": true
},
"description": "Reference rule set successfully"
} Responses Status When 200Reference rule set successfully
POST Dry-run a batch of references POST /credit-union/{reference}/reference-rule/dry-run
Nothing is posted and nothing is written. It answers what each reference would resolve to before a rail is switched on.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live Content-Typeapplication/json
Path parameters Example Request body: ResolveReferenceRequest · Response: GenericResponseListReferenceResolutionResponse
curl Request Response
Copy curl -X POST "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/reference-rule/dry-run" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{
"references": [
"b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
],
"railCode": "MOBILE_MONEY"
}' Copy {
"references": [
"b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
],
"railCode": "MOBILE_MONEY"
} Copy {
"data": [
{
"rawReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"memberSegment": "string",
"bucketSegment": "string",
"positionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"memberNumber": "string",
"depositAccountReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"depositProductCode": "string",
"outcome": "MATCHED",
"narrative": "string"
}
],
"description": "References resolved successfully"
} Responses Status When 200References resolved successfully
GET List this union's reference rules GET /credit-union/{reference}/reference-rules
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: GenericResponseListInboundReferenceRuleResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/reference-rules" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": [
{
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"segmentOrder": "BUCKET_THEN_MEMBER",
"bucketLength": 0,
"bucketProductCodes": {},
"defaultDepositProductCode": "string",
"caseSensitive": true,
"checkDigit": true,
"memberSegmentLength": 0,
"active": true
}
],
"description": "Reference rules retrieved successfully"
} Responses Status When 200Reference rules retrieved successfully
GET Read the suspense ageing GET /credit-union/{reference}/report/suspense
Money in suspense is not the union's: it is excluded from liquidity, from the deposit control total and from every ratio. A balance past the window is an operational failure rather than a balance.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Example Response: GenericResponseSuspenseAgeingResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/report/suspense" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": {
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"asOf": "2026-09-25",
"currencyCode": "string",
"count": 0,
"totalInSuspense": 0,
"pocketBalance": 0,
"tiesToPocket": true,
"overdueCount": 0,
"overdueAmount": 0,
"ageingWindowDays": 0,
"byBucket": {},
"oldest": [
{
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"providerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"payerIdentifier": "string",
"payerName": "Ada Okafor",
"rawReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"amount": 0,
"currencyCode": "string",
"receivedAt": "2026-09-25T10:00:00Z",
"valueDate": "2026-09-25",
"status": "MATCHED",
"resolvedPositionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolvedDepositAccountReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"postedTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolution": "CREDITED_TO_MEMBER",
"resolvedByUserReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"resolutionNote": "string",
"resolvedAt": "2026-09-25T10:00:00Z",
"ageInDaysInSuspense": 0
}
]
},
"description": "Suspense ageing retrieved successfully"
} Responses Status When 200Suspense ageing retrieved successfully
GET Read the webhook receipt log GET /credit-union/{reference}/webhook-receipts
Duplicates and replays outside the window are recorded rather than silently dropped.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: GenericResponseListWebhookReceiptResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/credit-union/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/webhook-receipts" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"data": [
{
"reference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"unionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"railCode": "MOBILE_MONEY",
"providerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"status": "ACCEPTED",
"receivedAt": "2026-09-25T10:00:00Z",
"providerSentAt": "2026-09-25T10:00:00Z",
"ageInMinutes": 0,
"inboundCreditReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"narrative": "string"
}
],
"description": "Webhook receipts retrieved successfully"
} Responses Status When 200Webhook receipts retrieved successfully