- POST /admin/add-incoming#
Simulate a transfer from a customer to the exchange. This API is not idempotent since it’s only used in testing.
Request:
interface AddIncomingRequest { // Amount to transfer. amount: Amount; // Reserve public key that is included in the wire transfer details // to identify the reserve that is being topped up. reserve_pub: EddsaPublicKey; // Account (as full payto URI) that makes the wire transfer to the exchange. // Usually this account must be created by the test harness before this // API is used. An exception is the "fakebank", where any debit account // can be specified, as it is automatically created. debit_account: string; }
Response:
- 200 OK:
The request has been correctly handled, so the funds have been transferred to the recipient’s account. The body is a AddIncomingResponse.
- 400 Bad request:
The request is malformed. The bank replies with an ErrorDetail object.
- 401 Unauthorized:
Authentication failed, likely the credentials are wrong.
- 404 Not found:
The endpoint is wrong or the user name is unknown. The bank replies with an ErrorDetail object.
- 409 Conflict:
The ‘reserve_pub’ argument was used previously in another transfer, and the specification mandates that reserve public keys must not be reused.
Details:
interface AddIncomingResponse { // Timestamp that indicates when the wire transfer will be executed. // In cases where the wire transfer gateway is unable to know when // the wire transfer will be executed, the time at which the request // has been received and stored will be returned. // The purpose of this field is for debugging (humans trying to find // the transaction) as well as for taxation (determining which // time period a transaction belongs to). timestamp: Timestamp; // Opaque ID of the wire transfer initiation performed by the bank. // It is different from the /history endpoints row_id. row_id: SafeUint64; }