taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

accept-bank-integrated-withdrawal.rst (1792B)


      1 .. ts:op:: acceptBankIntegratedWithdrawal
      2   :deprecated:
      3 
      4   This operation is **deprecated**.  Use
      5   :ts:op:`prepareBankIntegratedWithdrawal` followed by
      6   :ts:op:`confirmWithdrawal` instead.
      7 
      8   Accept a bank-integrated withdrawal in one step, equivalent to
      9   preparing the withdrawal and then confirming it with the given
     10   exchange and amount.  A background task then registers the reserve
     11   with the bank and withdraws the coins; once the bank has registered
     12   the reserve, the user authorizes the wire transfer in their banking
     13   application via the returned ``confirmTransferUrl``.
     14 
     15   **Request:**
     16 
     17   The request must be an `AcceptBankIntegratedWithdrawalRequest`
     18   object.
     19 
     20   **Response:**
     21 
     22   On success, the result is an `AcceptWithdrawalResponse` object.
     23 
     24   **Side effects:**
     25 
     26   Combines the side effects of :ts:op:`prepareBankIntegratedWithdrawal`
     27   and :ts:op:`confirmWithdrawal`: creates (or reuses) the withdrawal
     28   transaction and starts the task that registers the reserve with the
     29   bank and withdraws the coins.
     30 
     31   **Expected errors:**
     32 
     33   The caller can handle the following errors inline:
     34   ``WALLET_EXCHANGE_KEYS_NOT_ACCEPTED``.
     35 
     36 .. ts:def:: AcceptBankIntegratedWithdrawalRequest
     37 
     38   interface AcceptBankIntegratedWithdrawalRequest {
     39     talerWithdrawUri: string;
     40     exchangeBaseUrl: string;
     41     forcedDenomSel?: ForcedDenomSel;
     42 
     43     // Amount to withdraw.  If the bank's withdrawal operation uses a
     44     // fixed amount, this field must either be left undefined or its
     45     // value must match the amount from the withdrawal operation.
     46     amount?: AmountString;
     47 
     48     restrictAge?: number;
     49 
     50     progressToken?: string;
     51   }
     52 
     53 .. ts:def:: AcceptWithdrawalResponse
     54 
     55   interface AcceptWithdrawalResponse {
     56     confirmTransferUrl?: string;
     57     transactionId: TransactionIdStr;
     58   }