- Customer imported a subscription into OSA using the Office 365 import script on Apr 10.
- The account is having the Charge Before Billing Period billing mode and the next billing date is set to Apr 25.
- No billing order was generated on Apr 25.
As per importSubsCSP.py:
dtStart = datetime.datetime.now()
It sets NextBillDate to 2017-04-25 02:00:00+02:
pba=> SELECT "startDate"::abstime , "NextBillDate"::abstime from "Subscription" where "subscriptionID" = 10000001; -[ RECORD 1 ]+----------------------- startDate | 2017-04-10 02:00:00+02 NextBillDate | 2017-04-25 02:00:00+02 pba=>
According to the server time:
[root@osscore ~]# date Wed Apr 25 10:00:00 SAST 2017
The server time (SAST in the example above) is 2 hours ahead of Greenwich Mean Time.
It should be set to "2017-04-25 00:00:00+02" in order to be billed on Apr 25. In the case above the BA daily billing process on Apr 25 will consider the today's date (25.04 00:00) to be less than the next billing date of the subscription (25.04 02:00) and will not bill the subscription.
This behavior is by design of the Office365 import script. Subscriptions created via BA and not through the script should not have this issue.
In the example above the billing order will actually be created on Apr 26, the next day.
As a workaround, the date should be modified directly in the import input .csv file.
A feature request POA-111242: "Feature to correct the SubscriptionStartDate created by O365 Import script" was submitted to the development team to correct this behavior.