Skip to content

User - Balance

Base URL: https://your-domain.com

Admin endpoints for managing subscriber and user balances. All endpoints require admin/staff authentication.


Get Subscriber Balance

Retrieve the current balance for a subscriber.

PropertyValue
EndpointGet Subscriber Balance
MethodGET
URL/api/v1/balance/subscriber/{id}
AuthenticationBearer Token

Request Headers:

HeaderValueRequired
Acceptapplication/jsonYes
AuthorizationBearer your-auth-tokenYes

Path Parameters:

ParameterTypeRequiredDescription
idintegerYesSubscriber ID

Query Parameters:

ParameterTypeRequiredDescription
isp_idintegerYesISP ID
branch_idintegerYesBranch ID
user_idintegerYesUser ID

Success Response (200 OK):

json
{
    "success": true,
    "data": {
        "subscriber_id": 1,
        "subscriber_name": "John Doe",
        "balance": 1500.00,
        "last_transaction": "2024-01-15 10:30:00"
    }
}

Error Response (404 Not Found):

json
{
    "success": false,
    "message": "Subscriber not found"
}

Get User Balance

Retrieve the current balance for a user (reseller/staff).

PropertyValue
EndpointGet User Balance
MethodGET
URL/api/v1/balance/user/{id}
AuthenticationBearer Token

Path Parameters:

ParameterTypeRequiredDescription
idintegerYesUser ID

Success Response (200 OK):

json
{
    "success": true,
    "data": {
        "user_id": 2,
        "user_name": "Reseller One",
        "balance": 5000.00,
        "last_transaction": "2024-01-15 10:30:00"
    }
}

Add Subscriber Balance

Add balance to a subscriber's account.

PropertyValue
EndpointAdd Subscriber Balance
MethodPOST
URL/api/v1/balance/subscriber/add
AuthenticationBearer Token

Request Headers:

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes
AuthorizationBearer your-auth-tokenYes

Request Body:

json
{
    "isp_id": 1,
    "branch_id": 1,
    "user_id": 1,
    "subscriber_id": 1,
    "amount": 500
}
ParameterTypeRequiredDescription
isp_idintegerYesISP ID
branch_idintegerYesBranch ID
user_idintegerYesAdmin user ID
subscriber_idintegerYesSubscriber ID
amountdecimalYesAmount to add

Success Response (200 OK):

json
{
    "success": true,
    "message": "Balance added successfully",
    "data": {
        "new_balance": 2000.00,
        "transaction_id": 456
    }
}

Error Response (422 Validation Error):

json
{
    "success": false,
    "message": "Validation failed",
    "errors": {
        "amount": ["The amount must be greater than 0."]
    }
}

Get Subscriber Ledger

Retrieve balance transaction history for a subscriber.

PropertyValue
EndpointGet Subscriber Ledger
MethodGET
URL/api/v1/balance/subscriber/{id}/ledger
AuthenticationBearer Token

Path Parameters:

ParameterTypeRequiredDescription
idintegerYesSubscriber ID

Success Response (200 OK):

json
{
    "success": true,
    "data": [
        {
            "id": 1,
            "type": "credit",
            "amount": 500,
            "balance_after": 1500,
            "description": "Balance top-up",
            "created_at": "2024-01-15 10:30:00"
        }
    ]
}

www.onezeroart.com