作者都是各自领域经过审查的专家,并撰写他们有经验的主题. 我们所有的内容都经过同行评审,并由同一领域的Toptal专家验证.
米克罗斯卢卡奇
验证专家 在金融领域
11 的经验

Miklos在财务流程、金融科技和Python编程方面经验丰富. 除了是Toptal的财务专家和软件开发人员, 他是结构融资咨询公司Pylink Ltd的董事.

阅读更多

以前的角色

首席执行官

以前在

摩根士丹利(Morgan Stanley)DBRS晨星
分享

提到未来的办公室,人们可能会联想到机器接管重复性劳动密集型任务的画面. 但未来就在眼前. 基于云的应用程序等技术的发展, 以及帮助企业实现最高运营效率的软件平台和企业资源规划系统, 自动化办公室已经成为现实了吗.

据咨询公司麦肯锡(麦肯锡)称,企业财务部门已经 减少 在过去十年中,通过在采购等领域实施自动化解决方案,成本降低了近30%, 会计, 和工资. 这些创新改变了金融职能,消除了许多低效现象.

作为一名金融分析师和软件开发人员, 当我创建并建立自己的咨询公司时,我通过设置机器人来完成财务任务,充分利用了自动化, Pylink. 但许多金融机构仍然没有这样做, 因此,他们继续花费大量的时间和资源来执行基本任务.

我不是唯一注意到这个问题的人. 普华永道咨询公司 发现 财务办公室需要通过自动化和流程改进来提高生产力和洞察力, 哪些方法可以将许多关键功能的成本降低两位数百分比. 普华永道的研究表明,自动化可以将人们花在管理报告上的时间减少40%, 27%的时间花在税务会计上, 23%的时间用于信用管理, 总会计, 和计费.

德勤(Deloitte)也得出了类似的结论:引用阿耶胡(Ayehu)发表的研究报告 报告 这种智能自动化将业务流程成本降低了25%到40%. 高德纳的研究 揭示了 一家拥有40名全职会计人员的公司可以节省超过870美元,通过自动化任务和消除修复人为错误的额外工作,每年将花费5,000美元.

在本文中, 我想分享一些我为我的公司和客户使用的简单的自动化策略,这些策略对任何规模的组织都很有用.

现成的解决方案 QuickBooks 对小型组织有帮助吗. 但是,为了最大限度地提高效率,我建议使用像 Python 自定义构建您的解决方案,包括商业机器人. Python 非常直观,并提供了一个大的标准工具库, 此外,还可以访问财务专用图书馆, 使它 比Excel更通用.

在我 以前的 Toptal的文章, 我展示了使用Python为企业开发定制的现金流模型是多么容易. 如果你对学习这门语言感兴趣,我鼓励你去读这本书. 在本文中, 然而, 我将概述一些实际应用程序——从时间跟踪到工资单再到电子邮件——如果您对自己钻研代码不感兴趣,开发人员可以快速轻松地为您实现这些应用程序.

我的公司如何利用机器人进行金融:简单、高效的支付

让我通过展示我公司的一个例子来说明自定义自动化是多么有用, 哪一个可以作为案例研究. 尽管是一家小公司, 我和我在Pylink的团队在支付方面面临着相当复杂的挑战, 包括以下内容:

  • 我们以小时合同为基础,在几个项目上工作,必须跟踪每个任务的时间.
  • 我们的客户来自不同的国家,因此以多种货币支付我们.
  • 虽然我们在一些项目上使用内部软件工程团队, 我们将其他部分转包给不同国家的开发商.
  • 从税收优化的角度, 我们有三家公司:一家在英国, 一个总部, 一个是欧盟的个人自由职业者.
  • 我们每个公司都有不同货币的独立银行账户, 包括美元, 欧元, 英镑, 和霍夫.
  • 我们有固定成本,比如税收, 全职员工的工资和福利, 办公场地及用品, 还有软件——以不同的货币计价.

