Open deposit account
Creates or locates a transaction banking account and attaches a validated deposit product in a single request. When the operation succeeds, the Pismo platform generates the Deposit account opened and Account attached events.
This endpoint supports two scenarios:
-
Existing account: Provide both account.account_id and account.external_account_id. The Pismo platform locates the account via the transaction banking API and validates the IDs. If there is a mismatch, the request fails with a 400 error.
-
New account: Provide account.external_account_id and the account_creation object. The Pismo platform creates a new transaction banking account and attaches the deposit product. If the transaction banking API returns 409 because the account already exists, the Pismo platform locates the existing account and proceeds with product attachment.
Note: The deposit product must exist, be of type deposit, and have an ACTIVE status.
Request
- Base URLhttps://sandbox.pismolabs.io/savings-products
- URLhttps://sandbox.pismolabs.io/savings-products/v1/deposits/accounts/open
- AuthHTTP bearer
Request body
Example request
{
"account": {
"external_account_id": "ext-acct-001",
"account_id": 123456
},
"deposit_attachment": {
"product_id": "2c336e9d-d04f-4fd0-8f6e-25808f48d70c",
"deposit_configs": {
"maturity_period": {
"unit": "MONTHS",
"value": 6,
"calendar_maturity_date": "2027-06-15"
},
"payout_account": {
"label": "My payout account",
"type": "INTERNAL",
"internal_account_id": 123456,
"external_account": {
"key": "value"
}
},
"interest_capitalization_mode": "REINVEST",
"overrides": {
"maturity_instructions": {
"principal": "ROLLOVER",
"interest": "PAY",
"reason": "Customer preference at onboarding"
},
"renewal_term": {
"unit": "MONTHS",
"value": 6,
"renewal_calendar_maturity_date": "2027-05-22"
},
"penalties": {
"reason": "Q4 2026 VIP retention package",
"withdrawal_fee": {
"value": 1.5
}
}
}
}
},
"account_creation": {
"program_id": 100,
"division_code": "001",
"applicant": {
"document_number": "12345678900",
"name": "John Doe"
},
"currency_code": "USD",
"account_creation_datetime": "2026-06-24T14:49:36.017Z"
},
"metadata": {
"key": "value"
}
}Response
Deposit account opened successfully
Example response
{
"account_id": 123456,
"external_account_id": "ext-acct-001",
"account_creation_datetime": "2026-06-24T14:49:36.000Z",
"product_id": "2c336e9d-d04f-4fd0-8f6e-25808f48d70c",
"deposit_configs": {
"maturity_period": {
"unit": "MONTHS",
"value": 6,
"calendar_maturity_date": "2027-06-15"
},
"renewal_term": {
"unit": "MONTHS",
"value": 6,
"renewal_calendar_maturity_date": "2028-06-15"
},
"payout_account": {
"label": "My payout account",
"type": "INTERNAL",
"internal_account_id": 123456,
"external_account": {
"key": "value"
}
},
"maturity_instructions": {
"principal": "ROLLOVER",
"interest": "PAY",
"reason": "Customer preference at onboarding"
},
"penalties": {
"reason": "Q4 2026 VIP retention package",
"withdrawal_fee": {
"value": 1.5
}
},
"interest_capitalization_mode": "REINVEST"
}
}Changes
No recorded changes to this operation across all 1 revision of this API.