MFS Beneficiary - os-salahuddin/php8-cluster GitHub Wiki

Beneficiary

Get beneficiary list

This API provides the beneficiary list for MFS

URL

[GET] http://127.0.0.1:8282/api/v1/private/wallet/mfs/beneficiary-list

Sample Response

{
    "code": 200,
    "messages": [
        "success"
    ],
    "data": {
        "Beneficiary": [
            {
                "id": 579,
                "account_no": "+88017xxxxxxxx",
                "name": "bKash",
                "status": 1,
                "logo": "https://deshipay.s3.ap-southeast-1.amazonaws.com/deshipay/addmoney/channel/GxOoZtXhmxHlXPyUEATQ0uXYr1729071414.png",
                "created_at": "2024-12-12T10:37:43.000000Z"
            },
            {
                "id": 586,
                "account_no": "+88017xxxxxxxx",
                "name": "Nagad",
                "status": 1,
                "logo": "https://deshipay.s3.ap-southeast-1.amazonaws.com/mfs/nagad_logo.jpeg",
                "created_at": "2025-01-14T08:59:58.000000Z"
            },
            {
                "id": 587,
                "account_no": "+88017xxxxxxxx",
                "name": "Upay",
                "status": 2,
                "logo": "https://www.upaybd.com/images/Upay-Logo.jpg",
                "created_at": "2025-01-14T09:02:45.000000Z"
            }
        ]
    }
}

Sample Response Format

Parameter Type Description Always Present
code Int HTTP code (e.g., 200) Yes
messages Array Result messages Yes
data.Beneficiary Array List of beneficiaries Yes
data.Beneficiary[].id Int Unique ID of the beneficiary Yes
data.Beneficiary[].account_no String Account number of the beneficiary Yes
data.Beneficiary[].name String Name of the beneficiary Yes
data.Beneficiary[].status Int Status of the beneficiary (1 = Active, 2 = Inactive) Yes
data.Beneficiary[].logo String URL to the beneficiary's logo Yes
data.Beneficiary[].created_at String Timestamp of when the beneficiary was created Yes

Add beneficiary

This API provides the summary information of request money. If OTP is verified then Response 1, Otherwise Response 2.

URL

[POST] http://127.0.0.1:8282/api/v1/private/wallet/mfs/beneficiary-add

Sample request

{
    "account_no" : "+88017xxxxxxxx",
    "mobile_bank_id": 3
}

Sample Request Format

Parameter Type Description Always Present
account_no string Account Yes
mobile_bank_id Int Mobile bank id Yes

Sample Response

Response 1:

{
    "code": 200,
    "messages": [
          "We need to review if the MFS account you've added is correct. It may take 1-3 working days to complete the process."
    ],
    "data": {
        "status": "success"
    }
}

Response 2:

{
    "code": 200,
    "messages": [
          "Verify your OTP."
    ],
    "data": {
        "otp_expired_time": 2
        "status": "otp"
    }
}
{
    "code": 422,
    "messages": [
        "This MFS account already added to ST Pay"
    ],
    "data": []
}
{
    "code": 422,
    "messages": [
        "OTP Already Sent."
    ],
    "data": []
}
{
    "code": 422,
    "messages": [
        "An account is already exists in selected MFS category"
    ],
    "data": []
}
{
    "code": 422,
    "messages": [
        "Sorry! This MFS is currently inactive"
    ],
    "data": []
}

Sample Response Format

Parameter Type Description Always Present
code Int HTTP code (e.g., 200) Yes
messages Array Result messages Yes
data.status String Status(i.e 'success') Yes
data.otp_expired_time Int OTP expire time (i.e 2 minutes) Yes

OTP Verify for beneficiary add

This API is used to verify otp to add beneficiary

URL

[POST] http://127.0.0.1:8282/api/v1/private/wallet/mfs/beneficiary-otp-verify

Sample request

{
    "otp": 123456,
    "account_no": "+88017xxxxxxxx",
    "mobile_bank_id": "3"
}

Sample Request Format

Parameter Type Description Always Present
otp string otp Yes
account_no String Account no Yes
mobile_bank_id Int Mobile bank id Yes

Sample Response

{
    "code": 200,
    "messages": [
          "We need to review if the MFS account you've added is correct. It may take 1-3 working days to complete the process."
    ],
    "data": {
        "status": "success"
    }
}
{
    "code": 422,
    "messages": [
        "This MFS account already added to ST Pay."
    ],
    "data": []
}
{
    "code": 422,
    "messages": [
        "This MFS account is already rejected."
    ],
    "data": []
}

Sample Response Format

Parameter Type Description Always Present
code Int HTTP code (e.g., 200) Yes
messages Array Result messages Yes
data.status String Status (i.e 'success') Yes

Transaction Amount Verify for a beneficiary before transaction processing.

This API is used to verify transaction amount for MFS beneficiary.

URL

[POST] http://127.0.0.1:8282/api/v1/private/wallet/mfs/beneficiary-amount-verify

Sample request

{
    "account_no": "+88017xxxxxxxx",
    "beneficiary_id": 535,
    "transaction_amount": "0.15"
}

Sample Request Format

Parameter Type Description Always Present
account_no string account no Yes
beneficiary_id Int Beneficiary id Yes
transaction_amount Int Transaction amount Yes

Sample Response

{
    "code": 200,
    "messages": [
          "Beneficiary verify successfully."
    ],
    "data": null
}
{
    "code": 422,
    "messages": [
        "Sorry! Beneficiary not found"
    ],
    "data": null
}
{
    "code": 422,
    "messages": [
        "An account is already exists in selected MFS category"
    ],
    "data": null
}

Sample Response Format

Parameter Type Description Always Present
code Int HTTP code (e.g., 200) Yes
messages Array Result messages Yes
data Mixed Object or null Yes

Update Beneficiary - active or inactive

This API is used to update with active or inactive status for the MFS beneficiary

URL

[PATCH] http://127.0.0.1:8282/api/v1/private/wallet/mfs/beneficiary-list-update?status=active

Sample request

{
    "mfs":[535,534,533,532,531]
}

Sample Request Format

Parameter Type Description Always Present
mfs Array List of mobile bank beneficiary Yes

Sample Response

{
    "code": 200,
    "messages": [
          "success"
    ],
    "data": null
}
{
    "code": 422,
    "messages": [
        "Sorry! Beneficiary not found"
    ],
    "data": null
}
{
    "code": 401,
    "messages": [
        "Sorry! Beneficiary does not belong to you."
    ],
    "data": null
}

Sample Response Format

Parameter Type Description Always Present
code Int HTTP code (e.g., 200) Yes
messages Array Result messages Yes
data Mixed Object or null Yes