Asset Transfer Orders
Asset Transfer Orders provide formal, document-based asset transfers with header/line structure, release/post workflow, and posted document audit trail.

Understanding Transfer Orders
What is an Asset Transfer Order?
Asset Transfer Order = Formal document for transferring assets between holders
Structure:
-
Header: From Holder → To Holder, dates, external references
-
Lines: Assets being transferred
-
Status: Open → Released → Posted
Similar to:
-
BC Transfer Orders (for inventory)
-
Sales/Purchase Orders (document workflow)
-
Asset Transfer Orders (for asset custody)
When to Use Transfer Orders
Perfect For:
-
Formal transfers - Official documented transfers
-
External parties - Customers, vendors
-
Approval workflows - Release step enables review
-
Audit requirements - Posted document trail
-
Service agreements - Contract-based transfers
-
Large transactions - Significant asset moves
Not Ideal For:
-
Quick batch transfers (use Asset Journal)
-
Single asset moves (use Change Holder Dialog)
-
Internal corrections (use Asset Journal)
-
Speed priority (use Asset Journal)
Transfer Order vs. Asset Journal
| Aspect
|
Transfer Orders
|
Asset Journal
| | --- | --- | --- | |
Structure
|
Header + Lines
|
Flat lines
| |
Workflow
|
Open → Release → Post
|
Direct Post
| |
Posted Record
|
Posted Transfer + Holder Entries
|
Holder Entries only
| |
Approval
|
Release step
|
No workflow
| |
Formality
|
High
|
Low
| |
Speed
|
Slower (3 steps)
|
Fast (1 step)
| |
Use Case
|
External, formal, audit
|
Internal, bulk, quick
|
Choose Transfer Orders When: Formality, approval, or posted documents required
Choose Asset Journal When: Speed, bulk, or internal operations
Creating a Transfer Order
Method 1: From Role Center
-
Open Asset Manager Role Center
-
Click New Transfer Order quick action
-
Transfer Order opens in Create mode
-
Fill fields
-
Save

Method 2: From Transfer Orders List
-
Search "Asset Transfer Orders"
-
Page opens
-
Click New
-
Transfer Order opens
-
Fill fields
-
Save
Method 3: Direct Search
-
Press Alt+Q
-
Enter "Asset Transfer Order"
-
Choose related link
-
New or list opens
-
Click New if in list
Transfer Order Structure
Header Section
General Group:
No. (Code, 20 characters)
-
Transfer order number
-
Auto-assigned from number series (if configured)
-
Or manually enter
-
Cannot change after creation
Status (Enum)
-
Open: Editable, can add/remove lines
-
Released: Locked, ready to post
-
Read-only (changes via Release/Reopen actions)
Posting Date (Date)
-
When transfer will be posted
-
Defaults to WorkDate
-
Used for Holder Entry posting date
Document Date (Date)
-
Document creation date
-
Optional
-
Reference only
Transfer From Group:
From Holder Type (Enum)
-
Holder sending assets
-
Options: Customer, Vendor, Location
-
Required
From Holder Code (Code, 20 characters)
-
Specific Customer, Vendor, or Location
-
Lookup available
-
Required
-
Auto-fills From Holder Name
From Holder Name (Text, 100 characters)
-
Name of sending holder
-
Auto-populated
-
Read-only
From Holder Address Code (Code, 10 characters)
-
Ship-to Address (Customers)
-
Order Address (Vendors)
-
Not applicable for Locations
-
Optional
Transfer To Group:
To Holder Type (Enum)
-
Holder receiving assets
-
Options: Customer, Vendor, Location
-
Required
To Holder Code (Code, 20 characters)
-
Specific Customer, Vendor, or Location
-
Lookup available
-
Required
-
Auto-fills To Holder Name
-
Must be different from From Holder (or different address)
To Holder Name (Text, 100 characters)
-
Name of receiving holder
-
Auto-populated
-
Read-only
To Holder Address Code (Code, 10 characters)
-
Ship-to Address (Customers)
-
Order Address (Vendors)
-
Not applicable for Locations
-
Optional
Validation: To Holder must be different from From Holder (or different address code)
Additional Details Group:
Reason Code (Code, 10 characters)
-
Standard Business Central Reason Code
-
REPAIR, RELOCATION, SALE, etc.
-
Optional but recommended
-
Enables reporting
External Document No. (Code, 35 characters)
-
External reference
-
Customer PO, Service Agreement, etc.
-
Optional
-
Cross-reference to source documents
Posting No. Series (Code, 20 characters)
-
Number series for Posted Transfer
-
Auto-selected from setup
-
Posted document number assigned from this series
Lines Section
Transfer order lines list assets being transferred:
Asset No. (Code, 20 characters)
-
Asset being transferred
-
Lookup filtered to assets at From Holder
-
Validates asset at correct holder
-
Auto-fills description and current holder
Asset Description (Text, 100 characters)
-
Asset name
-
Auto-populated from asset
-
Read-only
Current Holder Type/Code/Name (Read-only)
-
Shows asset's actual current holder
-
Validates matches From Holder
-
Informational
Description (Text, 100 characters)
-
Line-specific description
-
Optional
-
Overrides general transfer description

