Warehouse transfers

Use warehouse transfers to transfer items between warehouses or to transfer items between bins in the same warehouse. When you post a warehouse transfer, Sage Intacct creates the underlying system transactions, which includes automatically propagating the costs of the items.

You cannot change the cost of the items when they move into the destination warehouse. For more information, see Warehouse transfers overview in the Sage Intacct Help Center.

List warehouse transfers

get/objects/inventory-control/warehouse-transfer

Returns a collection with a key, ID, and link for each warehouse transfer. This operation is mostly for use in testing; use the query service to find objects that meet certain criteria and specify the properties that are returned.

SecurityOAuth2
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": [
    • {
      • "key": "12",
      • "id": "IC:0358:doc",
      • "href": "/objects/inventory-control/warehouse-transfer/12"
      },
    • {
      • "key": "13",
      • "id": "IC:0356:doc",
      • "href": "/objects/inventory-control/warehouse-transfer/13"
      },
    • {
      • "key": "14",
      • "id": "IC:0359:doc",
      • "href": "/objects/inventory-control/warehouse-transfer/14"
      }
    ],
  • "ia::meta": {
    • "totalCount": 3,
    • "start": 1,
    • "pageSize": 100,
    • "next": null,
    • "previous": null
    }
}

Create a warehouse transfer

post/objects/inventory-control/warehouse-transfer

Creates a new warehouse transfer. Fields required to create a warehouse transfer depend on the type of transfer, immediate or inTransit. And lines within the transfer must include one or more matched pair with one outgoing and one incoming line.

Read field descriptions carefully to ensure all requirements are met.

SecurityOAuth2
Request
Request Body schema: application/json
required

Create a warehouse transfer

transactionDate
required
string <date>

The date of the transaction. For immediate transfers, the date is used as the transaction date for the system-generated transfer-out and transfer-in transactions.

Example: "2024-03-01"
transferType
required
string

Specify whether this is an immediate or in-transit transfer.

  • An immediate transfer does not accommodate for the time it takes to move inventory from one warehouse to another. With an immediate transfer, ONHAND quantities are decreased at the source warehouse (the from warehouse) and increased at the destination warehouse (the to warehouse) at the same time.
  • An inTransit transfer allows you to accommodate for the time it takes to move inventory between warehouses For example, warehouses may be across the city, across the country, or in different countries. While inventory is being moved, it's not in the ONHAND quantities at either the source warehouse (the from warehouse) or the destination warehouse (the to warehouse). Instead it's counted in the INTRANSIT quantity for the destination warehouse. For more information, see Warehouse transfers overview in the Sage Intacct Help Center.
Enum: "immediate" "inTransit"
Example: "immediate"
action
required
string

Sets the state that the transaction is in. If transferType is set to:

  • immediate, valid values are draft or post.
  • inTransit and you are using a POST operation to create a warehouse transfer, valid values are draft or transferOut.
  • inTransit and you are using a PATCH operation to update a warehouse transfer with a transferState of draft, valid values for the action field are draft or transferOut.
  • inTransit and you are using a PATCH operation to update a warehouse transfer with a transferState of inTransit, the only valid value for the action field is transferOut.

Note that you cannot use the action field to change the transferState of a transfer that is posted, and you cannot set an inTransit transfer back to draft.

Enum: "draft" "post" "transferIn" "transferOut"
Example: "draft"
description
string

Information about the warehouse transfer. The description is displayed in the Warehouse Transfer list.

Example: "transfer to 10001-F per SO-0007"
referenceNumber
string

Reference number for the transfer that might be useful in searches or reports. The number is displayed in system-generated transfer-out and transfer-in transactions.

Example: "SO-0007"
object

Exchange rate information for the transfer transaction.

outCurrency
string

Base currency of the warehouse from which items are to be transferred.

Example: "GBP"
inCurrency
string

Base currency of the warehouse to which items are to be transferred.

Example: "USD"
date
string <date>

Exchange rate date for the receiving warehouse. Should be the same date as the transactionDate.

Example: "2024-03-01"
rate
string <decimal-precision-10>

Exchange rate to use for the transaction. Do not provide a value in this field if the exchange rate typeID and typeName are set.

Example: "1.0000000000"
typeName
string

Name of the exchange rate type. If there are no custom exchange rates for the company, you can specify the Intacct Daily Rate. Do not provide a value in this field if rate is set.

Example: "Intacct Daily Rate"
outDate
string <date>

Estimated date that the shipment will leave the originating warehouse. This date is required when transferType is set to inTransit. This date cannot be earlier than the transactionDate.

Example: "2024-03-01"
inDate
string <date>

Estimated date that the shipment arrives at the receiving warehouse. This date is required when transferType is set to inTransit. This date cannot be earlier than the outDate.

Example: "2024-03-01"
object

Reference to the transfer-in inventory transfer document.

object

Reference to the in-transit inventory transfer document.

object

Reference to the transfer-out inventory transfer document.

