Contents

GET [/instances/$INSTANCE]/private/incoming#

Obtain a list of expected incoming wire transfers the backend is anticipating. Since protocol v20.

Required permission: transfers-read

Request:

Query Parameters:
  • payto_uriOptional. Full payto://-URI to filter for transfers to the given bank account (subject and amount MUST NOT be given in the payto:// URI). Note that the URI must be URL-encoded.

  • beforeOptional. Filter for transfers executed before the given timestamp.

  • afterOptional. Filter for transfers executed after the given timestamp.

  • limitOptional. At most return the given number of results. Negative for descending in execution time, positive for ascending in execution time. Default is -20.

  • offsetOptional. Starting expected_transfer_serial_id for an iteration.

  • verifiedOptional. Filter transfers by verification status (YES: reconcilation worked, NO: reconciliation failed, ALL: default)

  • confirmedOptional. Filter transfers that were confirmed (YES: credit confirmed, NO: credit still pending, ALL: default)

Response:

200 OK:

The body of the response is a ExpectedTransferListResponse.

Details:

interface ExpectedTransferListResponse {
   // List of all the expected incoming transfers that fit the
   // filter that we know.
   incoming : ExpectedTransferEntry[];
}
interface ExpectedTransferEntry {
  // How much should be wired to the merchant (minus fees).
  expected_credit_amount?: Amount;

  // Raw wire transfer identifier identifying the wire transfer (a base32-encoded value).
  wtid: WireTransferIdentifierRawP;

  // Full payto://-URI of the bank account that received the wire transfer.
  payto_uri: string;

  // Base URL of the exchange that made the wire transfer.
  exchange_url: string;

  // Serial number identifying the expected transfer in the backend.
  // Used for filtering via offset.
  expected_transfer_serial_id: Integer;

  // Expected time of the execution of the wire transfer
  // by the exchange, according to the exchange.
  execution_time?: Timestamp;

  // True if we checked the exchange's answer and are happy with
  // the reconciation data.
  // False if we have an answer and are unhappy, missing if we
  // do not have an answer from the exchange.
  // Does not imply that the wire transfer was settled (for
  // that, see confirmed).
  validated: boolean;

  // True if the merchant uses the POST /transfers API to confirm
  // that this wire transfer took place (and it is thus not
  // something merely claimed by the exchange).
  // (a matching entry exists in /private/transfers)
  confirmed: boolean;

  // Last HTTP status we received from the exchange, 0 for
  // none (incl. timeout)
  last_http_status: Integer;

  // Last Taler error code we got from the exchange.
  last_ec: ErrorCode;

  // Last error detail we got back from the exchange.
  last_error_detail?: string;
}