开发一个能够应对这些挑战的支付系统, 我使用(并推荐)以下技术来创建运行在Amazon Web Services (AWS)云基础设施中的Python bot.

  • 代码库: Python (可免费下载)
  • 运行代码的服务: AWSλ
    • Lambda可以方便地根据需要扩展代码执行.
    • 该服务只有在被触发时才会生效. 将Python代码放入Lambda函数并设置一个触发事件—从Alexa语音命令到计划的日历时间.
    • 因为Lambda是无服务器的, 这是一种经济有效的解决方案,只需要我们为实际使用的计算时间付费.
  • 银行操作工具: 明智的API
    • API(应用程序编程接口)是一种软件中介,它允许两个应用程序相互通信. 明智的API使我和我的团队能够轻松获取报表信息和历史交易数据, 以及自动付款. 它还允许我们跟踪货币汇率并进行自动转换.
  • 时间追踪: Everhour + Everhour API
    • 该软件提供准确的时间跟踪和灵活的计费和预算能力. 另外, 它与Asana等项目管理工具无缝集成, Trello, Jira, 和GitHub.
  • 电子邮件发送者: 亚马逊简易电子邮件服务
    • 亚马逊SES, 我们有一个灵活和安全的方式从任何应用程序内发送HTML电子邮件, 还有数据分析来监控交货和反弹.
    • SES的免费使用层允许您发送多达62个,如果您从托管的应用程序激活该服务,则每月免费发送000条消息 Amazon EC2 或通过AWSλ.
  • 调度程序: AWS EventBridge
    • 使用这个工具, 我们可以很容易地触发我们的Python机器人每月或每半月执行预定的财务功能.
    • 因为EventBridge, 像λ, 不需要服务器操作, 这大大减少了我们的开销.
  • 松弛的通知: 松弛的API
    • 此API发送实时警报,通知我们承包商的工作时间,并告诉我们客户是否已付款.
  • 与机器人的松懈沟通: 松弛的API + 亚马逊API网关
    • 松弛的API允许Python机器人向我们发送支付请求以获得批准.
    • 只要在我们这边点击一下, 我们的机器人能够使用API网关自动完成每次付款.
    • API Gateway提供了一个免费的层,可以让您在一年的时间里每月访问超过一百万个API调用和一百万条消息.

下面是我如何使用这些工具来自动化一个多任务用例:支付员工, 承包商, 和我自己. 在深入研究最常见的自动化实践之前,我将向您展示整个过程.

一个带有图标的流程图显示了米克洛斯支付员工工资的九步流程, 开发人员, 和他自己. 下文提供了全部细节.

现在让我们来看看这些步骤:

  1. 每个月的第一天, 我们使用AWS EventBridge来触发存储在AWSλ中的Python bot.
  2. 使用Everhour API, 机器人为所有员工提取考勤表, 承包商(开发人员, 在Pylink的案例中), 和我.
  3. 下一个, 机器人会汇总每个项目的工作时间,并创建时间表和发票(都是pdf)。. 然后将这些文件通过电子邮件发送给客户.
  4. 此外,机器人还会通过Slack通知Pylink的团队承包商的工作时间. 它还会通过显示“批准”和“拒绝”按钮来征求用户的付款许可.
  5. 如果Pylink的管理团队批准了这个请求, 机器人通过AWS API网关向我们自己的API(一个始终可用的公共URL)发送消息, 在Lambda函数中执行另一个代码来进行传输.
  6. 第二个Lambda函数使用明智的API进行支付.
  7. 在每个月的14号,我们再次使用EventBridge来安排另一个后续函数的运行. 但这一次,EventBridge触发了另一个Lambda函数中保存的不同代码.
  8. 这段代码使用明智的API跟踪过去两周的交易,并检查客户端是否已经付款.
  9. 是否有客户的付款, 机器人通过松弛的API向Pylink团队发送Slack确认信息. 如果没有付款,机器人将使用Amazon SES服务向客户端发送电子邮件.

