Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

REST API

To change a payment date you will need to first delete the existing schedule and create a new payment schedule .

1. Delete Schedule

Tip

Status
colourRed
titleDELETE
https://<ServerURL>/CustomerServices/v1.0/accounts/{accountId}/recurringSchedules/{scheduleId}

  1. The start date of the recurring schedule that needs to be deleted must be in the future.

  2. Deleting a last recurring schedule will remove the end date and number of payments of its previous schedule.

  3. You will not be able to delete a schedule if it is the only recurring schedule on the account

2. Create Schedule

using Create Recurring Schedule and define an end date for the existing schedule.

Tip

Status
colourBlue
titlePOST
https://<ServerURL>/CustomerServices/v1.0/accounts/{accountId}/recurringSchedules

  • The newly created schedule will be created as an open-ended schedule, hence there is no EndDate parameter.

  • Accepted values for Frequency are Weekly, Fortnightly, Four-weekly, Monthly, Bi-monthly and Quarterly.

  • If OverrideBillingCycleAlignment is
    If set to true will overrides default behaviour and sets the start date of the new payment schedule to be the recurringScheduleStartDate as described in the example above.

  • PreviousScheduleEndDate
    the PreviousScheduleEndDate property must also be set to close the payment schedule immediately prior appropriately.

SOAP API

Use the CreateSchedule API to change a payment collections date on an account. You will need to create a new payment schedule and define an end date for the existing schedule. This will change the current and any future Payment Schedules that have been defined for the account.

Specify the following parameters:

  • Instalment
    Specify the instalment amount >=$1

  • PaymentFrequency
    Specify the frequency of the payment: OneOff, Weekly, Fortnightly, FourWeekly, Monthly, Bimonthly, Quarterly

  • MinimumEffectiveDate
    The newly created schedule will start on the MinimumEffectiveDate provided but will not automatically be aligned with an existing schedule.

Info

The date specified as the new payment date parameter (MinimumEffectiveDate) must be within the next payment cycle for the Account.

  • DeleteFutureSchedules
    The DeleteFutureSchedules property will cause any schedules that have been set up to come into effect after this schedule to be discarded and replaced with this schedule. Set to true.

  • AdjustFutureSchedules
    The AdjustFutureSchedules property will ensure that the frequency of future, already defined schedules , are set to the frequency defined in this new schedule. Set to true.

  • OverrideBillingCycleAlignment
    This property overrides default behaviour and sets the start date of the new payment schedule to be the MinimumEffectiveDate. Set to true.

  • PreviousScheduleEndDate
    the PreviousScheduleEndDate property must also be set to close the payment schedule immediately prior appropriately.

Scenario

In the scenario where the new schedule is to start soon after the next payment date, it will likely be appropriate to set the PreviousScheduleEndDate property prior to before the next payment date. This will prevent the account from being billed twice in a short time frame.
For example, when changing the payment schedule from weekly on Wednesdays to weekly on Thursdays the PreviousScheduleEndDate might be set to the forthcoming Tuesday.

Sample request message

Code Block
languagexml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:deb="Debitsuccess.WebServices.WCF" xmlns:deb1="http://schemas.datacontract.org/2004/07/Debitsuccess.WebServices.Core">
   <soapenv:Header/>
   <soapenv:Body>
      <deb:CreateSchedule>
         <deb:request>
            <deb1:DateCreated>2020-09-22</deb1:DateCreated>
            <deb1:Id>333</deb1:Id>
            <deb1:RequestInitiator>Kin333</deb1:RequestInitiator>
            <deb1:User>
               <deb1:Id>33333</deb1:Id>
               <deb1:Password>#password</deb1:Password>
               <deb1:Username>username</deb1:Username>
            </deb1:User>
            <deb1:AccountReferenceNo>DEA2884487</deb1:AccountReferenceNo>
            <deb1:ExternalAccountReferenceNo></deb1:ExternalAccountReferenceNo>
            <deb1:AdjustFutureSchedules>false</deb1:AdjustFutureSchedules>
            <deb1:DeleteFutureSchedules>true</deb1:DeleteFutureSchedules>
            <deb1:NewPaySchedule>
               <deb1:Id></deb1:Id>
               <deb1:Description>test schedule 1</deb1:Description>
               <deb1:Installment>10</deb1:Installment>
               <deb1:PaymentFrequency>Weekly</deb1:PaymentFrequency>
               <deb1:ScheduleId>12345</deb1:ScheduleId>
               <deb1:MinimumEffectiveDate>2020-10-15</deb1:MinimumEffectiveDate>
               <deb1:ExternalScheduleIdentifier>ext12345</deb1:ExternalScheduleIdentifier>
            </deb1:NewPaySchedule>
            <deb1:OverrideBillingCycleAlignment>true</deb1:OverrideBillingCycleAlignment>
            <deb1:PreviousScheduleEndDate>2020-10-14</deb1:PreviousScheduleEndDate>
         </deb:request>
      </deb:CreateSchedule>
   </soapenv:Body>
</soapenv:Envelope>

Sample response message

Code Block
languagexml
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Header>
      <ActivityId CorrelationId="9938fba0-43a2-415b-9721-291bec4a4182" xmlns="http://schemas.microsoft.com/2004/09/ServiceModel/Diagnostics">00000000-0000-0000-0000-000000000000</ActivityId>
   </s:Header>
   <s:Body>
      <CreateScheduleResponse xmlns="Debitsuccess.WebServices.WCF">
         <CreateScheduleResult xmlns:a="http://schemas.datacontract.org/2004/07/Debitsuccess.WebServices.Core" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <a:DateCreated>2020-10-06T12:04:35.2856545+13:00</a:DateCreated>
            <a:Id>d3be25ea-0e14-4bff-92b0-9082a037f51a</a:Id>
            <a:ResponseNotes>
               <a:ResponseMessageNote>
                  <a:Code>00</a:Code>
                  <a:Note>Success</a:Note>
                  <a:NoteType>Info</a:NoteType>
               </a:ResponseMessageNote>
            </a:ResponseNotes>
            <a:Status>Succeed</a:Status>
            <a:NewScheduleId>66484786</a:NewScheduleId>
         </CreateScheduleResult>
      </CreateScheduleResponse>
   </s:Body>
</s:Envelope>
Filter by label (Content by label)
showLabelsfalse
showSpacefalse
excerptTypesimple
cqllabel = "createschedule"

On this page:

Table of Contents