الروبوتات للتمويل: كيفية زيادة كفاءة المكتب الخلفي من خلال الأتمتة

نشرت: 2022-07-22

قد يؤدي ذكر مكتب المستقبل إلى استحضار صور لآلات تتولى مهام متكررة وكثيفة العمالة. لكن هذا المستقبل هو الآن. إن تطوير تقنيات مثل التطبيقات المستندة إلى السحابة ، فضلاً عن منصات البرامج وأنظمة تخطيط موارد المؤسسات التي تساعد الشركات على تحقيق أعلى كفاءة تشغيلية ، قد جعل المكاتب الآلية حقيقة واقعة.

وفقًا لشركة الاستشارات McKinsey ، خفضت إدارات تمويل الشركات التكاليف بنسبة 30٪ تقريبًا على مدار العقد الماضي من خلال تنفيذ حلول الأتمتة في مجالات مثل المشتريات والمحاسبة وكشوف المرتبات. لقد غيرت هذه الابتكارات وظائف التمويل وألغت العديد من أوجه القصور.

بصفتي محللًا ماليًا ومطور برامج ، فقد استفدت بشكل كامل من الأتمتة من خلال إعداد روبوتات للمهام المالية عندما أنشأت وأنشأت شركة الاستشارات الخاصة بي ، Pylink. لكن العديد من المكاتب المالية لم تفعل ذلك بعد ، لذلك تستمر في إنفاق قدر هائل من الوقت والموارد في أداء المهام الأساسية.

أنا لست الوحيد الذي لاحظ المشكلة. وجدت شركة الاستشارات PwC أن المكاتب المالية بحاجة إلى زيادة إنتاجيتها ورؤيتها من خلال الأتمتة وتحسين العمليات ، والتي يمكن أن تقلل التكاليف بنسب مضاعفة للعديد من الوظائف الرئيسية. تشير أبحاث برايس ووترهاوس كوبرز إلى أن الأتمتة يمكن أن تقطع 40٪ من الوقت الذي يقضيه الأشخاص في إعداد التقارير الإدارية ، و 27٪ من الوقت الذي يقضيه في المحاسبة الضريبية ، و 23٪ من الساعات المخصصة لإدارة الائتمان والمحاسبة العامة والفواتير.

توصلت شركة Deloitte إلى استنتاجات قابلة للمقارنة: نقلاً عن بحث نشرته Ayehu ، أفادت أن الأتمتة الذكية تقلل تكاليف العمليات التجارية بنسبة 25 إلى 40٪. ويكشف بحث Gartner أن الشركة التي تضم 40 موظفًا محاسبيًا بدوام كامل يمكنها التخلص من أكثر من 870 ألف دولار في الإنفاق كل عام عن طريق أتمتة المهام والقضاء على العمل الإضافي لإصلاح الخطأ البشري.

في هذه المقالة ، أود مشاركة بعض استراتيجيات الأتمتة البسيطة التي استخدمتها لشركتي وعملائي - إصلاحات سهلة يمكن أن تكون مفيدة للمؤسسات من أي حجم.

يمكن أن تكون الحلول الجاهزة مثل QuickBooks مفيدة للمؤسسات الصغيرة. ومع ذلك ، لتحقيق أقصى قدر من الكفاءة ، أنصح باستخدام لغات البرمجة مثل Python لبناء الحلول الخاصة بك ، بما في ذلك الروبوتات للأعمال. تعد Python بديهية للغاية وتوفر مكتبة قياسية كبيرة من الأدوات ، بالإضافة إلى الوصول إلى مكتبات خاصة بالتمويل ، مما يجعلها أكثر تنوعًا من Excel.

في مقالتي السابقة لـ Toptal ، أوضحت مدى سهولة استخدام Python لتطوير نماذج تدفق نقدي مخصصة للشركات. أشجعك على قراءة ذلك إذا كنت مهتمًا بتعلم اللغة. ومع ذلك ، في هذه المقالة ، سأقدم لك نظرة عامة على التطبيقات العملية - بدءًا من تتبع الوقت إلى كشوف المرتبات إلى البريد الإلكتروني - والتي يمكن للمطور تنفيذها بسرعة وسهولة إذا لم تكن مهتمًا بالتعمق في الشفرة بنفسك.

كيف تستفيد شركتي من روبوتات التمويل: مدفوعات سهلة وفعالة

