# External stock change reasons

External stock change reasons represent user-defined reasons for stock movements within a facility. These reasons can optionally be included in stow line items to explain why a specific action was performed.

{% hint style="warning" %}
fulfillmenttools doesn't process or react to external stock change reasons. They exist solely for user-defined purposes.
{% endhint %}

## Working with external stock change reasons

External stock change reasons can be handled in one of two ways:

1. **Managed externally**
   * Reasons are not preconfigured in the platform.
   * Users can provide custom reasons directly when creating stow line items.
   * **Note**: Custom reasons provided externally are not validated by the platform.
2. **Managed within fulfillmenttools**
   * Reasons are preconfigured via [external stock change reasons REST API](https://fulfillmenttools.github.io/fulfillmenttools-api-reference-ui/#post-/api/externalstockchangereasons).
   * When creating stow line items, preconfigured reasons are linked by specifying either their `id` or `tenantReasonId`.

{% hint style="info" %}
[External stock change reasons REST API](https://fulfillmenttools.github.io/fulfillmenttools-api-reference-ui/#post-/api/externalstockchangereasons)
{% endhint %}

To preconfigure an external stock change reason, POST an external stock change reason, providing:

* `active`: `true` or `false` (if set to false, the reason can no longer be linked in `stowLineItems`)
* Optional `customAttributes`: can contain information of interest to connectors or services outside of fulfillmenttools. fulfillmenttools doesn't process or react on [customAttributes](https://docs.fulfillmenttools.com/documentation/by-pillar/global-inventory-hub/stock/broken-reference).
* `reasonLocalized`: Localized reasons, see [the Localization article.](https://docs.fulfillmenttools.com/documentation/getting-started/authentication-and-authorization/localization)
* Optional `tenantReasonId`: External identifier. Can be used, for example, to map reason codes from ERP systems
