> For the complete documentation index, see [llms.txt](https://docs.xorosoft.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xorosoft.com/developers-api/fulfillment-and-wave-management/create-wave.md).

# Create Wave

Create or update wave data in Xorosoft ERP. Send the JSON payload using the field names documented in this operation and in the module export/import format used by Xorosoft ERP.

```json
{"openapi":"3.0.3","info":{"title":"Xorosoft ERP Public API","version":"2026.07"},"tags":[{"name":"Fulfillment and Wave Management","description":"Use Fulfillment and Wave Management APIs to retrieve waves, create waves, fulfill waves, ship waves, confirm shipments, manage carriers and shipping terms, and support warehouse execution workflows. These APIs are designed for WMS, shipping, 3PL, and fulfillment integrations that need to move orders from allocation through picking, packing, shipping, and confirmation."}],"servers":[{"url":"https://res.xorosoft.io","description":"Xorosoft ERP API server"}],"security":[{"basic":[]}],"components":{"securitySchemes":{"basic":{"scheme":"basic","type":"http"}},"schemas":{"XoroApiResponse":{"type":"object","description":"Standard Xorosoft ERP API response envelope used by most endpoints.","properties":{"Result":{"type":"boolean","description":"True when the operation completed successfully."},"Message":{"type":"string","description":"Human-readable success or error message."},"Data":{"description":"Endpoint-specific payload.","type":"object","additionalProperties":true,"nullable":true},"Page":{"type":"integer","description":"Current page number when paging is enabled.","nullable":true},"TotalPages":{"type":"integer","description":"Total page count when paging is enabled.","nullable":true}}},"PostWaveCreateRequest":{"type":"object","required":["WaveHeaderData","WaveDetailArr"],"properties":{"WaveHeaderData":{"type":"object","description":"Header values that control the wave creation process.","additionalProperties":true,"properties":{"StoreId":{"type":"integer","description":"Store identifier from which the wave is created."},"StoreName":{"type":"string","description":"Store name associated with the wave."},"WaveNumber":{"type":"string","description":"Optional wave number used for preview workflows; Xorosoft ERP otherwise generates the number."},"LockFlag":{"type":"boolean","description":"Set to true to lock the newly created wave."},"PlannedShipDate":{"type":"string","format":"date-time","nullable":true,"description":"Planned shipment date and time."},"AllowInventoryAdj":{"type":"boolean","description":"Allows the wave process to make permitted inventory adjustments."},"AutoCloseSOFlag":{"type":"boolean","description":"Set to true to automatically close eligible sales orders after processing."},"CartonBreakRuleId":{"type":"integer","format":"int64","nullable":true,"description":"Carton break rule to apply during allocation."},"PriorityCodeId":{"type":"integer","nullable":true,"description":"Priority code to apply to the wave."},"ThirdPartyRefNo":{"type":"string","description":"Optional external reference number for the wave."},"ThirdPartySource":{"type":"string","description":"Optional source system name for the external reference."},"BypassPaymentTermsCheck":{"type":"boolean","description":"Bypasses payment-term validation when the private app is authorized to do so."},"BypassAutoMergeCheck":{"type":"boolean","description":"Bypasses automatic wave-merge validation when the private app is authorized to do so."}}},"WaveDetailArr":{"type":"array","description":"Sales-order lines to allocate into the wave.","items":{"type":"object","additionalProperties":true}},"WaveItemLocationAlloc":{"type":"array","description":"Optional inventory-location allocations to apply during wave creation.","items":{"type":"object","additionalProperties":true}},"WaveDetailAllocationArr":{"type":"array","description":"Optional detailed line allocations for the wave.","items":{"type":"object","additionalProperties":true}},"MoCreateParamsList":{"type":"array","description":"Optional manufacturing-order creation instructions for inventory shortages.","items":{"type":"object","additionalProperties":true}},"LpnNumbers":{"type":"array","description":"Optional license plate numbers to include in the wave.","items":{"type":"string"}}},"description":"Request body for Create.","additionalProperties":true}}},"paths":{"/api/xerp/wave/create":{"post":{"tags":["Fulfillment and Wave Management"],"summary":"Create Wave","description":"Create or update wave data in Xorosoft ERP. Send the JSON payload using the field names documented in this operation and in the module export/import format used by Xorosoft ERP.","operationId":"post_wave_create","responses":{"200":{"description":"Request processed successfully.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/XoroApiResponse"}}}},"400":{"description":"Invalid request, failed validation, or business rule error.","content":{"text/plain":{"schema":{"type":"string"}}}},"401":{"description":"Missing or invalid private app credentials."},"403":{"description":"Private app does not have permission for this request."}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PostWaveCreateRequest"}}}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.xorosoft.com/developers-api/fulfillment-and-wave-management/create-wave.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
