taler-docs

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

initiate-peer-pull-credit.rst (1467B)


      1 .. ts:op:: initiatePeerPullCredit
      2 
      3   Initiate an outgoing peer pull payment: create a payment request
      4   (invoice) that another wallet can pay.
      5 
      6   **Request:**
      7 
      8   The request body must be an `InitiatePeerPullCreditRequest` object.
      9 
     10   **Response:**
     11 
     12   On success, the result is an `InitiatePeerPullCreditResponse`
     13   object.
     14 
     15   **Side effects:**
     16 
     17   Creates an outgoing peer pull payment request transaction.
     18 
     19   **Expected errors:**
     20 
     21   The caller can handle the following errors inline:
     22   ``WALLET_NO_SUITABLE_EXCHANGE``, ``WALLET_KYC_LIMIT_EXCEEDED``,
     23   ``WALLET_EXCHANGE_TOS_NOT_ACCEPTED``, ``WALLET_CORE_API_BAD_REQUEST``,
     24   ``WALLET_EXCHANGE_KEYS_NOT_ACCEPTED``.
     25 
     26   **Details:**
     27 
     28   The ``taler://pay-pull/`` URI to hand to the payer is available from
     29   the transaction (see :ts:op:`getTransactionById`) once the
     30   transaction is in the appropriate state; the ``talerUri`` field of
     31   the response is deprecated because it is not necessarily valid yet.
     32 
     33 .. ts:def:: InitiatePeerPullCreditRequest
     34 
     35   interface InitiatePeerPullCreditRequest {
     36     exchangeBaseUrl?: string;
     37     partialContractTerms: PeerContractTerms;
     38 
     39     progressToken?: string;
     40   }
     41 
     42 .. ts:def:: InitiatePeerPullCreditResponse
     43 
     44   interface InitiatePeerPullCreditResponse {
     45     // Taler URI for the other party to make the requested payment.
     46     // Deprecated: not necessarily valid yet until the transaction is
     47     // in the right state.
     48     talerUri?: string;
     49 
     50     transactionId: TransactionIdStr;
     51   }