Files
sendico/api/proto/payments/quotation/v1/quotation.proto
2026-02-13 15:35:17 +01:00

44 lines
1.3 KiB
Protocol Buffer

syntax = "proto3";
package payments.quotation.v1;
option go_package = "github.com/tech/sendico/pkg/proto/payments/quotation/v1;quotationv1";
import "api/proto/payments/shared/v1/shared.proto";
message QuotePaymentRequest {
payments.shared.v1.RequestMeta meta = 1;
string idempotency_key = 2;
payments.shared.v1.PaymentIntent intent = 3;
bool preview_only = 4;
}
message QuotePaymentResponse {
payments.shared.v1.PaymentQuote quote = 1;
string idempotency_key = 2;
// Non-empty when quote is valid for pricing but cannot be executed.
string execution_note = 3;
}
message QuotePaymentsRequest {
payments.shared.v1.RequestMeta meta = 1;
string idempotency_key = 2;
repeated payments.shared.v1.PaymentIntent intents = 3;
bool preview_only = 4;
}
message QuotePaymentsResponse {
string quote_ref = 1;
payments.shared.v1.PaymentQuoteAggregate aggregate = 2;
repeated payments.shared.v1.PaymentQuote quotes = 3;
string idempotency_key = 4;
}
service QuotationService {
// QuotePayment returns a quote for a single payment request.
rpc QuotePayment(QuotePaymentRequest) returns (QuotePaymentResponse);
// QuotePayments returns quotes for multiple payment requests.
rpc QuotePayments(QuotePaymentsRequest) returns (QuotePaymentsResponse);
}