get-private-incoming-ID.rst (3705B)
1 .. http:get:: [/instances/$INSTANCE]/private/incoming/$ID 2 3 Obtain details about an expected incoming wire transfers the backend is 4 anticipating. ID must be the ``expected_transfer_serial_id`` 5 from `ExpectedTransferDetails`. 6 Since protocol **v26**. 7 8 **Required permission:** ``transfers-read`` 9 10 **Response:** 11 12 :http:statuscode:`200 OK`: 13 The body of the response is a `ExpectedTransferDetailResponse`. 14 :http:statuscode:`400 Bad Request`: 15 The transfer ID parameter is malformed. 16 Returned with ``TALER_EC_GENERIC_PARAMETER_MALFORMED``. 17 :http:statuscode:`404 Not found`: 18 The expected wire transfer ``$ID`` or instance is unknown. 19 Applicable error codes: 20 21 * ``TALER_EC_MERCHANT_GENERIC_INSTANCE_UNKNOWN`` 22 * ``TALER_EC_MERCHANT_GENERIC_EXPECTED_TRANSFER_UNKNOWN`` 23 :http:statuscode:`500 Internal Server Error`: 24 The server experienced an internal failure. 25 Returned with ``TALER_EC_GENERIC_DB_FETCH_FAILED``. 26 27 **Details:** 28 29 .. ts:def:: ExpectedTransferDetailResponse 30 31 interface ExpectedTransferDetailResponse { 32 33 // List of orders that are settled by this wire 34 // transfer according to the exchange. Only 35 // available if ``last_http_status`` is 200. 36 reconciliation_details?: ExchangeTransferReconciliationDetails[]; 37 38 // Wire fee paid by the merchant. Only 39 // available if ``last_http_status`` is 200. 40 // Not present if the backend was unable to obtain the 41 // wire fee for the ``execution_time`` from the exchange. 42 // (If missing, this is thus indicative of a minor error.) 43 wire_fee?: Amount; 44 45 // How much should be wired to the merchant (minus fees). 46 // Optional, missing if unknown. Happens if we are still waiting for 47 // details from the exchange. 48 // Since protocol **v27**. 49 expected_credit_amount?: Amount; 50 51 // Raw wire transfer identifier identifying the wire transfer (a base32-encoded value). 52 // Since protocol **v27**. 53 wtid: WireTransferIdentifierRawP; 54 55 // Full payto://-URI of the bank account that should 56 // receive the wire transfer. 57 // Since protocol **v27**. 58 payto_uri: string; 59 60 // Base URL of the exchange that made the wire transfer. 61 // Since protocol **v27**. 62 exchange_url: string; 63 64 // Expected time of the execution of the wire transfer 65 // by the exchange, according to the exchange. Used 66 // to compute the applicable wire fee. 67 // Since protocol **v27**. 68 expected_time: Timestamp; 69 70 // Actual execution time of the wire transfer 71 // as seen by us. 72 // Optional, missing if not ``confirmed``. 73 // Since protocol **v27**. 74 execution_time?: Timestamp; 75 76 // True if we checked the exchange's answer and are happy with 77 // the reconciation data. 78 // False if we have an answer and are unhappy, missing if we 79 // do not (yet) have an answer from the exchange. 80 // Does not imply that the wire transfer was settled. 81 // Since protocol **v27**. 82 confirmed: boolean; 83 84 } 85 86 .. ts:def:: ExchangeTransferReconciliationDetails 87 88 interface ExchangeTransferReconciliationDetails { 89 90 // ID of the order for which these are the 91 // reconciliation details. 92 order_id: string; 93 94 // Remaining deposit total to be paid, 95 // that is the total amount of the order 96 // minus any refunds that were granted. 97 // The actual amount to be wired is this 98 // amount minus ``deposit_fee`` and (overall) 99 // minus the ``wire_fee`` of the transfer. 100 remaining_deposit: Amount; 101 102 // Deposit fees paid to the exchange for this order. 103 deposit_fee: Amount; 104 105 }