如何通过SuiteTalk SOAP API覆盖NetSuite供应商贷项计算税额?
关于通过SOAP API覆盖NetSuite供应商贷项自动计算税额的问题
背景
我们的应用使用NetSuite的旧版税务功能,可在费用行指定Tax Codes,由NetSuite自动计算税额。例如,对于拥有澳大利亚税务关联的子公司,当为金额100$的行指定10%的税码时,NetSuite计算出的税额为10$。NetSuite用户界面允许手动覆盖该金额,比如实际单据税额为9.99$时,用户可在UI中修改。我们尝试通过SOAP API实现类似覆盖操作,既然UI可行,认为API也应支持。
我曾成功为供应商账单实现类似操作:先创建供应商账单,再通过指定taxTotal字段更新交易。
但对供应商贷项执行类似操作时未成功。供应商贷项的schema中没有taxTotal字段,使用唯一类似的userTaxTotal字段也无效。
想知道是否可以通过SOAP API实现供应商贷项的税额覆盖?
创建供应商贷项的XML请求
NetSuite会据此创建总额为110$的供应商贷项(其中10$是系统根据指定税码自动计算的税额):
<SOAP-ENV:Header> <ns4:tokenPassport xsi:type="ns3:TokenPassport"> <!--authentication properties--> </ns4:tokenPassport> </SOAP-ENV:Header> <SOAP-ENV:Body> <ns2:upsert> <ns2:record xsi:type="ns1:VendorCredit" externalId="5A8B18E92971B6F31832B0AED866EF95"> <ns1:account internalId="176"/> <ns1:tranId>CRED_JAN26_2023_T1</ns1:tranId> <ns1:entity internalId="1552"/> <ns1:currency internalId="1"/> <ns1:tranDate>2023-01-01T00:00:00</ns1:tranDate> <ns1:postingPeriod internalId="382"/> <ns1:memo/> <ns1:subsidiary internalId="7"/> <ns1:expenseList> <ns1:expense> <ns1:account internalId="38"/> <ns1:amount>100</ns1:amount> <!-- tax code corresponding to 10 percent --> <ns1:taxCode internalId="1044"/> <ns1:memo/> <ns1:department internalId="11"/> <ns1:class internalId="13"/> <ns1:location internalId="7"/> </ns1:expense> </ns1:expenseList> </ns2:record> </ns2:upsert> </SOAP-ENV:Body>
更新税额总额的请求
该请求未报错,但并未修改税额总额:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:purchases_2022_1.transactions.webservices.netsuite.com" xmlns:ns2="urn:messages_2022_1.platform.webservices.netsuite.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns3="urn:core_2022_1.platform.webservices.netsuite.com" xmlns:ns4="ns"> <SOAP-ENV:Header> <ns4:tokenPassport xsi:type="ns3:TokenPassport"> <!--authentication properties--> </ns4:tokenPassport> </SOAP-ENV:Header> <SOAP-ENV:Body> <ns2:update> <ns2:record xsi:type="ns1:VendorCredit" externalId="5A8B18E92971B6F31832B0AED866EF95"> <ns1:userTaxTotal>9.99</ns1:userTaxTotal> </ns2:record> </ns2:update> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
内容的提问来源于stack exchange,提问作者ADrs
相关产品推荐
相关产品推荐

