Prepare an Invoice for a Shipment

By using the REST API, you can prepare an invoice for a shipment. A user can prepare an invoice for a shipment on the Shipments (SO302000) form. For a return, the system generates an invoice of the Credit Memo type; for a shipment, the system generates a sales invoice of the Invoice type.

System Preparation

Before you test the code below, you need to do the following to configure your client application and the MYOB Acumatica instance to be used:
  1. 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.
  2. 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.
  3. 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.
  4. On the Enable/Disable Features (CS100000) form, make sure that the Inventory and Order Management feature is enabled.
  5. Enter the number of a shipment with the Confirmed status in the request example below or execute the following requests to prepare an open shipment:
    1. Create an RMA Order for a Return
    2. Create a Shipment with the Receipt Operation Type or Create a Shipment for a Replacement
    3. Confirm a Shipment

Request

You can use the following request example to prepare an invoice for the 000082 shipment, which has the Confirmed status, through the REST API.
Tip: In the request example below, <MYOB Acumatica instance URL> is the URL of the MYOB Acumatica instance (such as https://my.acumatica.com/MyInstance). You can omit the instance name in the URL (that is, you can use https://my.acumatica.com) if the instance is installed in the root of the website.
POST /PrepareInvoice HTTP/1.1
Host: [<Acumatica ERP instance URL>]/entity/Default/24.200.001/Shipment
Accept: application/json
Content-Type: application/json

{
  "entity":{
    "ShipmentNbr": {"value": "000082"}
  }
}