Function
The Transfer API is used to transfer items between warehouses.
URL
{Root URL}/API/InventoryHandling/Transfer/{API Key} |
Parameters
Parameter | Description | Required | Comment | |
1 | fromIpKey | |||
2 | SerialNo | Serial number for the part | Y/N | Required if the part is serialized. |
3 | part_sourc | Source of the part | Y | Can be "BUY," "MAKE," or "CONSG." |
4 | uniq_key | The identifier for the part | Y | |
5 | part_no | Part number you want to transfer | Y | Part_no can be used instead of uniq_key. |
6 | revision | Part revision level | N | Required when using part_no and the part has a revision level |
7 | custPartNo | Customer part number | Y/N | |
8 | custRev | Customer revision level | N | Required when using custPartNo and if the part has a revision level. |
9 | partMfgr | Part manufacturer | Y | Used to choose the manufacturer of the part when there are multiple manufacturers in the system. |
10 | mfgr_pt_no | Manufacturer part number | Y | Used in place of partMfgr to choose a manufacturer. |
11 | uniqmfgrhd | Manufacturer Identification | N | Used in place of partMfgr and mfgr_pt_no to choose a manufacturer. |
12 | fromWarehouse | The warehouse where the item will be transferred from | Y | |
13 | fromLocation | The location where the part will be transferred from | N | Used when the selected warehouse also has location information assigned to it. |
14 | fromWhNo | From warehouse number | N | Choose transfer from a warehouse by number. |
15 | fromW_Key | From unique inventory identifier key | N | Selects warehouse, and does not require location information. |
16 | lotCode | Lot code | N | Required if the part is lot coded. Use the following date format: MM-DD-YYYY. |
17 | expDate | Expiration date | N | Required when the part is lot coded. |
18 | internalRef | Internal lot reference | N | Lot code reference. Only needed when the part is lot coded. |
19 | poNum | Purchase order number | N | Only needed if the part is lot coded. Not needed unless the part was received through purchasing. |
20 | transferredQuantity | Quantity being transferring | Y | |
21 | reason | Reason for transfer | Y | Here are some examples "ENGINEERING TESTING," "PRODUCTION CALIBRATION," "PRODUCTION TESTING," "PROTOTYPE FOR RESALE," "PROTOTYPE TO BE SCRAPPED," "SPECIAL PROJECTS." See below for how to add or change your reasons in your system settings. |
22 | WoNo | Work order number | N | Should remain empty unless created by KIT API. |
23 | TransRef | Transaction reference | N | This is a user-defined field. |
24 | toIPKEY | Transfer to IPKEY | N | |
25 | toMRB | Transfer Items to MRB | N | Can be "1" or "0." If "1," then parts will be transferred to MRB, and no other warehouse information is required |
26 | toWarehouse | The warehouse where the items will be transferred to | Y | Selects which warehouse the items will be transferred to. Requires location if the warehouse has location information. |
27 | toLocation | Warehouse location | N | Selects which location the items will be transferred into. Required if the warehouse has location information available. |
28 | toUniqWh | Warehouse unique identifier | N | Can be used instead of toWarehouse. |
29 | toWhNo | To warehouse number | N | Can be used instead of toWhNo. |
30 | toW_Key | Warehouse unique identifier | N | Can be used in place of toWarehouse, toUniqWh, and toWhNo. |
Example Strings
No Lot Code, No Serialization
URL
?part_sourc=BUY&uniq_key=UNIQKEY&fromW_Key=WKEY&transferredQuantity=1&toW_key=WKEY&reason=SPECIAL PROJECTS&transactionReference=tes |
JSON
{ "part_sourc":"BUY", "uniq_key":"UNIQKEY", "fromW_Key":"WKEY", "transferedredQuantity":"1", "toW_Key":"WKEY", "reason":"SPECIAL PROJECTS" } |
Or
{ "Part_No":"partnumber", "revision":"revision", "PARTMFGR":"partmfgr", "MFGR_PT_NO":"MFGRpartnumber", "FromWarehouse":"Warehouse", "FromLocation":"location", "ToWarehouse":"Warehouse", "ToLocation":"Location", "TransferredQuantity":"quantity", "Part_Sourc":"BUY", "Reason":"PRODUCTION TESTNG" } |
Lot Code, No Serialization
{ "Part_No":"Partnumber", "revision":"revision", "PARTMFGR":"PartMFGR", "MFGR_PT_NO":"MFGRpartnumber", "FromWarehouse":"warehouse", "FromLocation":"location", "TransferredQuantity":"Quantity", "Part_Sourc":"BUY", "Reason":"PRODUCTION TESTING", "lotcode":"Lot Code", "Expdate":"Expdate", "Reference":"Reference", "Ponum":"POnumber" } |
Lot Code, Serialization
URL
?Part_sourc=BUY&uniq_key=UNIQKEY&lotcode=LOTCODE&expDate=MM-DD-YYYY&serialNo=000000000000000000000000000001&fromW_Key=WKEY&toW_Key=WKEY&transferredQuantity=1&reason=PRODUCTION TESTING&transactionReference=REFERENCE |
JSON
{ "part_sourc":"BUY". "uniq_key":"UNIQKEY", "lotcode":"LOTCODE", "expDate":"MM-DD-YYYY", "serialNo":"00000000000000000000000000000", "fromW_Key":"WKEY", "toW_Key":"WKEY", "transferredQty":"1", "reason":"PRODUCTION TESTING", "Reference":"REFERENCE" } |
Transfer to MRB
URL
?Part_sourc=BUY&uniq_key=UNIQKEY&fromW_Key=WKEY&toMRB=1&ToUniqwh=Uniqwh&transferredQuantity=10&reason=PROTOTYPE TO BE SCRAPPED&transactionreference=test |
JSON
{ "part_sourc":"BUY", "uniq_key":"UNIQKEY", "fromW_Key":"WKEY", "toMRB":"1", "Uniqwh":"Uniqwh", "transferredQty":"10", "reason":"PROTOTYPE TO BE SCRAPPED", "Reference":"test" } |
If successful, each of the above should return the following:
{ "$id":"1", "Code":"200", "Message":"Inventory transfer successful.", "SessionID":"null", "IsValidUser":"true", "ResponseObject":"null" } |
Common Errors
API Key Error
If there is an error with the API Key, the system will return an error describing it:
{ "$id":"1", "Code":"200", "Message":"Inventory transfer successful.", "SessionId":"null", "IsValidUser":"true", "ResponseObject":"null" } |
Incorrect Parameter
If an incorrect parameter value is used, the system will return an error describing the incorrect parameter:
{ "$id": "1", "Code": "403", "Message": "Failed:Please provide valid GL_NBR.", "SessionId": "null", "IsValidUser": "true", "ResponseObject": "null" } |
URL Error
If there is an error within the URL, the system will return an HTTP error:
{ "$id": "1", "Message": "No HTTP resource was found that matches the request URI 'http://localhost/api/InventoryHandling/Receiv/123456789'.", } |
Here is an example of a successful transfer:

Note: if you were to create a new location when transferring, you will need the to check the following boxes:
In the Inventory Control Management Module, the MFGR that you are creating the new location under needs to have "Allow Auto Creating Location at Receiving" checked.

Under SQL Setting, the warehouse you are receiving into also needs "Allow Auto Create Location at Receiving" checked.
Note: you can change, add, or edit your reason under the system settings. See the below image.
