Update a schedule

Describes the schedule to modify.

To access this endpoint using an access token you’ll need to specify the /accounts/{accountID}/transfers.write scope.

PUT
/accounts/{accountID}/schedules/{scheduleID}
cURL Go
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
curl X -PUT "https://api.moov.io/accounts/{accountID}/schedules/{scheduleID}" \
  -H "Authorization: Bearer {token}" \
  --data-raw '{
    "description":"new updated string",
    "recur": {
      "start": "2024-08-24T14:15:22Z",
      "recurrenceRule": "FREQ=DAILY;COUNT=5",
      "runTransfer": {
        "description": "string",
        "amount": {
          "currency": "USD",
          "value": 1304
        },
        "accountID": "UUID",
        "source": {
          "paymentMethodID": "UUID",
          "achDetails": {
            "companyEntryDescription": "Gym Dues",
            "originatingCompanyName": "Whole Body Fit"
          },
          "cardDetails": {
            "dynamicDescriptor": "WhlBdy *Yoga 11-12"
          }
        },
        "destination": {
          "paymentMethodID": "UUID",
          "achDetails": {
            "companyEntryDescription": "Gym Dues",
            "originatingCompanyName": "Whole Body Fit"
          },
          "cardDetails": {
            "dynamicDescriptor": "WhlBdy *Yoga 11-12"
          }
        }
      }
    },
    "occurrences": [
      {
        "occurrenceID": "UUID",
        "runTransfer": {
          "description": "string",
          "amount": {
            "currency": "USD",
            "value": 1304
          },
          "accountID": "UUID",
          "source": {
            "paymentMethodID":"UUID",
            "achDetails": {
              "companyEntryDescription": "Gym Dues",
              "originatingCompanyName": "Whole Body Fit"
            },
            "cardDetails": {
              "dynamicDescriptor": "WhlBdy *Yoga 11-12"
            }
          },
          "destination": {
            "paymentMethodID": "UUID",
            "achDetails": {
              "companyEntryDescription": "Gym Dues",
              "originatingCompanyName": "Whole Body Fit"
            },
            "cardDetails": {
              "dynamicDescriptor": "WhlBdy *Yoga 11-12"
            }
          }
        },
        "runOn": "2024-08-24T14:15:22Z",
        "canceled": false
      }
    ]
  }'\
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
mc, _ := moov.NewClient()

var accountID string
now := time.Now()
start := now.AddDate(0, 1, 0)

