Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Service NamechartOfAccountsInquiry
DescriptionProvides basic information about the KFS chart of accounts based on a set of request parameters.
API TypeREST (changed from SOAP) - FinancialWebAPI (January, 2022)
Status

COMPLETE

Release Date

 

Last Update

 KFS Version 3.32.0

Notes

WSDL Definition

Definition URLs

UAT - https://kualinp.uconn.edu/kfs-uat/remoting/chartOfAccountsInquiry?wsdl
PROD - https://kuali.uconn.edu/kfs-prd/remoting/chartOfAccountsInquiry?wsdl

Binding

{http://kfs.kuali.org/kfs/v5_0}chartOfAccountsInquirySoapBinding

SOAP Version

SOAP 1.1

Operations

NameDescriptionInput
getAccount

Will retrieve information one account

account number (Required)
getAccounts

Will retrieve information on all accounts within a set of selection criteria

subFund (Required)
organization code (Optional)
from Date [yyyy-mm-dd] (Optional)
to Date [yyyy-mm-dd] (Optional)

Response

AttributeXPathNotes
Id

return/account/id

Unique Identifier
Account name

return/account/accountName

description of account
Account numberreturn/account/accountNumber
Chart of Accounts codereturn/account/chartOfAccountsCodeUC
Statusreturn/account/statusenumeration values (NEW, OPEN, CLOSE, CHANGED)
FiscalOfficerIdentifierreturn/account/fiscalOfficerIdentifiernetid
Account Type Codereturn/account/accountTypeCode
Bank codereturn/account/bankCode
Consolidation Chart of Accounts codereturn/account/consolidationChartOfAccountsCode
Consolidation Account Numberreturn/account/consolidationAccountNumber
Reports to Account Numberreturn/account/reportsToAccountNumber
Reports to Chart of Accounts Codereturn/account/reportsToChartOfAccountsCode
FundSid Codereturn/account/FundSIDCode
FundSid descriptionreturn/account/fundSIDDescription
Account Manager System Identifierreturn/account/accountManagerSystemIdentifiernetid
Account supervisor Systems Identifierreturn/account/accountsSupervisorySystemsIdentifiernetid
Organization Codereturn/account/organizationCode
SubFund group codereturn/account/subFundGroupCode
Department account owner codereturn/account/departmentAccountOwnercode
Department reference 1return/account/departmentReference1
Cfda numberreturn/account/cfdaNumber
Project name

Plant funds parent code

Plant funds parent code description

Account expense guideline text

Account income guideline text

Account purpose text

Sample Request XML

Sample Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v5="http://kfs.kuali.org/core/v5_0">
   <soapenv:Header/>
   <soapenv:Body>
      <v5:getAccount>
         <!--Optional:-->
         <arg0>
            <accountNumber>7744640</accountNumber>
         </arg0>
      </v5:getAccount>
   </soapenv:Body>
</soapenv:Envelope>

Sample Response XML (Good)

Sample Response XML (Good)
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <ns2:getAccountResponse xmlns:ns2="http://kfs.kuali.org/core/v5_0">
         <return>
            <id>21181adc-d953-4e0a-8ef3-3eb3ca7f3176</id>
            <accountName>902118</accountName>
            <accountNumber>7744640</accountNumber>
            <chartOfAccountsCode>UC</chartOfAccountsCode>
            <status>OPEN</status>
            <fiscalOfficerIdentifier>kar05009</fiscalOfficerIdentifier>
            <accountTypeCode>UI</accountTypeCode>
            <bankCode>17</bankCode>
            <consolidationChartOfAccountsCode/>
            <consolidationAccountNumber/>
            <reportsToAccountNumber/>
            <reportsToChartOfAccountsCode/>
            <FundSIDCode>3952010</FundSIDCode>
            <fundSIDDescription>Go Bond Uconn2000/21st Century</fundSIDDescription>
            <accountManagerSystemIdentifier>lac12009</accountManagerSystemIdentifier>
            <accountsSupervisorySystemsIdentifier>hls00005</accountsSupervisorySystemsIdentifier>
            <organizationCode>1832</organizationCode>
            <subFundGroupCode>PLBND</subFundGroupCode>
            <departmentAccountOwnercode>NGC</departmentAccountOwnercode>
            <departmentReference1>ACTIVE</departmentReference1>
            <cfdaNumber/>
            <projectName>East Central Campus Utility Upgrade</projectName>
            <plantFundsParentCode>1173</plantFundsParentCode>
            <plantFundsParentCodeDescription>Def Mtn/Code & ADA Cmp/Inf Imp & Reno Lump Sum/UA&S Fac</plantFundsParentCodeDescription>
            <accountExpenseGuidelineText>Utility upgrade. Will capitalize. A   Pavone 9/16/16.</accountExpenseGuidelineText>
            <accountIncomeGuidelineText>Conform to University/Sponsor policies.PER KS/SJ EMAIL, SH/N BE CHARGED PAYROLL - REMOVED PAYROLL INDICATOR 3/9/18.</accountIncomeGuidelineText>
            <accountPurposeText>Project will re-route, replace, upgrade or add utilities in    order to facilitate construction of South Campus Commons project planned for construction in 2018. Also consider & replace aged infrastructure in    general area of South Campus Commons & consider future projects will impact utility distribution.</accountPurposeText>
         </return>
      </ns2:getAccountResponse>
   </soap:Body>
</soap:Envelope>

Sample Response XML (Bad)

Sample Response (Bad)
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body>
      <soap:Fault>
         <faultcode>soap:Server</faultcode>
         <faultstring>Account not found.</faultstring>
         <detail>
            <ns2:AccountInquiryFault xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:ns2="http://kfs.kuali.org/core/v5_0"/>
         </detail>
      </soap:Fault>
   </soap:Body>
</soap:Envelope>

Code Examples

  • Java

    JUnit
    package com.example.coa.service;
    
    import java.time.LocalDate;
    import java.util.ArrayList;
    import java.util.List;
    
    import javax.xml.bind.JAXBElement;
    
    import org.junit.Test;
    import org.kuali.kfs.core.v5_0.GetAccountsResponse;
    import org.springframework.oxm.jaxb.Jaxb2Marshaller;
    
    import junit.framework.TestCase;
    
    public class AccountInquiryServiceTest extends TestCase {
    
        @Test
        public void testGetAccounts() throws Exception {
    
            List<String> subFunds = new ArrayList<String>();
            subFunds.add("PLEQP");
            subFunds.add("PLRES");
            subFunds.add("PLBHC");
            subFunds.add("PLRHC");
            subFunds.add("OPOTF");
            subFunds.add("PLBND");
            subFunds.add("PLREV");
            subFunds.add("PLUNR");
    
            List<String> organizationcodes = new ArrayList<String>();
            organizationcodes.add("1832");
            organizationcodes.add("1731");
            organizationcodes.add("1863");
            
            LocalDate fromDate = LocalDate.parse("2016-08-26");
            LocalDate toDate = LocalDate.parse("2016-09-15");
                    
            ChartOfAccountsInquiryServiceClient client = new ChartOfAccountsInquiryServiceClient();
            
            Jaxb2Marshaller marshaller = new Jaxb2Marshaller();
            marshaller.setContextPath("org.kuali.kfs.core.v5_0");
            client.setMarshaller(marshaller);
            client.setUnmarshaller(marshaller);
              
            JAXBElement<GetAccountsResponse> response = client.getAccounts(subFunds, organizationcodes, fromDate, toDate);
    
            assertNotNull(response);
        }
    
    }
    Client
    package com.example.coa.service;
    
    import java.time.LocalDate;
    import java.util.List;
    
    import javax.xml.bind.JAXBElement;
    import javax.xml.datatype.DatatypeFactory;
    
    import org.kuali.kfs.core.v5_0.AllAccountRequest;
    import org.kuali.kfs.core.v5_0.GetAccounts;
    import org.kuali.kfs.core.v5_0.GetAccountsResponse;
    import org.kuali.kfs.core.v5_0.ObjectFactory;
    import org.springframework.ws.client.core.support.WebServiceGatewaySupport;
    
    public class ChartOfAccountsInquiryServiceClient extends WebServiceGatewaySupport {
    
        public JAXBElement<GetAccountsResponse> getAccounts(List<String> subFunds, List<String> organizationcodes, LocalDate fromDate, LocalDate toDate) throws Exception {
        	
        	ObjectFactory factory = new ObjectFactory();
        	DatatypeFactory datatypeFactory = DatatypeFactory.newInstance();
    
            String uri = "https://kualinp.uconn.edu/kfs-dev/remoting/chartOfAccountsInquiry";
            GetAccounts request = new GetAccounts();
            AllAccountRequest allAccountRequest = new AllAccountRequest();
            allAccountRequest.getSubFund().addAll(subFunds);
            allAccountRequest.getOrganizationCode().addAll(organizationcodes);
            allAccountRequest.setFromDate(factory.createAllAccountRequestFromDate(datatypeFactory.newXMLGregorianCalendar(fromDate.toString())));
            allAccountRequest.setToDate(factory.createAllAccountRequestToDate(datatypeFactory.newXMLGregorianCalendar(toDate.toString())));
            request.setArg0(allAccountRequest);
            
            return (JAXBElement<GetAccountsResponse>) getWebServiceTemplate().marshalSendAndReceive(uri, request);
        }
    
    }
  • Ruby 

    Client
    require 'savon'
    
    client = Savon.client(
      :wsdl => "https://kualinp.uconn.edu/kfs-uat/remoting/chartOfAccountsInquiry?wsdl",
      :ssl_verify_mode => :none,
      :namespace => "http://kfs.kuali.org/core/v5_0"
    )
    
    puts client.operations
    
    response = client.call(:get_accounts, soap_action: false,
    message: {
      arg0: {
        accountNumber:7744640
      }
    })
    
    puts response.to_xml




  • No labels