اسمحوا لي أن أوضح مدى فائدة الأتمتة المخصصة من خلال عرض مثال من شركتي لك ، والذي يمكن أن يكون بمثابة دراسة حالة. على الرغم من كوننا شركة صغيرة ، إلا أنني أواجه أنا وفريقي في Pylink تعقيدًا كبيرًا يمثل تحديات عندما يتعلق الأمر بالمدفوعات ، بما في ذلك ما يلي:

  • نحن نعمل على عدة مشاريع بناءً على عقود بالساعة وعلينا تتبع وقت كل مهمة من مهامنا.
  • عملاؤنا من دول مختلفة وبالتالي يدفعون لنا بعملات متعددة.
  • بينما نستخدم فريق هندسة برمجيات داخليًا في بعض المشاريع ، فإننا نتعاقد من الباطن مع مطورين من بلدان مختلفة.
  • من منظور التحسين الضريبي ، لدينا ثلاث شركات: واحدة مقرها المملكة المتحدة ، وواحدة في الاتحاد الأوروبي ، وواحدة تعمل لحسابهم الخاص في الاتحاد الأوروبي.
  • تمتلك كل شركة من شركاتنا حسابات بنكية منفصلة بعملات متعددة ، بما في ذلك الدولار الأمريكي واليورو والجنيه الإسترليني والفورنت المجري.
  • لدينا تكاليف منتظمة - مثل الضرائب والرواتب والمزايا للموظفين بدوام كامل ، والمكاتب واللوازم ، والبرامج - بعملات مختلفة.

لتطوير نظام دفع يفي بهذه التحديات ، أستخدم (وأوصي) التقنيات التالية لإنشاء روبوت Python يعمل في البنية التحتية السحابية لخدمات Amazon Web Services (AWS).

  • Codebase: Python (يمكن تنزيله مجانًا)
  • الخدمة التي يعمل عليها الرمز: AWS Lambda
    • تسهل Lambda توسيع نطاق تنفيذ التعليمات البرمجية حسب الحاجة.
    • تدخل هذه الخدمة حيز التنفيذ فقط عند تشغيلها. يمكنك وضع كود Python الخاص بك في وظيفة Lambda وإعداد حدث إطلاق - أي شيء بدءًا من أمر Alexa الصوتي إلى وقت محدد في التقويم.
    • نظرًا لأن Lambda بدون خادم ، فهو حل فعال من حيث التكلفة يتطلب منا أن ندفع فقط مقابل وقت الحوسبة الذي نستخدمه بالفعل.
  • أداة عمليات البنك: Wise API
    • واجهة برمجة التطبيقات (API) هي وسيط برمجي يسمح لتطبيقين بالتواصل مع بعضهما البعض. تمكّنني Wise API وفريقي من الحصول على معلومات كشوف الحسابات وبيانات المعاملات التاريخية بسهولة ، فضلاً عن إجراء المدفوعات تلقائيًا. كما يتيح لنا تتبع أسعار صرف العملات وإجراء تحويلات آلية.
  • تعقب الوقت: Everhour + Everhour API
    • يوفر هذا البرنامج تتبعًا دقيقًا للوقت وقدرات مرنة لإعداد الفواتير والميزانيات. بالإضافة إلى ذلك ، يتكامل بسلاسة مع أدوات إدارة المشاريع مثل Asana و Trello و Jira و GitHub.
  • مرسل البريد الإلكتروني: Amazon Simple Email Service
    • مع Amazon SES ، لدينا طريقة قابلة للتكيف وآمنة لإرسال رسائل بريد إلكتروني بتنسيق HTML من داخل أي تطبيق ، جنبًا إلى جنب مع تحليلات البيانات لمراقبة عمليات التسليم والارتداد.
    • تتيح لك طبقة الاستخدام المجاني لـ SES إرسال ما يصل إلى 62000 رسالة شهريًا بدون أي رسوم إذا قمت بتنشيط الخدمة من تطبيق مستضاف في Amazon EC2 أو من خلال AWS Lambda.
  • المجدول: AWS EventBridge
    • باستخدام هذه الأداة ، يمكننا بسهولة تشغيل برنامج Python bot الخاص بنا لأداء وظائف مالية مجدولة شهريًا أو نصف شهريًا.
    • نظرًا لأن EventBridge ، مثل Lambda ، لا يتطلب خادمًا للتشغيل ، فإنه يقلل بشكل كبير من النفقات العامة.
  • إشعار Slack: Slack API
    • ترسل واجهة برمجة التطبيقات هذه تنبيهات في الوقت الفعلي لإبلاغنا بساعات عمل المتعاقدين وإخبارنا ما إذا كان العملاء قد دفعوا لنا.
  • تواصل Slack مع الروبوت: Slack API + Amazon API Gateway
    • يسمح Slack API لروبوت Python بإرسال طلبات الدفع إلينا للموافقة عليها.
    • بنقرة واحدة على نهايتنا ، يستطيع الروبوت الخاص بنا استخدام API Gateway لإكمال كل دفعة تلقائيًا.
    • تقدم API Gateway طبقة مجانية تتيح لك الوصول إلى أكثر من مليون استدعاء لواجهة برمجة التطبيقات ومليون رسالة شهريًا لمدة عام.

