v1

latestOpenAPI 3.1.0Copyright Pismo2026-07-247702,7523.1 MB
Payments

Schedule payment

Schedule payments for a specified future date (schedule_datetime). For more information, refer to Schedule payment overview.

The payload for this request is similar to that of the Post payment endpoint with the exception of the (schedule_datetime) property.

See Data and reporting for more information about events and setting up event notifications.

For more information on payments operations, see Corporate Banking Launch Reference.

NOTE:

  • This endpoint requires an account token - an access token encoded with an external account ID. Tokens can expire quickly, which can result in a 401 Unauthorized message.
  • For scheduled payments, validation of the transaction occurs only during the execution of the scheduled payment.

This endpoint generates the following events:

See Data and reporting for more information about events and how to set up event notifications.

post/corporate/v2/scheduled-payments

Request body

amountnumber double required

Fee amount.

tracking_idstring required

Customer created tracking ID. Must consist of alphanumeric characters (a-z, A-Z, 0-9), hyphens (-), and colons (:), with a length from 1 to 128. The Pismo platform uses this field to implement idempotency and prevent duplicates.

soft_descriptorstring

Brief description that helps to identify a particular transaction on the bank statement.<br> <b>NOTES</b>:

  • To be able to send different soft_descriptor information for each payment leg in transfer operations, the soft_descriptor can be included in the primary or leg field. A conflict between the primary and a leg field results in an error as mapped in the responses section.
metadataMetadataPayment

Key-value pairs containing data intended for storage in the Pismo system.<br> <b>NOTES</b>:

  • The metadata field includes a corporate_metadata object with the following fields:
    • credit_external_account_id: Included in the corporate_metadata field when it's provided in the credit leg.
    • debit_external_account_id: Included in the corporate_metadata field when it's provided in the debit leg.
    • earmark_id: Included in the corporate_metadata field when it's provided in the debit leg.
  • The corporate_metadata attribute must be an object. A type mismatch results in an error as mapped in the responses section.
  • To be able to send different metadata information for each payment leg in transfer operations, the metadata can be included in the primary or leg field. A conflict between the primary and a leg field results in an error as mapped in the responses section.<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.

skip_account_date_validationboolean

If FALSE, the payment_datetime is validated against the account creation date and time. If TRUE, the validation is skipped.

force_postboolean

If true, the transaction is executed regardless of the accounts balance or state.<br> To post a forced transfer, you must specify both credit and debit, and set force_post to true.<br> Reason-based force payments: If the account has any reason-based force payment restrictions, and the operation violates any of those restrictions, it fails. The reasons that restrict force credit or debit operations are: - ALL_NO_FORCE_ALLOWED: Debits and credits are permitted, but force operations are not allowed. - CREDIT_ONLY_NO_FORCE_DEBIT_ALLOWED: Only credits and force credits are allowed. - FORCE_CREDIT_ONLY: Debits, credits, and force debits are not allowed. - FORCE_DEBIT_ONLY: Debits, credits, and force credits are not allowed. - DEBIT_ONLY_NO_FORCE_CREDIT_ALLOWED: Only debits and force debits are allowed. - NONE_NO_FORCE_ALLOWED: Debits, credits, force debits, and force credits are not allowed.<br> <b>NOTE</b>: Forced transfers from an earmark balance are not supported when credit, debit, or earmark_id are specified.

validation_rulesValidationRules

Rules that determine which validations are executed during the payment process.<br> Available validation rules:

  • LEDGER
  • ACCOUNT_STATUS
  • FLEX_CONTROLS
  • RATES<br>

force is only supported for LEDGER. override is supported for ACCOUNT_STATUS, FLEX_CONTROLS, and RATES.

payment_datetimestring date-time

Date and time of the payment. Specifying a payment_datetime value impacts the account balance history.<br> <b>Notes</b>:

  • The payment datetime is in ISO 8601 format.
  • You can backdate payments a maximum of 390 calendar days. You can postdate payments a maximum of 10 calendar days.
business_datestring date

Specifying a business_date value impacts the account balance history.<br> <b>Notes</b>:

  • The business date is in ISO 8601 format.
  • The business date allows users to designate the balance history cycle in which a payment is posted.
  • You can specify a business_date within the current working day or up to one working day before or after.
channelstring

Alphanumeric channel code identifier

instant_clearingboolean

Whether the funds are available when the payment is posted (true) or not (false).

schedule_datetimestring required

Date to schedule the process. RFC 3339 value, i.e., "2023-04-12T23:20:50.52Z".

Example request

{
  "amount": 215,
  "tracking_id": "3368328d-e4c6-4c75-99a9-9d59f3501d8c",
  "soft_descriptor": "ACME Inc. - Invoice 2938",
  "credit": {
    "external_account_id": "289",
    "processing_code": "220035",
    "soft_descriptor": "ACME Inc. - Invoice 2938",
    "metadata": {
      "my-id": 2932
    }
  },
  "debit": {
    "external_account_id": "289",
    "processing_code": "220037",
    "earmark_id": "dadaab22-6e28-4746-8440-0caa030f0f3f",
    "soft_descriptor": "ACME Inc. - Invoice 2938",
    "metadata": {
      "my-id": 2932
    }
  },
  "metadata": {
    "my-id": 2932
  },
  "validation_rules": {
    "ACCOUNT_STATUS": {
      "override": false
    },
    "LEDGER": {
      "force": false
    },
    "FLEX_CONTROLS": {
      "override": true
    },
    "RATES": {
      "override": true
    }
  },
  "payment_datetime": "2023-03-10T19:05:56.743Z",
  "business_date": "2023-03-09",
  "channel": "GDP",
  "schedule_datetime": "2020-08-13T13:49:03.000Z"
}

Response

Created

idstring

ID used to reference the scheduled payment for subsequent operations.

Example response

{
  "id": "d2644122-251b-41fa-b5b5-54cfad097afb"
}