> For the complete documentation index, see [llms.txt](https://docs.violet.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.violet.io/faqs/distributions.md).

# Distributions

<details>

<summary>What is a Channel Distribution?</summary>

A Channel Distribution is the amount of money a Channel receives for one specific order placed against one specific merchant. The Channel Distribution includes information about the commission amount, any fees paid to payment providers, and information about the Bag that it is associated with. If you are a Channel, there can be multiple Channel distributions associated to a single payout based on the number of merchants in the Order.

</details>

<details>

<summary>What is a Merchant Distribution?</summary>

A Merchant Distribution is the amount of money a Merchant receives for one specific order placed to your ecommerce store by a Channel. If you are a Merchant, this is your payout amount for the Order, and you can match it up to the order available in your ecommerce store. You can also see what the Channel received for your specific order, depending on your commission relationship. You can reconcile these against the payouts to your bank account, using the Payout columns, settlement date, and your Stripe Dashboard or Bank statement. Multiple Distributions are included in a single payout. Merchant Distributions also show the total amount of payment provider fees, if any, paid by the merchant.

</details>

<details>

<summary>How do you reconcile this data with what you see in your Stripe Dashboard?</summary>

You can navigate to your Stripe Dashboard by going to your Violet Payouts Settings page and clicking on "Manage on Stripe". Here, Stripe will show you all transfers made to your account, and all payouts made to your bank account. If you are a Merchant, one Merchant Distribution will line up to one transfer on your Stripe Dashboard. You can map these by looking at the Order Id on the distribution record. If there are Refunds, they will include the same Order Id but be negative values. If you are a Channel, multi-merchant Orders will result in multiple Channel Distributions for the same order, so the value you see in Stripe is the sum of all of these.

</details>

<details>

<summary>How do you reconcile this data with your bank statement?</summary>

Payouts to your bank account occur automatically through Stripe at different frequencies, depending on your configuration. When a payout occurs on Stripe, the Distribution record is also updated by Violet to include the date that the payout was created. Usually this date is one day before the date shown on your bank account and in your Stripe dashboard, because the payout settlement date is different to the payout created date. Coming soon Violet will begin including payout settlement dates in Distribution records for easier reconciliation against bank data.

</details>

<details>

<summary>How do you reconcile this data with what you see in your ecommerce store?</summary>

If you are a merchant trying to reconcile Distributions to orders in your ecommerce store, you can use the `external_order_id` value on the Distribution. This is the Order Id in your ecommerce platform.

</details>

<details>

<summary>How does a Refund show up in Distributions?</summary>

When a refund is placed by the merchant in their ecommerce store, Violet automatically reverses corresponding payouts and payments. Distribution records are created for these reversals, and include a negative value of the amount that was reversed or refunded. Refunds will have the same Order Id as the original Distribution, however, will be associated to a different payout to your bank.

</details>

## Order Adjustments

<details>

<summary>What is an Order Adjustment?</summary>

An Order Adjustment is an immutable audit record that tracks corrections to bag totals after an order has been placed. Adjustments provide a transparent history of any changes made to shipping, tax, or discount amounts without modifying the original order data.

Adjustments can be created for three entity types:

* **Shipping Total**: Corrections to shipping charges (e.g., carrier rate updates)
* **Tax Total**: Corrections to tax amounts (e.g., jurisdiction miscalculations)
* **Discount Total**: Post-order promotional discounts or corrections

</details>

<details>

<summary>When would an adjustment be created?</summary>

Adjustments are typically created in the following scenarios:

1. **Shipping Reconciliation**: When the estimated shipping cost at checkout differs from the actual carrier rate charged. Violet automatically detects significant shipping discrepancies (over $3.00) before transfers and creates adjustments to correct them.
2. **Tax Corrections**: When the tax jurisdiction was miscalculated at checkout and needs to be corrected post-order.
3. **Post-Order Discounts**: When a promotional discount or customer goodwill credit needs to be applied after the order was already placed.
4. **Manual Corrections**: When Violet support identifies a billing discrepancy that requires correction.

</details>

<details>

<summary>How do adjustments affect payouts?</summary>

Each adjustment specifies how the cost change is distributed among three parties:

| Party        | Description                                                   |
| ------------ | ------------------------------------------------------------- |
| **Shopper**  | Amount the shopper owes (positive) or is refunded (negative)  |
| **Merchant** | Amount the merchant receives (positive) or absorbs (negative) |
| **Channel**  | Amount the channel receives (positive) or absorbs (negative)  |

The sum of these three amounts always equals zero, ensuring proper double-entry accounting.

When an adjustment is created:

* **Merchant adjustments** create a new ADJUSTMENT distribution in PENDING status, included in the next transfer to the merchant's payout account
* **Channel adjustments** create an ADJUSTMENT distribution that is immediately settled against the channel's balance
* **Shopper adjustments** are tracked for audit purposes (actual refunds to shoppers are handled separately)

</details>

<details>

<summary>How do adjustments show up in Distributions?</summary>

Adjustment distributions appear alongside standard PAYMENT and REFUND distributions in the dashboard and API. They have a `type` of `ADJUSTMENT` and include an `adjustment_id` field linking to the original BagAdjustment record.

Key differences from payment distributions:

* **No commission**: Adjustments never recalculate commission. The commission was calculated on the original transaction.
* **Separate line items**: Each adjustment creates its own distribution record for audit clarity
* **Same order context**: Adjustment distributions reference the same `order_id` and `bag_id` as the original payment

You can filter distributions by type to see only adjustments, or view them in context with all other financial movements for an order.

</details>

<details>

<summary>Can I create adjustments via the API?</summary>

Yes, channels can create adjustments for bags in orders they created. Use the Order Adjustments API:

```
POST /v1/orders/{order_id}/bags/{bag_id}/adjustments
```

Required fields include:

* `entity_type`: SHIPPING\_TOTAL, TAX\_TOTAL, or DISCOUNT\_TOTAL
* `previous_value` and `adjusted_value`: The original and corrected amounts in cents
* `shopper_adjustment_amount`, `merchant_adjustment_amount`, `channel_adjustment_amount`: How the cost change is distributed (must sum to zero)
* `reason`: A description of why the adjustment was made

See the [Order Adjustments API Reference](https://github.com/violetio/docs/blob/main/api-reference/orders-and-checkout/order-adjustments/README.md) for complete documentation.

</details>

<details>

<summary>Are adjustments the same as refunds?</summary>

No, adjustments and refunds serve different purposes:

| Aspect                     | Adjustment                                        | Refund                                    |
| -------------------------- | ------------------------------------------------- | ----------------------------------------- |
| **Purpose**                | Correct billing errors (shipping, tax, discounts) | Return money for returned/cancelled items |
| **Initiated by**           | Channel via API or Violet automatically           | Merchant from their ecommerce platform    |
| **Affects original order** | No - creates audit record only                    | Yes - updates order status                |
| **Commission impact**      | None - no commission recalculation                | Commission is reversed proportionally     |
| **Typical scenarios**      | Shipping overcharge, tax miscalculation           | Product return, order cancellation        |

If a customer wants their money back for a product, that's a refund. If there was a billing error that needs correction, that's an adjustment.

</details>

<details>

<summary>How do I find adjustments for an order?</summary>

You can retrieve adjustments in several ways:

**Via API:**

* Get all adjustments for an order: `GET /v1/orders/{order_id}/adjustments`
* Get adjustments for a specific bag: `GET /v1/orders/{order_id}/bags/{bag_id}/adjustments`
* Get a specific adjustment: `GET /v1/orders/{order_id}/bags/{bag_id}/adjustments/{adjustment_id}`

**Via Dashboard:**

* Navigate to the order details page
* View the Distributions section to see ADJUSTMENT type distributions
* Check the Transfer Details page for adjustment distribution breakdowns

</details>


---

# 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:

```
GET https://docs.violet.io/faqs/distributions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
