Business Payroll
Send bulk payments to staff and contractors from the merchant dashboard — manual entry, CSV upload, templates, and recurring schedules.
4 min read
Overview
Payroll lets a Danipa merchant pay many people in a single batch — staff, contractors, suppliers. You build a recipient list, review the totals, authorise once, and the platform processes each payment individually. Open it from the Payroll page in the merchant dashboard.
Requirement: You need a registered Danipa merchant account (KYB-verified). The KYC tier system used for personal accounts doesn't apply here. See Merchant Dashboard for registration.
Build a batch
A batch is a named group of recipients you'll pay together. There are two ways to build one.
Manual entry
- Open Payroll and tap New batch.
- Give the batch a name (e.g. "April salaries", "Q2 contractors").
- Tap Add recipient for each person:
- Name
- Phone number (with country code)
- Provider (e.g.
MTN_MOMO) - Amount
- Reference (optional — e.g. "April salary", "Invoice #1042")
- Save the batch.
CSV upload
- Tap Upload CSV and download the template if you don't already have one.
- Fill the CSV with these columns:
| Column | Required | Example |
|---|---|---|
name | Yes | Kwame Mensah |
phone | Yes | +233241234567 |
provider | Yes | MTN_MOMO |
amount | Yes | 2500.00 |
currency | No (defaults to GHS) | GHS |
reference | No | March salary |
- Upload the file. Danipa parses every row and flags malformed entries before saving.
Review and process
Once the batch is built, it sits in DRAFT status until you process it.
- Open the batch — review the recipient list and the totals.
- Tap Process payroll.
- Authorise with your transaction PIN.
The batch moves to PROCESSING. Each item starts as QUEUED and progresses through:
| Item status | Meaning |
|---|---|
| QUEUED | Waiting to be picked up |
| PROCESSING | Being delivered through the provider |
| DELIVERED | Recipient has the funds |
| FAILED | Provider returned a failure for this item |
When every item has reached a terminal status the batch settles into one of:
| Batch status | Meaning |
|---|---|
| COMPLETED | Every item delivered |
| PARTIALLY_FAILED | Some delivered, some failed |
| FAILED | Every item failed (rare; usually indicates a configuration problem) |
You'll get a notification when the batch settles.
Retry failed items
If a batch settles as PARTIALLY_FAILED:
- Open the batch and tap Failed items.
- Each failed item shows the provider's reason.
- Common reasons and fixes:
| Reason | Fix |
|---|---|
| Invalid phone number | Edit the recipient's phone and retry |
| Provider unavailable | Wait and retry later |
| Recipient account restricted | Reach out to the recipient to fix on their end |
| Daily limit exceeded | Wait until the next day or split the batch |
- Tap Retry failed to reprocess only the failed items in the batch.
Templates
Save a recipient list once and reuse it:
- Build a batch.
- From the batch detail screen, tap Save as template.
- Give the template a name.
Next time you want to run the same payroll, open Payroll → Templates, tap the template, edit any amounts that have changed, and process the batch.
Recurring schedules
You can run a payroll automatically on a recurring schedule.
- Open the batch or template.
- Tap Set schedule.
- Pick a frequency — Weekly, Bi-weekly, or Monthly.
- Pick the start date (and optional end date).
- Confirm.
Each scheduled run copies the recipient list and processes a fresh batch. You can view, pause, or delete schedules from Payroll → Scheduled.
Make sure your merchant balance is funded before each scheduled run. A schedule whose run can't be funded ends up in
PARTIALLY_FAILEDorFAILEDand you'll need to retry once the balance is topped up.
Batch history
Open Payroll → History for a list of every past batch, with the date, name, total, success count, and fail count. Tap any batch for the full breakdown — you can re-download a delivery confirmation per item from there.
Notifications
Each delivered item triggers a notification to the recipient with the amount and your reference (subject to their notification preferences). You as the merchant get a single batch-completion notification when processing finishes.
Tips
- Validate CSVs locally first. Common mistakes — missing country codes, wrong provider strings, blank amounts — are easier to fix in your spreadsheet than in the dashboard.
- Use templates for recurring lists. Faster than re-uploading and reduces human error.
- Reconcile from the batch report. The batch detail page is the canonical record of who got paid and when — store the export with your accounting records.
- Keep your merchant balance ahead of payroll. A failed run is recoverable but disruptive.