mc.CreateSchedule(ctx, accountID, moov.CreateSchedule{
  Description: "new string",

  Occurrences: []moov.CreateOccurrence{
    {
      RunOn: now,
      RunTransfer: moov.RunTransfer{
        Description: "Gym Dues",
        Amount: moov.ScheduleAmount{
          Value:    1304,
          Currency: "USD",
        },
        PartnerAccountID: "UUID",
        Source: moov.SchedulePaymentMethod{
          PaymentMethodID: "UUID",
        },
        Destination: moov.SchedulePaymentMethod{
          PaymentMethodID: "UUID",
        },
      },
    },
  },

  Recur: &moov.Recur{
    Start:           &start,
    RecurrenceRule: "FREQ=MONTHLY;COUNT=5",
    RunTransfer: moov.RunTransfer{
      Description: "Gym Dues",
      Amount: moov.ScheduleAmount{
        Value:    1304,
        Currency: "USD",
      },
      PartnerAccountID: "UUID",
      Source: moov.SchedulePaymentMethod{
        PaymentMethodID: "UUID",
      },
      Destination: moov.SchedulePaymentMethod{
        PaymentMethodID: "UUID",
      },
    },
  },
})
200 400 401 403 404 409 422 429 500 504
The request completed successfully.
{
  "createdOn": "2019-08-24T14:15:22Z",
  "description": "string",
  "destinationAccountID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69",
  "disabledOn": "2019-08-24T14:15:22Z",
  "mode": "production",
  "occurrences": [
    {
      "canceledOn": "2019-08-24T14:15:22Z",
      "error": {
        "message": "string"
      },
      "generated": true,
      "indefinite": true,
      "mode": "production",
      "occurrenceID": "74fabb88-d79e-4e9e-b63b-2ddc96054e61",
      "ranOn": "2019-08-24T14:15:22Z",
      "ranTransferID": "761f3bb8-b7a6-45a9-b8f6-394ef8f68835",
      "runOn": "2019-08-24T14:15:22Z",
      "runTransfer": {
        "amount": {
          "currency": "USD",
          "value": 1204
        },
        "description": "string",
        "destination": {
          "achDetails": {
            "companyEntryDescription": "Gym dues",
            "originatingCompanyName": "Whole Body Fit"
          },
          "cardDetails": {
            "dynamicDescriptor": "WhlBdy *Yoga 11-12"
          },
          "paymentMethodID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69"
        },
        "partnerAccountID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69",
        "source": {
          "achDetails": {
            "companyEntryDescription": "Gym dues",
            "originatingCompanyName": "Whole Body Fit"
          },
          "cardDetails": {
            "dynamicDescriptor": "WhlBdy *Yoga 11-12"
          },
          "paymentMethodID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69"
        }
      },
      "scheduleID": "b7aa2ee2-8783-4fc9-9fa6-a4720b30b20d",
      "status": "pending"
    }
  ],
  "ownerAccountID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69",
  "partnerAccountID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69",
  "recur": {
    "indefinite": true,
    "recurrenceRule": "string",
    "runTransfer": {
      "amount": {
        "currency": "USD",
        "value": 1204
      },
      "description": "string",
      "destination": {
        "achDetails": {
          "companyEntryDescription": "Gym dues",
          "originatingCompanyName": "Whole Body Fit"
        },
        "cardDetails": {
          "dynamicDescriptor": "WhlBdy *Yoga 11-12"
        },
        "paymentMethodID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69"
      },
      "partnerAccountID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69",
      "source": {
        "achDetails": {
          "companyEntryDescription": "Gym dues",
          "originatingCompanyName": "Whole Body Fit"
        },
        "cardDetails": {
          "dynamicDescriptor": "WhlBdy *Yoga 11-12"
        },
        "paymentMethodID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69"
      }
    },
    "start": "2009-11-10T23:00:00Z"
  },
  "scheduleID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69",
  "sourceAccountID": "c520f1b9-0ba7-42f5-b977-248cdbe41c69",
  "updatedOn": "2019-08-24T14:15:22Z"
}

x-request-id

string <uuid> required
A unique identifier used to trace requests.
The server could not understand the request due to invalid syntax.
{
  "error": "string"
}

x-request-id

string <uuid> required
A unique identifier used to trace requests.
The request contained missing or expired authentication.

x-request-id

string <uuid> required
A unique identifier used to trace requests.
The user is not authorized to make the request.

x-request-id

string <uuid> required
A unique identifier used to trace requests.
The requested resource was not found.

x-request-id

string <uuid> required
A unique identifier used to trace requests.
The request conflicted with the current state of the target resource.
{
  "error": "string"
}

x-request-id

string <uuid> required
A unique identifier used to trace requests.
The request was well-formed, but the contents failed validation. Check the request for missing or invalid fields.
{
  "description": "string",
  "occurrences": {
    "property1": "string",
    "property2": "string"
  },
  "recur": "string"
}

x-request-id

string <uuid> required
A unique identifier used to trace requests.
Request was refused due to rate limiting.

x-request-id

string <uuid> required
A unique identifier used to trace requests.
The request failed due to an unexpected error.

x-request-id

string <uuid> required
A unique identifier used to trace requests.
The request failed because a downstream service failed to respond.

x-request-id

string <uuid> required
A unique identifier used to trace requests.

Headers

x-moov-version

string
API version

Specify an API version.

