Dynamic Split

Dynamic split settlement allows you to automatically distribute a single transaction amount to multiple bank accounts. Perfect for marketplaces, platforms, and revenue-sharing scenarios.

Set up split rules once in your dashboard, then reference them by code:

{
  "amount": 100000,
  "email": "customer@example.com",
  "currency": "NGN",
  "serviceCode": "0034k1cTL0x2HG"
}

Benefits:

  • Rules are managed centrally in the dashboard
  • Changes don't require code updates
  • Auditable split history

To create a service code:

  1. Go to SettingsSplit Settlement
  2. Click Create New Split
  3. Add accounts with their split percentages or flat amounts
  4. Save to get a unique serviceCode

Option 2: Post-configured

Define split rules at transaction time:

{
  "amount": 100000,
  "email": "customer@example.com",
  "currency": "NGN",
  "splitConfiguration": [
    {
      "accountId": "0441234567890",
      "splitType": 0,
      "splitValue": 70,
      "isDefault": 1
    },
    {
      "accountId": "0339876543210",
      "splitType": 0,
      "splitValue": 30,
      "isDefault": 0
    }
  ]
}

Split configuration fields

FieldTypeDescription
accountIdstringBank code + account number (e.g., 0441234567890)
splitTypenumber0 = Percentage, 1 = Flat amount
splitValuenumberPercentage (0-100) or amount in kobo/cents
isDefaultnumber1 = Default account for remaining funds, 0 = Not default

Split rules

Split configurations must follow these rules:

  • At least one default split (isDefault: 1) - receives any remaining funds
  • At least one percentage split (splitType: 0) - required for flexibility
  • Must account for 100% - percentages should total 100% (or use default for remainder)
  • Contact support to enable dynamic split settlement on your account

Example: Marketplace with platform fee

A marketplace that keeps 10% and pays 90% to vendors:

{
  "splitConfiguration": [
    {
      "accountId": "0441111111111",
      "splitType": 0,
      "splitValue": 10,
      "isDefault": 0
    },
    {
      "accountId": "0332222222222",
      "splitType": 0,
      "splitValue": 90,
      "isDefault": 1
    }
  ]
}

Example: Flat fee + percentage

Pay a flat logistics fee of ₦500, then split the rest 50/50:

{
  "splitConfiguration": [
    {
      "accountId": "0443333333333",
      "splitType": 1,
      "splitValue": 50000,
      "isDefault": 0
    },
    {
      "accountId": "0444444444444",
      "splitType": 0,
      "splitValue": 50,
      "isDefault": 1
    }
  ]
}

Was this page helpful?

Last updated on

On this page