Consolidated Exchange Rate

If you use NetSuite OneWorld and your subsidiaries have different base currencies, you can maintain a table of consolidated exchange rates. This table is used to ensure that for consolidation purposes, currency amounts properly roll up from child to parent subsidiaries. Each consolidated exchange rate translates between the base currency of a subsidiary and the base currency of its parent or grandparent subsidiary, for a specified accounting period. Consolidated exchange rates include three different rate types per period and subsidiary pair: Current, Average, and Historical.

The Consolidated Exchange Rates table is available at Lists > Accounting > Consolidated Exchange Rates. Consolidated exchange rates for each period are based on the currency exchange rates effective at the end of the period, and on rates used for transactions posted during the period. You should update consolidated exchange rates at the end of each accounting period, as part of period close tasks.

For more information about the consolidated exchange rate record and working with it in the user interface, see Consolidated Exchange Rates.

Consolidated exchange rates cannot be created or deleted in SOAP web services, they may only be viewed and edited. For more information, see Consolidated Exchange Rate Supported Operations for the consolidated exchange rate record.

The consolidated exchange rate record is defined in the listAcct (accounting) XSD, where it is called ConsolidatedExchangeRate.

The following topics include more details on using SOAP web services to work with consolidated exchange rates:

Consolidated Exchange Rate Supported Operations

The following operations can be used with the consolidated exchange rate record.

get |getList | getSavedSearch | search | searchMoreWithId | update | updateList |

Note:

You can also use the asynchronous equivalents of SOAP web services list operations. For information about asynchronous operations, see SOAP Web Services Asynchronous Operations. For more information about request processing, see Synchronous Versus Asynchronous Request Processing.

Note:

Direct rates, between child and parent subsidiaries are editable for periods that have not been closed (that have a value of No in the Closed column). Indirect rates, also known as implied rates, between subsidiaries more than one hierarchical level removed from each other are never editable. Additionally, you cannot edit rates for elimination subsidiaries.

Consolidated Exchange Rate Field Definitions

When editing a consolidated exchange rate record, you are required to define the following body fields:

Field Name

Label in UI

Description

averageExchangeRate

Average Exchange Rate

The average exchange rate. This rate is calculated from a weighted average of the exchange rates for transactions applied during the period to accounts with a general rate type of Average. This rate is used to translate accounts in the income statement and to build retained earnings.

This is a double field.

currentExchangeRate

Current Exchange Rate

The current exchange rate. Also referred to as ending rate. This rate is based on the currency exchange rate that is effective at the end of the reported upon period. This rate is used for most asset and liability accounts in the balance sheet.

This is a double field.

historicalExchangeRate

Historical Exchange Rate

The historical exchange rate. This rate is calculated from a weighted average of the exchange rates for transactions applied during the period to accounts with a general rate type of Historical. This rate is used for equity accounts, or owner's investments, in the balance sheet.

This is a double field.

The SOAP Schema Browser includes definitions for all body fields, sublist fields, search filters, and search joins available to this record. For details, see the SOAP Schema Browser’s consolidated exchange rate reference page.

Note:

For information on using the SOAP Schema Browser, see SOAP Schema Browser.

Consolidated Exchange Rate Usage Notes

Your user role must have the Currency permission with the Full permission level to work with consolidated exchange rates in the user interface and in SOAP web services.

Consolidated Exchange Rate Code Samples

For examples of how to work with consolidated exchange rate records using SOAP web services, refer to the following sections:

Getting a Consolidated Exchange Rate Record

This example shows how to access a consolidated exchange rate record using the get operation.

Java

          public void testGETConsolidatedExchangeRate() throws Exception 
{ 
c.useRequestLevelCredentials()  
c.getRecord("11445", RecordType.consolidatedExchangeRate)  
} 

        

SOAP Request

                 <soapenv:Body>
        <get xmlns="urn:messages_2017_1.platform.webservices.netsuite.com">
            <baseRef xsi:type="ns7:RecordRef" type="consolidatedExchangeRate" internalId="11445" xmlns:ns7="urn:core_2017_1.platform.webservices.netsuite.com"/>
        </get>
    </soapenv:Body> 

        

SOAP Response

                  <soapenv:Body>
        <getResponse xmlns="urn:messages_2017_1.platform.webservices.netsuite.com">
            <readResponse>
                <platformCore:status isSuccess="true" xmlns:platformCore="urn:core_2017_1.platform.webservices.netsuite.com"/>
                <record xsi:type="listAcct:ConsolidatedExchangeRate" internalId="11445" xmlns:listAcct="urn:accounting_2017_1.lists.webservices.netsuite.com">
                    <listAcct:postingPeriod>420</listAcct:postingPeriod>
                    <listAcct:fromSubsidiary>5</listAcct:fromSubsidiary>
                    <listAcct:fromCurrency>4</listAcct:fromCurrency>
                    <listAcct:toSubsidiary>3</listAcct:toSubsidiary>
                    <listAcct:toCurrency>1</listAcct:toCurrency>
                    <listAcct:averageRate>1.06882501</listAcct:averageRate>
                    <listAcct:currentRate>1.06882501</listAcct:currentRate>
                    <listAcct:historicalRate>1.06882501</listAcct:historicalRate>
                    <listAcct:accountingBook>1</listAcct:accountingBook>
                    <listAcct:isPeriodClosed>false</listAcct:isPeriodClosed>
                    <listAcct:isDerived>false</listAcct:isDerived>
                    <listAcct:isEliminationSubsidiary>false</listAcct:isEliminationSubsidiary>
                </record>
            </readResponse>
        </getResponse>
    </soapenv:Body> 

        

Updating a Consolidated Exchange Rate Record

This example shows how to update a consolidated exchange rate record using the update operation.

Java

          public void testUPDATEConsolidatedExchangeRate () throws Exception 
{  
      c.useRequestLevelCredentials()  
      
      ConsolidatedExchangeRate consolidatedExchangeRate = new ConsolidatedExchangeRate() 
      consolidatedExchangeRate.setInternalId("11445")  
      consolidatedExchangeRate.setAverageRate(1.06882501) 
      consolidatedExchangeRate.setCurrentRate(1.06882501) 
      consolidatedExchangeRate.setHistoricalRate(1.06882501)  

c.updateRecord(consolidatedExchangeRate) 
} 

        

SOAP Request

          <update xmlns="urn:messages_2017_1.platform.webservices.netsuite.com">
        <record internalId="11445" xsi:type="ns7:ConsolidatedExchangeRate" xmlns:ns7="urn:accounting_2017_1.lists.webservices.netsuite.com">
                  <ns7:averageRate xsi:type="xsd:double">10.0</ns7:averageRate>  
             <ns7:currentRate xsi:type="xsd:double">10.0</ns7:currentRate>   
            <ns7:historicalRate xsi:type="xsd:double">10.0</ns7:historicalRate>  
      </record>
</update> 

        

SOAP Response

          <updateResponse xmlns="urn:messages_2017_1.platform.webservices.netsuite.com">
      <writeResponse>
                 <platformCore:status isSuccess="true" xmlns:platformCore="urn:core_2017_1.platform.webservices.netsuite.com"/>
               <baseRef internalId="11445" type="consolidatedExchangeRate" xsi:type="platformCore:RecordRef" xmlns:platformCore="urn:core_2017_1.platform.webservices.netsuite.com"/>
      </writeResponse>
</updateResponse> 

        

Related Topics

General Notices