---
title: "Set a custom price for an order"
method: PUT
path: "/orders/{order_id}/set_custom_price"
tags: ["Orders"]
---

# Set a custom price for an order

`PUT /orders/{order_id}/set_custom_price`

Set custom price for an order (if there is a payment plan for this order, the amounts of its payments will be adjusted automatically)

## Path parameters

- `order_id` string, required

## Request body

- CustomPrice
  - `option_id` integer, required
  - `price` integer, required — Price of the option/package
  - `notification_message` string — Message to be sent to the participant

## Response `200`

Get Trip Order

- Order — Order object
  - `pending_amount` integer — Bank payment is still pending confirmation. Clears in 5 business days
  - `paid_amount` integer — Total gross amount paid through WeTravel - cc or bank payments
  - `failed_amount` integer — Attempted bank payments that have failed
  - `disputed_amount` integer — Disputed payments for the booking
  - `cash_amount` integer — Cash payments registered for the booking
  - `refunded_amount` integer — Amount refunded to the participant through WeTravel - cc or bank payments
  - `cash_refunded_amount` integer — Cash refund to the participant
  - `adjusted_amount` integer — Amount withheld upon package or option cancellation
  - `due_amount` integer — Balance due. Applies to orders without payment plans only
  - `past_due_amount` integer — Amount due before today. Applies to orders with payment plans only
  - `due_later_amount` integer — Amount due in later installments. Doesn't include past_due_amount. Applies to orders with payment plans only
  - `total_due_amount` integer — Total amount due. For orders without payment plans (due_amount), for orders with payment plans (past_due_amount + due_later_amount)
  - `total_amount` integer — Sum of the price of all packages and add-ons in the booking
  - `total_next_installment` integer — All installments due in the next periods, does not include the current due amount. Applies to orders with payment plans only
  - `id` string — Unique ID of the order
  - `rebooked_from_order_id` string — Unique ID of the order which this order was rebooked from
  - `trip_uuid` string — Unique ID of the trip
  - `buyer_id` integer — Unique ID of the buyer
  - `trip_length` integer — Trip duration
  - `departure_date` string — Departure date of the trip in ISO 8601 format
  - `currency` 'USD' | 'EUR' | 'GBP' | 'CAD' | 'ZAR' | 'AUD' — Currency of the trip
  - `total_deposit_due` integer — Total amount to pay for the deposit of the package. Applies for bookings with no payment made yet
  - `overpaid_amount` integer — Amount that has been overpaid. This can happen if the organizer has set a custom price for an existing booking, which is lower than what the buyer has already paid
  - `already_paid` integer — Total paid amount for all items in the booking at this point. Includes both packages and add-ons
  - `has_payment_plan` boolean — Whether the package has a payment plan or not
  - `allow_auto_payment` boolean — Participants will automatically be auto-billed to their default payment method when each payment is due
  - `allow_partial_payment` boolean — Allow participants to make partial payments
  - `active_participants_count` integer — Number of active participants in the booking/order
  - `cancelled_participants_count` integer — Number of canceled participants in the booking/order
  - `created_at` string, date-time — Time at which the order was created
  - `esign_document` EsignDocumentSummary — EsignDocument object
    - `document_id` integer — Unique ID of the document
    - `signed_at` string, date-time — Time at which the document was signed
  - `options` Option[]
    - `id` string — Unique ID of the option/package
    - `trip_option_id` string — 64-bit Snowflake identifier encoded as a decimal string
    - `price` integer — Price of the option/package
    - `name` string — Name of the option/package
    - `type` 'package' | 'option' — Type of the option, 'package' or 'option'
    - `active_count` integer — Number of active participants per booking/order
    - `cancelled_count` integer — Number of canceled participants per booking/order
    - `discounted_amount` integer — The actual amount of the discount for the booking
    - `deposit_amount` integer — Deposit amount for the booking
    - `has_deposit` boolean — Whether the package has a deposit or not
    - `participants` Participant[]
      - `email` string — Email of the participant
      - `first_name` string — First name of the participant
      - `last_name` string — Last name of the participant
  - `donations` Donation[]
    - `id` string — Unique ID of the donation
    - `price` integer — Price of the option/package
    - `name` string — Name of the donation
    - `type` string — Type of the donation
    - `active_count` integer — Number of active participants per booking/order
    - `amount` integer — Amount for the donation
  - `installments` Installment[]
    - `type` 'deposit' | 'due_at_booking' | 'installment' — Type: “deposit”, "due_at_booking" or “installment”
    - `total` integer — Amount of the specific installment
    - `previous_payment` integer — Amount of the previous payment (applies for partial installment payments)
    - `due` integer — Amount that is due for the specific installment
    - `paid` boolean — Whether the installment has been fully paid or not
    - `date` string, date, nullable — The installment due date in ISO 8601 format, e.g. “2021-06-25”

---

[API](https://skmtc.dev/wetravel/apis/authentication-api.md) · [All operations](https://skmtc.dev/wetravel/apis/authentication-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/wetravel/authentication-api/revisions/5c747875f084/schema)
