Data Model - Money
About 2 min
Money Overview
The Money data model defines the structure for currency and amount information in payment transactions. This model encapsulates currency specifications, transaction amounts, and settlement amounts across different currencies and regions.
Data Model Structure
Parameter | Type | Description |
---|---|---|
currency | String | ISO 4217 currency code specification Format: Three-letter currency code Usage: Identifies the currency for transaction processing and settlement Examples: IDR, THB, BRL, INR, PHP, USDT, BTC |
amount | Number | Transaction amount in smallest currency unit Format: Numeric value (integer or decimal) Usage: Primary transaction amount for payment processing Examples: 10000, 500.00, 200.1234 |
payAmount | Number | Actual settlement amount (may differ from transaction amount) Format: Numeric value (integer or decimal) Usage: Final amount to be settled, used for reconciliation Examples: 10000, 500.00, 200.1234 |
Currency Format Specifications
Fiat Currencies
Currency | Code | Format | Example | Description |
---|---|---|---|---|
Indonesian Rupiah | IDR | # | 10000 | Integer format, no decimal places |
Thai Baht | THB | #.## | 500.00 | Two decimal places |
Brazilian Real | BRL | #.## | 10000.00 | Two decimal places |
Indian Rupee | INR | #.## | 10000.00 | Two decimal places |
Philippine Peso | PHP | #.## | 10000.00 | Two decimal places |
Mexican Peso | MXN | #.## | 500.00 | Two decimal places |
Peruvian Sol | PEN | #.## | 200.00 | Two decimal places |
Colombian Peso | COP | #.## | 50000.00 | Two decimal places |
Chilean Peso | CLP | # | 50000 | Integer format, no decimal places |
Cryptocurrencies
Currency | Code | Format | Example | Description |
---|---|---|---|---|
Tether USD | USDT | #.#### | 200.0000 | Four decimal places for precision |
Bitcoin | BTC | #.#### | 0.0001 | Four decimal places for precision |
Ethereum | ETH | #.#### | 1.5000 | Four decimal places for precision |
TRON | TRX | #.#### | 1000.0000 | Four decimal places for precision |
Binance Coin | BNB | #.#### | 5.0000 | Four decimal places for precision |
Implementation Examples
{
"currency": "IDR",
"amount": 10000
}
{
"currency": "THB",
"amount": 500.00
}
{
"currency": "INR",
"amount": 500.00
}
{
"currency": "BRL",
"amount": 500.00
}
{
"currency": "MXN",
"amount": 500.00
}
{
"currency": "PEN",
"amount": 200.00
}
{
"currency": "COP",
"amount": 50000.00
}
{
"currency": "CLP",
"amount": 50000
}
{
"currency": "USDT",
"amount": 200.0000
}
{
"currency": "BTC",
"amount": 0.0001
}
Amount Processing Guidelines
Precision Requirements
- Fiat Currencies: Follow local currency precision standards
- Cryptocurrencies: Use four decimal places for maximum precision
- Rounding: Apply appropriate rounding rules for each currency
Validation Rules
- Minimum Amount: Each currency has specific minimum transaction amounts
- Maximum Amount: Platform-specific limits apply to all currencies
- Format Validation: Amounts must match currency-specific format requirements
Settlement Processing
- Amount Reconciliation: Verify transaction amount matches settlement amount
- Currency Conversion: Handle cross-currency transactions appropriately
- Fee Calculation: Apply transaction fees based on currency and amount
Security and Compliance
Amount Validation
- Range Checking: Validate amounts against minimum and maximum limits
- Format Verification: Ensure amounts match currency format specifications
- Fraud Detection: Monitor for suspicious transaction patterns
Regulatory Compliance
- Local Regulations: Adhere to regional currency and transaction regulations
- Reporting Requirements: Maintain accurate records for regulatory reporting
- Audit Trail: Complete audit trail for all amount-related operations