Internal Domestic Transfer
Secure internal transfers between your Localpayment accounts. Maintain liquidity and manage funds domestically without currency conversion.
An internal domestic transfer allows you to securely move funds between your Localpayment accounts within the same country and currency. This feature is ideal for managing liquidity across multiple accounts or redistributing funds for operational efficiency.
Use Cases
- Portfolio Rebalancing: Dynamically reallocate capital across client portfolios to swiftly capitalize on market movements and adhere to strategic investment mandates.
- Centralized Liquidity Management: Consolidate cash positions from various operational accounts to optimize working capital, ensure timely payments, and maximize fund utilization.
- Structured Fund Distribution: Automate the disbursement of budgets to departments, projects, or cost centers from a central account while maintaining full visibility and control.
- Regulatory & Risk Compliance: Proactively manage capital reserves and risk buffers by segregating funds across designated account types to meet regulatory requirements and internal policies.
Prerequisites
Before initiating internal domestic transfers, ensure you have:
- Sufficient funds in your source account
- Valid API credentials with internal transfer permissions
- Account verification for both source and destination accounts
- Same country registration for both accounts
Important
Both accounts must be registered in the same country.
API Integration
To create Internal Domestic Transfer, send a POST request to the Create Internal Transfer endpoint.
Endpoint
POST https://api.stage.localpayment.com/api/internal-transferAuthentication
Authorization: Bearer <your_access_token>Key Request Parameters
| Parameter | Type | Description |
|---|---|---|
externalId | string | Your unique transaction identifier |
country | string | ISO alpha-3 country code |
currency | string | ISO currency code |
amount | number | Transfer amount |
transactionType | string | Must be "InternalDomesticTransfer" |
client.from.accountNumber | string | Source account number |
client.to.accountNumber | string | Destination account number |
Request Example
curl --request POST \
--url https://api.stage.localpayment.com/api/internal-transfer \
--header 'Authorization: Bearer <your_access_token>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{
"externalId": "8888ad65-aa6e-4643-b9ba-ff62318fd90b",
"country": "ARG",
"currency": "ARS",
"amount": 1000,
"transactionType": "InternalDomesticTransfer",
"client": {
"type": "Client",
"from": {
"accountNumber": "032.032.00000078"
},
"to": {
"accountNumber": "032.032.00000079"
}
}
}'Response Handling
Our API provides comprehensive response data for effective transaction management and reconciliation.
Success Response
{
"transactionType": "InternalDomesticTransfer",
"externalId": "8888ad65-aa6e-4643-b9ba-ff62318fd90b",
"internalId": "cda1c606-a14f-4cab-a323-82c09f2ca8b1",
"country": "ARG",
"currency": "ARS",
"clientCode": "0001",
"creationDate": "2025-10-14T15:44:53.374+00:00",
"errors": [],
"status": {
"code": "200",
"description": "Completed",
"detail": "INTERNAL TRANSFER"
},
"amount": 1000,
"client": {
"type": "Client",
"from": {
"clientCode": "0001",
"accountNumber": "032.032.00000078"
},
"to": {
"clientCode": "0001",
"accountNumber": "032.032.00000079",
"amount": 966.0
}
},
"fees": {
"description": "Fee",
"currency": "ARS",
"amount": 21.0,
"account": "032.032.00000078"
},
"localTaxes": [
{
"code": "0001",
"percentage": 1.3,
"description": "IDC",
"currency": "ARS",
"fxSource": 1360.092976,
"fxQuote": 0.0,
"amount": 13.0,
"account": "032.032.00000078"
}
],
"withHoldings": [],
"code": "200"
}Key Response Fields
| Field | Description |
|---|---|
internalId | System-generated unique identifier for tracking |
status.code | Transaction status: 200 (COMPLETED), 702+ (ERRORS) |
client.to.amount | Net amount credited to destination account |
fees.amount | Total processing fees deducted |
localTaxes | Array of applicable local taxes |
payment.creditedAmount | Final amount received in destination account |
Error Responses
{
"externalId": "TXN_INVALID_123",
"internalId": "fc2c831c-d0f1-41f6-8a59-0ecd426c087d",
"errors": [
{
"code": "702",
"detail": "Account not configured for InternalDomesticTransfer"
},
{
"code": "703",
"detail": "Account countries must match"
},
{
"code": "704",
"detail": "Insufficient funds in source account"
}
],
"status": {
"code": "702",
"description": "REJECTED",
"detail": "Configuration validation failed"
}
}Transaction Status Tracking
Monitor your currency exchanges through multiple channels:
Webhooks (Recommended)
Receive real-time notifications when transaction status changes. Most efficient for production environments.
Status API Endpoint
Query transaction status programmatically. Useful for polling or recovering lost webhook notifications.
Dashboard View
Visual interface for monitoring transactions. Great for manual oversight and detailed transaction analysis.
Status Lifecycle
| Code | Status | Description |
|---|---|---|
100 | InProgress | InProgress |
102 | PendingDebit | Pending Debit |
103 | PendingCredit | Pending Credit |
200 | Completed | INTERNAL TRANSFER |
303 | Rejected | This exchange rate token has expired. |
Complete Reference
View all status codes in our Transaction Status Documentation.
Resources & Next Steps
Maximize your integration success with these essential resources
Webhook Integration
Set up real-time notifications for transaction status updates.
Reporting Dashboard
Access detailed analytics, reporting tools, and reconciliation features.
Transaction Monitoring
Learn to query transaction status and implement comprehensive tracking.
API Reference
Complete endpoint documentation with interactive examples.
Pro Tip
Always test your workflow in our sandbox environment before deploying to production. This ensures your error handling, webhook processing, and status tracking work correctly across all scenarios.
Need Help?
Contact our support team if you experience any issues or need assistance for integration.
Updated about 2 hours ago