以前, 所有这些任务都是手动完成的, 浪费了本来可以花在其他地方的宝贵时间和精力. 最重要的是,我们能够在不投入大量时间和金钱的情况下建立这个过程.

你可以用自动化做什么

现在让我们看看自动化的一些最实际的应用, 使用我已经讨论过的工具. 供参考, 我将包括一些编码示例作为内部资源, 合同, 或者自由开发者——或者为你自己, 你应该选择学习Python来帮助你的公司或客户工作吗.

跟踪工作时间和项目

每月月底, bot(使用Everhour)运行“close_the_month”函数,该函数收集在不同任务上花费的所有时间:

  • 我花在咨询项目上的时间(收入)
  • 开发人员在客户项目上的工作时间(收入和成本)
  • 开发人员在我们自己的软件开发上的工作时间(成本)

下面是一个简单的函数,它返回一个Pandas DataFrame i.e., 包含行和列的表, 包括给定用户在一段时间内的所有小时和项目. 请注意, 如前所述, 本文和所有后续的代码摘录只是整个代码库的亮点, 不是一步一步构建我们的bot的教程.

截图显示了为执行"close_the_month"函数而编写的Python代码示例. 它逐行显示作者使用的语言和语法.

创建PDF时间表和发票

每个工人的项目时间自动跟踪, 下一个任务是创建时间表和发票. 有许多Python包使您能够创建PDF文件. 我们使用PyFPDF,这是一个紧凑的文档生成库 简单 以及灵活地绘制形状和添加图像和文本. 从下面的例子中可以看到,它产生了一个干净和专业的发票:

显示了Pylink的发票. 它读取, 收款人:Watchclever Ltd,“客户端, 并给出发票日期, 到期日期, 期发票, 付款方式(银行转账). 它还显示了四位顾问每人的工作时间,总共45个小时.7个小时.

虽然有更高级的方法来创建报告, PDF是一个不错的选择,因为它是所有行业使用的通用格式,而且易于生成. 它还允许发送文件给任何人,同时确保所有字体, 图片, 表, 格式会被转移. 另外, 它的工作独立于您的计算机硬件和操作系统, 并且可以离线使用.

发送邮件

亚马逊简易电子邮件服务是一个经济高效且可扩展的工具,用于创建和部署格式良好的HTML电子邮件. 此外, SES的数据分析跟踪并共享有关反馈循环结果的信息,以便在任何收件人将您的邮件报告为垃圾邮件时通知您, 要么是误发,要么是因为邮件发错了地址. 该分析还从参与度方面衡量了每次沟通的有效性, 包括打开率和点击率. 这个功能对营销邮件特别有用.

下面是一个Python代码示例,用于生成带有附加发票的电子邮件并将其发送给客户端:

截图显示了作者用于创建电子邮件的Python语言和语法的编码摘录, 附上发票, 然后寄给他的客户付款.

这是它产生的电子邮件:

代码创建的电子邮件的截图. 附件是PDF格式的发票. 消息如下:

银行业务自动化

我们选择Wise作为私人和商业银行账户,因为我们有几种货币的收入和成本, 这家金融科技公司有优惠的交易费用, 直观的用户界面, 以及带有详细文档的灵活API.

我们使用这个API来完成以下任务:

  • 收集每个公司和货币的对账单信息, 这样我就能很快看到总流动性和实际流动性.
  • 提取历史事务信息, 这样我就可以了解不同成本项目的趋势,以及客户是否已经支付了上个月的发票. 如果没有,API会发送一个提醒邮件.
  • 自动转账.

下面是我们为完成第一个任务(收集语句信息)而编写的代码:

一个屏幕截图显示了作者用来获取Pylink各公司余额信息的Python代码示例.

对于固定费用(工资、税金、 办公室费用等.), you don’t need to write code to make automatic transfers; Wise has a scheduled payment feature. 然而, 如果数量不是固定的,而是基于一个算法可以计算的公式, 明智的API很有用. 就我而言, 业务顾问的薪水就是一个明显的例子,因为它是月收入的函数. 通过检查工时记录, 机器人确切地知道我们有多少收入,因此需要支付给顾问多少钱.

