| Q | A
|-----------------|-----
| Branch? | 2.0
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Related tickets | after
https://github.com/Sylius/SyliusResourceBundle/pull/942
| License | MIT
<!--
- Bug fixes must be submitted against the 1.13 branch
- Features and deprecations must be submitted against the 1.14 branch
- Features, removing deprecations and BC breaks must be submitted
against the 2.0 branch
- Make sure that the correct base branch is set
To be sure you are not breaking any Backward Compatibilities, check the
documentation:
https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
This PR was merged into the 1.13 branch.
Discussion
----------
| Q | A
|-----------------|-----
| Branch? | 1.13
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no<!-- don't forget to update the UPGRADE-*.md file -->
| Related tickets |
| License | MIT
<!--
- Bug fixes must be submitted against the 1.13 branch
- Features and deprecations must be submitted against the 1.14 branch
- Features, removing deprecations and BC breaks must be submitted against the 2.0 branch
- Make sure that the correct base branch is set
To be sure you are not breaking any Backward Compatibilities, check the documentation:
https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
Commits
-------
632fa9a9ee [CI] Improve notification Slack message
| Q | A
|-----------------|-----
| Branch? | 2.0
| Bug fix? | no
| New feature? | yes
| BC breaks? | yes
| Deprecations? | yes
| Related tickets | none
| License | MIT
This PR will allow `PaymentRequest` to be used through the UI (not the
API), the goal is to allow developper to create HTTP response they need
to handle any Payment Method. SyliusPayumBundle controller actions will
be preserved to avoid any changes for existing Payum gateways.
# Basic payment flow
```mermaid
---
title: Customer paying an order
---
flowchart TD
A[sylius_shop_checkout_complete]
B[sylius_shop_order_pay]
subgraph Payment Provider
C[External portal
or
custom page]
end
D[sylius_shop_order_after_pay]
E[sylius_shop_order_thank_you]
F[sylius_shop_order_show]
A --> B
B --> C
C --> D
D -- OK --> E
D -- KO --> F
F -- Choose another
payment method or retry --> B
```
# What is the current (Sylius 1.*) URLs flow
```mermaid
---
title: Sylius 1.* - Customer paying an order
---
flowchart TD
A[sylius_shop_checkout_complete] --> B[sylius_shop_order_pay]
subgraph Payum
C[payum_capture_do]
D{External URL
or
custom page}
end
E[sylius_shop_order_after_pay]
subgraph Payum after capture
F[Payum Status
&
ResolveNextRoute
]
end
G[sylius_shop_order_thank_you]
H[sylius_shop_order_show]
B -- No payment --> G
B --> C
C <--> D
D --> E
C --> E
E --> F
F -- KO --> H
F -- OK --> G
H -- Choose another
payment method or retry --> B
```
# What this PR is aiming to do
```mermaid
---
title: Sylius 2.* - Customer paying an order
---
flowchart TD
A[sylius_shop_checkout_complete]
B[sylius_shop_order_pay]
subgraph No payment
C[No payment processing]
end
subgraph Payum
D[Keep existing Payum
beforeCapture processing]
end
subgraph Payment Request
E[Payment Request processing]
F[Http Response processing]
end
G[sylius_shop_order_after_pay]
subgraph Payum after pay
H[Keep existing
afterCapture processing]
end
subgraph Payment request after pay
I[Payment request processing]
J[Http response processing]
end
A --> B
B --> C & D & E
G --> H & I
C --> K
D --> G
E --> F
F --> G
I --> J
H -- OK --> K
H -- KO --> L
J -- OK --> K
J -- KO --> L
L -- Choose another
payment method or retry --> B
K[sylius_shop_order_thank_you]
L[sylius_shop_order_show]
```
**Order pay phase**
- [x] `sylius.controller.payum::prepareCaptureAction` dispatch action
content into several services.
- [x] Create a more generic
`sylius.controller.shop.order_pay::payAction` to replace the previous
SyliusPayumBundle controller action.
- [x] Introduce `PaymentRequest` orderPay HTTP Response.
**After pay phase**
- [x] `sylius.controller.payum::afterCaptureAction` dispatch action
content into several services.
- [x] Create a more generic
`sylius.controller.shop.order_pay::afterPayAction` to replace the
previous SyliusPayumBundle controller action.
- [x] Introduce `PaymentRequest` afterPay HTTP Response.
**Global**
- [ ] Creeate or update tests.
| Q | A
|-----------------|-----
| Branch? | 2.0
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Related tickets | n/a
| License | MIT
| Q | A
|-----------------|-----
| Branch? | 2.0
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Related tickets | n/a
| License | MIT
<!--
- Bug fixes must be submitted against the 1.13 branch
- Features and deprecations must be submitted against the 1.14 branch
- Features, removing deprecations and BC breaks must be submitted
against the 2.0 branch
- Make sure that the correct base branch is set
To be sure you are not breaking any Backward Compatibilities, check the
documentation:
https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
Removed SyliusUiBundle config import both in Admin and Shop. It was
making mess in Sylius-Standard
| Q | A
|-----------------|-----
| Branch? | 2.0
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no<!-- don't forget to update the UPGRADE-*.md file
-->
| Related tickets | https://github.com/api-platform/core/pull/6659
| License | MIT
<!--
- Bug fixes must be submitted against the 1.13 branch
- Features and deprecations must be submitted against the 1.14 branch
- Features, removing deprecations and BC breaks must be submitted
against the 2.0 branch
- Make sure that the correct base branch is set
To be sure you are not breaking any Backward Compatibilities, check the
documentation:
https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
| Q | A
|-----------------|-----
| Branch? | 2.0
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no<!-- don't forget to update the UPGRADE-*.md file
-->
| Related tickets | bases on #16960
| License | MIT
I would like to introduce operations' names for all endpoints to
simplify customization in end applications.
<!--
- Bug fixes must be submitted against the 1.13 branch
- Features and deprecations must be submitted against the 1.14 branch
- Features, removing deprecations and BC breaks must be submitted
against the 2.0 branch
- Make sure that the correct base branch is set
To be sure you are not breaking any Backward Compatibilities, check the
documentation:
https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
| Q | A
|-----------------|-----
| Branch? | 2.0
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Related tickets | -
| License | MIT
| Q | A
|-----------------|-----
| Branch? | 2.0
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no<!-- don't forget to update the UPGRADE-*.md file
-->
| Related tickets |
| License | MIT
<!--
- Bug fixes must be submitted against the 1.13 branch
- Features and deprecations must be submitted against the 1.14 branch
- Features, removing deprecations and BC breaks must be submitted
against the 2.0 branch
- Make sure that the correct base branch is set
To be sure you are not breaking any Backward Compatibilities, check the
documentation:
https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
| Q | A
|-----------------|-----
| Branch? | 2.0
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no<!-- don't forget to update the UPGRADE-*.md file
-->
| Related tickets |
| License | MIT
<!--
- Bug fixes must be submitted against the 1.13 branch
- Features and deprecations must be submitted against the 1.14 branch
- Features, removing deprecations and BC breaks must be submitted
against the 2.0 branch
- Make sure that the correct base branch is set
To be sure you are not breaking any Backward Compatibilities, check the
documentation:
https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->