Frequency Switching
Managing frequencies on a future scheduled contract can be achieved using the Frequency Switching API endpoints below. These endpoints allow for dynamic adjustments to future contract schedules, including retrieving, creating, editing, or deleting future schedules. By selecting the appropriate endpoint for the required action, users can efficiently manage payment frequencies, ensuring automated and accurate handling of future contract schedules without manual intervention.
GET/client/{clientCode}/contract/{contractId}/futureSchedulesRetrieves all future schedules (stream versions) for a given contract and stream#
Retrieves all future schedules (stream versions) for a given contract and stream
directDebit/path/client-contract- clientCode
- contractId
Responses
200OK
- StreamVersions [ {
- Id
- Status
- IsPatch
- StartDate
- Frequency
- Every
- PaymentDayInWeek
- PaymentDayInMonth
- PaymentMonthInYear
- InitialDate
- InitialAmount
- RegistrationFee
- ExtraInitialAmounts
- Amount
- FinalAmount
- IsGiftAid
- TerminationType
- TerminationDate
- NumberOfDebits
} ] - SearchInput
- TotalExpectedResults
400Bad Request
directDebit/error- Message
- ErrorCode
- Detail
500Internal Server Error
directDebit/error- Message
- ErrorCode
- Detail
Example request
GET /client/{clientCode}/contract/{contractId}/futureSchedulescurl -L -g -X GET 'https://ddcms.accesspaysuite.com/api/v3/client/{clientCode}/contract/{contractId}/futureSchedules' -H 'apiKey: {apiKey}'HTTP/1.1 200 OK
{
"StreamVersions": [
{
"Id": "e4dda449-4bf3-44fc-b8a6-29b3f90576f7",
"Status": "Future version",
"IsPatch": false,
"StartDate": "2026-06-11T00:00:00",
"Frequency": "Monthly",
"Every": 1,
"PaymentDayInWeek": null,
"PaymentDayInMonth": 2,
"PaymentMonthInYear": null,
"InitialDate": null,
"InitialAmount": 1.0,
"RegistrationFee": null,
"ExtraInitialAmounts": "1",
"Amount": 1.0,
"FinalAmount": 1.0,
"IsGiftAid": false,
"TerminationType": "End on exact date",
"TerminationDate": "2030-06-15T00:00:00",
"NumberOfDebits": null
}
],
"SearchInput": null,
"TotalExpectedResults": 1
}HTTP/1.1 400 Bad Request
{
"Message": "Validation error",
"ErrorCode": 3,
"Detail": ""
}HTTP/1.1 500 Internal Server Error
{
"Message": "Internal server error",
"ErrorCode": 4,
"Detail": ""
}GET/client/{clientCode}/contract/{contractId}/scheduleRetrieves details of a specific contract stream version (schedule)#
Retrieves details of a specific contract stream version (schedule)
directDebit/path/client-contract- clientCode
- contractId
- versionId
Responses
200OK
- StreamVersion {
- Id
- Status
- IsPatch
- StartDate
- Frequency
- Every
- PaymentDayInWeek
- PaymentDayInMonth
- PaymentMonthInYear
- InitialDate
- InitialAmount
- RegistrationFee
- ExtraInitialAmounts
- Amount
- FinalAmount
- IsGiftAid
- TerminationType
- TerminationDate
- NumberOfDebits
} - SearchInput
- TotalExpectedResults
400Bad Request
directDebit/error- Message
- ErrorCode
- Detail
500Internal Server Error
directDebit/error- Message
- ErrorCode
- Detail
Example request
GET /client/{clientCode}/contract/{contractId}/schedulecurl -L -g -X GET 'https://ddcms.accesspaysuite.com/api/v3/client/{clientCode}/contract/{contractId}/schedule?versionId={versionId}' -H 'apiKey: {apiKey}'HTTP/1.1 200 OK
{
"StreamVersion": {
"Id": "c036d70c-6578-4608-acd2-78511acc02f0",
"Status": "Active version",
"IsPatch": false,
"StartDate": "2025-01-15T00:00:00",
"Frequency": "Annually",
"Every": 1,
"PaymentDayInWeek": null,
"PaymentDayInMonth": 15,
"PaymentMonthInYear": null,
"InitialDate": null,
"InitialAmount": null,
"RegistrationFee": null,
"ExtraInitialAmounts": null,
"Amount": 400.0,
"FinalAmount": null,
"IsGiftAid": false,
"TerminationType": "End on exact date",
"TerminationDate": "2025-05-01T00:00:00",
"NumberOfDebits": null
},
"SearchInput": null,
"TotalExpectedResults": 1
}HTTP/1.1 400 Bad Request
{
"Message": "Validation error",
"ErrorCode": 3,
"Detail": ""
}HTTP/1.1 500 Internal Server Error
{
"Message": "Internal server error",
"ErrorCode": 4,
"Detail": ""
}DELETE/client/{clientCode}/contract/{contractId}/deleteSchedule/{futureScheduleId}Deletes a future contract schedule (stream version) by its ID#
Deletes a future contract schedule (stream version) by its ID
directDebit/path/client-contract-future-schedule- clientCode
- contractId
- futureScheduleId
Responses
200OK
- Message
400Bad Request
directDebit/error- Message
- ErrorCode
- Detail
500Internal Server Error
directDebit/error- Message
- ErrorCode
- Detail
Example request
DELETE /client/{clientCode}/contract/{contractId}/deleteSchedule/{futureScheduleId}curl -L -g -X DELETE 'https://ddcms.accesspaysuite.com/api/v3/client/{clientCode}/contract/{contractId}/deleteSchedule/{futureScheduleId}' -H 'apiKey: {apiKey}'HTTP/1.1 200 OK
{
"Message": "Schedule successfully deleted."
}HTTP/1.1 400 Bad Request
{
"Message": "Validation error",
"ErrorCode": 3,
"Detail": ""
}HTTP/1.1 500 Internal Server Error
{
"Message": "Internal server error",
"ErrorCode": 4,
"Detail": ""
}PATCH/client/{clientCode}/contract/{contractId}/editSchedule/{futureScheduleId}Edits an existing future contract schedule#
Edits an existing future contract schedule
directDebit/path/client-contract-future-schedule- clientCode
- contractId
- futureScheduleId
- startDate
- scheduleId
- scheduleName
- every
- paymentDayInMonth
- paymentDayInWeek
- paymentMonthInYear
- initialDate
- initialAmount
- extraInitialAmounts
- amount
- finalAmount
- terminationType
- terminationDate
- numberOfPayments
- isGiftAid
directDebit/future-schedule- StartDate
- ScheduleId
- ScheduleName
- Every
- PaymentDayInMonth
- PaymentDayInWeek
- PaymentMonthInWeek
- InitialDate
- InitialAmount
- ExtraInitialAmounts
- Amount
- FinalAmount
- TerminationType
- TerminationDate
- NumberOfPayments
- IsGiftAid
Responses
200OK
- Message
400Bad Request
directDebit/error- Message
- ErrorCode
- Detail
500Internal Server Error
directDebit/error- Message
- ErrorCode
- Detail
Example — query parameters
PATCH /client/{clientCode}/contract/{contractId}/editSchedule/{futureScheduleId}curl -L -g -X PATCH 'https://ddcms.accesspaysuite.com/api/v3/client/{clientCode}/contract/{contractId}/editSchedule/{futureScheduleId}?startDate=2025-07-01T00:00:00Z&scheduleId=94821c14-8ba3-483f-a9db-02af004d9938&scheduleName=Monthly&every=1&paymentDayInMonth=1&paymentDayInWeek=1&paymentMonthInYear=1&initialDate=2025-07-01T00:00:00Z&initialAmount=100.0&extraInitialAmounts=25.00,10.00&amount=50.0&finalAmount=0.0&terminationType=Until further notice&terminationDate=2026-07-01T00:00:00Z&numberOfPayments=12&isGiftAid=false' \
-H 'apiKey: {apiKey}'HTTP/1.1 200 OK
{
"Message": "Contract schedule was edited successfully."
}HTTP/1.1 400 Bad Request
{
"Message": "Validation error",
"ErrorCode": 3,
"Detail": ""
}HTTP/1.1 500 Internal Server Error
{
"Message": "Internal server error",
"ErrorCode": 4,
"Detail": ""
}Example — request body
PATCH /client/{clientCode}/contract/{contractId}/editSchedule/{futureScheduleId}{
"StartDate": "2025-07-01T00:00:00Z",
"ScheduleId": "94821c14-8ba3-483f-a9db-02af004d9938",
"ScheduleName": "Monthly",
"Every": 1,
"PaymentDayInMonth": 1,
"PaymentDayInWeek": 1,
"PaymentMonthInWeek": 1,
"InitialDate": "2025-07-01T00:00:00Z",
"InitialAmount": 100.0,
"ExtraInitialAmounts": "25.00,10.00",
"Amount": 50.0,
"FinalAmount": 0.0,
"TerminationType": "Until further notice",
"TerminationDate": "2026-07-01T00:00:00Z",
"NumberOfPayments": 12,
"IsGiftAid": false
}curl -L -g -X PATCH 'https://ddcms.accesspaysuite.com/api/v3/client/{clientCode}/contract/{contractId}/editSchedule/{futureScheduleId}' \
-H 'Content-Type: application/json' \
-H 'apiKey: {apiKey}' \
-d '{"StartDate":"2025-07-01T00:00:00Z","ScheduleId":"94821c14-8ba3-483f-a9db-02af004d9938","ScheduleName":"Monthly","Every":1,"PaymentDayInMonth":1,"PaymentDayInWeek":1,"PaymentMonthInWeek":1,"InitialDate":"2025-07-01T00:00:00Z","InitialAmount":100.0,"ExtraInitialAmounts":"25.00,10.00","Amount":50.0,"FinalAmount":0.0,"TerminationType":"Until further notice","TerminationDate":"2026-07-01T00:00:00Z","NumberOfPayments":12,"IsGiftAid":false}'HTTP/1.1 200 OK
{
"Message": "Contract schedule was edited successfully."
}HTTP/1.1 400 Bad Request
{
"Message": "Validation error",
"ErrorCode": 3,
"Detail": ""
}HTTP/1.1 500 Internal Server Error
{
"Message": "Internal server error",
"ErrorCode": 4,
"Detail": ""
}POST/client/{clientCode}/contract/{contractId}/newScheduleCreates a new future contract schedule#
Creates a new future contract schedule
directDebit/path/client-contract- clientCode
- contractId
- startDate
- scheduleId
- scheduleName
- every
- paymentDayInMonth
- paymentDayInWeek
- paymentMonthInYear
- initialDate
- initialAmount
- extraInitialAmounts
- amount
- finalAmount
- terminationType
- terminationDate
- numberOfPayments
- isGiftAid
directDebit/future-schedule- StartDate
- ScheduleId
- ScheduleName
- Every
- PaymentDayInMonth
- PaymentDayInWeek
- PaymentMonthInWeek
- InitialDate
- InitialAmount
- ExtraInitialAmounts
- Amount
- FinalAmount
- TerminationType
- TerminationDate
- NumberOfPayments
- IsGiftAid
Responses
200OK
- NewScheduleId
400Bad Request
directDebit/error- Message
- ErrorCode
- Detail
500Internal Server Error
directDebit/error- Message
- ErrorCode
- Detail
Example — query parameters
POST /client/{clientCode}/contract/{contractId}/newSchedulecurl -L -g -X POST 'https://ddcms.accesspaysuite.com/api/v3/client/{clientCode}/contract/{contractId}/newSchedule?startDate=2025-07-01T00:00:00Z&scheduleId=94821c14-8ba3-483f-a9db-02af004d9938&scheduleName=Monthly&every=1&paymentDayInMonth=1&paymentDayInWeek=1&paymentMonthInYear=1&initialDate=2025-07-01T00:00:00Z&initialAmount=100.0&extraInitialAmounts=25.00,10.00&amount=50.0&finalAmount=0.0&terminationType=Until further notice&terminationDate=2026-07-01T00:00:00Z&numberOfPayments=12&isGiftAid=false' \
-H 'apiKey: {apiKey}'HTTP/1.1 200 OK
{
"NewScheduleId": "94821c14-8ba3-483f-a9db-02af004d9938"
}HTTP/1.1 400 Bad Request
{
"Message": "Validation error",
"ErrorCode": 3,
"Detail": ""
}HTTP/1.1 500 Internal Server Error
{
"Message": "Internal server error",
"ErrorCode": 4,
"Detail": ""
}Example — request body
POST /client/{clientCode}/contract/{contractId}/newSchedule{
"StartDate": "2025-07-01T00:00:00Z",
"ScheduleId": "94821c14-8ba3-483f-a9db-02af004d9938",
"ScheduleName": "Monthly",
"Every": 1,
"PaymentDayInMonth": 1,
"PaymentDayInWeek": 1,
"PaymentMonthInWeek": 1,
"InitialDate": "2025-07-01T00:00:00Z",
"InitialAmount": 100.0,
"ExtraInitialAmounts": "25.00,10.00",
"Amount": 50.0,
"FinalAmount": 0.0,
"TerminationType": "Until further notice",
"TerminationDate": "2026-07-01T00:00:00Z",
"NumberOfPayments": 12,
"IsGiftAid": false
}curl -L -g -X POST 'https://ddcms.accesspaysuite.com/api/v3/client/{clientCode}/contract/{contractId}/newSchedule' \
-H 'Content-Type: application/json' \
-H 'apiKey: {apiKey}' \
-d '{"StartDate":"2025-07-01T00:00:00Z","ScheduleId":"94821c14-8ba3-483f-a9db-02af004d9938","ScheduleName":"Monthly","Every":1,"PaymentDayInMonth":1,"PaymentDayInWeek":1,"PaymentMonthInWeek":1,"InitialDate":"2025-07-01T00:00:00Z","InitialAmount":100.0,"ExtraInitialAmounts":"25.00,10.00","Amount":50.0,"FinalAmount":0.0,"TerminationType":"Until further notice","TerminationDate":"2026-07-01T00:00:00Z","NumberOfPayments":12,"IsGiftAid":false}'HTTP/1.1 200 OK
{
"NewScheduleId": "94821c14-8ba3-483f-a9db-02af004d9938"
}HTTP/1.1 400 Bad Request
{
"Message": "Validation error",
"ErrorCode": 3,
"Detail": ""
}HTTP/1.1 500 Internal Server Error
{
"Message": "Internal server error",
"ErrorCode": 4,
"Detail": ""
}POST/client/{clientCode}/contract/{contractId}/cancelScheduleCancels the schedule of a contract#
Cancels the schedule of a contract
directDebit/path/client-contract- clientCode
- contractId
{} — This call takes no request body — send an empty JSON object.
Responses
200OK
- Message
400Bad Request
directDebit/error- Message
- ErrorCode
- Detail
403Forbidden
directDebit/error- Message
- ErrorCode
- Detail
404Not Found
- Message
- ErrorCode
500Internal Server Error
directDebit/error- Message
- ErrorCode
- Detail
Example request
POST /client/{clientCode}/contract/{contractId}/cancelSchedule{}curl -L -g -X POST 'https://ddcms.accesspaysuite.com/api/v3/client/{clientCode}/contract/{contractId}/cancelSchedule' -H 'apiKey: {apiKey}'HTTP/1.1 200 OK
{
"Message": "Contract schedule was cancelled successfully."
}HTTP/1.1 400 Bad Request
{
"Message": "Validation error",
"ErrorCode": 3,
"Detail": ""
}HTTP/1.1 403 Forbidden
{
"Message": "API not enabled",
"ErrorCode": 7,
"Detail": "This contract cannot be used in API"
}HTTP/1.1 404 Not Found
{
"Message": "Contract not found",
"ErrorCode": 0
}HTTP/1.1 500 Internal Server Error
{
"Message": "Internal server error",
"ErrorCode": 4,
"Detail": ""
}POST/client/{clientCode}/contract/{contractId}/restartScheduleRestarts the schedule of a contract#
Restarts the schedule of a contract
directDebit/path/client-contract- clientCode
- contractId
- comment
{} — This call takes no request body — send an empty JSON object.
Responses
200OK
- Message
400Bad Request
directDebit/error- Message
- ErrorCode
- Detail
403Forbidden
directDebit/error- Message
- ErrorCode
- Detail
404Not Found
- Message
- ErrorCode
500Internal Server Error
directDebit/error- Message
- ErrorCode
- Detail
Example request
POST /client/{clientCode}/contract/{contractId}/restartSchedule{}curl -L -g -X POST 'https://ddcms.accesspaysuite.com/api/v3/client/{clientCode}/contract/{contractId}/restartSchedule' -H 'apiKey: {apiKey}'HTTP/1.1 200 OK
{
"Message": "Contract schedule was restarted successfully."
}HTTP/1.1 400 Bad Request
{
"Message": "Validation error",
"ErrorCode": 3,
"Detail": ""
}HTTP/1.1 403 Forbidden
{
"Message": "API not enabled",
"ErrorCode": 7,
"Detail": "This contract cannot be used in API"
}HTTP/1.1 404 Not Found
{
"Message": "Contract not found",
"ErrorCode": 0
}HTTP/1.1 500 Internal Server Error
{
"Message": "Internal server error",
"ErrorCode": 4,
"Detail": ""
}