Retrieve comprehensive transaction details and account information for a specific linked account in XML format, designed for systems requiring structured XML data processing.
| Header | Type | Required | Description |
|---|---|---|---|
client_id | string | Yes | The unique client identifier assigned to your organization during onboarding. This value is available in the FinPro admin portal. |
client_secret | string | Yes | The confidential client secret key paired with your client_id. Store this securely and never expose it in client-side code. |
organisationId | string | Yes | Your organization’s unique identifier in the FinPro system, used to scope all API requests to your tenant. |
appIdentifier | string | Yes | The application identifier that distinguishes different applications within your organization, useful for multi-product setups. |
Content-Type | string | Yes | Must be set to application/json for the request body. Note that while the request uses JSON, the response will be in XML format. |
| Parameter | Type | Required | Validation | Description |
|---|---|---|---|---|
consentID | string | Yes | Must be a valid GUID (Globally Unique Identifier) provided by the Account Aggregator after consent approval. | The unique identifier for the consent record under which this account is linked. The consent must be in ACTIVE status to retrieve data. |
linkReferenceNumber | string | Yes | Must be a valid UUID that exists in the system and is associated with the specified consent ID. | The unique identifier for the specific financial account you want to retrieve data for. This value is obtained from webhook notifications or previous API responses when accounts are linked. |
| Parameter | Type | Required | Description | Supported Values |
|---|---|---|---|---|
status | string | Yes | Indicates whether the request was processed successfully. | success, failure |
ver | string | Yes | The version number of the API specification being used in this response. | e.g., “1.21.0” |
data | object | Yes | The main data container holding all account and transaction information. | Data object |
data.linkReferenceNumber | string | Yes | The unique identifier for this linked account, matching the value provided in the request. | UUID format |
data.maskedAccountNumber | string | Yes | The account number with most digits masked for security and privacy purposes, typically showing only the last 4 digits. | e.g., “XXXXXXXX3900” |
data.balance | string | Yes | The current account balance as of the most recent data fetch, represented as a string to preserve decimal precision. | Numeric string (e.g., “101666.33”) |
data.fipName | string | Yes | The name of the Financial Information Provider (FIP), which is typically the bank or financial institution holding the account. | Institution name string |
data.fipId | string | Yes | The unique identifier for the Financial Information Provider in the Account Aggregator ecosystem. | FIP identifier (e.g., “finsharebank”) |
data.fiType | string | Yes | Categorizes the type of financial information being shared from this account. | DEPOSIT, TERM_DEPOSIT, TERM-DEPOSIT, RECURRING_DEPOSIT |
data.fiData | array | Yes | A collection of transaction elements, each representing a single financial transaction on the account. | Array of transaction objects |
data.fiData.transactionTimestamp | string | Yes | The exact date and time when the transaction was processed by the financial institution. | ISO 8601 timestamp format |
data.fiData.txnId | string | Yes | The unique transaction identifier assigned by the financial institution, useful for transaction tracking and reconciliation. | Transaction ID string |
data.fiData.type | string | Yes | Indicates whether money was added to or removed from the account. | CREDIT, DEBIT |
data.fiData.amount | string | Yes | The transaction amount in the account’s base currency, represented as a string to maintain precision. | Numeric string (e.g., “5000.00”) |
data.fiData.balance | string | Yes | The account balance immediately after this transaction was processed, essential for balance reconciliation and verification. | Numeric string |
data.fiData.mode | string | Yes | The payment method or channel through which the transaction was executed. | CASH, UPI, IMPS, NEFT, RTGS, CARD, ATM, CHEQUE, DEMAND_DRAFT, AUTO_DEBIT, INTEREST_CREDIT, NACH, ECS, REMITTANCE, OTHERS |
data.fiData.narration | string | Yes | A descriptive text provided by the financial institution explaining the transaction purpose or source/destination details. | Free-form text string |
data.fiData.reference | string | Yes | Additional reference information such as cheque numbers, UPI transaction IDs, or other institution-specific identifiers. | Reference string |
data.fiData.valueDate | string | Yes | The effective date when the transaction amount was actually credited or debited for interest calculation purposes, which may differ from the transaction timestamp. | Date string (YYYY-MM-DD format) |
| Field | Type | Required | Description |
|---|---|---|---|
ver | string | Optional | The API version number, included when the error occurs after version validation. |
timestamp | string | Optional | The exact time when the error was encountered, useful for log correlation and debugging. |
errorCode | string | Optional | A machine-readable error identifier that categorizes the type of failure encountered. |
errorMsg | string | Optional | A human-readable description of the error, providing context about what went wrong and potentially how to fix it. |
status | string | Optional | Set to “failure” to indicate the request did not complete successfully. |
| Error Code | Error Message | Description | Resolution |
|---|---|---|---|
InvalidRequest | ”consentID is required” or “linkReferenceNumber is required” | One or both mandatory parameters are missing from the request body. | Ensure both consentID and linkReferenceNumber are included in the request body. |
InvalidConsentId | ”Consent ID does not exist” | The provided consent ID is not found in the system or belongs to a different organization. | Verify the consent ID is correct and was successfully created for your organization. |
InvalidLinkReference | ”Link Reference Number does not exist” or “Link Reference Number not associated with this consent” | The linkReferenceNumber is invalid or doesn’t belong to the specified consent. | Check that the linkReferenceNumber was obtained from a webhook notification or API response for this specific consent. |
ConsentNotActive | ”Consent is not in active state” | The consent has been paused, revoked, or expired, preventing data access. | Check the consent status and obtain a new consent approval if needed. |
DataNotAvailable | ”Financial data not available” | The FIP has not yet provided data for this account, or data fetch is still in progress. | Wait for the DATA_READY webhook notification before attempting to retrieve data. |
Unauthorized | ”Invalid credentials” | The authentication headers are incorrect, missing, or the credentials have expired. | Verify your client_id, client_secret, organisationId, and appIdentifier are correct and active. |
RateLimitExceeded | ”Too many requests” | The API rate limit has been exceeded for your organization. | Implement exponential backoff and reduce request frequency. Check rate limit headers in the response. |
TERM_DEPOSIT and others using TERM-DEPOSIT (hyphenated). Your XML parsing logic should handle both variations.
<fiData> element are typically ordered reverse chronologically (most recent transactions first), though ordering should be verified by examining transactionTimestamp values.<balance> field within each transaction element shows the running balance after that specific transaction, enabling you to verify transaction sequences and detect any missing transactions.<mode> field provides standardized payment method codes, but the specific codes available depend on what the FIP includes in their data; not all modes may be present for all transactions.<narration> field contains unstructured text that varies significantly in format and content across different banks; implement pattern matching or natural language processing to extract meaningful information like merchant names or transaction purposes.<transaction> elements within <fiData>.<status> element value before attempting to extract data elements.Your unique client identifier provided by MoneyOne during FIU onboarding
Your confidential client secret provided by MoneyOne
Your organization's unique identifier in the FinPro system
Application-specific identifier for tracking API calls
Request body for retrieving financial data in XML format for a specific linked account.
The unique identifier for the consent record under which this account is linked. The consent must be in ACTIVE status to retrieve data.
The unique identifier for the specific financial account you want to retrieve data for. This value is obtained from webhook notifications or previous API responses when accounts are linked.
Financial data retrieved successfully in XML format
XML-formatted response containing comprehensive account information and transaction details for the requested account.