API versioning follows the format vYYYY.QQ.BB, where

  • YYYY is the year
  • QQ is the two-digit month for the first month of the quarter (e.g., 01, 04, 07, 10)
  • BB is the build number, starting at .01, for subsequent builds in the same quarter.
    • For example, v2024.01.00 is the initial release of the first quarter of 2024.

The latest version represents the most recent development state. It may include breaking changes and should be treated as a beta release.

Default: v2024.01.00

Path parameters

accountID

string <uuid> required

scheduleID

string <uuid> required

Body

application/json

description

string
Simple description of what the schedule is.

occurrences

array
Show child attributes

canceled

boolean
If set to true, will cancel the occurrence. If set false will resume the occurrence. If unset leaves the value unchanged.

occurrenceID

string<uuid>
If set this defines what occurrence to modify, if invalid will fail the request. If null or "" it defines to add a new occurrence.

runOn

string<date-time>
Timestamp to run the transfer after. Value must be into the future.

runTransfer

object
Defines the attributes of a transfer.
Show child attributes

amount

object required
Show child attributes

currency

string required Pattern
A 3-letter ISO 4217 currency code.

value

integer<int64> required

Quantity in the smallest unit of the specified currency.

In USD this is cents, for example, $12.04 is 1204 and $0.99 is 99.

description

string required
Simple description to place on the transfer.

destination

object required
Show child attributes

paymentMethodID

string<uuid> required

achDetails

object
Show child attributes

companyEntryDescription

string [4 to 10] characters
An optional override of the default NACHA company entry description for a transfer.

originatingCompanyName

string [4 to 16] characters
An optional override of the default NACHA company name for a transfer.

cardDetails

object
Show child attributes

dynamicDescriptor

string [4 to 22] characters
An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.

partnerAccountID

string<uuid> required

source

object required
Show child attributes

paymentMethodID

string<uuid> required

achDetails

object
Show child attributes

companyEntryDescription

string [4 to 10] characters
An optional override of the default NACHA company entry description for a transfer.

originatingCompanyName

string [4 to 16] characters
An optional override of the default NACHA company name for a transfer.

cardDetails

object
Show child attributes

dynamicDescriptor

string [4 to 22] characters
An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.

recur

object
Defines configuration for recurring transfers.
Show child attributes

recurrenceRule