Creating Transfer Order: Step-by-Step
Scenario: Transfer 10 servers from Location DATACENTER to Customer C-001
Step 1: Create Header
-
Open new Transfer Order
-
No.: Auto-assigned (e.g., ATO-001)
-
Status: Open (default)
-
Posting Date: Today
Step 2: Specify From Holder
-
From Holder Type: Location
-
From Holder Code: DATACENTER
-
From Holder Name auto-fills: "Main Data Center"
Step 3: Specify To Holder
-
To Holder Type: Customer
-
To Holder Code: C-001
-
To Holder Address Code: SITE-02 (if specific site)
-
To Holder Name auto-fills: "Contoso Ltd."
Step 4: Add Details
-
Reason Code: SALE
-
External Document No.: SO-12345 (sales order reference)
Step 5: Add Lines
-
Click in Lines section
-
Asset No.: SRV-001
-
Asset Description auto-fills
-
Current Holder validates (must be DATACENTER)
-
Repeat for SRV-002 through SRV-010
Step 6: Save
-
Transfer Order created
-
Status: Open
-
Ready for release
Status Workflow
Open Status
Characteristics:
-
Fully editable
-
Can add/remove lines
-
Can modify all fields
-
Can delete entire order
What You Can Do:
-
Edit header
-
Add/remove lines
-
Change holders
-
Change dates
-
Delete order
Cannot: Post (must release first)
Releasing Transfer Order
Why Release?
-
Locks document for editing
-
Prevents accidental changes
-
Validates all data
-
Enables posting
-
Approval checkpoint
How to Release:
Method 1: Release Action
-
Open Transfer Order (Status: Open)
-
Click Actions → Release
-
Or press Ctrl+F9
-
Status changes to Released
Method 2: From List
-
Open Transfer Orders list
-
Select order
-
Click Release action
-
Status changes to Released
Validation During Release:
-
Header fields complete
-
From and To holders different
-
At least one line exists
-
All lines valid
Released Status
Characteristics:
-
Locked for editing
-
Cannot add/remove lines
-
Cannot modify fields
-
Can post
-
Can reopen
What You Can Do:
-
Post order
-
View order
-
Reopen (if needed)
-
Print (future)
Cannot: Edit anything
Reopening Transfer Order
When to Reopen:
-
Need to add more lines
-
Need to change holder
-
Found error before posting
-
Approval rejected
How to Reopen:
-
Open Released Transfer Order
-
Click Actions → Reopen
-
Status changes to Open
-
Editable again
After Reopening:
-
Edit as needed
-
Release again
-
Post when ready
Posting Transfer Order
Prerequisites for Posting
Must Be:
-
Status: Released
-
Header complete
-
At least one line
-
All lines valid
Validation Before Post:
-
From/To holders different (or different address)
-
All assets exist and not blocked
-
All assets at From Holder
-
No child assets (with parent)
-
Posting Date valid
How to Post
Step 1: Ensure Released
-
Status must be Released
-
If Open, release first (Ctrl+F9)
Step 2: Click Post
-
Click Actions → Post
-
Or press F9
-
Confirmation dialog appears
Step 3: Confirm
-
Read confirmation: "Do you want to post Transfer Order ATO-001?"
-
Click Yes to continue
-
Click No to cancel
Step 4: System Processing
-
Progress window appears
-
Validates all lines
-
Creates Asset Journal lines (temporary)
-
Posts journal (creates Holder Entries)
-
Creates Posted Transfer document
-
Deletes source Transfer Order
Step 5: Completion
-
Success message: "Transfer Order ATO-001 has been posted as PATO-001"
-
Posted Transfer No. shown
-
Source order deleted
-
Page closes
What Happens During Post
Behind the Scenes:
-
Validation:
-
All header fields complete
-
All lines valid
-
Assets at From Holder
-
Status = Released
-
-
Get Posting No.:
-
From Posting No. Series
-
Assigned to Posted Transfer
-
-
Create Temp Journal:
-
System creates Asset Journal lines
-
One line per Transfer Line
-
Uses system batch "POSTING"
-
-
Post Journal:
-
Asset Journal Post codeunit runs
-
Creates Holder Entries (Transfer Out + Transfer In)
-
Updates asset Current Holder
-
-
Create Posted Transfer:
-
Posted Transfer Header created
-
Posted Transfer Lines created
-
Complete document copy
-
-
Delete Source:
-
Transfer Lines deleted
-
Transfer Header deleted
-
Only Posted Transfer remains
-
Posted Transfers
What is a Posted Transfer?
Posted Transfer = Permanent record of completed transfer
Contents:
-
Posted Transfer Header (From/To holders, dates)
-
Posted Transfer Lines (assets transferred)
-
Read-only (cannot modify)
-
Archive forever
Purpose:
-
Audit trail
-
Document history
-
Reference for investigations
-
Compliance evidence

