Product managers and engineers are crucial in integrating Midaz into daily banking operations. Following structured workflows ensures consistency and precision in configuring and executing financial operations on the platform.
Let’s take a step back and consider a banking operation. If you’re familiar with financial ledgers and banking activities, it should be intuitive to apply these workflows to any transaction involving the movement of funds.
Your organization in Midaz represents your bank. If it hasn’t been created yet, set it up now. Ensure that all details—such as name and legal information—are accurate, as this entity serves as the primary context for all financial operations.
Set up a Ledger under your organization. Best practices suggest starting with a primary ledger for all customer accounts. Whether using the Midaz Console or API, ensure that each ledger is clearly named (e.g., “Main Banking Ledger”). Initially, the ledger won’t contain any accounts, but it serves as the foundation for transactions and account management.
Define all asset types your institution will use. This includes currencies (e.g., BRL, USD, EUR) and other assets like reward points or crypto. Establishing these in advance enables seamless integration into your ledger setup. Additional assets can be introduced as your product portfolio expands.
From the outset, define your Chart of Accounts to categorize and route transactions effectively. Identify key account categories such as fees, interest, and payments, mapping them to placeholder accounts or account categories.A best practice is to establish internal accounts for categories like “Fees Receivable” and “Interest Payable,” linking them to transaction types through the chart of accounts. This structure ensures accurate financial tracking and reporting.
To maintain an organized financial system, establish clear processes for ledger management:
Assign appropriate user roles with Midaz’s RBAC system to control access and permissions.
Plan for additional ledgers if needed, documenting their purpose and assigned administrators.
Regularly review ledger settings to maintain accuracy and ensure financial integrity. Midaz enforces double-entry accounting, but reconciling totals—especially when using external settlement accounts—helps maintain consistency.
When onboarding a new customer—individual or corporate—create a Portfolio under the appropriate ledger. Use the customer’s Entity ID (from your CRM system or the Midaz CRM plugin) in the Portfolio metadata for seamless mapping.
Determine whether the customer’s account belongs to a specific segment (e.g., Standard, Premium, Student). If using Midaz Segments, tag portfolios or accounts accordingly. This enables automated eligibility for benefits like fee exemptions or tiered interest rates.
For businesses or specific use cases requiring sub-accounts, set them up under the main account. Use hierarchical naming conventions (e.g., “ABC Corp USD - Project X”) to maintain clarity.
If an initial deposit is required, execute a transaction to credit the new account while debiting the corresponding funding source. This ensures compliance with double-entry principles—no manual balance adjustments are permitted.
Midaz automatically validates transactions for balance integrity. If debits and credits don’t match, the transaction is rejected, preventing ledger corruption.
Step 4: Route transactions via the Chart of Accounts
When posting transactions, include relevant Chart of Accounts references to ensure accurate categorization. For instance, tagging a fee operation with "FEE_INCOME" streamlines financial reporting.
To prevent duplicate transactions due to network failures, utilize Midaz’s idempotency keys. Send a unique transaction reference with each API request—if a retry is needed, Midaz will recognize and prevent unintended duplication.
Instead of deleting transactions, post corrective transactions that reverse prior operations. Maintain clear audit trails by linking reversals to their corresponding original transactions.