Charges

Deduct money from your merchant balance.

Charges API

The Charges API allows you to deduct money from your merchant balance for internal adjustments, service fees, and platform fees. Unlike payouts or transfers, charges do not send money externally.

The Charge Object

{
  "id": "ch_abc123def456",
  "object": "charge",
  "amount": 10,
  "currency": "GHS",
  "description": "Monthly platform fee",
  "reference": "fee_jan_2024",
  "type": "platform_fee",
  "status": "succeeded",
  "balance_after": 490,
  "metadata": {},
  "livemode": true,
  "created": "2024-01-15T10:00:00Z"
}

Attributes

AttributeTypeDescription
idstringUnique identifier
objectstringAlways "charge"
amountnumberAmount in GHS
currencystringCurrency code (GHS)
descriptionstringCharge description
referencestringYour custom reference
typestringservice_fee, platform_fee, adjustment, other
statusstringAlways succeeded (charges are instant)
balance_afternumberMerchant balance after charge in GHS
metadataobjectCustom metadata
livemodebooleanWhether this is a live mode charge
createdstringCreation timestamp

Create a Charge

POST /v1/charges

Request Body

ParameterTypeRequiredDescription
amountnumberYesAmount in GHS (must be positive)
currencystringNoCurrency (default: GHS)
descriptionstringYesCharge description (max 500 chars)
referencestringNoYour reference (max 100 chars)
typestringNoservice_fee (default), platform_fee, adjustment, other
metadataobjectNoCustom metadata

Use the X-Idempotency-Key header to prevent duplicate charges.

curl -X POST https://api.shikacreators.com/v1/charges \
  -H "Authorization: Bearer sk_test_..." \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 10,
    "description": "Monthly platform fee",
    "type": "platform_fee",
    "reference": "fee_jan_2024"
  }'
const charge = await shikacreators.charges.create({
  amount: 10,
  description: 'Monthly platform fee',
  type: 'platform_fee',
  reference: 'fee_jan_2024'
})
charge = client.charges.create(
    amount=10,
    description='Monthly platform fee',
    type='platform_fee',
    reference='fee_jan_2024'
)

Retrieve a Charge

GET /v1/charges/:id

List Charges

GET /v1/charges

Query Parameters

ParameterTypeDescription
limitintegerNumber of results (1-100, default 10)
starting_afterstringCursor for pagination