Array of objects

Lines of the warehouse transfer document. Must be one or more matched pair with one outgoing and one incoming line. A combination of item, unit, and quantity are used to match each pair.

Array
required
object

Item included in the transfer.

required
object

Warehouse involved in the transfer.

transferDirection
required
string

Specifies whether the transfer in this line object represents the warehouse sending the inventory (outgoing) or the warehouse receiving the inventory (incoming).

Enum: "in" "out"
Example: "out"
required
object

Unit of measure for the item.

quantity
required
string <decimal-precision-10>

The quantity of the item to be transferred in the line unit.

Example: "1.0000"
memo
string

Information about the line that might be useful in the future.

Example: "transfer of item-0 Lot per SO-0007"
Array of objects

List of tracking details including serial number, aisle, bin, and row for the item.

object
object

The warehouse transfer that the line is included in.

object

Associated internal system transfer document.

object

Associated internal system document line.

Responses
201

Created

400

Bad Request

Request samples
application/json
{
  • "transactionDate": "2024-03-01",
  • "description": "transfer to 10001-F per SO-0009",
  • "referenceNumber": null,
  • "exchangeRate": {
    • "date": "null,",
    • "typeName": "Intacct Daily Rate",
    • "outCurrency": "USD",
    • "inCurrency": "USD"
    },
  • "transferType": "immediate",
  • "action": "draft",
  • "lines": [
    • {
      • "transferDirection": "out",
      • "item": {
        },
      • "warehouse": {
        },
      • "memo": "transfer of 0 Lot",
      • "quantity": "1",
      • "unit": {
        },
      • "trackingDetail": [
        ],
      • "dimensions": {
        }
      },
    • {
      • "transferDirection": "in",
      • "item": {
        },
      • "quantity": "1",
      • "unit": {
        },
      • "warehouse": {
        },
      • "trackingDetail": [
        ],
      • "dimensions": {
        }
      }
    ]
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "19",
    • "href": "/objects/inventory-control/warehouse-transfer/19"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Get a warehouse transfer

get/objects/inventory-control/warehouse-transfer/{key}

Returns detailed information for a specified warehouse transfer.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the warehouse transfer.

Example: 19
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "key": "19",
    • "id": "IC:0360:doc",
    • "transactionDate": "2024-03-01",
    • "outDate": "2024-03-01",
    • "inDate": "2024-03-01",
    • "description": "transfer to 10001-F per SO-0009",
    • "referenceNumber": null,
    • "outDocument": {
      • "key": "350",
      • "id": "SYS-Warehouse Transfer Out-IC:0360:doc-Out",
      • "docid": "SYS-Warehouse Transfer Out-IC:0360:doc-Out",
      • "href": "/objects/inventory-control/document/350"
      },
    • "inDocument": {
      • "key": "351",
      • "id": "SYS-Warehouse Transfer In-IC:0360:doc-In",
      • "href": "/objects/inventory-control/document/351"
      },
    • "inTransitDocument": {
      • "key": null,
      • "id": null
      },
    • "audit": {
      • "createdDateTime": "2024-03-13T01:11:36Z",
      • "modifiedDateTime": "2024-03-13T01:11:36Z",
      • "createdByUser": {
        },
      • "createdBy": "1",
      • "modifiedByUser": {
        },
      • "modifiedBy": "1"
      },
    • "exchangeRate": {
      • "date": "2024-03-01",
      • "typeName": "Intacct Daily Rate",
      • "typeId": "-1",
      • "rate": "1.0000000000",
      • "outCurrency": "USD",
      • "inCurrency": "USD"
      },
    • "transferState": "draft",
    • "transferType": "immediate",
    • "entity": {
      • "key": null,
      • "id": null,
      • "name": null
      },
    • "lines": [
      • {
        },
      • {
        }
      ],
    • "href": "/objects/inventory-control/warehouse-transfer/19"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Update a warehouse transfer

patch/objects/inventory-control/warehouse-transfer/{key}

Updates an existing warehouse transfer by setting field values. Any field not provided remains unchanged.

For inTransit transfers, edit the transfer when the inventory arrives at the destination warehouse to increase ONHAND quantities and value.

Any warehouse transfer can be edited if the changes only affect inventory that still exists at the destination warehouse.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the warehouse transfer.

Example: 19
Request Body schema: application/json
transactionDate
string <date>

The date of the transaction. For immediate transfers, the date is used as the transaction date for the system-generated transfer-out and transfer-in transactions.

Example: "2024-03-01"
description
string

Information about the warehouse transfer. The description is displayed in the Warehouse Transfer list.

Example: "transfer to 10001-F per SO-0007"
referenceNumber
string

Reference number for the transfer that might be useful in searches or reports. The number is displayed in system-generated transfer-out and transfer-in transactions.

Example: "SO-0007"
object

Exchange rate information for the transfer transaction.

outCurrency
string

Base currency of the warehouse from which items are to be transferred.

Example: "GBP"
inCurrency
string

Base currency of the warehouse to which items are to be transferred.

Example: "USD"
date
string <date>

Exchange rate date for the receiving warehouse. Should be the same date as the transactionDate.

Example: "2024-03-01"
rate
string <decimal-precision-10>

Exchange rate to use for the transaction. Do not provide a value in this field if the exchange rate typeID and typeName are set.

Example: "1.0000000000"
typeName
string

Name of the exchange rate type. If there are no custom exchange rates for the company, you can specify the Intacct Daily Rate. Do not provide a value in this field if rate is set.

Example: "Intacct Daily Rate"
transferType
string

Specify whether this is an immediate or in-transit transfer.

  • An immediate transfer does not accommodate for the time it takes to move inventory from one warehouse to another. With an immediate transfer, ONHAND quantities are decreased at the source warehouse (the from warehouse) and increased at the destination warehouse (the to warehouse) at the same time.
  • An inTransit transfer allows you to accommodate for the time it takes to move inventory between warehouses For example, warehouses may be across the city, across the country, or in different countries. While inventory is being moved, it's not in the ONHAND quantities at either the source warehouse (the from warehouse) or the destination warehouse (the to warehouse). Instead it's counted in the INTRANSIT quantity for the destination warehouse. For more information, see Warehouse transfers overview in the Sage Intacct Help Center.
Enum: "immediate" "inTransit"
Example: "immediate"
action
string

Sets the state that the transaction is in. If transferType is set to:

  • immediate, valid values are draft or post.
  • inTransit and you are using a POST operation to create a warehouse transfer, valid values are draft or transferOut.
  • inTransit and you are using a PATCH operation to update a warehouse transfer with a transferState of draft, valid values for the action field are draft or transferOut.
  • inTransit and you are using a PATCH operation to update a warehouse transfer with a transferState of inTransit, the only valid value for the action field is transferOut.

Note that you cannot use the action field to change the transferState of a transfer that is posted, and you cannot set an inTransit transfer back to draft.

Enum: "draft" "post" "transferIn" "transferOut"
Example: "draft"
outDate
string <date>

Estimated date that the shipment will leave the originating warehouse. This date is required when transferType is set to inTransit. This date cannot be earlier than the transactionDate.

Example: "2024-03-01"
inDate
string <date>

Estimated date that the shipment arrives at the receiving warehouse. This date is required when transferType is set to inTransit. This date cannot be earlier than the outDate.

Example: "2024-03-01"
object

Reference to the transfer-in inventory transfer document.

object

Reference to the in-transit inventory transfer document.

object

Reference to the transfer-out inventory transfer document.

Array of objects

Lines of the warehouse transfer document. Must be one or more matched pair with one outgoing and one incoming line. A combination of item, unit, and quantity are used to match each pair.

Array
transferDirection
string

Specifies whether the transfer in this line object represents the warehouse sending the inventory (outgoing) or the warehouse receiving the inventory (incoming).

Enum: "in" "out"
Example: "out"
object

Warehouse involved in the transfer.

object

Item included in the transfer.

object

Unit of measure for the item.

memo
string

Information about the line that might be useful in the future.

Example: "transfer of item-0 Lot per SO-0007"
Array of objects

List of tracking details including serial number, aisle, bin, and row for the item.

quantity
string <decimal-precision-10>

The quantity of the item to be transferred in the line unit.

Example: "1.0000"
object
object

The warehouse transfer that the line is included in.

object

Associated internal system transfer document.

object

Associated internal system document line.

Responses
200

OK

400

Bad Request

Request samples
application/json
{
  • "action": "transferIn",
  • "lines": [
    • {
      • "key": "59",
      • "transferDirection": "out",
      • "item": {
        },
      • "warehouse": {
        },
      • "quantity": "1",
      • "unit": {
        },
      • "trackingDetail": [
        ]
      },
    • {
      • "key": "60",
      • "transferDirection": "in",
      • "item": {
        },
      • "quantity": "1",
      • "unit": {
        },
      • "warehouse": {
        },
      • "trackingDetail": [
        ]
      }
    ]
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "17",
    • "id": "IC:0358:doc",
    • "href": "/objects/inventory-control/warehouse-transfer/17"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Delete a warehouse transfer

delete/objects/inventory-control/warehouse-transfer/{key}

Deletes a warehouse transfer. Warehouse transfers that are in draft or inTransit state can be deleted.

And, warehouse transfers that are in posted state can be deleted if the inventory that was transferred still exists at the destination warehouse.

SecurityOAuth2
Request
path Parameters
key
required
string

System-assigned unique key for the warehouse transfer.

Example: 19
Responses
204

No Content

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "ia::error": {
      • "code": "invalidRequest",
      • "message": "A POST request requires a payload",
      • "errorId": "REST-1028",
      • "additionalInfo": {
        },
      • "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
      }
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 0,
    • "totalError": 1
    }
}