.. meta:: :description: Payout with bank confirmation in Wiserpay API: two-step payout flow with check and pay calls, allowing approval before funds are sent. .. _Payout-with-bank-confirmation: Payout with bank confirmation =========================================== .. role:: ex .. role:: code Introduction ----------------------------- | Payout is a type of transaction which results in funds transfer from Connecting Party banking account to customer (receiver) banking account or digital wallet. This Use-Case describes the integration of payouts which require additional confirmation from the bank. | See terms definitions in :ref:`Glossary`. Payout Flow ----------------------------- .. uml:: :align: center participant Receiver as R participant "Connecting Party" as cp autonumber group Optional R -> cp : Checkout activate cp end == Payout request == cp -> "Wiserpay": /api/v4/payout-check/ activate "Wiserpay" "Wiserpay" --> cp: Order ID cp -> "Wiserpay": Get status by Order ID\napi/v2/status "Wiserpay" --> cp : Response\nstatus,order-stage cp -> "Wiserpay": /api/v4/payout-pay/ "Wiserpay" --> cp : Response payout-pay group Conditional cp -> "Wiserpay": Get status by Order ID\napi/v2/status "Wiserpay" --> cp : Response\nstatus,redirect-to cp -> R: Provide redirect URL deactivate "Wiserpay" deactivate cp activate R R -> "Wiserpay": Redirect by redirect-to deactivate R activate "Wiserpay" "Wiserpay" -> R: Additional Submit Form deactivate "Wiserpay" activate R R -> "Wiserpay": Submit Form deactivate R activate "Wiserpay" end "Wiserpay" --> "Wiserpay": Processing\nPayout group Get Final Status == Receive Connecting Party Callback == cp <- "Wiserpay" : Callback with Final Status "Wiserpay" <-- cp: HTTP 200 deactivate "Wiserpay" == Order Status request == cp -> "Wiserpay": Get status by Order ID\napi/v2/status activate "Wiserpay" "Wiserpay" --> cp : Response\nstatus,order-stage deactivate "Wiserpay" end group Optional cp --> R: Show result deactivate cp end | (1) Payout can be initiated by Connecting Party based on internal business model or Receiver’s request. | (2) To initiate payout, implement payout-check request, see :ref:`/api/v4/payout-check/`. | (4) To implement order status request see :ref:`/api/v2/status/`. | (5) The :ex:`order-stage` parameter should be :ex:`payout_check_validated`. If :ex:`payout_check_validating` is received, the payout request is not confirmed by the bank yet. In this case the Connecting party should continue to request transaction status. | (6) To continue payout processing, implement payout-pay request, see :ref:`/api/v4/payout-pay/`. | (9) Some payout methods require the Receiver to fill the additional data on the form. The form to redirect the customer will return in status response in redirect-to parameter. | (12) The Receiver submits the payout form. | (13) The Receiver gets redirected back to Connecting Party. See :ref:`Final redirect`. | (15) To implement callback with final status handling see :ref:`Connecting Party Callback`. | (17) Status should be requested multiple times with 3-5 seconds interval until final status will be received in response. | (19) Final Status can be sent by Connecting Party based on internal business model or by Receiver’s request. .. ifconfig:: "doc.payneteasy.com" in site_link ---- .. admonition:: See also :class: related-cross-link `Global payout corridors: SEPA, SWIFT, local rails → `_ .. ifconfig:: "doc.payneteasy.ru" in site_link ---- .. admonition:: См. также :class: related-cross-link `Финтех-решения: выплаты и переводы → `_