Wave Accounting and Workday HCM integration
Wave Accounting keeps your small business invoicing and expenses organized. Workday HCM manages your workforce, payroll, and general ledger. Connecting the two syncs your Wave invoices and transactions into Workday's accounting journals, mapped to the right GL accounts and cost centers. Your finance team gets a single source of truth for what Wave invoiced or expensed and where it landed in the ledger.
What moves between them
Wave invoices and transactions flow into Workday as accounting journal entries. When ml-connector receives a Wave webhook for invoice.created, invoice.paid, or transaction.created, it extracts the amount, date, description, and vendor, maps the vendor to a Workday supplier record, and posts the entry to the appropriate GL account in Workday's accounting journal. Customers from Wave map to suppliers in Workday for reconciliation. The flow is one-way: Wave to Workday. Reference data such as GL accounts and suppliers are aligned upfront so every posting references valid Workday dimensions.
How ml-connector handles it
ml-connector stores Wave and Workday credentials encrypted and manages OAuth token refresh for both systems independently: Wave tokens (2-hour expiry) are refreshed proactively, and Workday REST tokens (60-minute expiry) are refreshed on 401 errors. Wave webhooks arrive synchronously at the registered endpoint; ml-connector validates the HMAC-SHA256 signature, acknowledges with 200, and queues the transaction for posting. Posting to Workday requires SOAP (REST HCM API does not expose GL accounts), so ml-connector translates the GL account and supplier mappings into SOAP Accounting_Journals calls. If a Wave customer or vendor does not match a Workday supplier, the posting is queued for review rather than dropped. Rate limits from Workday (HTTP 429) trigger exponential backoff with jitter. Every invoice, transaction, and posting carries a full audit trail and can be replayed if a network error or validation failure occurs.
A real-world example
A small professional services firm uses Wave Accounting to manage client invoices and track operating expenses. The firm also uses Workday HCM for payroll and financial accounting. Each month, the accountant was manually exporting invoices from Wave and re-entering them into Workday's GL so the financial statements matched. With Wave and Workday HCM connected, invoices and expense transactions from Wave flow automatically into Workday's accounting journal, posted to the correct GL accounts and mapped to the clients (vendors) who generated them. Month-end close becomes a reconciliation task instead of a data entry task, and the GL is always current.
What you can do
- Post Wave invoices and transactions into Workday accounting journals, mapped to the correct GL accounts and cost centers.
- Map Wave customers and vendors to Workday suppliers for reconciliation and audit trails.
- Validate GL accounts and suppliers in Workday before posting to prevent posting to invalid dimensions.
- Handle OAuth2 token refresh for Wave (2-hour expiry) and Workday REST (60-minute expiry) automatically.
- Receive Wave invoices and transactions via webhook, validate HMAC-SHA256 signatures, and queue postings with a full audit trail.
Questions
- Which direction does data move between Wave Accounting and Workday HCM?
- Data flows from Wave into Workday. Wave invoices, payments, and transactions are posted as accounting journal entries in Workday, mapped to GL accounts and suppliers. Workday GL accounts and supplier records are not written back to Wave. The sync keeps Wave source transactions tied to Workday journal postings for reconciliation.
- How does ml-connector handle Wave's webhook delivery and Workday's lack of webhooks?
- ml-connector receives Wave invoices and transactions via webhook with HMAC-SHA256 signature verification, acknowledges with HTTP 200, and queues the posting for delivery to Workday. Since Workday does not support webhooks, ml-connector polls Workday on a schedule to validate GL accounts and suppliers, ensuring every posting lands on valid dimensions before it is processed.
- What happens if a Wave customer or vendor does not exist as a Workday supplier?
- ml-connector flags the transaction for review rather than dropping it. The record is queued with a note indicating the missing supplier, and the finance team can map the Wave vendor to an existing Workday supplier or create a new supplier record. Once the mapping is resolved, the posting is retried automatically.
Related integrations
More Wave Accounting integrations
Other systems that connect to Workday HCM
Connect Wave Accounting and Workday HCM
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started