إليك كيفية استخدامي لهذه الأدوات لأتمتة حالة استخدام متعددة المهام: أجور الموظفين والمقاولين وأنا. سأوضح لك العملية برمتها على مستوى عالٍ قبل الغوص في ممارسات الأتمتة الأكثر شيوعًا.

يوضح مخطط التدفق مع الرموز العملية المكونة من تسع خطوات التي يتبعها Miklos لدفع أجور الموظفين والمطورين ونفسه. يتم توفير التفاصيل الكاملة في النص التالي.

الآن دعنا ننتقل إلى الخطوات:

  1. في اليوم الأول من كل شهر ، نستخدم AWS EventBridge لتشغيل روبوت Python المخزن في AWS Lambda.
  2. باستخدام Everhour API ، يسحب الروبوت جداول زمنية لجميع الموظفين والمقاولين (المطورين ، في حالة Pylink) وأنا.
  3. بعد ذلك ، يقوم الروبوت بتجميع ساعات العمل لكل مشروع وإنشاء جدول زمني وفاتورة (كلا ملفي PDF). ثم يرسل هذه المستندات إلى العملاء عبر البريد الإلكتروني.
  4. بالإضافة إلى ذلك ، يقوم الروبوت بإخطار فريق Pylink عبر Slack بساعات عمل المقاولين. كما يطلب الإذن بالدفع لهم من خلال تقديم أزرار "الموافقة" و "الرفض".
  5. إذا وافق شخص ما من فريق إدارة Pylink على الطلب ، يرسل الروبوت رسالة إلى واجهة برمجة التطبيقات الخاصة بنا (عنوان URL متاح دائمًا) من خلال AWS API Gateway ، والتي تنفذ رمزًا آخر في وظيفة Lambda لإجراء النقل.
  6. تستخدم وظيفة Lambda الثانية Wise API لإجراء الدفع.
  7. في الرابع عشر من كل شهر ، نستخدم EventBridge مرة أخرى لجدولة تشغيل آخر لوظائف المتابعة. ولكن هذه المرة ، يقوم EventBridge بتشغيل رمز مختلف محفوظ في وظيفة Lambda أخرى.
  8. يستخدم هذا الرمز Wise API لتتبع المعاملات من الأسبوعين الماضيين والتحقق مما إذا كان العميل قد دفع أم لا.
  9. إذا كان هناك دفعة من العميل ، يرسل الروبوت تأكيد Slack إلى فريق Pylink عبر Slack API. إذا لم يكن هناك دفعة ، فإن الروبوت يرسل بريدًا إلكترونيًا إلى العميل باستخدام خدمة Amazon SES.

في السابق ، كان يتم تنفيذ جميع هذه المهام يدويًا ، مما يستهلك وقتًا وطاقة ثمينين يمكن إنفاقهما الآن في مكان آخر. وأفضل ما في الأمر أننا تمكنا من إعداد هذه العملية دون استثمار كبير للوقت أو المال.

ماذا يمكنك أن تفعل بالأتمتة

الآن دعنا نلقي نظرة على بعض أكثر التطبيقات العملية للأتمتة ، باستخدام الأدوات التي ناقشتها بالفعل. كمرجع لك ، سوف أدرج بعض أمثلة الترميز كمورد للمطورين الداخليين أو المتعاقدين أو المستقلين - أو لنفسك ، إذا اخترت تعلم Python للمساعدة في أعمال شركتك أو عميلك.

تتبع ساعات العمل والمشاريع

في نهاية كل شهر ، يقوم الروبوت (باستخدام Everhour) بتشغيل وظيفة "close_the_month" التي تجمع كل الساعات التي تم قضاؤها في مهام مختلفة:

  • ساعاتي في مشاريعي الاستشارية (الإيرادات)
  • ساعات عمل المطورين على مشاريع العميل (الإيرادات والتكلفة)
  • ساعات المطورين في تطوير البرمجيات الخاصة بنا (التكلفة)

