From adc9dae4cc3e6888877ff87f6c1d06a140fbe7b6 Mon Sep 17 00:00:00 2001 From: Sebastian Date: Tue, 29 Mar 2022 14:12:45 -0300 Subject: make TALER_RefundConfirmationPS public --- src/include/taler_signatures.h | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'src/include/taler_signatures.h') diff --git a/src/include/taler_signatures.h b/src/include/taler_signatures.h index 52c294cef..606b4f6ac 100644 --- a/src/include/taler_signatures.h +++ b/src/include/taler_signatures.h @@ -442,6 +442,47 @@ struct TALER_PaymentResponsePS struct TALER_PrivateContractHashP h_contract_terms; }; +/** + * @brief Format used to generate the signature on a request to refund + * a coin into the account of the customer. + */ +struct TALER_RefundConfirmationPS +{ + /** + * Purpose must be #TALER_SIGNATURE_EXCHANGE_CONFIRM_REFUND. + */ + struct GNUNET_CRYPTO_EccSignaturePurpose purpose; + + /** + * Hash over the proposal data to identify the contract + * which is being refunded. + */ + struct TALER_PrivateContractHashP h_contract_terms GNUNET_PACKED; + + /** + * The coin's public key. This is the value that must have been + * signed (blindly) by the Exchange. + */ + struct TALER_CoinSpendPublicKeyP coin_pub; + + /** + * The Merchant's public key. Allows the merchant to later refund + * the transaction or to inquire about the wire transfer identifier. + */ + struct TALER_MerchantPublicKeyP merchant; + + /** + * Merchant-generated transaction ID for the refund. + */ + uint64_t rtransaction_id GNUNET_PACKED; + + /** + * Amount to be refunded, including refund fee charged by the + * exchange to the customer. + */ + struct TALER_AmountNBO refund_amount; +}; + GNUNET_NETWORK_STRUCT_END -- cgit v1.2.3