cancel
Showing results for 
Search instead for 
Did you mean: 

SAP Subscription Billing: cancellation backdated to subscription start

cnorman
Explorer
0 Kudos

Hi Community!

I would like to cancel an SAP Subscription Billing Subscription using a backdated date, meaning a date in the past. Normally I can use the cancellationNoticeDate workaround, but in this case the requestedCancellationDate is equal to the validFrom date of the subscription. The subscription was created on Dec 1, 2020. In this case, I want to see if I can do something without using the withdrawal endpoint (POST /subscriptions/{id}/withdrawal).


Endpoint: POST /subscriptions/{id}/cancellation

Request:
{ "metaData": { "version": 1 }, "requestedCancellationDate": "2020-12-01", "cancellationReason": "Not Paid" }

Response:

{ "status": 400, "type": "business_error", "message": "Changes in the past aren't allowed for this subscription.", "details": [] }

So that is expected. I know that we can use the cancellation notice date as a workaround in most cases, but in this case the backdated date I want to use is also the validFrom date of the subscription.

Request:
{ "metaData": { "version": 1 }, "requestedCancellationDate": "2020-12-01", "cancellationNoticeDate": "2020-11-30", "cancellationReason": "Not Paid" }

Response:
{ "status": 400, "type": "business_error", "message": "Cancellation notice date must not be before valid from date.", "details": [] }

Is the withdrawal endpoint my only option here? I believe I have all scopes set up for my API keys.

View Entire Topic
cnorman
Explorer
0 Kudos

Hi Vitali!

I believe I am just sending timestamps in UTC. My market timezone is GMT, and I did not include that header parameter billing-sb-dates-in-market-timezone.

Indeed I was missing the overrule terms for subscription cancellation scope in my API keys. I've updated this and it works now, even without the hours/mins/seconds of a timestamp.

If I take this action, I've noticed that the subscription no longer shows up in the subscriptions app in the UI. Thank you for the answers.

Regards,

Chris