v1

latestOpenAPI 3.1.0Copyright Pismo2026-07-247702,7523.1 MB
Deposit account open

Open deposit account

Create or locate a transaction banking account and attach a validated deposit product in a single request. On success, the endpoint generates a Deposit account opened event.

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.

post/v1/deposits/accounts/open

Headers

AuthorizationTokenstring required

Account token. Token encoded with a Pismo account ID. Tokens can expire quickly, which can result in a 401 Unauthorized error.

Request body

metadataobject

The metadata object contains user-defined key-value pairs that provide additional context or custom information.<br> Metadata content is not controlled by the Pismo platform and is instead controlled by the user.<br>

Note: This field must not be used to send Personally Identifiable Information (PII), Payment Card Industry (PCI) data, or any sensitive/regulated information. Metadata fields are intended for operational, non-sensitive data only. For sensitive data, use the specific parameters designed for that purpose. For more information, refer to Get started with Pismo APIs.

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"
        }
      }
    }
  },
  "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

account_idinteger

Pismo account ID (new or existing)

external_account_idstring

External account ID

product_idstring

Product ID of the attached deposit product

Example response

{
  "account_id": 123456,
  "external_account_id": "ext-acct-001",
  "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"
    }
  }
}