Viewing Posted Transfers
From Role Center:
-
Navigate: Transfers → Posted Transfers
-
List of all posted transfers
-
Click to open
From Transfer Orders List:
-
Click Navigate → Posted Transfers
-
Shows all posted
Direct Search:
-
Press Alt+Q
-
Enter "Posted Asset Transfers"
-
Choose related link
Posted Transfer Fields
Header:
-
No. (Posted Transfer No.)
-
From Holder Type/Code/Name/Address
-
To Holder Type/Code/Name/Address
-
Posting Date
-
Document Date
-
Reason Code
-
External Document No.
-
Original Transfer Order No. (future)
Lines:
-
Asset No.
-
Asset Description
-
Description
All Read-Only: Cannot modify posted documents
Transfer Order Actions
Release (Ctrl+F9)
Purpose: Lock order and prepare for posting
Enabled: When Status = Open
Effect: Status changes to Released
Use: Before posting
Reopen
Purpose: Unlock released order for editing
Enabled: When Status = Released
Effect: Status changes to Open
Use: Fix errors before posting
Post (F9)
Purpose: Execute transfer and create Posted Transfer
Enabled: When Status = Released
Effect:
-
Creates Holder Entries
-
Updates assets
-
Creates Posted Transfer
-
Deletes source order
Use: Complete transfer
Test Report (Future)
Purpose: Preview posting without committing
Effect: Would show validation errors and preview
Status: Future enhancement
Asset Lookup Filtering
When adding lines, asset lookup intelligently filters:
Filters Applied:
-
Current Holder = From Holder (header)
-
Blocked = False (no blocked assets)
-
Parent Asset No. = Blank (no child assets)
Result: Only transferable assets from correct holder shown
Validation: If asset not at From Holder, error on selection
Validation Rules
Header Validation
Rule: From Holder must be specified (Type and Code)
Rule: To Holder must be specified (Type and Code)
Rule: To Holder must be different from From Holder
Exception: Can be same holder if address code different
Example: Customer C-001 Site A → Customer C-001 Site B (valid)
Line Validation
Rule: Asset must exist and not be blocked
Rule: Asset cannot have parent (no child assets)
Rule: Asset must be at From Holder
Error Example: "Asset SRV-001 is currently at Location WAREHOUSE, but the transfer document expects it at Location DATACENTER"
Solution: Verify From Holder matches asset's actual holder
Posting Validation
Rule: Status must be Released
Rule: Must have at least one line
Rule: All lines must pass validation
Rule: Posting Date must be valid
Common Scenarios
Scenario 1: Customer Equipment Delivery
Situation: Delivering 5 MRI scanners to hospital customer
Steps:
-
Create Transfer Order
-
From: Location WAREHOUSE
-
To: Customer C-HOS-001 (Hospital)
-
External Doc No.: PO-HOS-2024-001
-
Reason: SALE
-
Add 5 MRI scanner lines
-
Release (Ctrl+F9)
-
Manager reviews
-
Post (F9)
Result:
-
Posted Transfer document for audit
-
5 scanners at customer
-
Complete audit trail
Scenario 2: Return from Vendor Repair
Situation: 10 assets returning from repair vendor
Steps:
-
Create Transfer Order
-
From: Vendor V-001 (Repair Shop)
-
To: Location WAREHOUSE
-
External Doc No.: RMA-2024-045
-
Reason: REPAIR
-
Add 10 asset lines
-
Release
-
Post
Result: 10 assets back in warehouse with repair documentation
Scenario 3: Internal Location Transfer
Situation: Relocating 20 assets between locations
Alternative: Consider Asset Journal for internal moves (faster)
But if formal document needed:
-
Create Transfer Order
-
From: Location OLD-WAREHOUSE
-
To: Location NEW-WAREHOUSE
-
Reason: RELOCATION
-
Add 20 lines
-
Release and post
Result: Formal record of location move
Scenario 4: Service Agreement Transfer
Situation: 15 servers to customer under 3-year service agreement
Steps:
-
Create Transfer Order
-
From: Location DATACENTER
-
To: Customer C-001, Address SITE-HQ
-
External Doc No.: SA-2024-001 (Service Agreement)
-
Reason: LOAN (or custom reason)
-
Description: "3-year managed service - return 2027-03-31"
-
Add 15 server lines
-
Release
-
Post
Result:
-
Servers at customer site
-
Agreement reference clear
-
Return date documented
Best Practices
Use for Formal Transfers
Good Use Cases:
-
External parties (customers, vendors)
-
Service agreements
-
Equipment sales
-
Contract-based transfers
-
Audit-sensitive moves
Not Good Use Cases:
-
Quick internal moves (use Journal)
-
Bulk corrections (use Journal)
-
Emergency transfers (use Journal)
Complete External Document No.
Always Reference:
-
Sales Order numbers
-
Purchase Order numbers
-
Service Agreement numbers
-
RMA numbers
-
Contract references
Benefit: Complete traceability to source
Use Reason Codes
Standard Reasons:
-
SALE - Equipment sold
-
REPAIR - To/from repair
-
LOAN - Loaned equipment
-
SERVICE - Service agreement
-
DEMO - Demo/trial
-
RETURN - Return from customer/vendor
Enables: Reporting by transfer type
Leverage Release Step
Use Release For:
-
Management review
-
Approval checkpoint
-
Validation before commitment
-
Error checking
Don't Skip: Release step provides control
Document in Descriptions
Header Description: General transfer purpose
Line Descriptions: Asset-specific notes
Example:
-
Header: "Q1 2024 customer equipment deployment"
-
Line 1: "Primary production server"
-
Line 2: "Backup server - hot standby"
Troubleshooting
Problem: Cannot Release - Validation Error
Error: "From Holder and To Holder cannot be identical"
Cause: Same holder type, code, and address
Solution: Change To Holder or specify different address code
Error: "There are no lines to post"
Cause: Transfer Order has no lines
Solution: Add asset lines
Error: Asset validation fails
Cause: Asset blocked, has parent, or not at From Holder
Solution: Check Asset Card, fix issues, try again
Problem: Cannot Post - "Must be released"
Cause: Status = Open
Solution: Release order first (Ctrl+F9), then post
Problem: Cannot Add Lines - Status Released
Cause: Order is released (locked)
Solution: Reopen order, add lines, release again
Problem: Asset Not in Lookup
Cause 1: Asset not at From Holder
Solution: Check asset's Current Holder
Cause 2: Asset has parent
Solution: Detach from parent first
Cause 3: Asset blocked
Solution: Unblock asset
Problem: Posted Transfer Not Found
Cause: Looking in wrong list
Solution: Search "Posted Asset Transfers" (not "Asset Transfer Orders")
Related Topics
See Also:
-
Asset Journal - Batch-based quick transfers
-
Holder Management - Understanding holder concept
-
Holder Entries - View audit trail
-
Core Asset Management - Creating assets to transfer
Next Steps:
-
Practice creating transfer order
-
Complete full Release → Post cycle
-
View Posted Transfer
-
Check Holder Entries created
-
Compare with Asset Journal workflow
Asset Transfer Orders provide formal structure and approval points. Use them when you need documented evidence of asset transfers, especially for external parties or audit-sensitive scenarios. For quick internal moves, Asset Journal is faster!