addProduct

This method creates a new product record and returns a ProductRefNum

Description

The addProduct method creates a new product record. If successful, a ProductRefNum will be returned. The ProductRefNum is a gateway assigned product identifier. This product identifier should be stored and is needed for updating and deleting products. The product database is an optional feature and may not be supported by all merchants. The merchant should check their gateway package to determine if this feature is available to them.

See also updateProduct, deleteProduct

Syntax

string addProduct ( ueSecurityToken, Product)

Arguments

Type Name Description
ueSecurityToken Token Merchant security token: used to identify merchant and retrieve the custom fields.
Product Product Object contain product details

Return Value

| Type | Description | | ---- | ---- | ----------- | string | Returns a ProductRefNum. |

Exceptions

The following exceptions (errors) are applicable to this method.

Code Message Advice
41001 Unable to create product database Merchant does not have a product database. The feature not be enabled for merchant. Contact customer service and make sure product database feature is enabled.

Examples

PHP

For directions on how to set up the WSDL link, create "$token" and "$client", go to PHP Soap How-to.

    <?php

    try {

    $Product = array(
        "ProductID" => "0-13-508011-8",
        "SKU" =>"135080118",
        "UPC" => "9780135080115",
        "Category" => "Books:Math",
        "Enabled" => true,
        "Name" => "Elementary Differential Equations",
        "Description" => "Rainville, Bedient and Bedient (Eight Edition)",
        "Weight" => 1.0,
        "ShipWeight" => 1.1,
        "Price" => 112.00,
        "ListPrice" =>  128.00,
        "WholesalePrice"=> 100.00,
        "DateAvailable" => "2009-12-01",
        "Manufacturer" => "Prentice Hall",
        "Type" => "Unknown",
        "MinQuantity" =>0,
        "ImageURL" => "http://acme.com/prodimg/123123.jpg",
        "URL" => "http:/acme.com/prod/123123.html"
     );


    $ProductRefNum = $client->addProduct($token, $Product);

      print_r($res);
    }

    catch(SoapFault $e) {

      echo $e->getMessage();

    }

    ?>

VB

    Dim product As usaepay.Product = New usaepay.Product
            product.ProductID = "0-13-508011-8"
            product.SKU = "135080118"
            product.UPC = "9780135080115"
            product.Category = "Books:Math"

            Dim inventory(0 To 1) As usaepay.ProductInventory
            inventory(0) = New usaepay.ProductInventory()
            inventory(0).InventoryLocation = "Los angeles"
            inventory(0).QtyOnHand = "10"
            inventory(0).QtyOnOrder = "5"
            inventory(0).DateAvailable = "2010-08-20"

            product.Inventory = inventory

            Dim priceTier(0 To 1) As usaepay.PriceTier
            priceTier(0) = New usaepay.PriceTier()
            priceTier(0).Qty = "2"
            priceTier(0).Price = "100"

            product.PriceTiers = priceTier

            product.TaxClass = "your_tax_class"
            product.Enabled = True
            product.Name = "Elementary Differential Equations"
            product.Description = "Rainville, Bedient and Bedient (Eight Edition)"
            product.Weight = 1.0
            product.ShipWeight = 1.1
            product.Price = 112.0
            product.ListPrice = 128.0
            product.WholesalePrice = 100.0
            product.DateAvailable = "2010-08-01"
            product.Manufacturer = "Prentice Hail"
            product.MinQuantity = "0"

            Dim refNum As String

            refNum = client.addProduct(token, product)
            MsgBox(refNum)

