in membership-common/src/main/scala/com/gu/zuora/soap/actions/Actions.scala [253:302]
override def additionalLogInfo = Map(
"SubscriptionId" -> subscriptionId,
"Existing RatePlanId" -> subscriptionRatePlanId,
"New RatePlanId" -> newRatePlanId,
"Date" -> date.toString,
)
override val singleTransaction = true
val body = {
<ns1:amend>
<ns1:requests>
<ns1:Amendments>
<ns2:ContractEffectiveDate>{date}</ns2:ContractEffectiveDate>
<ns2:CustomerAcceptanceDate>{date}</ns2:CustomerAcceptanceDate>
<ns2:Name>Downgrade</ns2:Name>
<ns2:RatePlanData>
<ns1:RatePlan>
<ns2:AmendmentSubscriptionRatePlanId>{subscriptionRatePlanId}</ns2:AmendmentSubscriptionRatePlanId>
</ns1:RatePlan>
</ns2:RatePlanData>
<ns2:ServiceActivationDate/>
<ns2:Status>Completed</ns2:Status>
<ns2:SubscriptionId>{subscriptionId}</ns2:SubscriptionId>
<ns2:Type>RemoveProduct</ns2:Type>
</ns1:Amendments>
<ns1:Amendments>
<ns2:ContractEffectiveDate>{date}</ns2:ContractEffectiveDate>
<ns2:CustomerAcceptanceDate>{date}</ns2:CustomerAcceptanceDate>
<ns2:Name>Downgrade</ns2:Name>
<ns2:RatePlanData>
<ns1:RatePlan>
<ns2:ProductRatePlanId>{newRatePlanId}</ns2:ProductRatePlanId>
</ns1:RatePlan>
</ns2:RatePlanData>
<ns2:Status>Completed</ns2:Status>
<ns2:SubscriptionId>{subscriptionId}</ns2:SubscriptionId>
<ns2:Type>NewProduct</ns2:Type>
</ns1:Amendments>
<ns1:AmendOptions>
<ns1:GenerateInvoice>false</ns1:GenerateInvoice>
<ns1:ProcessPayments>false</ns1:ProcessPayments>
</ns1:AmendOptions>
<ns1:PreviewOptions>
<ns1:EnablePreviewMode>false</ns1:EnablePreviewMode>
<ns1:PreviewThroughTermEnd>true</ns1:PreviewThroughTermEnd>
</ns1:PreviewOptions>
</ns1:requests>
</ns1:amend>
}