财务会计付款多货币问题

会计凭证业务中,涉及付款的多种货币支付问题。这里说的多货币是指“三方”货币:会计主体的本位币,如港币;交易货币,即如与供应商签订的交易结算货币,如英镑;还有实际业务的实际支付货币,如美元

在全球化交易体系中,肯定会应用到“大众化”账号去支付其他的币种的问题,比如用美元去支付英镑或其他小币种的情况。

这时会出现各种复杂的情况,比如说其中之一的手续费。

一、具体情景

在ERP系统体系中之前需要说明下的大概的内容:(假如本位币是港币。)

1.ERP交易中的货币也是港币,指的是与供应商签订的货币与交易单据流都是港币结算。
这种不存在其他问题,不过与大陆不同,也许香港银行(或第三方支付体系)或存在银行手续费的问题。

注:这种手续费也大陆银行的手续费有着根本的不同。大陆的是手续费和实际付款给供应商的金额是分开的;但是国外或第三方专业机构,可能存在不分开的情况,即同一个“回执”。

如:实际支付供应商100.00港币,手续费是0.5,即同一个回执会体现:100.05的总金额。

2.ERP交易中的货币是非港币,指的是与该供应商签订的货币比如是英镑,支付也是英镑。
这种交易一般也不存在特别麻烦的问题,最多只是汇率和上述手续费的问题。

3.如第二种情况,支付是非英镑时,就会相对麻烦些。比如用美元去支付交易货币英镑。
这种情况相对复杂些。除了汇率差,还有三方交易货币的麻烦。

但是原则上:

  • 生成的分录一定是体现英镑与港币之间的关系,比如英镑为外币,港币为本位币;美元也“只是”与英镑之间的关系。
  • 也是需要体现银行存款英镑与美元账户口的实际情况,也要体现交易单据的付款单据与生成的分录之间的关系。

二、解决方式

一般的ERP对这个问题比较头疼,想了许多法子,最终想到了这个相对简单解决方式。

为了解决这种问题,汇率差暂不讨论,逻辑上没有什么特别。本例子是用SAP B1作为蓝本解决手续费的例子。

除了设置外,需要自定义开发。具体如下:

1.启用SAP B1货币设置,允许弹性差额
在SAP的货币设置里,设置允许弹性的金额作为手续费

注:即超过实际单据支付金额部分自动转为手续费,允许弹性的额度。

2.设置弹性多余的金额要存放在那个科目
在SAP里指定对应的接收科目,以后生成的分录将添加这一个借贷方

注:我这里设置是要作为银行手续费。

3.增加“开发字段”,写代码去体现三方支付货币美元与交易货币英镑之间的关系

主要是利用公式计算第三方货币美元英镑的金额关系,并算出交易货币英镑的手续费。公式下面会给出来

4.利用算出来的交易货币英镑的手续费,自动与交易单据总金额相加,得出实际要支付的总金额=”回执“金额。

第3、4点体现如下图:

手动填写美元的手续费,根据与交易货币的公式转为交易”英镑“的金额

公式如下:

DECLARE @Rate1 DECIMAL(19,2)
DECLARE @Rate2 DECIMAL(19,2)

/*外币汇率*/
select @Rate1=isnull(Rate,2) from ORTT where CONVERT(NVARCHAR(10),RateDate,120)=CONVERT(NVARCHAR(10),@DocDate,120) and Currency=@U_bibie


/*币别-交易汇率*/
select @Rate2=isnull(Rate,2) from ORTT where CONVERT(NVARCHAR(10),RateDate,120)=CONVERT(NVARCHAR(10),@DocDate,120) and Currency=@DocCurr

select @U_shouxf1*@Rate1/@Rate2

解释:

1)这里的意思是,根据系统的汇率,分别把英镑与美元各自与港币之间的关系,算出51.6美元=37.96英镑的手续费。

2)银行转账付款金额=英镑手续费(37.96)+单据实际交易(英镑)的总金额。

最终生成的分录凭证是这样:

手续费科目金额=交易手续费金额,借方金额=总支付金额。最终是平的

Yeah!这个分录是对的!

三、最后:

调整银行报表逻辑,加多这个手续费,即美元账户多这个手续费。体现是由于支付这笔分录而产生的。

End.

发表评论

Please enter your comment!
Please enter your name here