.NET C

                usaepay.Product product = new usaepay.Product();
                product.ProductID = "0-13-508011-8";
                product.SKU = "135080118";
                product.UPC = "9780135080115";
                product.Category = "Books:Math";

                usaepay.ProductInventory[] inventory = new usaepay.ProductInventory[1];
                inventory[0] = new usaepay.ProductInventory();
                inventory[0].InventoryLocation = "Los angeles";
                inventory[0].QtyOnHand = "10";
                inventory[0].QtyOnOrder = "5";
                inventory[0].DateAvailable = "2010-08-20";

                product.Inventory = inventory;

                usaepay.PriceTier[] priceTier = new usaepay.PriceTier[1];
                priceTier[0] = new usaepay.PriceTier();
                priceTier[0].Qty = "2";
                priceTier[0].Price = "100";

                product.PriceTiers = priceTier;

                product.TaxClass = "your_tax_class";
                product.Enabled = true;
                product.Name = "Elementary Differential Equations";
                product.Description = "Rainville, Bedient and Bedient (Eight Edition)";
                product.Weight = 1.0;
                product.ShipWeight = 1.1;
                product.Price = 112.00;
                product.ListPrice = 128.00;
                product.WholesalePrice = 100.00;
                product.DateAvailable = "2010-08-01";
                product.Manufacturer = "Prentice Hail";
                product.MinQuantity = "0";

                string refNum;

                try
                {
                    refNum = client.addProduct(token, product);
                    MessageBox.Show(string.Concat(refNum));
                }
                catch (Exception err)
                {
                    MessageBox.Show(err.Message);
                }

XML

Request:

<?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ns1="urn:usaepay" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
    SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:addProduct>
<Token xsi:type="ns1:ueSecurityToken">
<ClientIP xsi:type="xsd:string">123.123.123.123</ClientIP>
<PinHash xsi:type="ns1:ueHash">
<HashValue xsi:type="xsd:string">6336749834eabc43b70de5bc20fe037b6517b8d4</HashValue>
<Seed xsi:type="xsd:string">1667362908-test</Seed>
<Type xsi:type="xsd:string">sha1</Type>
</PinHash>
<SourceKey xsi:type="xsd:string">_B4P7C4K2w2ZCQQQXRqrxDj6agrS2NIT</SourceKey>
</Token>
<Product xsi:type="ns1:Product">
<ProductID xsi:type="xsd:string">2345678</ProductID>
<SKU xsi:type="xsd:string">909090</SKU>
<UPC xsi:type="xsd:string">789789</UPC>
<Category xsi:type="xsd:string">liqour</Category>
<Enabled xsi:type="xsd:boolean">true</Enabled>
<Name xsi:type="xsd:string">sailor jerry</Name>
<Description xsi:type="xsd:string">spice rum bottle</Description>
<Model xsi:type="xsd:string">bottle</Model>
<Weight xsi:type="xsd:double">7.7</Weight>
<ShipWeight xsi:type="xsd:double">11.7</ShipWeight>
<Price xsi:type="xsd:double">40</Price>
<WholesalePrice xsi:type="xsd:double">60</WholesalePrice>
<ListPrice xsi:type="xsd:double">20</ListPrice>
<Manufacturer xsi:type="xsd:string">Chase</Manufacturer>
<PhysicalGood xsi:type="xsd:boolean">true</PhysicalGood>
<MinQuantity xsi:type="xsd:integer">18</MinQuantity>
<ImageURL xsi:type="xsd:string">www.candyland.com</ImageURL>
<URL xsi:type="xsd:string">www.candyland.com</URL>
<Inventory SOAP-ENC:arrayType="ns1:ProductInventory[1]" xsi:type="ns1:ProductInventoryArray">
<item xsi:type="ns1:ProductInventory">
<InventoryLocation xsi:type="xsd:string">compton</InventoryLocation>
<QtyOnHand xsi:type="xsd:string">30</QtyOnHand>
<QtyOnOrder xsi:type="xsd:string">10</QtyOnOrder>
<DateAvailable xsi:type="xsd:string">461</DateAvailable>
</item>
</Inventory>
<PriceTiers SOAP-ENC:arrayType="ns1:PriceTier[2]" xsi:type="ns1:PriceTierArray">
<item xsi:type="ns1:PriceTier">
<Qty xsi:type="xsd:string">10</Qty>
<Price xsi:type="xsd:string">25</Price>
</item>
<item xsi:type="ns1:PriceTier">
<Qty xsi:type="xsd:string">20</Qty>
<Price xsi:type="xsd:string">15</Price>
</item>
</PriceTiers>
</Product>
</ns1:addProduct>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Response:

<?xml version="1.0" encoding="utf-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ns1="urn:usaepay"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
    SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:addProductResponse>
<ProductRefNum xsi:type="xsd:string">9001001937</ProductRefNum>
</ns1:addProductResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>