29 September 2017
Payments
As part of a Beta improvement initiative, the Payment API has been updated deprecating a series of fields.
- [API] 
externalIdin PaymentDraft, Payment as well as under Update Payment
This field has been deprecated because theinterfaceIdcan be used for the ID set by the payment service provider (PSP), and the newly introducedkeyfield has taken over the role ofexternalID. - [API] 
amountAuthorized,amountPaidandamountRefundedin PaymentDraft, Payment as well as under Update Payment
These fields have been deprecated because their value can be calculated from the total amounts saved in the Transactions.- Example 1: Two transactions, one with 
type:Charge,state:Successandamount:2$and another one withtype:Charge,state:Successandamount:3$. TheamountPaidis5$. - Example 2: Two transactions, one with 
type:Charge,state:Failureandamount:2$and another one withtype:Charge,state:Successandamount:3$. TheamountPaidis3$. - Example 3: Two transactions, one with 
type:Charge,state:Successandamount:3$and another one withtype:Refund,state:Successandamount:2$. TheamountPaidis3$. TheamountRefundedis2$. 
 - Example 1: Two transactions, one with 
 - [API] 
authorizedUntilin PaymentDraft, Payment as well as under Update Payment
We learned the field is of little practical value, as it is either not reliably known, or the authorization time is fixed for a PSP. - [API] 
paymentIdin PaymentStatusInterfaceCodeSet Message
This field has been deprecated because theidin theresourcefield can be used instead. - [API] TransactionType previously had uppercase values like 
AUTHORIZATION,CHARGEetc. These are deprecated. 
Furthermore, another TransactionState has been added.
- [API] The 
InitialTransactionState has been added. It is used when the PSP has not accepted the transaction yet (including if the PSP has not been contacted yet). The existingPendingstate is from now on used when the PSP has accepted the transaction, but it is not completed yet.
In the future, we will change the defaultstatevalue in the TransactionDraft toInitial. Do not depend on the default value! Please set thestatefield explicitly as soon as possible.