Commit Graph

40 Commits

Author SHA1 Message Date
Evgeny Levenets
1ae0c4b1f3
HG-354: add contractors and wallets in party (#205) (#221)
* HG-354: add contractors and wallets in party (#205)

* switch to epic damsel

rbkmoney/damsel@3af8098

* add support for wallet blocking & suspension

* contractor modification support

* wallet modification support

* fix account creation side effects

* add minimal tests

* add wallet blocking & suspension tests

* add simple checks for contractor & wallet

* new checks & exceptions for wallets & contractors

* add marchaling for old events

* add catch-all clause to claim effect marshaling (#222)

* HG-379: add wallet service terms support (#223)

* HG-379: add wallet service terms support

* maybe

* replace `shop` with `shop_id` in varset

* check wallets terms for currencies instead of payment terms

* fix tests

* make identification level for legacy contracts more correct

* Bump to rbkmoney/damsel@3549c635

* Switch to master rbkmoney/damsel@36907b0e

* Switch to master rbkmoney/dominant@4e296b03

* Attempt to easily fix test failures

* Attempt to fix test failures
2018-07-17 20:00:44 +03:00
Evgeny Levenets
6bccc80200
Acts second try (#214)
* Revert "Revert "HG-370: support reporting preferences modification (#208) (#209)" (#212)"

This reverts commit 03ad14a90e.

* fix PayoutScheduleRef unmarshalling
2018-05-17 17:56:43 +03:00
Anton Belyaev
03ad14a90e
Revert "HG-370: support reporting preferences modification (#208) (#209)" (#212)
This reverts commit 4d18057b84.
2018-05-16 20:40:14 +03:00
Evgeny Levenets
4d18057b84
HG-370: support reporting preferences modification (#208) (#209)
* HG-370: support reporting preferences modification (#208)

* switch to epic damsel rbkmoney/damsel@3019575
* add simple test
* add schedule ref validation
* merge forgotten terms for acts
* calm down dialyzer
* add backward compatibility (#210)
2018-05-16 18:25:52 +03:00
Natalia Pulina
ec3fde0037 HG-360: Introduce apple pay (#203) (#207)
rbkmoney/damsel@d9b9706
2018-05-08 15:09:05 +03:00
Natalia Pulina
26818fb642
HG-339: Introduce partial refunds (#187)
* HG-339: Introduce partial refunds (#176)

* HG-339: Enrich refund with payment cash for old events (#177)

* HG-341: Introduce provision and service terms for partial refunds (#180)

*  HG-348: Make refund id using sequences service (#186)

* HG-348: Make refund id using sequences service

* HG-348: Bump to rbkmoney/scoper@cbe3abc

* HG-339: rebar.config fixed

* HG-339: seq_proto -> hg_proto.app.src (#188)

* HG-339: Cant start simultaneous partial refunds (#189)

* HG-339: Bump rbkmoney/damsel@349d26c, Bump rbkmoney/dominant@007326a
2018-03-06 18:05:18 +03:00
Evgeny Levenets
911bb7d6e7
HG-312: add payout terms support (#181)
* HG-312: add payout terms support (#174)

* add payout terms support
* add payout method condition support
* clean up hg_party a little bit
* separate payment institution stuff

* CAPI-251: add varset support to payment institution terms computation (#178)

* add varset support to payment institution terms computation
* add more science to pmnt_institution test

*  HG-343: add marshaling for old models (#183)

* bump damsel and dominant
* remove policy from payout service terms
* rename SheduleRef to PayoutSheduleRef to match damsel naming
* add marshaling for old models: international bank account, international legal entity, shop

* HG-343: fix old contract unmarshalling (#184)

* HG-343: fix old contract params unmarshalling (#184)

* linter fix

* HG-343: add support for merchant payout account (#185)

* add support for merchant payout account
* fix exceptions for ComputeTerms methods
2018-02-26 19:29:25 +03:00
Andrew Mayorov
0791b44eee
HG-314: Introduce digital wallets (#164)
* HG-314: Let it learn new payment tool and storage schema

* HG-314: Add forgotten payment tool condition assertions

* HG-314: Increase healthcheck timeouts just for the fun of it

* HG-326: Introduce new rounding rule for cashflow volume (#169)

* BA-52: Bump to master rbkmoney/damsel@620cca5

* BA-52: Bump to master rbkmoney/dominant@68d75c0
2018-01-24 16:40:54 +03:00
Evgeny Levenets
1beb993ea3
HG-305: bring payment institutions on the table (#167)
* HG-305: add payment institutions support (#159)
* HG-310: add descrete party revisioning (#162)
* HG-317: add international legal entity & bank account (#163)
* HG-317: marshaling & migration (#165)
* MSPF-335: add default payment inst to claim's changeset and effects (#168)
* MSPF-335: add party revision to Invoice (#170)
2018-01-21 20:59:44 +03:00
Dmitry Manik
70408c2bae
Subs-2 (#158) 2017-11-22 14:38:09 +03:00
Timur
608c84e689 We decided to get rid of IPv6 in compose (#147) 2017-10-20 13:43:44 +03:00
Andrew Mayorov
d970a2c426 HG-58: Introduce refunds and payments provision terms (#118)
* HG-229: Implement refunds facilities (#107)

* HG-229: Respect payments / refunds provision terms

* HG-229: Respect provider limits

* HG-229: Simplify domain macros usage

* HG-229: Embrace terms requiredness (#113)

* HG-263: Optimize payment risk coverage (#116)

* HG-262: Bump damsel and service deps

 * rbkmoney/dominant@298cd19
 * rbkmoney/machinegun@1844dff
 * rbkmoney/shumway@7a5f95e
 * rbkmoney/damsel@49773b2
2017-09-12 14:12:44 +03:00
Andrew Mayorov
037929640e HG-237: Implement hold payments (#110)
* HG-236: Hold realisation

* HG-248: msgpack structures used for invoice (#105)

* HG-246: improve support for 54FL (#101)

* BJ-201: Require suspend timeout to be set explicitly (#102)

* Allow proxy to keep sessions suspended (#103)

* HG-232: add fatal risk score support (#104)

* HG-248: msgpack structures used for invoice

* CAPI-176: add payment terminal support (#106)

* HG-255: Selector for holds handled

* HG-248: unmarshal metadata fixed (#109)

* HG-237: Switch to rbkmoney/damsel@44afec3 master
2017-08-29 19:33:14 +03:00
Evgeny Levenets
a0c7575fbc CAPI-176: add payment terminal support (#106) 2017-08-18 11:38:15 +03:00
Anton Belyaev
376afd7489 Introduce invoice templates (#99)
* introduce invoice templates
* push image from Jenkins on epic branches
* bump machinegun version
2017-07-26 17:50:32 +03:00
Andrew Mayorov
8fe96f1f4c HG-219: Implement multiclaim facilities (#98)
* HG-173: changed party interface to claims (#79)

* DC-45: implemented dirty version of event batching (#92)

* DC-45: implemented dirty version of event batching

* DC-45: Make invoice machines emit changes within single event

* HG-229: Embrace new events hierarchy (#94)

* HG-229: Bump to rbkmoney/damsel@7bb67fc

* HG-229: Embrace new events hierarchy

* HG-229: Fix long time broken typespecs

* HG-229: Employ session results + further decouple sessions from payment

* HG-229: Better classify payment errors

* HG-229: Implement model splitting

* HG-229: Stuff location with something meaningful

* HG-229: Overcome a couple of rebase related issues

* HG-229: Drop event filtering facilities altogether

* HG-229: Make result more explicit

* HG-229: Lessen verbosity on cleaning up

* HG-192: Handle missing shop properly (#95)

* HG-173: fixed some shop-related asserts (#97)

* HG-219: Bump to upstream rbkmoney/damsel@b665c89
2017-07-17 16:33:57 +03:00
Andrew Mayorov
bb0bae22ef HG-196: Introduce naive payment cash flow adjustments (#88)
* HG-196: Lose containerpilot finally

* HG-196: Switch to keynslug/damsel

* HG-196: Shortcut invoice / payment creation interface

* HG-196: Refactor UserInfo reuse, move access control to the call ctx

* HG-196: Implement payment adjustments

* HG-196: Quickly shut linter up

* HG-196: Fix bad clause

* HG-196: Make a couple of cosmetic fixes

* HG-196: Expand adjustment tests coverage

* HG-196: Constrain complex id construction more

* HG-196: Rename exception macro

* HG-196: Revert occasional verbosity boost

* HG-196: Shortcut getting payment

* HG-196: Make id construction more specific

* HG-196: Update to reflect finally negotiated protocol

* HG-196: Bump to rbkmoney/woody_erlang@2d00bda

* HG-196: Heal occasional error traces during tests

* HG-196: Fix a whoopsie

* HG-196: Fix dialyzer complaints

* HG-196: Bump to rbkmoney/damsel@8747590
2017-06-15 19:57:02 +03:00
Andrew Mayorov
5824c62847 HG-190: Abuse persistent timers in the invoice machine (#84)
* HG-190: Cut down on extraneous mg calls a little

* HG-190: Switch to rbkmoney/damsel@4018c41

* HG-190: Abuse persistent timers in the invoice machine

* HG-190: Drop merchant proxy logic altogether

* HG-190: Add one more test on invoice timings

* HG-190: Fix confusing timer management

* HG-190: Oops

* HG-190: Switch to damsel upstream, bump to rbkmoney/machinegun@a5a8653

* HG-190: Bump to rbkmoney/machinegun@707c2f8
2017-05-04 17:58:54 +03:00
Andrew Mayorov
5bbee121a5 HG-144: Make state processors msgpack-aware (#78)
* HG-155: Fix invoicing handler quirks

* HG-144: Make state processors msgpack-aware

* HG-155: Bump to rbkmoney/damsel@d0c4a06, rbkmoney/machinegun@e04e529

* HG-155: Bump to rbkmoney/dominant@61320c4
2017-03-29 19:18:52 +03:00
Evgeny Levenets
6dae29bfab HG-154: party management checks validation (#65) 2017-02-17 15:58:04 +03:00
Evgeny Levenets
c513d76981 MSPF-191: bumped to rbkmoney/woody_erlang@b5ae9ae (#72)
rbkmoney/woody_erlang@b5ae9ae
2017-02-15 21:33:46 +03:00
Andrew Mayorov
eee9eceaf8 MSPF-191: Fix inappropriate timeout setup after payment capture (#70)
* MSPF-191: Fix inappropriate timeout setup after payment capture

* MSPF-191: Bump to rbkmoney/machinegun@a0e488b
2017-02-08 19:40:35 +03:00
Andrew Mayorov
44825a9eec HG-152: Set up a proxy while creating a shop (#66) 2017-02-03 20:00:17 +03:00
Andrew Mayorov
bcd776a418 Implement all the hacks (#63)
* HG-153: Implement setting transport options up for proxies

* HG-153: Reduce inpector selector during payment init

* HG-151: Implement cost range condition

* HG-151: Reimplement inspector tests using selector

* HG-138: Shitcode up a party-related selectors implementation

* HG-153: Use proxy transport options from the app env

* HG-138: Implement const predicate reduction

* HG-138: Bump to rbkmoney/damsel@61701d2

* HG-138: Bump up dominant and build image

* HG-138: Make compose more insistent on health checking

* HG-152: Bump to rbkmoney/image-service-erlang@13454a9

* HG-138: Bump up dominant again

* HG-153: Make cash range check fail upon misconfiguration
2017-02-01 21:44:07 +03:00
Evgeny Levenets
669fdab027 HG-145: party management improvements (#62) 2017-01-31 23:02:03 +03:00
Andrew Mayorov
3af4a8bd0b HG-131: Shitcode a merchant proxy integration (#58)
* HG-130: Adapt to the damsel with breaking changes

* HG-131: Implement merchant proxy binding

* HG-131: Refactor shitty code a bit

* HG-131: Add upsert facility to help filling dmt up in tests

* HG-131: Name children properly to run more than one proxy handler

* HG-131: Fix a spec

* HG-131: Narrow a number of cases w/ asserting nonempty history

* HG-131: Drop unnecessary handling of woody errors

* HG-131: Shitcode a merchant proxy integration

* HG-131: Switch to the damsel upstream

* HG-131: Fix confusing type declarations

* HG-131: Adhere to the callback interface

* HG-131: Ensure proxy setup accepted automatically
2017-01-16 18:22:57 +03:00
Andrew Mayorov
1efefe6e20 HG-130: Adapt to the damsel with breaking changes (#52)
* HG-130: Adapt to the damsel with breaking changes

* HG-130: Switch to proper damsel master

* HG-130: Hack around a damsel's whoopsie

* HG-130: Bump dominant and machinegun images
2017-01-11 17:22:41 +03:00
Evgeny Levenets
7a423bdff9 HG-112: implemented party contracts (#53) 2017-01-10 19:53:01 +03:00
Evgeny Levenets
5281200d62 HG-128: bumped machinegun (#54)
Bumped to 2c956c1172
2016-12-27 18:13:54 +03:00
Artem Ocheredko
c1b6e02847 HG-74 Integrate with new damsel protocols (#50)
* HG-74 Integrate with new damsel protocols
2016-12-08 19:18:32 +03:00
Andrew Mayorov
ef9864b17f HG-63: Interwine payment processing with accounting (#45)
* HG-63: Interwine payment processing with accounting

* HG-63: Fix linting issues

* HG-63: Fix badmatch

* HG-63: Play with timings in tests

* HG-63: Add a couple of TODOs

* HG-63: Use `partition` instead of deceptive `splitwith`
2016-10-23 17:57:22 +03:00
Andrew Mayorov
235513c472 HG-64: Implement validation and naïve routing (#39)
* HG-62: Implement cashflows, w/o any reasonable safeguards for now

* HG-64: Drop unused piece of code

* HG-64: Export a domain revision type

* HG-64: Validate invoice params upon creation

* HG-64: Create default shop from prototype

* HG-64: Fix badmatch

* HG-64: Implement validation and naive routing

* HG-64: Bump to rbkmoney/damsel@29d6caf

* HG-64: Fix linting issues

* HG-64: Activate shop created from prototype

* HG-64: Refactor everything to use the newest woody_erlang

* HG-64: Add TODO concerning importance of autogenerated reflection
2016-10-20 13:51:35 +03:00
Igor Savchuk
f88657ef80 add dmt_client (#21)
* add dmt_client

remove traitorous tab

fix traitorous spec

fixes

rebase fixes

add tiny little fixes

eta wtuka ni k chemu

fix tabs and spaces

* drop some ugly stuff

* use fresh dominant image

* update build_utils
2016-10-16 20:55:55 +02:00
Andrew Mayorov
0e7f75bd9f HG-61: Implement renewed invoicing service protocol (#35)
* HG-64: Implement renewed invoicing protocol

 * Bump damsel to rbkmoney/damsel@5e264e0

* HG-64: Relax the linter and fix a spec error

* Hg-64: Fix incorrect specs

* HG-64: Bump machinegun w/ bugfix
2016-10-14 20:27:22 +03:00
Artem Ocheredko
5e900f7e92 HG-67 Add account management (#23)
* HG-67 Add account management. Add default shop services for shop creation. Add party management todo
2016-10-12 15:44:21 +03:00
Andrew Mayorov
6d46d566d0 HG-51: Payments over new protocol (#24)
* HG-51: Implement new proxy protocol, shitcode at its best

* HG-51: Refactor a bit

* HG-51: Switch to a renewed mg protocol

* HG-51: Bump to damsel upstream w/ payer contact info

* HG-51: Mention pointlessly complex payment ids in TODO list

* HG-51: Hardcode eventsink id instead

* HG-51: Update lockfile

* HG-51: Fail furiosly when callback handling ends up w/ unexpected error

* HG-51: Store less state in the session start event

* HG-51: Fail furiously on protocol errors, e.g. proxy contract violations

* HG-51: Add more TODO
2016-10-10 19:05:28 +03:00
Andrew Mayorov
423b6c7630 MG-16: Reimplement state processing in line with proto changes (#19)
* MG-16: Reimplement state processing in line w/ proto changes + remove some quirks

* MG-16: Update machinegun endpoints

* MG-16: Bump to the newest woody

* MG-16: Switch to a fresh machinegun container in test env
2016-08-25 15:41:23 +00:00
Anton Belyaev
02e8d2b8f6 MSPF-66: fix for release target (#16) 2016-08-12 21:33:39 +04:00
Andrew Mayorov
d5662dd9dc HG-48: Switch to the new stateproc protocol (#14)
* HG-48: Linting should not require compilation

* HG-48: Switch to the new stateproc protocol + introduce dynamic dispatch

* HG-47: Update TODOs

* HG-48: Fix process_signal contract

* HG-48: Update Payer construction in tests

* HG-48: Fix context handling

* HG-48: Bump damsel dep and update invoice machine accordingly

* HG-48: Bump mg_prototype service dep

* HG-48: Consolidate service specs in one place
2016-08-11 15:52:58 +00:00
Anton Belyaev
b78c1af62d MSPF-73: use build_utils (#13)
* MSPF-73: use build_utils - align with the latest & greatest WoWs
2016-08-08 22:16:17 +04:00