string required
RRule as defined by RFC 5545 (https://www.rfc-editor.org/rfc/rfc5545#section-3.3.10). Generators available online at the following sites - https://freetools.textmagic.com/rrule-generator, https://jkbrzt.github.io/rrule/

runTransfer

object required
Defines the attributes of a transfer.
Show child attributes

amount

object required
Show child attributes

currency

string required Pattern
A 3-letter ISO 4217 currency code.

value

integer<int64> required

Quantity in the smallest unit of the specified currency.

In USD this is cents, for example, $12.04 is 1204 and $0.99 is 99.

description

string required
Simple description to place on the transfer.

destination

object required
Show child attributes

paymentMethodID

string<uuid> required

achDetails

object
Show child attributes

companyEntryDescription

string [4 to 10] characters
An optional override of the default NACHA company entry description for a transfer.

originatingCompanyName

string [4 to 16] characters
An optional override of the default NACHA company name for a transfer.

cardDetails

object
Show child attributes

dynamicDescriptor

string [4 to 22] characters
An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.

partnerAccountID

string<uuid> required

source

object required
Show child attributes

paymentMethodID

string<uuid> required

achDetails

object
Show child attributes

companyEntryDescription

string [4 to 10] characters
An optional override of the default NACHA company entry description for a transfer.

originatingCompanyName

string [4 to 16] characters
An optional override of the default NACHA company name for a transfer.

cardDetails

object
Show child attributes

dynamicDescriptor

string [4 to 22] characters
An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.

indefinite

boolean
True if the RRule set runs indefinitely.

start

string<date-time>

Response

application/json

createdOn

string<date-time> required

destinationAccountID

string<uuid> required

mode

string<enum> required
The operating mode for an account.
Possible values: sandbox, production

ownerAccountID

string<uuid> required

partnerAccountID

string<uuid> required

scheduleID

string<uuid> required

sourceAccountID

string<uuid> required

updatedOn

string<date-time> required

description

string
Simple description to place on the transfer.

disabledOn

string<date-time>

occurrences

array
Show child attributes

canceledOn

string<date-time>

error

object
Contains details on why the occurrence errored.
Show child attributes

message

string

generated

boolean
True if this was generated by a RRule.

indefinite

boolean
True if the RRule set runs indefinitely.

mode

string
Sandbox or production account mode of this schedule.
The operating mode for an account.
Possible values: sandbox, production

occurrenceID

string<uuid>

ranOn

string<date-time>

ranTransferID

string<uuid>

runOn

string<date-time>

runTransfer

object
Defines the attributes of a transfer.
Show child attributes

amount

object required
Show child attributes

currency

string required Pattern
A 3-letter ISO 4217 currency code.

value

integer<int64> required

Quantity in the smallest unit of the specified currency.

In USD this is cents, for example, $12.04 is 1204 and $0.99 is 99.

description

string required
Simple description to place on the transfer.

destination

object required
Show child attributes

paymentMethodID

string<uuid> required

achDetails

object
Show child attributes

companyEntryDescription

string [4 to 10] characters
An optional override of the default NACHA company entry description for a transfer.

originatingCompanyName

string [4 to 16] characters
An optional override of the default NACHA company name for a transfer.

cardDetails

object
Show child attributes

dynamicDescriptor

string [4 to 22] characters
An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.

partnerAccountID

string<uuid> required

source

object required
Show child attributes

paymentMethodID

string<uuid> required

achDetails

object
Show child attributes

companyEntryDescription

string [4 to 10] characters
An optional override of the default NACHA company entry description for a transfer.

originatingCompanyName

string [4 to 16] characters
An optional override of the default NACHA company name for a transfer.

cardDetails

object
Show child attributes

dynamicDescriptor

string [4 to 22] characters
An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.

scheduleID

string<uuid>

status

string<enum>
Status of the completed occurrence.
Possible values: pending, failed, completed

recur

object
Defines configuration for recurring transfers.
Show child attributes

recurrenceRule

string required
RRule as defined by RFC 5545 (https://www.rfc-editor.org/rfc/rfc5545#section-3.3.10). Generators available online at the following sites - https://freetools.textmagic.com/rrule-generator, https://jkbrzt.github.io/rrule/

runTransfer

object required
Defines the attributes of a transfer.
Show child attributes

amount

object required
Show child attributes

currency

string required Pattern
A 3-letter ISO 4217 currency code.

value

integer<int64> required

Quantity in the smallest unit of the specified currency.

In USD this is cents, for example, $12.04 is 1204 and $0.99 is 99.

description

string required
Simple description to place on the transfer.

destination

object required
Show child attributes

paymentMethodID

string<uuid> required

achDetails

object
Show child attributes

companyEntryDescription

string [4 to 10] characters
An optional override of the default NACHA company entry description for a transfer.

originatingCompanyName

string [4 to 16] characters
An optional override of the default NACHA company name for a transfer.

cardDetails

object
Show child attributes

dynamicDescriptor

string [4 to 22] characters
An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.

partnerAccountID

string<uuid> required

source

object required
Show child attributes

paymentMethodID

string<uuid> required

achDetails

object
Show child attributes

companyEntryDescription

string [4 to 10] characters
An optional override of the default NACHA company entry description for a transfer.

originatingCompanyName

string [4 to 16] characters
An optional override of the default NACHA company name for a transfer.

cardDetails

object
Show child attributes

dynamicDescriptor

string [4 to 22] characters
An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.

indefinite

boolean
True if the RRule set runs indefinitely.

start

string<date-time>