Link

Create Purchase Order

To create Purchase Order pass the values to Invoice wrapper and assign it to request. xeroInvoice and then call the method BreadwinnerAPI.call(). Here customer ClientId (Xero Contact Id) is required.

Sample Code

try{
	bw_xero_api02.BreadwinnerAPI.RequestObject req = new  bw_xero_api02.BreadwinnerAPI.RequestObject();	
	List<bw_xero_api02.Invoice> xeroInvoicesList = new List<bw_xero_api02.Invoice>();
	bw_xero_api02.Invoice xeroInvoice = new bw_xero_api02.Invoice ();
	xeroInvoice.DueDate = string.valueof(system.today());
	bw_xero_api02.Invoice.LineItemWrapper poLineItem = new bw_xero_api02.Invoice.LineItemWrapper();
	poLineItem.ItemCode = ''; 
	poLineItem.Description = 'li desc'; 
	poLineItem.AccountCode = '200';
	poLineItem.UnitAmount = 300;
	poLineItem.Quantity = 3;
	list<bw_xero_api02.Invoice.LineItemWrapper> poLineItemsList = new list<bw_xero_api02.Invoice.LineItemWrapper>();
	poLineItemsList.add(poLineItem);
	xeroInvoice.LineItems = poLineItemsList;
	xeroInvoice.ClientId = '39efa556-8dda-4c81-83d3-a631e59eb6d3';
	xeroInvoicesList.add(xeroInvoice);
	req.xeroInvoice = xeroInvoicesList;
	bw_xero_api02.BreadwinnerAPI.ResponseObject res =  bw_xero_api02.BreadwinnerAPI.call('createPurchaseOrder', req);
	if(res.errors.size()>0){
		for(bw_xero_api02.BreadwinnerAPI.Error er :res.errors){
			System.debug(er); 
		}
	}
	system.debug('created purchase Order' +res.XeroInvoices);
}catch(Exception ex){
	System.debug('Exception occurred while creating customers in Xero.'+ex.getStackTraceString());
}