> This page is for Documentation, version Integration guides (default).
> For other versions, use one of these documentation indexes:
> - Integration guides (default): https://avalara.ferndocs.com/docs/integration-guides/llms.txt
> - Refactor guides: https://avalara.ferndocs.com/docs/refactor-guides/llms.txt
> - Get certified: https://avalara.ferndocs.com/docs/get-certified/llms.txt
> - Agent to Agent (A2A): https://avalara.ferndocs.com/docs/agent-to-agent-a2a/llms.txt
> - AI use cases: https://avalara.ferndocs.com/docs/ai-use-cases/llms.txt
> - API versioning: https://avalara.ferndocs.com/docs/api-versioning/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://avalara.ferndocs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://avalara.ferndocs.com/_mcp/server.

# Design the transaction workflow

This section describes some best practices when designing your document workflow. Before beginning, consider the following questions:

* What kind of ERP system are you designing?

  * Will your workflow include a posting process, or will the workflow not include a posting process?

  * Does your ERP support credit memos?

* When is it appropriate to call AvaTax for tax calculation?

* When will you record (commit) a transaction?

* How will you validate addresses? Will you be using Avalara's service? If so, review the [Address Validation](https://developer.avalara.com/certification/avatax/address-validation-badge/) requirements. If not, we still require that your environment includes an address validation service (for example, Google Maps™).

> **Note**
>
> Part of the **ERP** integration guide. [Open the full "Design the transaction workflow" milestone on Avalara](https://developer.avalara.com/erp-integration-guide/design-the-document-workflow/) to see every page in this section.