ما يلي هو وظيفة بسيطة تقوم بإرجاع Pandas DataFrame ، أي جدول به صفوف وأعمدة ، بما في ذلك جميع الساعات والمشاريع لفترة زمنية لمستخدم معين. يرجى ملاحظة أنه ، كما ذكرنا سابقًا ، هذه وجميع مقتطفات الترميز اللاحقة ليست سوى نقاط بارزة لقاعدة الكود بأكملها ، وليست برنامجًا تعليميًا خطوة بخطوة لبناء الروبوت الخاص بنا.

لقطة شاشة تعرض عينة من كود Python تمت كتابته لأداء وظيفة "close_the_month". يعرض اللغة والنحوية التي استخدمها المؤلف سطراً بسطر.

إنشاء جدول زمني وفاتورة بتنسيق PDF

مع تعقب ساعات عمل كل عامل تلقائيًا ، تكون المهمة التالية هي إنشاء جداول زمنية وفواتير. هناك العديد من حزم Python التي تمكنك من إنشاء ملفات PDF. نحن نستخدم PyFPDF ، وهي مكتبة مدمجة لإنشاء المستندات توفر البساطة بالإضافة إلى المرونة في رسم الأشكال وإضافة الصور والنصوص. كما ترى من المثال التالي ، فإنه ينتج فاتورة نظيفة ومهنية:

يتم عرض فاتورة من Pylink. تقرأ ، "مفوتر إلى Watchclever Ltd ،" العميل ، وتعطي تاريخ الفاتورة ، وتاريخ الاستحقاق ، والمدة التي تم تحرير الفاتورة بها ، ونوع الدفع (التحويل المصرفي). كما يعرض أيضًا الساعات لكل من الاستشاريين الأربعة وإجمالي 45.7 ساعة.

في حين أن هناك طرقًا أكثر تقدمًا لإنشاء التقارير ، يعد PDF خيارًا جيدًا لأنه تنسيق عالمي يُستخدم في جميع الصناعات ويسهل إنشاؤه. كما يسمح بإرسال الملفات إلى أي شخص مع ضمان نقل جميع الخطوط والصور والجداول والتنسيقات. بالإضافة إلى ذلك ، فهو يعمل بشكل مستقل عن أجهزة الكمبيوتر ونظام التشغيل الخاص بك ، ويمكن استخدامه في وضع عدم الاتصال.

إرسال رسائل البريد الإلكتروني

Amazon Simple Email Service هي أداة فعالة من حيث التكلفة وقابلة للتطوير لإنشاء ونشر رسائل بريد إلكتروني بتنسيق HTML منسقة بشكل جيد. علاوة على ذلك ، تتعقب تحليلات البيانات في SES وتشارك المعلومات حول نتائج حلقة التغذية الراجعة لإعلامك إذا أبلغ أي مستلم عن رسالتك على أنها بريد عشوائي ، إما عن طريق الخطأ أو بسبب إرسال البريد الإلكتروني إلى عنوان خاطئ. تقيس التحليلات أيضًا فعالية كل اتصال من حيث المشاركة ، بما في ذلك معدلات الفتح والنقر. هذه الميزة مفيدة بشكل خاص لرسائل البريد الإلكتروني التسويقية.

فيما يلي مثال على كود Python المستخدم لإنشاء بريد إلكتروني مع فاتورة مرفقة وإرسالها إلى العميل:

تُظهر لقطة شاشة مقتطفًا من الترميز بلغة Python وبناء الجملة التي استخدمها المؤلف لإنشاء بريد إلكتروني وإرفاق فاتورة وإرسالها إلى عميله للدفع.

وإليك البريد الإلكتروني الذي تنتجه:

لقطة شاشة للبريد الإلكتروني الذي تم إنشاؤه بواسطة الرمز. تم إرفاق ملف PDF للفاتورة. نص الرسالة:

أتمتة الأنشطة المصرفية

اخترنا Wise للحسابات المصرفية الخاصة والتجارية نظرًا لأن لدينا دخلًا وتكاليف بعدة عملات ، ولشركة التكنولوجيا المالية هذه رسوم صرف مواتية وواجهة مستخدم سهلة الاستخدام وواجهة برمجة تطبيقات مرنة مع وثائق مفصلة.

نستخدم واجهة برمجة التطبيقات هذه لإنجاز المهام التالية:

  • اجمع معلومات كشف الحساب لكل شركة وعملة ، حتى أتمكن من رؤية السيولة الإجمالية والفعلية بسرعة.
  • استخراج معلومات المعاملات التاريخية ، حتى أتمكن من تحديد الاتجاهات في عناصر التكلفة المختلفة وكذلك التحقق مما إذا كان العميل قد دفع فاتورة الشهر السابق. إذا لم يفعلوا ذلك ، ترسل API رسالة تذكير بالبريد الإلكتروني.
  • قم بإجراء تحويلات مالية تلقائيًا.

