This API allows the creation of an internal goods transfer document from one branch to another within the same company or between different companies. It enables businesses to manage inventory efficiently during transfers between different locations.The process involves sending document details and receiving an acknowledgment immediately. Once the document is processed, the final details are sent asynchronously to the specified callback URL.
Document prices
The external system must ensure that prices in the documents are valued according to the following rules:
priceSale: the product's selling price is a gross VAT amount;
priceInvoice: the product's invoice price (purchase invoice) is a net VAT amount;
pricePurchase: the product's purchase price (typically purchase order) is a net VAT amount.
If the fields priceSale is mandotary instead priceInvoice, and pricePurchase are not provided, the system will attempt to retrieve prices based on the branchCode and the sale, invoice, and purchase price lists. If no matching price is found, the API will return an error, and the document will not be created.
API Client sends a POST request containing document details and the callback URL.
Document date
All Date information within the API is expressed in the GMT time zone. API users are therefore responsible for converting dates to their desired time zone if needed. Please refer to Date Handling
2.
4ws.trade acknowledges receipt with an immediate response containing:
success: Indicates receipt of the request.
id: A unique UUID identifier for tracking the document.
3.
The platform processes the request asynchronously and sends the final document details to the callback URL.
4.
The Callback Endpoint receives information, including:
id: The document UUID unique identifier.
barcode: The document's barcode.
documentNumber: The unique document number.
documentStatus: The final status of the document
OPEN: the document can be updated or modified with new products, discounts, quantities etc... .
CLOSE: the document is ready for fulfillment and the products, quantities, discounts are final.
Document & row id must be a valid UUID
If the id field is not provided or does not contain a valid UUID, the value will be automatically generated by the suite and will overwrite the value received in the request payload.The processed document, including the generated id, will then be returned in the service response.
In this scenario, the suite retrieves the barcode associated with the specified SKU. If multiple barcodes are linked to the same SKU, one will be selected at random.
Use Case Description: Goods Transfer Between Branches#
This use case involves the transfer of goods between different branches or warehouses within the same company or between branches of different companies. The purpose of this transfer is to manage inventory effectively and ensure that goods are available where they are needed.
Transfer Between Branches of Same Companies
Transfer Between Branches of Different Companies
Description: In this scenario, goods are transferred from one branch to another within the same company. The branches share the same company ID but have different branch codes (unique identifiers).
Example:
Source Branch: Warehouse A (branchCode: 6667)
Destination Branch: Warehouse B (branchCodeAddresse: 9999)
Transfer Branch: Temporary warehouse (branchCodeTransfer: 103)
Sample Request Payload
branchCode: The code of the source branch from which goods are being transferred.
branchCodeAddresse: The code of the destination branch where goods are being sent.
branchCodeTransfer: The code of the temporary transfer warehouse that may be used during the transfer.
createOpposingDocument: If the createOpposingDocument parameter is Y, in addition to the internal transfer document in the CLOSED state, the transfer load document will also be created in the OPEN state so that the store or warehouse can proceed with the verification of the goods. For details on document types, refer to paragraph Documents structure.
closeOpposingDocument: The closeOpposingDocument parameter is used when createOpposingDocument is Y. If closeOpposingDocument parameter is Y the transfer load document will be created in the CLOSED state. For details on document types, refer to paragraph Documents structure.
For Intra-Company Transfers:
When createOpposingDocument is set to "Y":
The transfer document is created in the state "CLOSED."
A corresponding receipt document is created at the destination in the state "OPEN."