Transaction: originalPayee, payee & merchant
Хотелось бы развернутого ответа о их использовании
1) Что такое originalPayee? почему его можно задать только при создании транзакции?
2) Как взаимосвязаны payee & merchant ?
Почему можно задать payee и не задавать merchant?
Почему можно задать payee отличный от merchant->title ?
Почему при установке merchant автоматически не проставляется payee? А при обновлении merchant->title во всех транзакциях обновляется payee ?
(при указании merchant->title имеется в виду что для транзакции указан merchant и это обращение к его title)
т.е. через АПИ originalPayee уже не переименовать.
>> Если где-то не ставится, то, возможно, просто не было в этом необходимости.
какое "где-то"? же об API говорим)
вот кейс - предположим что я создаю транзакцию
{ currentClientTimestamp: 1495411200, serverTimestamp: 0, transaction: [ [ 'id': '2fac2619-48d9-46da-bbea-6b1ac1895164', .... 'originalPayee': null, 'payee': null, 'merchant': '792b6fd6-416a-4e96-a326-5c71ec0d60f6', ], ], merchant: [ [ 'id': '792b6fd6-416a-4e96-a326-5c71ec0d60f6', .... 'title': 'ЗАО РОГА И КОПЫТА', ], ] }В данном случае payee и originalPayee автоматически не заполнятся, а останутся null (ну или любое другое исходное значение)
Опишу с самого начала весь принцип :)
1) originalPayee используется для подсказки категории и получателя в операции. Оно обычно берется из смс или плагина и сохраняется неизменным в этом поле для дальнейшего использования на сервере.
2) payee - это название получателя. Показывается в списке операций в веб-версии. В приложениях показывается, если не задан merchant. После suggest может содержать почищенное либо адаптированное значение originalPayee. К примеру originalPayee = "McDonalds', payee = 'МакДональдс' после suggest.
3) merchant - получатель из справочника, который заполняется вручную пользователем. Если задан, то в списках операций приложения показывается его title. Если нет, то берется payee. При смене merchant payee автоматически не меняется, если только клиент не делает это явно.