summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Häberli <haebu@rubigen.ch>2024-04-17 10:58:54 +0200
committerJoel Häberli <haebu@rubigen.ch>2024-04-17 10:58:54 +0200
commit3da439773f360152f938006e6f2d5c8a646b7fc8 (patch)
treeaa90bb1966394f576d0ddbdb2e43152f392814f1
parent48e9d2c4deff3935ecc92f9b357a19ef81207b94 (diff)
downloaddocs-3da439773f360152f938006e6f2d5c8a646b7fc8.tar.gz
docs-3da439773f360152f938006e6f2d5c8a646b7fc8.tar.bz2
docs-3da439773f360152f938006e6f2d5c8a646b7fc8.zip
docs: integrate review feedback
-rw-r--r--core/api-bank-integration.rst60
1 files changed, 14 insertions, 46 deletions
diff --git a/core/api-bank-integration.rst b/core/api-bank-integration.rst
index c1cb9ae5..8f676cb9 100644
--- a/core/api-bank-integration.rst
+++ b/core/api-bank-integration.rst
@@ -129,7 +129,7 @@ for the withdrawal operation (the ``WITHDRAWAL_ID``) to interact with the withdr
// Reserve public key selected by the exchange,
// only non-null if ``status`` is ``selected`` or ``confirmed``.
// @since v1
- selected_reserve_pub?: string;
+ selected_reserve_pub?: EddsaPublicKey;
// Exchange account selected by the wallet
// only non-null if ``status`` is ``selected`` or ``confirmed``.
@@ -151,27 +151,6 @@ for the withdrawal operation (the ``WITHDRAWAL_ID``) to interact with the withdr
// Does not guarantee that the funds have arrived at the exchange already.
transfer_done: boolean;
}
-
- .. ts:def:: IndirectWithdrawalOperationStatus
-
- // Since vC2EC
- interface IndirectWithdrawalOperationStatus {
-
- // the current status of the withdrawal
- status: "pending" | "selected" | "aborted" | "confirmed";
-
- // the withdrawable amount
- amount: Amount;
-
- // a refund capable payto-uri
- sender_wire: string;
-
- // the wire type used for the transaction
- wire_types: string[];
-
- // the reserve public key tied to the withdrawal
- reserve_public_key: EddsaPublicKey;
- }
.. http:post:: /withdrawal-operation/$WITHDRAWAL_ID
@@ -182,23 +161,10 @@ for the withdrawal operation (the ``WITHDRAWAL_ID``) to interact with the withdr
interface BankWithdrawalOperationPostRequest {
// Reserve public key.
- reserve_pub: string;
+ reserve_pub: EddsaPublicKey;
// Payto address of the exchange selected for the withdrawal.
- selected_exchange: string;
- }
-
- .. ts:def:: IndirectWithdrawalOperationPostRequest
-
- // Since vC2EC
- interface ProviderWithdrawalOperationPostRequest {
- // Reserve public key.
- reserve_pub: string;
-
- // Id of the terminal of a provider. The terminal
- // is the specific device leveraged for the withdrawal
- // owned by a specific provider.
- terminal_id: number;
+ selected_exchange?: string;
}
**Response:**
@@ -206,10 +172,6 @@ for the withdrawal operation (the ``WITHDRAWAL_ID``) to interact with the withdr
:http:statuscode:`200 OK`:
The bank has accepted the withdrawal operation parameters chosen by the wallet.
The response is a `BankWithdrawalOperationPostResponse`.
- :http:statuscode:`204 No Content`:
- The bank has accepted the withdrawal operation parameters chosen by the wallet.
- This response will be returned in case of a `IndirectWithdrawalOperationPostRequest`.
- Since vC2EC
:http:statuscode:`404 Not found`:
The bank does not know about a withdrawal operation with the specified ``WITHDRAWAL_ID``.
:http:statuscode:`409 Conflict`:
@@ -242,7 +204,7 @@ for the withdrawal operation (the ``WITHDRAWAL_ID``) to interact with the withdr
transfer_done: boolean;
}
-.. http:post:: /withdrawal-operation/$WITHDRAWAL_ID/payment
+.. http:post:: /withdrawal-operation/$WITHDRAWAL_ID/confirm
Since protocol vC2EC
@@ -256,20 +218,26 @@ for the withdrawal operation (the ``WITHDRAWAL_ID``) to interact with the withdr
**Request:**
- .. ts:def:: PaymentNotification
+ .. ts:def:: BankWithdrawalConfirmationRequest
- interface PaymentNotification {
+ interface WithdrawalConfirmationRequest {
// The provider specific transaction identifier.
// This identifier is used by the bank to attest the
// payment at the providers backend.
provider_transaction_id: string;
+
+ // An identifier, which identifies the device
+ // processing the payment for the withdrawal
+ // triggering the confirmation (e.g. Terminal
+ // or ATM). Intended for accountability.
+ src_device_id: string;
// The amount to withdraw. Fees are to be sent in the
// separate field 'fees' and not included in the amount.
- amount Amount;
+ amount: Amount;
// The fees, the customer payed at the providers facility.
- fees: Amount;
+ card_fees: Amount;
}
**Response**