...
Figma: Schroer, Gabriel (Deactivated)
Sequence Diagram
Lucidchart | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
Business rules
A new Bizum payment must be created for Paycomet.
This payment must work the same as Paycomet's PayPal, it must generate a link and be used in an Iframe where the payment will be processed.
The confirmation/tracking page should show the correct text in the payment reminder for this new payment method
The receipt email should show the correct payment option for this new payment method
The new method should be available in the user account methods list
We have to pay attention to changes from the Payments team, they are making some changes to their routine, and this new implementation cannot change the current behavior.
There are two flags that change the application's behavior: enable-paycomet-webhook-notifications (BE) and enable-backend-commit-order (BE & FE), we must test both ways, with the flags enabled and disabled.
...
Tasks breakdown
Task 1: Create a new feature flag
Flag should be added in: src/utils/launchdarkly/flags.ts
...
Example of use: frontend/src/state/payment/hooks/use-payment.tsx
Task 2: Add Bizum payment to packages
Repo: intl-packages
POC: https://github.com/rbilabs/intl-packages/pull/1024/files
...
After adding this, run the yarn build command.
Reminder: when making any modifications to the package, the other repositories only receive these new modifications after running Bumps.
*Consider only changes to ENUM and Types in POC
Task 3: Added Bizum payment to Paycomet
Repo: intl-psp-paycomet-service
...
Links
Add BIZUM in
TypePayment
and define Controller DTO.Refactor to remover PayPal and add Link (Pay with Link).
Generate Link to PayPal or Bizum.
Outcome
Add BIZUM in
TypePayment
and define Controller DTO.Refactor to remover PayPal and add Link (Pay with Link).
Payment Core
Add
TransactionMethodId
to Bizum with code 11Change function to identify payment with PayPal to identify payment with Link.
Payment
Change confirm payment function to works all payments with link and not only Paypal:
this.confirmPaymentPaypal
=>this.confirmPaymentLink
Task 4: Added Bizum payment to GraphQL.
Repo: intl-pspwhitelabel-paycomet-servicegraphql
POC: https://github.com/rbilabs/intl-whitelabel-graphql/pull/752
It’s necessary to add BIZUM in
CartPaymentCardType
(order.gql) and generate GraphQL.Run yarn update-packages
Add Bizum
Run yarn graphql:types
Define Bizum in
CARD_TYPE_TO_MDW
Define Bizum in
MAP_GQL_CART_PAYMENT_TO_COMMON
Define Bizum in
MAP_GQL_CART_PAYMENT_TO_RBI_COMMON
Now run command:
yarn build