Go-live checklist
Verify authority, deployment, recovery and business outcomes before connecting production data.
Confirm the integration boundary
You are the company’s integration owner, working with an authorised administrator and the person responsible for operations. Identify the exact company, intended resources, country/provider constraints and any money-affecting actions. API coverage shows supported operations; there is no general public payroll-disbursement or wallet API.
| Check | Evidence to retain |
|---|---|
| Company approval and authority | Intended workspace, approved use case, scoped key owner and accountable administrator |
| API and key mode | api.kuahr.com, the intended Test or Live key, current specification and tested response behaviour |
| Least privilege | Only required read/write/replay grants; wildcard is not the default |
| Source/SDK provenance | Canonical source revision and application dependency lock; no unverified registry install |
| Credential handling | Server-side secret storage, redacted logs, rotation owner and revocation procedure |
The November security upgrade is enforced at api.kuahr.com. Existing restricted keys may need explicit read scopes. Upgrade guidance.
Prove each supported journey
- First request: use api.kuahr.com and the intended credential; confirm a scoped read returns the expected company partition. An empty array is valid when the company has no matching records.
- Employee/draft: retain IDs and operation keys; confirm the salary/setup handoff is real. A Draft is not approved, funded or paid.
- Events: preserve the exact cursor pair and dedupe; test restart and late-arrival reconciliation.
- Webhooks: verify signatures and timestamps, durable acceptance and duplicate handling. Check ping delivery and the receiver record; test recovery with the same persisted replay request key.
- Leave/performance: test the authorised branch and status readback, including no eligible records and a state conflict. Do not run approve/reject examples sequentially.
- Salary advances: an approval can move money. It requires a separately authorised real-money test and verified settlement outcome; reading a guide or having
advances:writeis not that authorisation. - Kola: verify personal and company consent separately, the destination records and revocation on both sides.
Prepare operations and recovery
Name the person monitoring failures, rate limits, webhook exhaustion and mismatched outcomes. Persist operation IDs, idempotency keys, event IDs and relevant redacted responses. Use bounded retries, timeouts and alerts appropriate to the task. Test receiver downtime and restart without repeating effects.
A 202, Pending status or provider acceptance is not settlement or completion. For an uncertain write, inspect authoritative state before creating a new operation. Reconcile before changing credentials because a new API key has a different idempotency namespace.
Plan a controlled cutover
Record the approved production action, responsible operator, intended credential, limited initial traffic and rollback trigger. Deploy the integration without exposing credentials to browser code. Verify the actual destination and business outcome after the first authorised operation, then increase traffic deliberately.
Rollback means stopping new work, preserving queues/checkpoints and investigating in-flight outcomes. It does not reverse a payment or erase an already completed effect. Revoke an unused key or remove a webhook only through an authorised management action after retaining required evidence.
Know what remains external
Employer/provider eligibility and genuine financial settlement need verification for each integration. General third-party OAuth app registration is not available through the documented Kola client. Do not label these complete because a build or Test request passed.
Ready when: each applicable row has real evidence, the company approves the production scope and operations/recovery owners are identified. If a prerequisite cannot be verified, stop that journey and contact developer support with key mode, time, status/code and redacted operation IDs—never secrets.