Skip to main content
POST
/
api
/
v1
/
partner
/
cashin
Cash In
curl --request POST \
  --url https://api.example.com/api/v1/partner/cashin \
  --header 'Content-Type: application/json' \
  --header 'X-Partner-ID: <x-partner-id>' \
  --header 'X-Signature: <x-signature>' \
  --data '
{
  "phone_number": "<string>",
  "card_serial": "<string>",
  "amount": 123,
  "reference": "<string>"
}
'

Partner Cash In

Credit a subscriber’s wallet. Partner’s clearing account is debited. Requires HMAC signature.

Endpoint

POST /api/v1/partner/cashin

Authentication

X-Signature
string
required
HMAC-SHA256 signature of request body
X-Partner-ID
string
required
Your partner identifier

Request Body

phone_number
string
Subscriber phone number
card_serial
string
Subscriber card serial
amount
integer
required
Amount in cents (e.g., 5000000 = 50,000 SLE)
reference
string
required
Partner’s unique transaction reference
Provide either phone_number or card_serial

Response

{
  "success": true,
  "transaction_id": "txn_abc123",
  "message": "Cash-in successful",
  "data": {
    "subscriber_id": "sub_xyz789",
    "name": "John Doe",
    "amount": 5000000,
    "new_balance": 7500000,
    "currency": "SLE",
    "reference": "TXN-123456"
  }
}

Transaction Flow

  1. Partner account is debited (may go negative - clearing account)
  2. Subscriber account is credited
  3. Transaction and ledger entries are created
  4. Generates unique transaction ID

Errors

CodeDescription
400Invalid request
401Invalid signature
404Subscriber not found
500Transaction failed