يوجد أدناه الكود الذي قمنا ببرمجته لإكمال أولى هذه المهام (جمع معلومات البيان):

تعرض لقطة الشاشة عينة من كود Python الذي يستخدمه المؤلف للحصول على معلومات التوازن لكل شركة من شركات Pylink.

بالنسبة للتكاليف الثابتة العادية (الراتب والضرائب وتكاليف المكتب وما إلى ذلك) ، لا تحتاج إلى كتابة رمز لإجراء تحويلات تلقائية ؛ لدى Wise ميزة دفع مجدولة. ومع ذلك ، إذا لم يكن المبلغ ثابتًا ولكن بناءً على صيغة يمكن للخوارزمية حسابها ، فإن Wise API مفيدة. في حالتي ، يعتبر راتب مستشار الأعمال مثالًا بارزًا لأنه دالة للإيرادات الشهرية. من خلال التحقق من الساعات المتعقبة ، يعرف الروبوت بالضبط مقدار الإيرادات التي لدينا وبالتالي المبلغ الذي يجب دفعه للمستشار.

التخفيف من المخاطر من خلال محادثة ثنائية الجانب مع الروبوت

من الضروري أن تكون على دراية بنشاط الروبوت ، حيث يمكن أن تكون هناك أخطاء في الترميز لم يتم الكشف عنها أثناء الاختبار. نتلقى إشعارات في الوقت الفعلي على Slack ، حتى نتمكن من إصلاح أي كود معطل على الفور. في ما يلي بعض أمثلة الإشعارات التي تتيح لنا معرفة أن الروبوت يعمل بشكل صحيح:

تلتقط هذه الصورة الصغيرة والبسيطة رسالة Slack من Pylink bot التي تنص على "تم الدفع بنجاح!"

الصورة التالية هي إشعار Slack آخر من Pylink bot. يقول النص "إغلاق الشهر السابق 2022-01-01 - 2022-01-31" ويعرض التكلفة الإجمالية للعمل المنجز لشركة Watchclever Ltd. خلال هذه الفترة ، متبوعًا بتفصيل هذه التكلفة بناءً على ساعات كل استشاري.

كما قمنا بتمكين الروبوت لإرسال أسئلة التأكيد لفريق Pylink قبل كل تحويل مصرفي. هذا يساعدنا على تجنب الأخطاء بسبب خطأ بشري. تخيل أن مطورًا قام بخطأ إملائي ودخل 825 ساعة بدلاً من 8.25 ساعة لتذكرة واحدة. تضمن خطوة الموافقة في Slack عدم تحويل أموال أكثر مما ندين به بمئات المرات. تحتفظ العملية بعنصر التحقق البشري ولكنها تقدم تجربة سلسة.

لقطة شاشة لإشعار سلاك "تأكيد الدفع" من روبوت Pylink. تقرأ ، "عمل Yurii 43.5 ساعة في الشهر الماضي ؛ لذلك ، [فارغ] USD مستحق. هل يمكنني الدفع له؟" (تم تنقيح المبلغ بالدولار). يتم عرض خياري "الموافقة" و "الرفض".

هناك الكثير من الوظائف الأخرى التي يمكنك تحقيقها باستخدام Slack API أيضًا.

مكتب الغد

يمكن أن تساعد أتمتة الأعمال المؤسسات على الازدهار. يمكن للأدوات التي ناقشتها تحويل الشركات التي تحتاج إلى قدر أكبر من الكفاءة والتحكم ، خاصة عندما يتعلق الأمر بوظائف المعاملات مثل الحسابات الدائنة والحسابات المدينة وغيرها من مجالات المحاسبة الأساسية.

لكن هذه ليست نهاية القصة. وفقًا لماكينزي ، يتمثل التحدي الذي يواجه قادة الشركات في إيجاد شبكة أوسع لكفاءات جديدة. تدعم الشركة إعادة تصور العملية المالية بأكملها ، وتجاوز مهام المعاملات فقط من خلال القيادة في مجالات مثل تحليلات البيانات - دمج المعلومات وتبسيطها والتحكم فيها عبر الشركة. لا يمكن اقبل المزيد. أوصي باستكشاف حلول الترميز التي تساعد مؤسستك على امتلاك إجاباتها وتعزيز ثقافتها الموجهة نحو النتائج. في غضون ذلك ، يمكن أن يساعد اعتماد التكتيكات التي وصفتها هنا شركتك على أن تصبح أكثر كفاءة اليوم - مع إعطائك لمحة عن إمكانيات الغد.