Electric Motorcycle

The client is a pioneering Indian company specializing in high-performance electric motorcycles and advanced energy infrastructure. Founded in Bengaluru in 2016, the client has distinguished itself as an innovation-driven brand focused on design excellence, progressive engineering, and sustainable mobility. With flagship products like an advanced electric two-wheeler and its subsequent next-generation model, the client blends cutting-edge battery technology, outstanding safety features, and seamless digital integration to provide a futuristic riding experience. Over the years, the client has built a robust manufacturing and sales network in India, launched exclusive experience centers, and is expanding internationally. The brand is focused on creating a comprehensive ecosystem for urban electric mobility, including reliable vehicles, fast-charging infrastructure, and ownership services.

The Challenge

With a vast network of vendors nationwide, the client required a highly customized payment workflow integrated with their bank. To support this level of automation, the bank took the proactive step of collaborating directly with our client and us, granting secure API access and facilitating the advanced system integration necessary for real-time payments.

HDFC is the client’s corporate banking partner, and it processes all outgoing payments for sales, services, and installations. The clients’ payment workflow was lengthy and manual. After posting a payment in Odoo, the Accounts team had to generate an Excel file in a bank-specified format, upload it to the bank portal, and await an OTP to complete each transaction. To eliminate these bottlenecks, the client sought to automate this process by integrating the Odoo ERP Accounts modules directly with their banking partner, thereby streamlining their payment process.

This banking integration, developed by the Navabrind IT Solutions team removed the manual process. After posting the payment with the bank, the data syncs, gets approved, and is made to the relevant parties. This automation eliminates the need for manual Excel files and OTPs.

Additionally, the Odoo-bank integration enables the client to track each stage of the payment process through the Odoo ERP. For instance, when the payment is sent to the bank, Odoo will display the status as ‘Request Sent’. Once the payment is successful, the UTR reference is automatically populated in Odoo. This response can be viewed manually by checking the status or through an automated scheduler, which continuously checks the payment status with the Bank and updates it in Odoo.

A control and validation process enables the client to process single or multiple payments and complete or partial amounts for multiple bills.

The client-bank integration has been designed to review the payment request, check against the client’s balance, and then initiate payment or cut off, if the bank balance is below a predefined limit.

  • Built a custom Odoo model to store HSBC credentials and configuration securely.
  • Added fields for client keys, HSBC public key, passphrase, API credentials, and base URL.
  • Applied access restrictions and security rules to limit visibility to authorized users only.
  • Developed Python methods for secure authentication, request encryption, response decryption, and token management.
  • Automated fetching of company bank details, vendor bills marked for payment, and vendor bank account information from Odoo.
  • Developed a structured XML generator that converts payment data into HSBC-compliant XML format with validation.
  • Implemented payload encryption using HSBC’s public key, signed with the client’s private key, and base64-encoded before sending.
  • Completed HSBC bulk payment API integration for multiple vendor payments in a single transaction batch.

Live Environment Setup

  • We migrated the tested configuration to the live server and completed penny testing to validate account-level accuracy.
  • Next, we sent encrypted XML payloads to HSBC via HTTPS with appropriate authentication headers.
  • We also decrypted and parsed HSBC’s responses, updated vendor bills with payment status, and stored UTR references in Odoo.
  • And added handling for failed or rejected transactions with rollback and error logging mechanisms.

Logging & Auditing

  • Created logs for the model to store encrypted API requests and responses.
  • Linked logs with vendor bills for traceability and audit trail.
  • Payment Trigger & Automation
  • Added a manual trigger button in Odoo UI for initiating payments.
  • Developed cron jobs for scheduled automatic bulk payment processing.

Status Check API Integration

  • Integrated HSBC’s payment status check API to fetch real-time transaction updates.
  • Implemented both the manual “Check Status” button and the automated background cron to keep statuses in sync. -> not sure
  • Parsed status responses and updated payment records with UTR number, status, and remarks.

Testing & Validation

  • Conducted extensive validation of encryption, XML structure, and end-to-end transaction flow.

Security Implementation

  • Encrypted sensitive credentials within the database.
  • Restricted access and masked sensitive data in logs.
  • All modules and APIs (bulk payment, encryption, logging, and automation) are completed – only minor Status API errors remain under resolution before final production sign-off.

Faster vendor payments

80%

Errors in payments

0%

Higher vendor satisfaction

25%

Zero manual intervention

Real-time visibility into the payment process