通过与机器人的双向对话来降低风险

了解机器人的活动至关重要, 因为在测试期间可能存在未被发现的编码错误. 我们在Slack上获得实时通知,因此我们可以及时修复任何损坏的代码. 这里有几个通知示例,让我们知道机器人正在正常运行:

这个小, 一个简单的图像捕获了一条来自Pylink机器人的Slack消息, “付款很成功!"

下一张图片是另一个来自Pylink机器人的Slack通知. 课本上说, “关闭前一个月2022-01-01 - 2022-01-31”,并显示为Watchclever Ltd完成的工作的总成本. 在此期间,然后按每名顾问的小时数分列这一费用.

我们还允许机器人在每次银行转账前向Pylink团队发送确认问题. 这有助于我们避免由于人为错误而导致的错误. 想象一下,一个开发人员打错了字,输入了825个小时,而不是8个小时.一张票25小时. Slack的审批步骤确保我们转账的金额不会超过欠款的100倍. 该过程保留了人工验证的元素,但提供了无缝的体验.

Pylink机器人的“付款确认”Slack通知的截图. 上面写着:“尤里工作了43年.5 hours last month; therefore, [blank] USD is due. 我可以付钱给他吗??(具体金额未注明.) "Approve" and "deny" options are presented.

还有很多其他的 功能 你也可以用松弛的API实现.

明天的办公室

业务自动化可以帮助组织蓬勃发展. 我所讨论的工具可以改变需要更高效率和控制的公司, 特别是在应付账款等事务性职能方面, 应收账款, 以及其他核心会计领域.

但这并不是故事的结尾. 根据 麦肯锡在美国,企业领导人面临的挑战是为新的效率撒下更大的网. 该公司支持重新构想整个金融运作, 在数据分析和整合等领域领先,超越事务性任务, 简化, 控制整个公司的信息. 我完全同意. 我建议您探索编码解决方案,帮助您的组织拥有自己的答案,并推进其以结果为导向的文化. 与此同时, 采用我在这里描述的策略可以帮助你的公司在今天变得更有效率,同时让你体验到明天的可能性.

了解基本知识

  • 金融领域的机器人是什么?

    机器人是一种计算机软件程序,用于自动执行某些不需要人工操作的财务功能. 它们是通过使用Python等工具开发的代码创建的, 它们根据编码命令执行任务.

  • 什么样的任务可以用机器人自动化?

    自动化可以用于财务领域,如采购, 会计, 工资, 以及其他事务性业务服务. 银行业务, 时间跟踪, 发票的一代, 电子邮件发送, 和调度都可以通过创建和运行Python bot来无缝地完成.

  • 机器人对商业有好处吗?

    机器人可以帮助员工更有效地完成日常工作,并将他们解放出来,完成更复杂的任务,为企业创造价值. 机器人可以将完成功能所需的时间减少23% - 40%, 在某些情况下甚至更多, 每年可能为组织节省数十万美元.

聘请Toptal这方面的专家.
现在雇佣
米克罗斯卢卡奇

米克罗斯卢卡奇

验证专家 在金融领域
11 的经验

英国伦敦

2020年10月6日成为会员

作者简介

Miklos在财务流程、金融科技和Python编程方面经验丰富. 除了是Toptal的财务专家和软件开发人员, 他是结构融资咨询公司Pylink Ltd的董事.

阅读更多
作者都是各自领域经过审查的专家,并撰写他们有经验的主题. 我们所有的内容都经过同行评审,并由同一领域的Toptal专家验证.

以前的角色

首席执行官

以前在

摩根士丹利(Morgan Stanley)DBRS晨星

世界级的文章,每周发一次.

订阅意味着同意我们的 隐私政策

世界级的文章,每周发一次.

订阅意味着同意我们的 隐私政策

金融专家

加入总冠军® 社区.