Build with the Wafeq API

Automate complete accounting workflows—from sales and purchasing to banking, journals, and financial reports.

Build complete accounting workflows with Wafeq

Wafeq is a full accounting platform. Its public API lets you connect the commercial events in your product—quotes, sales, purchases, expenses, payments, and bank activity—to the accounting records and reports that finance teams rely on.

📘

One connected accounting model

Create an invoice or bill once, then use its Wafeq ID to record payments, apply dimensions, retrieve PDFs, and report on the resulting ledger activity.

What you can automate

WorkflowAPI capabilities
Sales and receivablesContacts, quotes, invoices, credit notes, payments, and tax-authority reporting
Purchases and payablesSuppliers, purchase orders, bills, debit notes, and supplier payments
Spend managementExpenses, receipt files, tax rates, accounts, projects, and cost centers
BankingBank accounts, imported statement transactions, and ledger transactions
Core accountingChart of accounts, manual journals, branches, and accounting dimensions
Financial reportingProfit and loss, balance sheet, cash flow, and trial balance
OperationsItems, warehouses, employees, payslips, revenue recognition, and amortization

Start here

  1. Authenticate and make your first request to verify your API key and organization.
  2. Choose an accounting journey below.
  3. Use the linked API reference pages for the complete request and response schemas.
  4. Add idempotency and incremental sync before going to production.

Choose your workflow

API basics

The base URL is:

https://api.wafeq.com/v1

Authenticate every request with your Wafeq API key:

curl "https://api.wafeq.com/v1/organization/" \
  --header "Authorization: Api-Key <API_KEY>"

Keep API keys on your server. Never embed them in browser or mobile application code.

Accounting IDs connect the workflow

Most relationships use Wafeq object IDs. For example:

  • An invoice references a customer contact, revenue account, and tax rate.
  • A payment references the invoice and the account through which the money moved.
  • A bill references a supplier and expense or asset accounts.
  • Transactions can carry a project, cost center, branch, contact, or custom-field value.

List or create the required records first, store their IDs in your integration, and keep your own identifier in external_id where the endpoint supports it.

Public API and Saudi e-invoicing

Use the Wafeq Public API when Wafeq should hold the accounting record and its downstream financial impact. Saudi Arabia Phase 2 e-invoicing has additional compliance and onboarding requirements; see Wafeq Public API vs ZATCA API before choosing an integration path.

Next step

Authenticate and make your first request →


Did this page help you?