Transfers

Create Scheduled ACH Transfer

Creates a new scheduled ACH transfer to an external counterparty.

post/accounts/{account_id}/ach/scheduled

Request

Path parameters

account_idstring required

The ID of the account.

Headers

Idempotency-Keystring nullable

A unique key you generate (1-50 printable ASCII characters, no spaces) so retrying this request never creates a duplicate. Reusing a key is rejected.

x-entity-idstring uuid

Optional entity_id to scope requests to a specific entity.

Request body

counterparty_idstring uuid required

Contact to pay. Use list_contacts to find one.

descriptionstring nullable

Text shown on the recipient's bank statement.

internal_notestring nullable

Private note, visible only inside Meow.

emailstring email nullable

Address to notify on each occurrence.

metadataobject nullable

Your own key/value data to attach to this object. Meow stores it unchanged and returns it on every read of the object and on every webhook event about it, so you can match it back to your own records. Up to 20 pairs; keys up to 40 characters, values up to 200, and 5 KB serialized as JSON in total — note that a non-ASCII character counts as 6 bytes and an emoji as 12. Values must be strings. Meow never interprets it — do not put anything here that needs to stay private.

idempotency_keystring nullable

Deprecated: send the key in the Idempotency-Key header instead. When both are sent they must match.

rrulestring required

Recurrence rule (RFC 5545 RRULE) defining the schedule.

Response

Successful Response

idstring uuid nullable

Identifier of the schedule, for use with List Scheduled ACH Transfers. null until the schedule is actually created, so it is always absent while status is processing or pending_approval. Use approval_id as the stable handle instead.

status'pending' | 'pending_approval' | 'canceled' | 'processing' | 'error' | 'sent' | 'returned' | 'void' required
amountstring required

Amount sent on each occurrence, in USD. Echoes the request.

descriptionstring nullable required

Text shown on the recipient's bank statement. Echoes the request.

counterparty_idstring uuid required

Contact paid on each occurrence. Echoes the request.

rrulestring required

Recurrence rule (RFC 5545 RRULE) driving the schedule. Echoes the request.

first_occurrencestring date-time

ISO 8601 date-time in the format YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm] (per IETF RFC 3339).

transfer_type'book' | 'usdc' | 'usdt' | 'pyusd' | 'cash' | 'usdg' | 'path_usd' | 'ach' | 'wire' | 'international' required

The rail a transfer moves on, as the customer API reports it.

approval_idstring uuid required

Handle for this schedule, returned whether or not an approval policy gated it. Pass it to GET /approvals/{approval_id} to follow the request to completion.

messagestring nullable

Human-readable next step. Set only when status is pending_approval; otherwise null.

metadataobject nullable

The metadata attached when this schedule was created, unchanged. Every payment the schedule sends carries it too, so the webhook for any occurrence reports the same value. null when none was attached.

Changes

No recorded changes to this operation across all 1 revision of this API.