Symptoms
Office 365 subscription is created using import procedure. Billing order for the subscription is created a day later or day earlier after the first billing period.
Timezone specified on Billing application node differs from UTC:
[root@balinfe01 ~]# timedatectl Local time: Wed 2020-03-04 04:01:23 SAST Universal time: Wed 2020-03-04 02:01:23 UTC RTC time: Wed 2020-03-04 02:01:23 Time zone: Africa/Johannesburg (SAST, +0200) NTP enabled: yes NTP synchronized: yes RTC in local TZ: no DST active: n/a
Cause
Office 365 endpoint always specifies Start Billing Date and Next Billing Date in UTC timezone. In case if other timezone is used on Billing application node, billing order could be created a day later or a day earlier then it should:
pba=> select 1583020800::abstime; abstime ------------------------ 2020-03-01 02:00:00+02 (1 row)
On example above, linux timestamp 1583020800 = 2020-03-01 00:00:00 in UTC. However, customer has SAST, +0200 timezone specified on Billing application node. The same linux timestamp have different value for this timezone which is 2020-03-01 02:00:00+02. With this timestamp, billing order will be actually created at 2020-03-02.
Resolution
The behavior of Office 365 import procedure is considered to be improved in scope of request #APSA-22131.