---
title: "Hosted Page Sale(L2 & L3)"
method: POST
path: "/api/v1/sale?hostedl2"
---

# Hosted Page Sale(L2 & L3)

`POST /api/v1/sale?hostedl2`

## 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 — Should be a numeric value (Level 3 benefit)..
    - `item_price` string, required — Should be a numeric value (Level 3 benefit).
    - `item_tax` string, required — Should be a numeric value if provided (Level 3 benefit).
    - `item_unit_of_measure` string, required — The Unit of Measure should allow up to 12 alphanumeric characters (Level 3 benefit).
    - `item_commodity_code` string, required — The Commodity Code should allow up to 12 alphanumeric characters (Level 3 benefit).
    - `item_discount` string, required — Discount amount - Currency $ (Eg. 00.00) (Level 3 benefit).
    - `item_tax_rate` string, required — Tax amount - Currency $ (Eg. 00.00) (Level 3 benefit).
    - `modifierItems` object[]
      - `modifier_id` string — Modifier id should be numeric only
      - `qty` string — Modifier quantity
  - `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, required — The PO number must be provided to receive the Level 2 benefit (Alphanumeric Max 25 chars)..
  - `customer_VAT` string, required — The Customer VAT should be maximum 13-character alphanumeric value (Level 3 benefit).
  - `freight_amount` number, double, required — Freight amount - Currency $ (Eg. 00.00) (Level 3 benefit).
  - `freight_tax_amount` number, double, required — Freight tax amount - Currency $ (Eg. 00.00) (Level 3 benefit).
  - `ship_from_postal_code` string, required — The postal code should be maximum 10 numeric value (Level 3 benefit).
  - `VAT_invoice` string, required — The VAT invoice should be Maximum 15-character alphanumeric value (Level 3 benefit).
  - `duty_amount` string, required — Duty amount - Currency $ (Eg. 00.00) (Level 3 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)
