Prerequisites
API key from Dashboard
Get your API key from the Cadana Dashboard. See Authentication for details.
Onboarded workers
Workers must be onboarded as Persons — you’ll use their
personId to configure settings and view transactions. See Onboard Workers.Configure Per-Person Access
By default, workers inherit the business-levelaccessPercentage. Use the per-person setting to override this for individual workers — for example, to grant a higher limit to a long-tenured employee or restrict access for a new hire.
Update a Person’s Setting
Set the percentage of earned wages a person can access via instant pay. The value must be between 0 and 100. Returns204 on success.
Get a Person’s Setting
Response:Business-Level Settings
When Instant Pay is enabled, the business object includes aninstantPaySettings field with the defaults configured by your Cadana account manager. These are visible via GET /v1/businesses/{businessId} but can only be changed by Cadana.
| Field | Type | Description |
|---|---|---|
accessPercentage | integer | Default percentage of earned wages workers can access (0–100) |
numDaysBeforePayroll | integer | Number of days before the payroll date when instant pay becomes unavailable |
requiresApproval | boolean | Whether instant pay requests require business approval before disbursement |
contractorAccess | boolean | Whether contractors (in addition to employees) can use instant pay |
Per-person settings (via
PUT /v1/persons/{personId}/ipSetting) override the business-level accessPercentage for that individual worker.Track Transactions
Retrieve instant pay transactions for a specific person. Each transaction represents a single instant pay withdrawal. Response:Filter by Unpaid
Use theisUnpaid query parameter to only return transactions that haven’t been reconciled against a payroll yet.
Transaction Statuses
| Status | Meaning |
|---|---|
completed | Funds have been disbursed to the worker |
processing | Withdrawal is in progress |
failed | Withdrawal failed — the worker can retry |
Amounts are in the lowest denomination of the currency. For USD,
50000 = $500.00.Webhook Event
instant-pay.succeeded
Fires when an instant pay withdrawal is successfully disbursed to a worker. Subscribe via the Dashboard or see Webhooks for setup.JSON