Overview

This API is used to create or update an Access Fee Override against a Package Subscription or Service Subscription.

Usage

 To create or update an Access Fee Override:

  1. Create a "AddAccessFeeOverride" request
  2. Specify the "PackageSubscriptionID" or "ServiceSubscriptionID"
  3. Specify the "Price" or "Markup"
  4. Authorise the request with valid API credentials
  5. Optionally specify the additional fields (StartDate, EndDate, ReplaceExistingOverride and SetStartToActivationDate).

WSDL

https://api.emersion.com.au/Services.wsdl

Operation name

AddAccessFeeOverride



Business Rules

  • "Manage Access Fee Overrides" feature should be enabled for Service Provider (otherwise, validation message: "Manage Access Fee Overrides" feature is not enabled)
  • Package Subscription ID and Service Subscription ID cannot both be provided at the same time (otherwise, validation message: PackageSubscriptionID and ServiceSubscriptionID cannot both be provided at the same time)
  • Package Plan or Service Plan should support Access Fee Overrides (otherwise, validation message: Package Plan or Service Plan does not support fee overrides)
  • Today (truncated to midnight) will be used if there is no Start Date information




SOAP Example

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:emersion:api" xmlns:urn1="urn:emersion:types">
   <soapenv:Header/>
   <soapenv:Body>
      <urn:AddAccessFeeOverride>
         <urn:ServiceSubscriptionID>4732809</urn:ServiceSubscriptionID>
         <urn:Price>
            <urn1:Amount>999</urn1:Amount>
         </urn:Price>
         <urn:SetStartToActivationDate>true</urn:SetStartToActivationDate>
      </urn:AddAccessFeeOverride>
   </soapenv:Body>
</soapenv:Envelope>


Field Descriptions

All field names are case sensitive. Check enumerated values in the descriptions to confirm capitalisation and spacing. See field types for additional information..

NameDescriptionRequired?Field Type

Character

limit

Values
PackageSubscriptionID
Package Subscription ID to be processedYes (if ServiceSubscriptionID is empty)ID

3241020

ServiceSubscriptionID
Service Subscription ID to be processedYes (if PackageSubscriptionID is empty)ID
4732809
Price > Amount
Price to be overriddenYes (if Markup > Percentage is empty)float
999.99
Price > TaxType > ID
Tax Type ID of Price (refer to the TAX Reference report (Report > List > Reference > Tax Type List - #874)NoID
2
Markup > PercentageMarkup to be overriddenYes (if Price > Amount is empty)float
11.11
StartDateStart Date of Override (if not provided, today which is truncated to midnight should be used)Nodate
2024-01-01
EndDateEnd Date of OverrideNodate
2024-12-31
ReplaceExistingOverrideA flag whether it should update the Last Override
(fields to be updated: (Price > Amount), (Price > TaxType > ID), (Markup > Percentage), StartDate, and EndDate)
Noboolean
false
SetStartToActivationDateA flag of whether Start Date of Override should be the same as Activation Date
(Note: Activation Date is Start Date of Package or Service Subscription)
Noboolean
true



Error Handling

Error MessageDescription
Start Date cannot be earlier than Start Date of SubscriptionNew override start date can not be before the start date of subscription as it depends on subscription
EndDate cannot be specified without a StartDateNew override end date should be provided with new start date as they can provide the intention
SetStartToActivationDate cannot be used at the same time as StartDate/EndDateSetStartToActivationDate can not be provided with new start or end date as they should confuse the intention
SetStartToActivationDate cannot be used when Subscription is not PreActive or if there is already an Override in placeCan not apply to set the start date to activation date if the status of subscription is not PreActive or the existing Override is already in place
StartDate is at or before the start of an existing overrideCannot create new override if its start date is earlier or equal than the start date of the existing override
New override period overlaps with an existing override period and EndExistingOverride flag is not setCannot create new override if the existing last override is not enddated or the new start date is earlier than the end date of last override
There is an existing override and ReplaceExistingOverride flag is not setReplaceExistingOverride must be set to 'True' if an existing override exists and it's start date is null