# Issuance Creation for Non-Purchase Transactions

Use the POST method in the Issuance API to create a new Non-Purchase Transactions within the loyalty program. Each order has a unique ID and includes essential details like the member, total amount, order timestamp, discounts, shipping timestamp, and other relevant info. Include mandatory fields like order ID and user ID parameters.

Endpoint: POST /issuance- Issuance creation for non purchase transaction
Version: 3.0.0
Security: 

## Request fields (application/json):

  - `orderId` (string, required)
    Enter the order ID for the order.
    Example: "12345"

  - `userId` (string, required)
    Enter the unique user ID of the loyalty member.
    Example: "user@domain.com"

  - `actionId` (integer, required)
    Enter the action ID.
    Example: 174

  - `source` (string)
    Enter the source of where the order was placed by the loyalty member, such as web or store.
    Example: "Web"

  - `coupon` (string)
    Enter the name of a coupon.
    Example: "$10 Off"

  - `orderTotalSpend` (integer, required)
    Enter the total amount spent on the order in dollars.
    Example: 100

  - `orderTotalPoints` (integer, required)
    Enter the total number of points users earned on a particular order.
    Example: 500

  - `orderDiscountAmount` (integer)
    Enter the total discount amount on the placed order.
    Example: 50

  - `orderStatus` (string, required)
    Enter the status as ship.
    Example: "SHIP"

  - `pointType` (string)
    Enter the point type. The pointType is an activity type, which would be an open field in the POST Issuance API payload.
    Example: "Regular"

  - `orderDate` (string)
    Enter the order date in yyyy-MM-dd  format. It becomes a required field when backdated orders are enabled.
    Example: "2024-06-19"

  - `orderShipDate` (string)
    Enter the shipping date for the order in yyyy-MM-dd format.
    Example: "2024-06-19"

  - `storeId` (string)
    Enter the unique ID of the store.
    Example: "IN12369"

  - `productDetails` (object)
    Enter the array of product details presented in the productDetail object as follows.

  - `productDetails.productId` (string)
    Enter the product ID.
    Example: "p1"

  - `productDetails.productName` (string)
    Enter the product name.
    Example: "wool sweater"

  - `productDetails.productQuantity` (integer)
    Enter the quantity of the product that has been purchased.
    Example: 23

  - `productDetails.productPrice` (integer)
    Enter the price per unit for the product.
    Example: 100

  - `productDetails.productDiscountAmount` (integer)
    Enter the total product discount amount applied to the transaction.
    Example: 10

  - `productDetails.productCouponCode` (string)
    Enter the name of a product coupon code applied to the product order.
    Example: "abcd2344"

  - `productDetails.productTotalAmount` (integer)
    Enter the total amount of the order placed by the loyalty member.
    Example: 200

  - `productDetails.productTotalPoints` (integer)
    Enter the total points.
    Example: 200

  - `productDetails.productDescription` (string)
    Enter the product description.
    Example: "iPad came with p10 chip and one week battery support."

  - `productDetails.productShipDate` (string)
    Enter the date when the product will be shipped in the format yyyy-MM-dd.
    Example: "22023-12-11"

  - `productDetails.issuanceProductAttribute` (object)
    issuanceProductAttribute may have multiple dynamic product attributes and values.

  - `productDetails.issuanceProductAttribute.issuanceOrderAttribute` (object)
    This object contain multiple dynamic attributes and its values.

  - `productDetails.issuanceProductAttribute.issuanceOrderAttribute.attribute` (string)
    Enter attribute name and value information.
    Example: "Quantity"

## Response 200 fields (application/json):

  - `userId` (string)
    Displays the unique ID of the member.
    Example: "user@domain.com"

  - `orderId` (string)
    Displays the unique ID of the order.
    Example: 12345

  - `actionId` (integer)
    Displays the unique action ID for the action established in the loyalty program.
    Example: 174

  - `source` (string)
    Displays the source, meaning where the order was placed by the loyalty member, such as web or store.
    Example: "Web"

  - `coupon` (string)
    Displays the name of a coupon, if a coupon was applied on the order.
    Example: "$10 Off"

  - `orderTotalSpend` (integer)
    Displays the total amount spent on the order.
    Example: 100

  - `orderTotalPoints` (integer)
    Displays the total number of points awarded to the member for a specific order.
    Example: 500

  - `pointsAwarded` (integer)
    Displays the total points awarded for the order.
    Example: 500

  - `pointsExpirationDate` (string)
    Displays the date on which the points are set to expire in yyyy-MM-dd'T'HH:mm:ssZ format.
    Example: "2025-11-15T02:06:35+0000"

  - `orderDiscountAmount` (integer)
    Displays the total discount amount applied to the order.
    Example: 50

  - `orderStatus` (string)
    Displays order status.
    Example: "ship"

  - `pointType` (string)
    Displays the Point Type.
    Example: "Regular"

  - `orderDate` (string)
    Displays the order date in yyyy-MM-dd format.
    Example: "2024-06-19"

  - `orderShipDate` (string)
    Displays the date the product will be shipped in yyyy-MM-dd format.
    Example: "2024-06-19"

  - `storeDetails` (object)
    Store details will return the store name, and store attributes as well. The store attributes may vary store by store based on the attributes defined.

  - `storeDetails.storeId` (string)
    Displays the unique ID of the store.
    Example: "IN12369"

  - `storeDetails.productDetail` (object)
    Displays the following parameters.

  - `storeDetails.productDetail.productId` (string)
    Displays the Product ID.
    Example: "P1"

  - `storeDetails.productDetail.productName` (string)
    Displays the Product Name.
    Example: "iPad"

  - `storeDetails.productDetail.productQuantity` (integer)
    Displays the quantity of the product purchased in the order.
    Example: 2

  - `storeDetails.productDetail.productPrice` (integer)
    Displays the unit price for the product.
    Example: 100

  - `storeDetails.productDetail.productDiscountAmount` (integer)
    Displays the total discount amount applied to the order.
    Example: 100

  - `storeDetails.productDetail.productCouponCode` (string)
    Displays the name of a product coupon code, if a code was applied on the order.
    Example: "acdb2344"

  - `storeDetails.productDetail.productTotalAmount` (integer)
    Displays the total amount spent on the order.
    Example: 500

  - `storeDetails.productDetail.productTotalPoints` (integer)
    Displays the number of points the member earns.
    Example: 200

  - `storeDetails.productDetail.productDescription` (string)
    Displays the product details.
    Example: "iPad came with p10 chip and one week battery support."

  - `storeDetails.productDetail.productShipDate` (string)
    Displays the ship date the product will be shipped in yyyy-MM-dd format.
    Example: "2023-12-11"

  - `storeDetails.productDetail.issuanceProductAttribute` (object)
    Displays the product attributes for the created product.

  - `storeDetails.productDetail.issuanceProductAttribute.issuanceOrderAttribute` (object)
    Displays the order attribute which passes values while creating the order.

  - `storeDetails.productDetail.issuanceProductAttribute.issuanceOrderAttribute.attribute` (string)
    Enter attribute name and value information.
    Example: "Quantity"


## Response 201 fields

## Response 400 fields

## Response 401 fields

## Response 404 fields

## Response 422 fields
