Create a Shipment for a Replacement
By using the REST API, you can create a shipment for a replacement item included in an RMA order (a return order of the RM type). A user starts the process of creating this shipment while viewing the RMA order on the Sales Orders (SO301000) form.
System Preparation
- Deploy a new MYOB Acumatica instance with the U100 dataset. For details on deploying an instance, see Instance Deployment: To Deploy an Instance with Demo Data.
- To sign in to the instance in the client application, use the tenant name (which you specified when you created the instance) and the HEADOFFICE branch.
- If you are using Postman as the client application for testing, in the IntegrationDevelopmentGuide.postman_collection.json collection, make sure that the collection’s variables have the proper values. This collection is located in the IntegrationDevelopment\Help folder of the Help-and-Training-Examples repository on GitHub.
- On the Enable/Disable Features (CS100000) form, make sure that the Inventory and Order Management feature is enabled.
- Execute the Create an RMA Order for a Return request.
Request
You can use the following request example to create a shipment for a replacement from the 000127 return order of the RM type through the REST API. In theWarehouseID parameter, you specify the
warehouse from which the replacement items are taken.<MYOB Acumatica host> is the URL of the MYOB Acumatica
host (such as https://my.acumatica.com). You need to use the instance name in the
URL of the request (such as https://my.acumatica.com/MyInstance) if the instance
is not installed in the root of the website.POST /entity/Default/25.200.001/SalesOrder/SalesOrderCreateShipment
HTTP/1.1
Host: <MYOB Acumatica host>
Accept: application/json
Content-Type: application/json
{
"entity":{
"OrderNbr": {"value": "000127"},
"OrderType": {"value": "RM"}
},
"parameters": {
"ShipmentDate": {"value": "2025-04-11T00:00:00+03:00"},
"WarehouseID": {"value": "WHOLESALE"}
}
}Usage Notes for an RMA Order with Shipments
If a customer is returning an inventory item for replacement at a different price, a point-of-sale (POS) system can create an RMA order to perform this customer return. (An RMA order is a return order of the RM predefined order type.) Shipments for both the return and the replacement are performed.
Consider the following example. In an online shop, a customer bought a 32-ounce glass bottle, which was shipped to the customer. Then the customer decides to return this bottle. In the online shop, the customer creates an order that includes both the returned item and a 16-ounce glass bottle that the customer wants to buy. Thus, the customer would like to buy a smaller bottle and to return the larger one.
To process a return for replacement with shipments, the POS system performs the following steps:
- For the returned items that are linked to a sales order and shipment, creates an
RMA order (return order of the RM type), and adds lines to the order for
the following items:
- The returned items, which it selects from the previously issued sales invoice
- The newly ordered items
- Creates a shipment for the newly ordered items and confirms this shipment.
- Creates an incoming shipment with the Receipt operation type for the returned items and confirms this shipment.
- Creates sales invoices and releases them. For the return, the system generates an invoice of the Credit Memo type; for the shipment, the system generates a sales invoice of the Invoice type.
To learn about the execution of this process in MYOB Acumatica, see Returns for Replacement at Another Price: General Information.
You can use the following sequence of requests to implement this process through the REST API:
- Create an RMA Order for a Return
- For the return:
- For the replacement:
