# Migration Account Payouts

## "Version 2" to "Version 2025-01-01"

#### Details that have changed in version 2025-01-01 from v2:

* Version is now date-based and has a specific header (rather than part of Accept/Content-Type)
* we have removed `apiRequestReference` from the request body (replaced by the header key)
* we have removed `instructingTreasuryId` from the request body (now derived from the supplied credentials)
* `requester` is now `merchant`
* `transactionReference` and `entity` moved under the `merchant` object
* `entity` value regex has changed
* added `instruction` with the remaining payload
* added `value`, `narrative` and `purposeOfPayment`
* currencies and amounts moved under the `value`
* `narrative` object now has `line1`
* `purposeOfPaymentCode` is now under the new `purposeOfPayment` object
* `purposeOfPaymentNarrative` is now `description` and under the new `purposeOfPayment` object
* we have removed `notificationUrl`
* `bankDetails` is now `beneficiaryBankDetails`
* `beneficiaryAccountNumber` is now `accountNumber`
* `beneficiaryAccountTypeCode` is now `accountType` and is a string
* Address fields are updated
  * `street` to `address1`
  * `additionalAddressLine` to `address2`
  * `postcodeOrZipCode` to `postalCode`
  * `addressTypeCode` to `type` (value is now a string)
  * `residentialStatusTypeCode` to `residentialStatus` (value is now a string)
* `partyTypeCode` is now `partyType` (value is now a string)
* we have added `dateOfIncorporation` for companies
* personalDetails `typeCode` is now `type`
  * values are now a string ("individual" is now `person`, "company" is `company`, we have added `soleTrader`)
* `titleCode` is `title` (value is now a string)
* `telephony` is now `phones` and `phoneNumber` is now `number`
* `identity` is now `identityDocuments`
* `identityTypeCode` is now `type` (value is now a string)
* `identityNumber` is now `number`
* `startDate` and `endDate` in the identity section are now `validFrom` and `validTo`
* `customerPartyId` is now `customerReference`
* `transactionTypeCode` is now `transactionType` (value is now a string)


#### For the store beneficiary data we have added:

* `payoutInstrumentReference` and `payoutInstrumentId`
* `partyReference`


#### Responses:

* we have amended response structure by removing codes and replacing with messages
* `ubr` is now `payoutRequestId`