---
title: "Hosted Page Sale"
method: POST
path: "/api/v1/sale?hostedPage"
---

# Hosted Page Sale

`POST /api/v1/sale?hostedPage`

## Request body

- object
  - `appid` string, required — Merchant APP ID (Alphanumeric - Length of 32 chars and special chars $@%#)
  - `appkey` string, required — Merchant APP KEY (Alphanumeric - Length of 32 chars and special chars $@%#)
  - `epi` string, required — EPI is an end point identifier, Identify the device on valor infrastructure, it's a 10 digit number starts with 2
  - `amount` number, double, required — Transaction amount - Maximum amount $99,999.99 (Ex: 0.1 to 99,999.99). A request should not be sent when the amount is 0. The amount must be greater than zero
  - `invoicenumber` string — Invoice number is a unique number assigned (Alphanumeric varchar)
  - `orderdescription` string — Add the order description - Optional (Alphanumeric - Length of 50 chars)
  - `surcharge` string — Additional fee of surcharge amount - Currency $ (Eg: 10.00)
  - `phone` string — Customer phone number- 10 digit Numeric (Ex: 5247896523)
  - `email` string — Customer email id - Varchar 255 (Ex: test@domain.com)
  - `tax` string — Tax amount - Currency $ (Eg. 00.00)
  - `epage` integer, required — Should be set always 1
  - `redirect_url` string — Merchants call back url - It will be redirected to payment page
  - `ignore_surcharge_calc` string — Set value 0 (Fee will be calculate from merchant portal)
  - `success_url` string — For this flag successful transaction, page redirect to success page
  - `failure_url` string — For this flag failed transaction, page redirect to failed page
  - `shipping_country` string, required — Shipping country should be mention default set us US
  - `is_sync_qb` string — If the transaction can be sent to the QB account, set the value to 1; otherwise, set it to 0.
  - `customer_name` string, required — Customer name for the quick book account
  - `never_expire` string — If the never expire to set as 0 or 1
  - `active_on` string, date — Please ensure it is active and formatted as YYYY-MM-DD
  - `lineItems` object[]
    - `item_name` string, required — Name for the product
    - `item_description` string, required — Description for the Product
    - `item_quantity` string, required
    - `item_price` string, required
    - `item_tax` string
    - `modifierItems` object[]
      - `modifier_item_name` string
      - `modifier_description` string, required
      - `modifier_quantity` string
      - `modifier_price` string, required
      - `modifier_tax` string
  - `discount_id` string — Product Discount ID
  - `qb_email_invoice` string — Set to 1 if the QuickBooks invoice email is sent, otherwise set to 0.
  - `additional_prompts` object[]
    - `PROMPT_NAME` string — The prompt name should allow up to maximum 30 characters
    - `PROMPT_VALUE` string — The prompt value should allow up to maximum 30 characters
  - `notification_status` string — The notification value should be set to 1 or 0.
  - `is_customer_info_avail` string — If the customer enters their information in the invoice request but the payment page does not appear, set the value to 0.
  - `po_number` string — The PO number must be provided to receive the Level 2 benefit.
  - `amount_type` string — Paynow amount type should be set as 1 otherwise set 0
  - `invoice_mode` integer — Paynow invoice mode should be set as 1 otherwise set 0

## Response `200`

200

- object

## Other responses

- `400` — 400

---

[API](https://skmtc.net/valorpaytech/apis/ecommerce-api.md) · [All operations](https://skmtc.net/valorpaytech/apis/ecommerce-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/valorpaytech/ecommerce-api/versions/c6468b606325/schema)
