---
title: Create
slug: xero/GSDG-create
description: Learn how to use the provided request code to effortlessly create items in Xero. This comprehensive document includes a detailed map that captures crucial item data like name, code, sales details, purchase details, and inventory information. Additionally,
docTags: 
createdAt: 2022-08-02T13:11:15.000Z
---

You can use the below request code to create an Item in Xero.

:::CodeblockTabs
Request

```apex
// Create a Map to store all the data
Map<String, Object> itemMap = new Map<String, Object>();
itemMap.put('Name', 'GenWatt Diesel 200kWk');
itemMap.put('Code', 'GC10402');

Map<String, Object> salesDetailsMap = new Map<String, Object>();
salesDetailsMap.put('UnitPrice', '210');
salesDetailsMap.put('TaxType', 'OUTPUT');
salesDetailsMap.put('AccountCode', '260');
itemMap.put('SalesDetails', salesDetailsMap);
itemMap.put('IsSold', true);
itemMap.put('Description', 'Item Description item-gold');

Map<String, Object> purchaseDetailsMap = new Map<String, Object>();
purchaseDetailsMap.put('UnitPrice', '100');
purchaseDetailsMap.put('TaxType', 'INPUT');
purchaseDetailsMap.put('COGSAccountCode', '260');
itemMap.put('PurchaseDetails', purchaseDetailsMap);
itemMap.put('IsPurchased', true);
itemMap.put('PurchaseDescription', 'Purchase Item Description - item-gold');
itemMap.put('IsTrackedAsInventory', false);
itemMap.put('QuantityOnHand', '0');
itemMap.put('TotalCostPool', '0');
itemMap.put('InventoryAssetAccountCode','630');

Map<String, Object> requestJSONMap = new Map<String, Object>();
requestJSONMap.put('items', new List<Object>{itemMap});
String reqJSON = JSON.serialize(requestJSONMap);

Map<String, Object> reqObj = new Map<String, Object>();
reqObj.put('version', '1.0');
reqObj.put('action', 'createItem');
reqObj.put('requestJSON', reqJSON);
//Required, if Xero Multi-Org is enabled in Breadwinner. 
reqObj.put('xeroOrgId', '!Abc123');
System.debug('Request ::: ' + reqObj);

//  Placing a request to Breadwinner Global API
Map<String, Object> respMap = Bread_winner.BreadwinnerXeroAPI.call(reqObj);
System.debug(respMap);
```

Response

```json
{
    action=createItem,
    responseJSON={
      "items": [
        {
          "TotalCostPool": 0.00,
          "SalesDetails": {
            "UnitPrice": 210.0000,
            "TaxType": "OUTPUT",
            "AccountCode": "260"
          },
          "QuantityOnHand": 0.0,
          "PurchaseDetails": {
            "UnitPrice": 100.0000,
            "TaxType": "INPUT",
            "COGSAccountCode": "260"
          },
          "PurchaseDescription": "Purchase Item Description - item-gold",
          "Name": "GenWatt Diesel 200kWk",
          "ItemID": "fbb0adfa-e823-4b2f-821e-6e06acf5c005",
          "IsTrackedAsInventory": true,
          "IsSold": true,
          "IsPurchased": true,
          "InventoryAssetAccountCode": "630",
          "Description": "Item Description item-gold",
          "Code": "GC10402"
        }
      ],
      "errors": [
        
      ],
      "statusCode": 200
    },
    timestamp=1680170969479,
    validRequest=true,
    version=1.0
  }
```
:::

