API reference · Platform & integration
GSMA Mobile Money API A GSMA-shaped mobile money interface. About mobile money api Next
POST Confirm with a subscriber's one-time code POST /gsma/{tenantId}/confirmations
Called from the subscriber's handset or the provider's hosted page, never by the agent. Body: {"msisdn": "...", "otp": "..."}.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live Content-Typeapplication/json
Path parameters Example Request body: object · Response: MmUpdateResult
curl Request Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/confirmations" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" \
-H "Content-Type: application/json" \
-d '{}' Copy {
"result": "string"
} Responses POST Issue an access token (OAuth 2.0 client credentials) POST /gsma/{tenantId}/token
application/x-www-form-urlencoded with grant_type=client_credentials and an optional scope. The client authenticates with HTTP Basic (client_secret_basic) or with a private_key_jwt client_assertion whose audience is this endpoint. X-API-Key may accompany the request and must then belong to the client. Tokens are opaque and live for five minutes.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmTokenResponse
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/token" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"scope": "string",
"access_token": "string",
"token_type": "string",
"expires_in": 0
} Responses GET Read the balance of the client's own account GET /gsma/{tenantId}/v1.2/mm/accounts/balance
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmBalance
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/balance" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"currentBalance": "string",
"availableBalance": "string",
"reservedBalance": "string",
"unclearedBalance": "string",
"accountStatus": "string",
"currency": "string"
} Responses GET Read an account GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}
Only an account the client holds authority over: one of its own accounts, or one covered by the account holder's grant.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmAccount
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"accountIdentifiers": [
{
"key": "string",
"value": "string"
}
],
"identity": [
{
"identityId": "string",
"identityType": "string",
"identityStatus": "string",
"identityKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"accountRelationship": "string",
"kycVerificationStatus": "string",
"kycVerificationEntity": "string",
"kycLevel": 0,
"customData": [
{
"key": "string",
"value": "string"
}
]
}
],
"accountType": "string",
"accountStatus": "string",
"accountSubStatus": "string",
"currentBalance": "string",
"availableBalance": "string",
"reservedBalance": "string",
"unclearedBalance": "string",
"currency": "string",
"fees": [
{
"feeType": "string",
"feeAmount": "string",
"feeCurrency": "string"
}
],
"registeringEntity": "string",
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
} Responses PATCH Update an account (not offered) PATCH /gsma/{tenantId}/v1.2/mm/accounts/{accountId}
Account status is changed by the provider only.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Look up the account holder name GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/accountname
Masked (first two letters and last initial) unless the client was granted full-name disclosure or holds authority over the account. Limited per client and per target.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmAccountName
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/accountname" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"name": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
},
"lei": "string"
} Responses GET List payment codes of an account GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/authorisationcodes
Codes are masked.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Name Default codeStateOptional limitOptional offsetOptional
Example Response: List<MmAuthorisationCode>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/authorisationcodes" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"authorisationCode": "string",
"codeState": "string",
"amount": "string",
"currency": "string",
"amountType": "string",
"codeLifetime": 0,
"holdFundsIndicator": true,
"redemptionAccountIdentifiers": [
{
"key": "string",
"value": "string"
}
],
"redemptionChannels": [
{
"channelType": "string"
}
],
"redemptionTransactionTypes": [
{
"transactionType": "string",
"transactionSubType": "string"
}
],
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
}
] Responses POST Create a pre-authorised payment code POST /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/authorisationcodes
Needs authority over the account (its own account, or the holder's grant with mm.codes). Funds are always held. The code is returned once, in the creation response or callback. ATM redemption is not offered.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/authorisationcodes" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read a payment code GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/authorisationcodes/{authorisationCode}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdaccountIdauthorisationCode
Example Response: MmAuthorisationCode
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/authorisationcodes/value" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"authorisationCode": "string",
"codeState": "string",
"amount": "string",
"currency": "string",
"amountType": "string",
"codeLifetime": 0,
"holdFundsIndicator": true,
"redemptionAccountIdentifiers": [
{
"key": "string",
"value": "string"
}
],
"redemptionChannels": [
{
"channelType": "string"
}
],
"redemptionTransactionTypes": [
{
"transactionType": "string",
"transactionSubType": "string"
}
],
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
} Responses PATCH Cancel a payment code PATCH /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/authorisationcodes/{authorisationCode}
JSON Patch replacing /codeState with cancelled. The held funds are released.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdaccountIdauthorisationCode
Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/authorisationcodes/value" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read an account balance GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/balance
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmBalance
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/balance" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"currentBalance": "string",
"availableBalance": "string",
"reservedBalance": "string",
"unclearedBalance": "string",
"accountStatus": "string",
"currency": "string"
} Responses GET List the bill companies of a bill account GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/billcompanies
The account is identified by consumerno and serviceprovider.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: List<MmBillCompany>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/billcompanies" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"serviceProvider": "string",
"companyName": "string",
"serviceProviderType": "string",
"serviceProviderSubType": "string"
}
] Responses GET Retrieve the bills of a bill account GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/bills
A live lookup at the biller. billReference is the reference to pay against and expires at dueDate.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: List<MmBill>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/bills" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"billReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"billStatus": "string",
"amountDue": "string",
"minimumAmountDue": "string",
"dueDate": "string",
"billDescription": "string",
"currency": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
}
] Responses GET List the payments made against a bill or a bill account, newest first GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/bills/payments
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Name Default limitOptional offsetOptional
Example Response: List<MmBillPayment>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/bills/payments" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"amountPaid": "string",
"currency": "string",
"paymentType": "string",
"serviceProviderPaymentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"customerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"supplementaryBillReferenceDetails": [
{
"paymentReferenceType": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"paymentReferenceValue": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}
],
"serviceProviderComment": "string",
"serviceProviderNotification": "string",
"billPaymentStatus": "string",
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
}
] Responses POST Pay a bill POST /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/bills/payments
Asynchronous. The debit is the client's own account or the account holder's grant; the biller's token, where it issues one, is returned as serviceProviderPaymentReference.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/bills/payments" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET List the payments made against a bill or a bill account, newest first GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/bills/{billReference}/payments
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdaccountIdbillReference
Query parameters Name Default limitOptional offsetOptional
Example Response: List<MmBillPayment>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/bills/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/payments" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"amountPaid": "string",
"currency": "string",
"paymentType": "string",
"serviceProviderPaymentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"customerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"supplementaryBillReferenceDetails": [
{
"paymentReferenceType": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"paymentReferenceValue": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}
],
"serviceProviderComment": "string",
"serviceProviderNotification": "string",
"billPaymentStatus": "string",
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
}
] Responses POST Pay a bill POST /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/bills/{billReference}/payments
Asynchronous. The debit is the client's own account or the account holder's grant; the biller's token, where it issues one, is returned as serviceProviderPaymentReference.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdaccountIdbillReference
Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/bills/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/payments" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses POST Create a debit mandate POST /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/debitmandates
The payee is the client's own collection account. The mandate is active at once when the client holds the payer's account or grant; otherwise the payer approves it in their wallet. amountLimit is required unless the provider allows uncapped mandates. frequencyType is stored as given and enforced as a pulls-per-period cap.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/debitmandates" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read a debit mandate GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/debitmandates/{debitMandateReference}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdaccountIddebitMandateReference
Example Response: MmDebitMandate
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/debitmandates/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"mandateReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"payee": [
{
"key": "string",
"value": "string"
}
],
"mandateStatus": "string",
"startDate": "string",
"endDate": "string",
"amountLimit": "string",
"currency": "string",
"frequencyType": "string",
"numberOfPayments": 0,
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
} Responses PATCH Update or cancel a debit mandate PATCH /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/debitmandates/{debitMandateReference}
mandateStatus inactive cancels it, from the payee or the payer's side. Changing startDate, endDate, amountLimit, frequencyType or numberOfPayments needs the payer's authority.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdaccountIddebitMandateReference
Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/debitmandates/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses PATCH Record an agent's KYC verification of an identity PATCH /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/identities/{identityId}
kycVerificationStatus verified or rejected is recorded as the agent's attestation. It never sets the tier: the provider's rules decide that, and the response shows the result. Allowed for accounts the agent opened; otherwise the subscriber confirms with a one-time code first.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdaccountIdidentityId
Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/identities/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses POST Link an account POST /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/links
Links the account in the path to the client's account named in sourceAccountIdentifiers. mode push lets the client credit the account by linkref; pull lets it debit the account, capped per transaction and per day. The link is active at once when the client holds the account or its holder's grant; otherwise the holder approves it.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/links" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read a link GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/links/{linkReference}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdaccountIdlinkReference
Example Response: MmLink
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/links/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"linkReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"sourceAccountIdentifiers": [
{
"key": "string",
"value": "string"
}
],
"mode": "string",
"status": "string",
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
} Responses PATCH Update a link PATCH /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/links/{linkReference}
status inactive ends it. Narrowing mode needs nothing more; widening mode or re-activating needs the holder's authority, and waits for the holder's approval when the client lacks it.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdaccountIdlinkReference
Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/links/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET List statement entries, newest first GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/statemententries
limit defaults to 50 and is capped at 100; offset counts records.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Name Default limitOptional offsetOptional fromDateTimeOptional toDateTimeOptional displayTypeOptional
Example Response: List<MmStatementEntry>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/statemententries" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"transactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"creditParty": [
{
"key": "string",
"value": "string"
}
],
"debitParty": [
{
"key": "string",
"value": "string"
}
],
"transactionStatus": "string",
"amount": "string",
"currency": "string",
"descriptionText": "string",
"displayType": "string",
"transactionReceipt": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
}
] Responses GET Read an account status GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/status
available, unavailable or unregistered. An account that does not exist and one the client may not learn about both answer identifierError.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmAccountStatus
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/status" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"accountStatus": "string",
"subStatus": "string",
"lei": "string"
} Responses GET List account transactions, newest first GET /gsma/{tenantId}/v1.2/mm/accounts/{accountId}/transactions
limit defaults to 50 and is capped at 100; offset counts records.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Name Default limitOptional offsetOptional fromDateTimeOptional toDateTimeOptional transactionStatusOptional transactionTypeOptional
Example Response: List<MmTransaction>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/transactions" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"transactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"originalTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"type": "string",
"subType": "string",
"transactionStatus": "string",
"amount": "string",
"currency": "string",
"debitParty": [
{
"key": "string",
"value": "string"
}
],
"creditParty": [
{
"key": "string",
"value": "string"
}
],
"descriptionText": "string",
"fees": [
{
"feeType": "string",
"feeAmount": "string",
"feeCurrency": "string"
}
],
"geoCode": "string",
"internationalTransferInformation": {
"originCountry": "string",
"quotationReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"quoteId": "string",
"deliveryMethod": "string",
"receivingCountry": "string",
"relationshipSender": "string",
"remittancePurpose": "string",
"sendingServiceProviderCountry": "string",
"senderBlockingReason": "string",
"recipientBlockingReason": "string"
},
"oneTimeCode": "string",
"senderKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"recipientKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"servicingIdentity": "string",
"transactionReceipt": "string",
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"metadata": [
{
"key": "string",
"value": "string"
}
],
"customData": [
{
"key": "string",
"value": "string"
}
]
}
] Responses GET Read an account GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}
Only an account the client holds authority over: one of its own accounts, or one covered by the account holder's grant.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: MmAccount
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"accountIdentifiers": [
{
"key": "string",
"value": "string"
}
],
"identity": [
{
"identityId": "string",
"identityType": "string",
"identityStatus": "string",
"identityKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"accountRelationship": "string",
"kycVerificationStatus": "string",
"kycVerificationEntity": "string",
"kycLevel": 0,
"customData": [
{
"key": "string",
"value": "string"
}
]
}
],
"accountType": "string",
"accountStatus": "string",
"accountSubStatus": "string",
"currentBalance": "string",
"availableBalance": "string",
"reservedBalance": "string",
"unclearedBalance": "string",
"currency": "string",
"fees": [
{
"feeType": "string",
"feeAmount": "string",
"feeCurrency": "string"
}
],
"registeringEntity": "string",
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
} Responses PATCH Update an account (not offered) PATCH /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}
Account status is changed by the provider only.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Look up the account holder name GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/accountname
Masked (first two letters and last initial) unless the client was granted full-name disclosure or holds authority over the account. Limited per client and per target.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: MmAccountName
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/accountname" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"name": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
},
"lei": "string"
} Responses GET List payment codes of an account GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/authorisationcodes
Codes are masked.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Query parameters Name Default codeStateOptional limitOptional offsetOptional
Example Response: List<MmAuthorisationCode>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/authorisationcodes" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"authorisationCode": "string",
"codeState": "string",
"amount": "string",
"currency": "string",
"amountType": "string",
"codeLifetime": 0,
"holdFundsIndicator": true,
"redemptionAccountIdentifiers": [
{
"key": "string",
"value": "string"
}
],
"redemptionChannels": [
{
"channelType": "string"
}
],
"redemptionTransactionTypes": [
{
"transactionType": "string",
"transactionSubType": "string"
}
],
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
}
] Responses POST Create a pre-authorised payment code POST /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/authorisationcodes
Needs authority over the account (its own account, or the holder's grant with mm.codes). Funds are always held. The code is returned once, in the creation response or callback. ATM redemption is not offered.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/authorisationcodes" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read a payment code GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/authorisationcodes/{authorisationCode}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifierauthorisationCode
Example Response: MmAuthorisationCode
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/authorisationcodes/value" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"authorisationCode": "string",
"codeState": "string",
"amount": "string",
"currency": "string",
"amountType": "string",
"codeLifetime": 0,
"holdFundsIndicator": true,
"redemptionAccountIdentifiers": [
{
"key": "string",
"value": "string"
}
],
"redemptionChannels": [
{
"channelType": "string"
}
],
"redemptionTransactionTypes": [
{
"transactionType": "string",
"transactionSubType": "string"
}
],
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
} Responses PATCH Cancel a payment code PATCH /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/authorisationcodes/{authorisationCode}
JSON Patch replacing /codeState with cancelled. The held funds are released.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifierauthorisationCode
Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/authorisationcodes/value" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read an account balance GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/balance
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: MmBalance
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/balance" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"currentBalance": "string",
"availableBalance": "string",
"reservedBalance": "string",
"unclearedBalance": "string",
"accountStatus": "string",
"currency": "string"
} Responses GET List the bill companies of a bill account GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/billcompanies
The account is identified by consumerno and serviceprovider.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: List<MmBillCompany>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/billcompanies" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"serviceProvider": "string",
"companyName": "string",
"serviceProviderType": "string",
"serviceProviderSubType": "string"
}
] Responses GET Retrieve the bills of a bill account GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/bills
A live lookup at the biller. billReference is the reference to pay against and expires at dueDate.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: List<MmBill>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/bills" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"billReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"billStatus": "string",
"amountDue": "string",
"minimumAmountDue": "string",
"dueDate": "string",
"billDescription": "string",
"currency": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
}
] Responses GET List the payments made against a bill or a bill account, newest first GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/bills/payments
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Query parameters Name Default limitOptional offsetOptional
Example Response: List<MmBillPayment>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/bills/payments" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"amountPaid": "string",
"currency": "string",
"paymentType": "string",
"serviceProviderPaymentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"customerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"supplementaryBillReferenceDetails": [
{
"paymentReferenceType": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"paymentReferenceValue": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}
],
"serviceProviderComment": "string",
"serviceProviderNotification": "string",
"billPaymentStatus": "string",
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
}
] Responses POST Pay a bill POST /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/bills/payments
Asynchronous. The debit is the client's own account or the account holder's grant; the biller's token, where it issues one, is returned as serviceProviderPaymentReference.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/bills/payments" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET List the payments made against a bill or a bill account, newest first GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/bills/{billReference}/payments
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifierbillReference
Query parameters Name Default limitOptional offsetOptional
Example Response: List<MmBillPayment>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/bills/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/payments" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"amountPaid": "string",
"currency": "string",
"paymentType": "string",
"serviceProviderPaymentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"customerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"supplementaryBillReferenceDetails": [
{
"paymentReferenceType": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"paymentReferenceValue": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}
],
"serviceProviderComment": "string",
"serviceProviderNotification": "string",
"billPaymentStatus": "string",
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
}
] Responses POST Pay a bill POST /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/bills/{billReference}/payments
Asynchronous. The debit is the client's own account or the account holder's grant; the biller's token, where it issues one, is returned as serviceProviderPaymentReference.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifierbillReference
Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/bills/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/payments" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses POST Create a debit mandate POST /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/debitmandates
The payee is the client's own collection account. The mandate is active at once when the client holds the payer's account or grant; otherwise the payer approves it in their wallet. amountLimit is required unless the provider allows uncapped mandates. frequencyType is stored as given and enforced as a pulls-per-period cap.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/debitmandates" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read a debit mandate GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/debitmandates/{debitMandateReference}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifierdebitMandateReference
Example Response: MmDebitMandate
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/debitmandates/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"mandateReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"payee": [
{
"key": "string",
"value": "string"
}
],
"mandateStatus": "string",
"startDate": "string",
"endDate": "string",
"amountLimit": "string",
"currency": "string",
"frequencyType": "string",
"numberOfPayments": 0,
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
} Responses PATCH Update or cancel a debit mandate PATCH /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/debitmandates/{debitMandateReference}
mandateStatus inactive cancels it, from the payee or the payer's side. Changing startDate, endDate, amountLimit, frequencyType or numberOfPayments needs the payer's authority.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifierdebitMandateReference
Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/debitmandates/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses PATCH Record an agent's KYC verification of an identity PATCH /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/identities/{identityId}
kycVerificationStatus verified or rejected is recorded as the agent's attestation. It never sets the tier: the provider's rules decide that, and the response shows the result. Allowed for accounts the agent opened; otherwise the subscriber confirms with a one-time code first.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifieridentityId
Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/identities/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses POST Link an account POST /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/links
Links the account in the path to the client's account named in sourceAccountIdentifiers. mode push lets the client credit the account by linkref; pull lets it debit the account, capped per transaction and per day. The link is active at once when the client holds the account or its holder's grant; otherwise the holder approves it.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/links" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read a link GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/links/{linkReference}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifierlinkReference
Example Response: MmLink
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/links/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"linkReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"sourceAccountIdentifiers": [
{
"key": "string",
"value": "string"
}
],
"mode": "string",
"status": "string",
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
} Responses PATCH Update a link PATCH /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/links/{linkReference}
status inactive ends it. Narrowing mode needs nothing more; widening mode or re-activating needs the holder's authority, and waits for the holder's approval when the client lacks it.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifierlinkReference
Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/links/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET List statement entries, newest first GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/statemententries
limit defaults to 50 and is capped at 100; offset counts records.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Query parameters Name Default limitOptional offsetOptional fromDateTimeOptional toDateTimeOptional displayTypeOptional
Example Response: List<MmStatementEntry>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/statemententries" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"transactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"creditParty": [
{
"key": "string",
"value": "string"
}
],
"debitParty": [
{
"key": "string",
"value": "string"
}
],
"transactionStatus": "string",
"amount": "string",
"currency": "string",
"descriptionText": "string",
"displayType": "string",
"transactionReceipt": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
}
] Responses GET Read an account status GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/status
available, unavailable or unregistered. An account that does not exist and one the client may not learn about both answer identifierError.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Example Response: MmAccountStatus
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/status" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"accountStatus": "string",
"subStatus": "string",
"lei": "string"
} Responses GET List account transactions, newest first GET /gsma/{tenantId}/v1.2/mm/accounts/{identifierType}/{identifier}/transactions
limit defaults to 50 and is capped at 100; offset counts records.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdidentifierTypeidentifier
Query parameters Name Default limitOptional offsetOptional fromDateTimeOptional toDateTimeOptional transactionStatusOptional transactionTypeOptional
Example Response: List<MmTransaction>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value/value/transactions" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"transactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"originalTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"type": "string",
"subType": "string",
"transactionStatus": "string",
"amount": "string",
"currency": "string",
"debitParty": [
{
"key": "string",
"value": "string"
}
],
"creditParty": [
{
"key": "string",
"value": "string"
}
],
"descriptionText": "string",
"fees": [
{
"feeType": "string",
"feeAmount": "string",
"feeCurrency": "string"
}
],
"geoCode": "string",
"internationalTransferInformation": {
"originCountry": "string",
"quotationReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"quoteId": "string",
"deliveryMethod": "string",
"receivingCountry": "string",
"relationshipSender": "string",
"remittancePurpose": "string",
"sendingServiceProviderCountry": "string",
"senderBlockingReason": "string",
"recipientBlockingReason": "string"
},
"oneTimeCode": "string",
"senderKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"recipientKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"servicingIdentity": "string",
"transactionReceipt": "string",
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"metadata": [
{
"key": "string",
"value": "string"
}
],
"customData": [
{
"key": "string",
"value": "string"
}
]
}
] Responses POST Open an account for a subscriber at an agent POST /gsma/{tenantId}/v1.2/mm/accounts/{identityType}
Only identityType individual. Bridge sends the subscriber a one-time code; the account opens, at tier 1 and unverified, once the subscriber confirms it. The agent never sees the code. kycLevel, identityStatus and a verified kycVerificationStatus are refused: the provider assigns them.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/accounts/value" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses POST Create a disbursement batch POST /gsma/{tenantId}/v1.2/mm/batchtransactions
Up to 1,000 disbursement transactions funded from the disburser linked to the client. Validated lines wait for a PATCH approval (batchStatus: approved) from a second principal before any money moves.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/batchtransactions" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read a disbursement batch GET /gsma/{tenantId}/v1.2/mm/batchtransactions/{batchId}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmBatch
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/batchtransactions/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"batchId": "string",
"batchTitle": "string",
"batchDescription": "string",
"batchStatus": "string",
"scheduledStartDate": "string",
"approvalDate": "string",
"completionDate": "string",
"processingFlag": true,
"completedCount": 0,
"rejectionCount": 0,
"parsingSuccessCount": 0,
"transactions": [
{
"transactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"originalTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"type": "string",
"subType": "string",
"transactionStatus": "string",
"amount": "string",
"currency": "string",
"debitParty": [
{
"key": "string",
"value": "string"
}
],
"creditParty": [
{
"key": "string",
"value": "string"
}
],
"descriptionText": "string",
"fees": [
{
"feeType": "string",
"feeAmount": "string",
"feeCurrency": "string"
}
],
"geoCode": "string",
"internationalTransferInformation": {
"originCountry": "string",
"quotationReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"quoteId": "string",
"deliveryMethod": "string",
"receivingCountry": "string",
"relationshipSender": "string",
"remittancePurpose": "string",
"sendingServiceProviderCountry": "string",
"senderBlockingReason": "string",
"recipientBlockingReason": "string"
},
"oneTimeCode": "string",
"senderKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"recipientKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"servicingIdentity": "string",
"transactionReceipt": "string",
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"metadata": [
{
"key": "string",
"value": "string"
}
],
"customData": [
{
"key": "string",
"value": "string"
}
]
}
],
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
} Responses PATCH Approve a disbursement batch PATCH /gsma/{tenantId}/v1.2/mm/batchtransactions/{batchId}
JSON Patch replacing /batchStatus with approved. The approval is bound to the batch content validated at creation.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/batchtransactions/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET List completed batch lines GET /gsma/{tenantId}/v1.2/mm/batchtransactions/{batchId}/completions
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Name Default limitOptional offsetOptional
Example Response: List<MmBatchCompletion>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/batchtransactions/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/completions" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"transactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"creditParty": [
{
"key": "string",
"value": "string"
}
],
"debitParty": [
{
"key": "string",
"value": "string"
}
],
"completionDate": "string",
"link": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
}
] Responses GET List rejected batch lines GET /gsma/{tenantId}/v1.2/mm/batchtransactions/{batchId}/rejections
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Name Default limitOptional offsetOptional
Example Response: List<MmBatchRejection>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/batchtransactions/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/rejections" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"transactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"creditParty": [
{
"key": "string",
"value": "string"
}
],
"debitParty": [
{
"key": "string",
"value": "string"
}
],
"rejectionReason": "string",
"rejectionDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
}
] Responses GET List bill companies GET /gsma/{tenantId}/v1.2/mm/billcompanies
Every active bill product in the provider's catalogue for a country. serviceProvider is the product code to use as the serviceprovider identifier. country (ISO 3166 alpha-2) is a Bridge extension; without it the provider's default country is used.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Query parameters Name Default countryOptional limitOptional offsetOptional
Example Response: List<MmBillCompany>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/billcompanies" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"serviceProvider": "string",
"companyName": "string",
"serviceProviderType": "string",
"serviceProviderSubType": "string"
}
] Responses GET Read a bill company GET /gsma/{tenantId}/v1.2/mm/billcompanies/{serviceProvider}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdserviceProvider
Example Response: MmBillCompany
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/billcompanies/value" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serviceProvider": "string",
"companyName": "string",
"serviceProviderType": "string",
"serviceProviderSubType": "string"
} Responses GET List the payments made against a bill or a bill account, newest first GET /gsma/{tenantId}/v1.2/mm/bills/{billReference}/payments
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdbillReference
Query parameters Name Default limitOptional offsetOptional
Example Response: List<MmBillPayment>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/bills/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/payments" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"amountPaid": "string",
"currency": "string",
"paymentType": "string",
"serviceProviderPaymentReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"customerReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"supplementaryBillReferenceDetails": [
{
"paymentReferenceType": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"paymentReferenceValue": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e"
}
],
"serviceProviderComment": "string",
"serviceProviderNotification": "string",
"billPaymentStatus": "string",
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
}
] Responses POST Pay a bill POST /gsma/{tenantId}/v1.2/mm/bills/{billReference}/payments
Asynchronous. The debit is the client's own account or the account holder's grant; the biller's token, where it issues one, is returned as serviceProviderPaymentReference.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdbillReference
Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/bills/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/payments" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses POST Ask an account holder for a grant (Bridge extension) POST /gsma/{tenantId}/v1.2/mm/grants
Creates an intent the wallet app then pushes to the tenant's authorization server (openbanking_intent_id). The holder chooses the wallet and sees the scopes and limits; the resulting access token is sent as X-User-Bearer. Grants always expire and always carry per-transaction and per-day limits.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: GsmaUserGrantResponse
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/grants" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"intentId": "string",
"clientId": "string",
"clientName": "string",
"status": "AWAITING",
"scopes": [
"string"
],
"accountNumbers": [
"string"
],
"perTransactionLimit": "string",
"perDayLimit": "string",
"currency": "string",
"expiresAt": "string",
"authorisedAt": "string"
} Responses GET Read a grant this client asked for (Bridge extension) GET /gsma/{tenantId}/v1.2/mm/grants/{intentId}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: GsmaUserGrantResponse
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/grants/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"intentId": "string",
"clientId": "string",
"clientName": "string",
"status": "AWAITING",
"scopes": [
"string"
],
"accountNumbers": [
"string"
],
"perTransactionLimit": "string",
"perDayLimit": "string",
"currency": "string",
"expiresAt": "string",
"authorisedAt": "string"
} Responses GET Check the availability of the service GET /gsma/{tenantId}/v1.2/mm/heartbeat
Returns available, degraded (with delay in milliseconds) or unavailable (with plannedRestorationTime). Needs no token; limited per source address.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmHeartbeat
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/heartbeat" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serviceStatus": "string",
"delay": 0,
"plannedRestorationTime": "string"
} Responses POST Request a quotation POST /gsma/{tenantId}/v1.2/mm/quotations
Domestic quotations carry the fees; cross-currency quotations add the rate. A quote expires at quoteExpiryTime and is consumed at most once.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/quotations" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read a quotation GET /gsma/{tenantId}/v1.2/mm/quotations/{quotationReference}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdquotationReference
Example Response: MmQuotation
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/quotations/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"quotationReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"quotationStatus": "string",
"creditParty": [
{
"key": "string",
"value": "string"
}
],
"debitParty": [
{
"key": "string",
"value": "string"
}
],
"type": "string",
"subType": "string",
"requestAmount": "string",
"requestCurrency": "string",
"chosenDeliveryMethod": "string",
"originCountry": "string",
"receivingCountry": "string",
"senderKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"recipientKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"sendingServiceProviderCountry": "string",
"availableDeliveryMethod": "string",
"quotes": [
{
"quoteId": "string",
"quoteExpiryTime": "string",
"deliveryMethod": "string",
"receivingServiceProvider": "string",
"sendingAmount": "string",
"sendingCurrency": "string",
"receivingAmount": "string",
"receivingCurrency": "string",
"fees": [
{
"feeType": "string",
"feeAmount": "string",
"feeCurrency": "string"
}
],
"fxRate": "string"
}
],
"senderBlockingReason": "string",
"recipientBlockingReason": "string",
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
],
"metadata": [
{
"key": "string",
"value": "string"
}
]
} Responses GET Read the state of an asynchronous request GET /gsma/{tenantId}/v1.2/mm/requeststates/{serverCorrelationId}
Poll until status is completed or failed, then read objectReference. Polling beyond pollLimit is refused with rateLimitError.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdserverCorrelationId
Example Response: MmRequestState
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/requeststates/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses PATCH Update a request state (deprecated in 1.2) PATCH /gsma/{tenantId}/v1.2/mm/requeststates/{serverCorrelationId}
Deprecated by the specification in favour of callbacks. Always refused.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdserverCorrelationId
Example Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/requeststates/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Responses GET Recover the outcome of a request whose response was lost GET /gsma/{tenantId}/v1.2/mm/responses/{clientCorrelationId}
Returns a link to the created resource, or to the request state when the request is still pending or failed.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdclientCorrelationId
Example Response: MmResponseLink
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/responses/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"link": "string"
} Responses GET Read the statement entries of one transaction GET /gsma/{tenantId}/v1.2/mm/statemententries/{transactionReference}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdtransactionReference
Example Response: List<MmStatementEntry>
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/statemententries/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy [
{
"transactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"creditParty": [
{
"key": "string",
"value": "string"
}
],
"debitParty": [
{
"key": "string",
"value": "string"
}
],
"transactionStatus": "string",
"amount": "string",
"currency": "string",
"descriptionText": "string",
"displayType": "string",
"transactionReceipt": "string",
"creationDate": "string",
"modificationDate": "string",
"customData": [
{
"key": "string",
"value": "string"
}
]
}
] Responses POST Create a transaction (deprecated in 1.2) POST /gsma/{tenantId}/v1.2/mm/transactions
Dispatches on the body's type. Prefer POST /transactions/type/{transactionType}.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/transactions" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses POST Create a transaction of a type POST /gsma/{tenantId}/v1.2/mm/transactions/type/{transactionType}
Asynchronous: 202 with a request state, then a PUT to X-Callback-URL or polling. The client must hold authority over the debit party: its own account, the account holder's grant, the payer's approval, an authorisation code, a debit mandate or a pull link.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdtransactionType
Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/transactions/type/value" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses GET Read a transaction GET /gsma/{tenantId}/v1.2/mm/transactions/{transactionReference}
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdtransactionReference
Example Response: MmTransaction
curl Response
Copy curl -X GET "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/transactions/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"transactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"requestingOrganisationTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"originalTransactionReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"type": "string",
"subType": "string",
"transactionStatus": "string",
"amount": "string",
"currency": "string",
"debitParty": [
{
"key": "string",
"value": "string"
}
],
"creditParty": [
{
"key": "string",
"value": "string"
}
],
"descriptionText": "string",
"fees": [
{
"feeType": "string",
"feeAmount": "string",
"feeCurrency": "string"
}
],
"geoCode": "string",
"internationalTransferInformation": {
"originCountry": "string",
"quotationReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"quoteId": "string",
"deliveryMethod": "string",
"receivingCountry": "string",
"relationshipSender": "string",
"remittancePurpose": "string",
"sendingServiceProviderCountry": "string",
"senderBlockingReason": "string",
"recipientBlockingReason": "string"
},
"oneTimeCode": "string",
"senderKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"recipientKyc": {
"birthCountry": "string",
"contactPhone": "string",
"dateOfBirth": "1990-01-01",
"emailAddress": "ada@example.com",
"employerName": "string",
"gender": "string",
"idDocument": [
{
"idType": "string",
"idNumber": "string",
"issueDate": "string",
"expiryDate": "string",
"issuer": "string",
"issuerPlace": "string",
"issuerCountry": "string",
"otherIddescription": "string"
}
],
"nationality": "string",
"occupation": "string",
"postalAddress": {
"addressLine1": "string",
"addressLine2": "string",
"addressLine3": "string",
"city": "string",
"stateProvince": "string",
"postalCode": "string",
"country": "string"
},
"subjectName": {
"title": "string",
"firstName": "Ada",
"middleName": "Chioma",
"lastName": "Okafor",
"fullName": "Ada Okafor",
"nativeName": "string"
}
},
"requestingOrganisation": {
"requestingOrganisationIdentifierType": "string",
"requestingOrganisationIdentifier": "string"
},
"servicingIdentity": "string",
"transactionReceipt": "string",
"requestDate": "string",
"creationDate": "string",
"modificationDate": "string",
"metadata": [
{
"key": "string",
"value": "string"
}
],
"customData": [
{
"key": "string",
"value": "string"
}
]
} Responses PATCH Complete or cancel an authorised payment PATCH /gsma/{tenantId}/v1.2/mm/transactions/{transactionReference}
JSON Patch with one operation on /transactionStatus: completed captures the reserved amount to the merchant, failed releases it. Only the client that authorised the payment may patch it. Callback body on success: {"result":"success"}.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdtransactionReference
Example Response: MmRequestState
curl Response
Copy curl -X PATCH "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/transactions/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses POST Reverse or refund a transaction POST /gsma/{tenantId}/v1.2/mm/transactions/{transactionReference}/reversals
Only the client holding the original credit account may reverse. With no amount, or the full amount and no earlier refund, a full reversal including fees; with a smaller amount, a refund (adjustment) capped at the unrefunded remainder.
Headers Name Notes AuthorizationBearer token X-TenantYour tenant X-Environmenttest or live
Path parameters Name tenantIdtransactionReference
Example Response: MmRequestState
curl Response
Copy curl -X POST "https://api.bridgemoni.com/gsma/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/v1.2/mm/transactions/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/reversals" \
-H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
-H "X-Tenant: $BRIDGEMONI_TENANT" \
-H "X-Environment: $BRIDGEMONI_ENV" Copy {
"serverCorrelationId": "string",
"status": "string",
"notificationMethod": "string",
"objectReference": "b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e",
"pendingReason": "string",
"expiryTime": "string",
"pollLimit": 0,
"error": {
"errorCategory": "string",
"errorCode": "string",
"errorDescription": "string",
"errorDateTime": "string",
"errorParameters": [
{
"key": "string",
"value": "string"
}
]
}
} Responses