@t-0/provider-sdk 1.1.14 → 1.1.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -24,17 +24,6 @@ export type UpdateQuoteRequest = Message<"tzero.v1.payment.UpdateQuoteRequest">
24
24
  * @generated from field: repeated tzero.v1.payment.UpdateQuoteRequest.Quote pay_out = 10;
25
25
  */
26
26
  payOut: UpdateQuoteRequest_Quote[];
27
- /**
28
- * *
29
- * Zero or more quotes for pay-in operations, each quote must have a unique currency, and one or more bands, with the
30
- * unique client_quote_id for each band.
31
- *
32
- * Deprecated: pay-in quotes are no longer used.
33
- *
34
- * @generated from field: repeated tzero.v1.payment.UpdateQuoteRequest.Quote pay_in = 20 [deprecated = true];
35
- * @deprecated
36
- */
37
- payIn: UpdateQuoteRequest_Quote[];
38
27
  };
39
28
  /**
40
29
  * Describes the message tzero.v1.payment.UpdateQuoteRequest.
@@ -52,7 +41,10 @@ export type UpdateQuoteRequest_Quote = Message<"tzero.v1.payment.UpdateQuoteRequ
52
41
  */
53
42
  currency: string;
54
43
  /**
55
- * @generated from field: tzero.v1.payment.QuoteType quote_type = 20;
44
+ * Deprecated: rate type is no longer used; the server ignores the value.
45
+ *
46
+ * @generated from field: tzero.v1.payment.QuoteType quote_type = 20 [deprecated = true];
47
+ * @deprecated
56
48
  */
57
49
  quoteType: QuoteType;
58
50
  /**
@@ -651,7 +643,30 @@ export declare enum CreatePaymentResponse_Failure_Reason {
651
643
  *
652
644
  * @generated from enum value: REASON_CREDIT_OR_PREDEPOSIT_REQUIRED = 20;
653
645
  */
654
- CREDIT_OR_PREDEPOSIT_REQUIRED = 20
646
+ CREDIT_OR_PREDEPOSIT_REQUIRED = 20,
647
+ /**
648
+ * The pinned quote's band cannot cover the requested amount. The quote is
649
+ * still live; retry with a smaller amount, split the payment across bands,
650
+ * or request a fresh GetQuote for a quote that covers the full amount.
651
+ *
652
+ * @generated from enum value: REASON_AMOUNT_EXCEEDS_QUOTE_BAND = 30;
653
+ */
654
+ AMOUNT_EXCEEDS_QUOTE_BAND = 30,
655
+ /**
656
+ * The pinned quote's expires_at has passed. Auto-retry by calling GetQuote
657
+ * to obtain a fresh quote id and re-submit with it.
658
+ *
659
+ * @generated from enum value: REASON_QUOTE_EXPIRED = 40;
660
+ */
661
+ QUOTE_EXPIRED = 40,
662
+ /**
663
+ * The pinned quote id does not exist for the pay-in/pay-out provider pair.
664
+ * Indicates a client-side plumbing bug (stale / mismatched id); no auto-retry
665
+ * will succeed until the client fixes quote propagation.
666
+ *
667
+ * @generated from enum value: REASON_QUOTE_ID_UNKNOWN = 50;
668
+ */
669
+ QUOTE_ID_UNKNOWN = 50
655
670
  }
656
671
  /**
657
672
  * Describes the enum tzero.v1.payment.CreatePaymentResponse.Failure.Reason.
@@ -14,7 +14,7 @@ const validate_pb_js_1 = require("../../../buf/validate/validate_pb.js");
14
14
  /**
15
15
  * Describes the file tzero/v1/payment/network.proto.
16
16
  */
17
- exports.file_tzero_v1_payment_network = (0, codegenv2_1.fileDesc)("Ch50emVyby92MS9wYXltZW50L25ldHdvcmsucHJvdG8SEHR6ZXJvLnYxLnBheW1lbnQiwgUKElVwZGF0ZVF1b3RlUmVxdWVzdBI7CgdwYXlfb3V0GAogAygLMioudHplcm8udjEucGF5bWVudC5VcGRhdGVRdW90ZVJlcXVlc3QuUXVvdGUSPgoGcGF5X2luGBQgAygLMioudHplcm8udjEucGF5bWVudC5VcGRhdGVRdW90ZVJlcXVlc3QuUXVvdGVCAhgBGq4ECgVRdW90ZRImCghjdXJyZW5jeRgKIAEoCUIUukgRcg8yCl5bQS1aXXszfSSYAQMSNwoKcXVvdGVfdHlwZRgUIAEoDjIbLnR6ZXJvLnYxLnBheW1lbnQuUXVvdGVUeXBlQga6SAPIAQESQgoOcGF5bWVudF9tZXRob2QYGSABKA4yIi50emVyby52MS5jb21tb24uUGF5bWVudE1ldGhvZFR5cGVCBrpIA8gBARJICgViYW5kcxgeIAMoCzIvLnR6ZXJvLnYxLnBheW1lbnQuVXBkYXRlUXVvdGVSZXF1ZXN0LlF1b3RlLkJhbmRCCLpIBZIBAggBEjgKCmV4cGlyYXRpb24YPCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgi6SAWyAQJAARI1Cgl0aW1lc3RhbXAYRiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQga6SAPIAQEaxAEKBEJhbmQSIgoPY2xpZW50X3F1b3RlX2lkGAogASgJQgm6SAZyBBABGEASNAoKbWF4X2Ftb3VudBgoIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESLgoEcmF0ZRgyIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESKgoDZml4GDwgASgLMhgudHplcm8udjEuY29tbW9uLkRlY2ltYWxIAIgBAUIGCgRfZml4IhUKE1VwZGF0ZVF1b3RlUmVzcG9uc2Ui9wEKD0dldFF1b3RlUmVxdWVzdBI3CgZhbW91bnQYFCABKAsyHy50emVyby52MS5wYXltZW50LlBheW1lbnRBbW91bnRCBrpIA8gBARIuChBwYXlfb3V0X2N1cnJlbmN5GCggASgJQhS6SBFyDzIKXltBLVpdezN9JJgBAxJCCg5wYXlfb3V0X21ldGhvZBgyIAEoDjIiLnR6ZXJvLnYxLmNvbW1vbi5QYXltZW50TWV0aG9kVHlwZUIGukgDyAEBEjcKCnF1b3RlX3R5cGUYPCABKA4yGy50emVyby52MS5wYXltZW50LlF1b3RlVHlwZUIGukgDyAEBIsgKChBHZXRRdW90ZVJlc3BvbnNlEj0KB3N1Y2Nlc3MYFCABKAsyKi50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuU3VjY2Vzc0gAEj0KB2ZhaWx1cmUYHiABKAsyKi50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuRmFpbHVyZUgAEkQKCmFsbF9xdW90ZXMYKCADKAsyMC50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuUHJvdmlkZXJRdW90ZRrGAgoHU3VjY2VzcxIuCgRyYXRlGAogASgLMhgudHplcm8udjEuY29tbW9uLkRlY2ltYWxCBrpIA8gBARI4CgpleHBpcmF0aW9uGBQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIIukgFsgECQAESMwoIcXVvdGVfaWQYHiABKAsyGS50emVyby52MS5wYXltZW50LlF1b3RlSWRCBrpIA8gBARI4Cg5wYXlfb3V0X2Ftb3VudBgoIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESOwoRc2V0dGxlbWVudF9hbW91bnQYMiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiUKA2ZpeBg8IAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsGrQBCgdGYWlsdXJlEkEKBnJlYXNvbhgKIAEoDjIxLnR6ZXJvLnYxLnBheW1lbnQuR2V0UXVvdGVSZXNwb25zZS5GYWlsdXJlLlJlYXNvbiJmCgZSZWFzb24SFgoSUkVBU09OX1VOU1BFQ0lGSUVEEAASGgoWUkVBU09OX1FVT1RFX05PVF9GT1VORBAKEigKJFJFQVNPTl9DUkVESVRfT1JfUFJFREVQT1NJVF9SRVFVSVJFRBAUGt4ECg1Qcm92aWRlclF1b3RlEjMKCHF1b3RlX2lkGAogASgLMhkudHplcm8udjEucGF5bWVudC5RdW90ZUlkQga6SAPIAQESLgoEcmF0ZRgUIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESLgoKZXhwaXJhdGlvbhgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASOAoOcGF5X291dF9hbW91bnQYKCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBElcKCnNldHRsZW1lbnQYMiABKAsyOy50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuUHJvdmlkZXJRdW90ZS5TZXR0bGVtZW50Qga6SAPIAQESEgoKZXhlY3V0YWJsZRg8IAEoCBIlCgNmaXgYRiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbBrpAQoKU2V0dGxlbWVudBIwCgZhbW91bnQYCiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEjYKDGNyZWRpdF9saW1pdBgUIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESNAoKdG90YWxfdXNlZBgeIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESOwoRcHJlZnVuZGluZ19hbW91bnQYMiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBQg8KBnJlc3VsdBIFukgCCAEizAQKFENyZWF0ZVBheW1lbnRSZXF1ZXN0EiQKEXBheW1lbnRfY2xpZW50X2lkGAogASgJQgm6SAZyBBABGEASNwoGYW1vdW50GB4gASgLMh8udHplcm8udjEucGF5bWVudC5QYXltZW50QW1vdW50Qga6SAPIAQESJgoIY3VycmVuY3kYKCABKAlCFLpIEXIPMgpeW0EtWl17M30kmAEDEkAKD3BheW1lbnRfZGV0YWlscxgyIAEoCzIfLnR6ZXJvLnYxLmNvbW1vbi5QYXltZW50RGV0YWlsc0IGukgDyAEBEjAKCHF1b3RlX2lkGDwgASgLMhkudHplcm8udjEucGF5bWVudC5RdW90ZUlkSACIAQESVwoQdHJhdmVsX3J1bGVfZGF0YRhkIAEoCzI1LnR6ZXJvLnYxLnBheW1lbnQuQ3JlYXRlUGF5bWVudFJlcXVlc3QuVHJhdmVsUnVsZURhdGFCBrpIA8gBARrSAQoOVHJhdmVsUnVsZURhdGESLQoKb3JpZ2luYXRvchgKIAMoCzIPLml2bXMxMDEuUGVyc29uQgi6SAWSAQIIARIuCgtiZW5lZmljaWFyeRgUIAMoCzIPLml2bXMxMDEuUGVyc29uQgi6SAWSAQIIARI5CiNvcmlnaW5hdG9yX3Byb3ZpZGVyX2xlZ2FsX2VudGl0eV9pZBgeIAEoDUIHukgEKgIgAEgAiAEBQiYKJF9vcmlnaW5hdG9yX3Byb3ZpZGVyX2xlZ2FsX2VudGl0eV9pZEILCglfcXVvdGVfaWQiQgoHUXVvdGVJZBIZCghxdW90ZV9pZBgeIAEoA0IHukgEIgIgABIcCgtwcm92aWRlcl9pZBgoIAEoBUIHukgEGgIgACLQBgoVQ3JlYXRlUGF5bWVudFJlc3BvbnNlEiIKEXBheW1lbnRfY2xpZW50X2lkGAogASgJQge6SARyAhABEkQKCGFjY2VwdGVkGBQgASgLMjAudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuQWNjZXB0ZWRIABJdChNzZXR0bGVtZW50X3JlcXVpcmVkGCMgASgLMjoudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuU2V0dGxlbWVudFJlcXVpcmVkQgIYAUgAEkIKB2ZhaWx1cmUYHiABKAsyLy50emVyby52MS5wYXltZW50LkNyZWF0ZVBheW1lbnRSZXNwb25zZS5GYWlsdXJlSAAawgEKCEFjY2VwdGVkEhsKCnBheW1lbnRfaWQYCiABKARCB7pIBDICIAASOwoRc2V0dGxlbWVudF9hbW91bnQYHiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEjcKDXBheW91dF9hbW91bnQYKCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiMKEnBheW91dF9wcm92aWRlcl9pZBgyIAEoDUIHukgEKgIgABqXAQoSU2V0dGxlbWVudFJlcXVpcmVkEhsKCnBheW1lbnRfaWQYCiABKARCB7pIBDICIAASOwoRc2V0dGxlbWVudF9hbW91bnQYFCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiMKEnBheW91dF9wcm92aWRlcl9pZBgeIAEoDUIHukgEKgIgADoCGAEauQEKB0ZhaWx1cmUSRgoGcmVhc29uGAogASgOMjYudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuRmFpbHVyZS5SZWFzb24iZgoGUmVhc29uEhYKElJFQVNPTl9VTlNQRUNJRklFRBAAEhoKFlJFQVNPTl9RVU9URV9OT1RfRk9VTkQQChIoCiRSRUFTT05fQ1JFRElUX09SX1BSRURFUE9TSVRfUkVRVUlSRUQQFEIPCgZyZXN1bHQSBbpIAggBIpgBChRDb25maXJtUGF5b3V0UmVxdWVzdBIbCgpwYXltZW50X2lkGAogASgEQge6SAQyAiAAEhwKCXBheW91dF9pZBgUIAEoBEIJGAG6SAQyAiAAEjUKB3JlY2VpcHQYHiABKAsyHy50emVyby52MS5jb21tb24uUGF5bWVudFJlY2VpcHRIAIgBAToCGAFCCgoIX3JlY2VpcHQiGwoVQ29uZmlybVBheW91dFJlc3BvbnNlOgIYASKbAgodQ29tcGxldGVNYW51YWxBbWxDaGVja1JlcXVlc3QSGwoKcGF5bWVudF9pZBgKIAEoBEIHukgEMgIgABJMCghhcHByb3ZlZBgeIAEoCzI4LnR6ZXJvLnYxLnBheW1lbnQuQ29tcGxldGVNYW51YWxBbWxDaGVja1JlcXVlc3QuQXBwcm92ZWRIABJMCghyZWplY3RlZBgoIAEoCzI4LnR6ZXJvLnYxLnBheW1lbnQuQ29tcGxldGVNYW51YWxBbWxDaGVja1JlcXVlc3QuUmVqZWN0ZWRIABoKCghBcHByb3ZlZBokCghSZWplY3RlZBIYCgZyZWFzb24YCiABKAlCCLpIBXIDGIAIQg8KBnJlc3VsdBIFukgCCAEirAMKHkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXNwb25zZRJNCghhcHByb3ZlZBgeIAEoCzI5LnR6ZXJvLnYxLnBheW1lbnQuQ29tcGxldGVNYW51YWxBbWxDaGVja1Jlc3BvbnNlLkFwcHJvdmVkSAASTQoIcmVqZWN0ZWQYKCABKAsyOS50emVyby52MS5wYXltZW50LkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXNwb25zZS5SZWplY3RlZEgAGs4BCghBcHByb3ZlZBI4Cg5wYXlfb3V0X2Ftb3VudBgKIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESOwoRc2V0dGxlbWVudF9hbW91bnQYFCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiEKEHBheV9vdXRfcXVvdGVfaWQYHiABKANCB7pIBCICIAASKAoXcGF5X291dF9jbGllbnRfcXVvdGVfaWQYKCABKAlCB7pIBHICGEAaCgoIUmVqZWN0ZWRCDwoGcmVzdWx0EgW6SAIIASKLAQoNUGF5bWVudEFtb3VudBIyCg5wYXlfb3V0X2Ftb3VudBgUIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsSAASNQoRc2V0dGxlbWVudF9hbW91bnQYHiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEgAQg8KBmFtb3VudBIFukgCCAEiwAIKFUZpbmFsaXplUGF5b3V0UmVxdWVzdBIbCgpwYXltZW50X2lkGAogASgEQge6SAQyAiAAEkIKB3N1Y2Nlc3MYHiABKAsyLy50emVyby52MS5wYXltZW50LkZpbmFsaXplUGF5b3V0UmVxdWVzdC5TdWNjZXNzSAASQgoHZmFpbHVyZRgoIAEoCzIvLnR6ZXJvLnYxLnBheW1lbnQuRmluYWxpemVQYXlvdXRSZXF1ZXN0LkZhaWx1cmVIABpMCgdTdWNjZXNzEjUKB3JlY2VpcHQYHiABKAsyHy50emVyby52MS5jb21tb24uUGF5bWVudFJlY2VpcHRIAIgBAUIKCghfcmVjZWlwdBojCgdGYWlsdXJlEhgKBnJlYXNvbhgKIAEoCUIIukgFcgMYgAhCDwoGcmVzdWx0EgW6SAIIASIYChZGaW5hbGl6ZVBheW91dFJlc3BvbnNlKkAKCVF1b3RlVHlwZRIaChZRVU9URV9UWVBFX1VOU1BFQ0lGSUVEEAASFwoTUVVPVEVfVFlQRV9SRUFMVElNRRABMocFCg5OZXR3b3JrU2VydmljZRJfCgtVcGRhdGVRdW90ZRIkLnR6ZXJvLnYxLnBheW1lbnQuVXBkYXRlUXVvdGVSZXF1ZXN0GiUudHplcm8udjEucGF5bWVudC5VcGRhdGVRdW90ZVJlc3BvbnNlIgOQAgISVgoIR2V0UXVvdGUSIS50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVxdWVzdBoiLnR6ZXJvLnYxLnBheW1lbnQuR2V0UXVvdGVSZXNwb25zZSIDkAIBEmUKDUNyZWF0ZVBheW1lbnQSJi50emVyby52MS5wYXltZW50LkNyZWF0ZVBheW1lbnRSZXF1ZXN0GicudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UiA5ACAhJoCg1Db25maXJtUGF5b3V0EiYudHplcm8udjEucGF5bWVudC5Db25maXJtUGF5b3V0UmVxdWVzdBonLnR6ZXJvLnYxLnBheW1lbnQuQ29uZmlybVBheW91dFJlc3BvbnNlIgaIAgGQAgISaAoORmluYWxpemVQYXlvdXQSJy50emVyby52MS5wYXltZW50LkZpbmFsaXplUGF5b3V0UmVxdWVzdBooLnR6ZXJvLnYxLnBheW1lbnQuRmluYWxpemVQYXlvdXRSZXNwb25zZSIDkAICEoABChZDb21wbGV0ZU1hbnVhbEFtbENoZWNrEi8udHplcm8udjEucGF5bWVudC5Db21wbGV0ZU1hbnVhbEFtbENoZWNrUmVxdWVzdBowLnR6ZXJvLnYxLnBheW1lbnQuQ29tcGxldGVNYW51YWxBbWxDaGVja1Jlc3BvbnNlIgOQAgJC1gEKFGNvbS50emVyby52MS5wYXltZW50QgxOZXR3b3JrUHJvdG9QAVo7Z2l0aHViLmNvbS90LTAtbmV0d29yay9wcm92aWRlci1zZGsvZ28vYXBpL3R6ZXJvL3YxL3BheW1lbnSiAgNUVlCqAiNUMC5Qcm92aWRlclNkay5BcGkuVHplcm8uVjEuUGF5bWVudMoCEFR6ZXJvXFYxXFBheW1lbnTiAhxUemVyb1xWMVxQYXltZW50XEdQQk1ldGFkYXRh6gISVHplcm86OlYxOjpQYXltZW50YgZwcm90bzM", [common_pb_js_1.file_tzero_v1_common_common, payment_method_pb_js_1.file_tzero_v1_common_payment_method, payment_receipt_pb_js_1.file_tzero_v1_common_payment_receipt, ivms101_pb_js_1.file_ivms101_v1_ivms_ivms101, wkt_1.file_google_protobuf_timestamp, validate_pb_js_1.file_buf_validate_validate]);
17
+ exports.file_tzero_v1_payment_network = (0, codegenv2_1.fileDesc)("Ch50emVyby92MS9wYXltZW50L25ldHdvcmsucHJvdG8SEHR6ZXJvLnYxLnBheW1lbnQijAUKElVwZGF0ZVF1b3RlUmVxdWVzdBI7CgdwYXlfb3V0GAogAygLMioudHplcm8udjEucGF5bWVudC5VcGRhdGVRdW90ZVJlcXVlc3QuUXVvdGUaqgQKBVF1b3RlEiYKCGN1cnJlbmN5GAogASgJQhS6SBFyDzIKXltBLVpdezN9JJgBAxIzCgpxdW90ZV90eXBlGBQgASgOMhsudHplcm8udjEucGF5bWVudC5RdW90ZVR5cGVCAhgBEkIKDnBheW1lbnRfbWV0aG9kGBkgASgOMiIudHplcm8udjEuY29tbW9uLlBheW1lbnRNZXRob2RUeXBlQga6SAPIAQESSAoFYmFuZHMYHiADKAsyLy50emVyby52MS5wYXltZW50LlVwZGF0ZVF1b3RlUmVxdWVzdC5RdW90ZS5CYW5kQgi6SAWSAQIIARI4CgpleHBpcmF0aW9uGDwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIIukgFsgECQAESNQoJdGltZXN0YW1wGEYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIGukgDyAEBGsQBCgRCYW5kEiIKD2NsaWVudF9xdW90ZV9pZBgKIAEoCUIJukgGcgQQARhAEjQKCm1heF9hbW91bnQYKCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEi4KBHJhdGUYMiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEioKA2ZpeBg8IAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsSACIAQFCBgoEX2ZpeEoECBQQFVIGcGF5X2luIhUKE1VwZGF0ZVF1b3RlUmVzcG9uc2Ui9wEKD0dldFF1b3RlUmVxdWVzdBI3CgZhbW91bnQYFCABKAsyHy50emVyby52MS5wYXltZW50LlBheW1lbnRBbW91bnRCBrpIA8gBARIuChBwYXlfb3V0X2N1cnJlbmN5GCggASgJQhS6SBFyDzIKXltBLVpdezN9JJgBAxJCCg5wYXlfb3V0X21ldGhvZBgyIAEoDjIiLnR6ZXJvLnYxLmNvbW1vbi5QYXltZW50TWV0aG9kVHlwZUIGukgDyAEBEjcKCnF1b3RlX3R5cGUYPCABKA4yGy50emVyby52MS5wYXltZW50LlF1b3RlVHlwZUIGukgDyAEBIsgKChBHZXRRdW90ZVJlc3BvbnNlEj0KB3N1Y2Nlc3MYFCABKAsyKi50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuU3VjY2Vzc0gAEj0KB2ZhaWx1cmUYHiABKAsyKi50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuRmFpbHVyZUgAEkQKCmFsbF9xdW90ZXMYKCADKAsyMC50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuUHJvdmlkZXJRdW90ZRrGAgoHU3VjY2VzcxIuCgRyYXRlGAogASgLMhgudHplcm8udjEuY29tbW9uLkRlY2ltYWxCBrpIA8gBARI4CgpleHBpcmF0aW9uGBQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIIukgFsgECQAESMwoIcXVvdGVfaWQYHiABKAsyGS50emVyby52MS5wYXltZW50LlF1b3RlSWRCBrpIA8gBARI4Cg5wYXlfb3V0X2Ftb3VudBgoIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESOwoRc2V0dGxlbWVudF9hbW91bnQYMiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiUKA2ZpeBg8IAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsGrQBCgdGYWlsdXJlEkEKBnJlYXNvbhgKIAEoDjIxLnR6ZXJvLnYxLnBheW1lbnQuR2V0UXVvdGVSZXNwb25zZS5GYWlsdXJlLlJlYXNvbiJmCgZSZWFzb24SFgoSUkVBU09OX1VOU1BFQ0lGSUVEEAASGgoWUkVBU09OX1FVT1RFX05PVF9GT1VORBAKEigKJFJFQVNPTl9DUkVESVRfT1JfUFJFREVQT1NJVF9SRVFVSVJFRBAUGt4ECg1Qcm92aWRlclF1b3RlEjMKCHF1b3RlX2lkGAogASgLMhkudHplcm8udjEucGF5bWVudC5RdW90ZUlkQga6SAPIAQESLgoEcmF0ZRgUIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESLgoKZXhwaXJhdGlvbhgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASOAoOcGF5X291dF9hbW91bnQYKCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBElcKCnNldHRsZW1lbnQYMiABKAsyOy50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuUHJvdmlkZXJRdW90ZS5TZXR0bGVtZW50Qga6SAPIAQESEgoKZXhlY3V0YWJsZRg8IAEoCBIlCgNmaXgYRiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbBrpAQoKU2V0dGxlbWVudBIwCgZhbW91bnQYCiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEjYKDGNyZWRpdF9saW1pdBgUIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESNAoKdG90YWxfdXNlZBgeIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESOwoRcHJlZnVuZGluZ19hbW91bnQYMiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBQg8KBnJlc3VsdBIFukgCCAEizAQKFENyZWF0ZVBheW1lbnRSZXF1ZXN0EiQKEXBheW1lbnRfY2xpZW50X2lkGAogASgJQgm6SAZyBBABGEASNwoGYW1vdW50GB4gASgLMh8udHplcm8udjEucGF5bWVudC5QYXltZW50QW1vdW50Qga6SAPIAQESJgoIY3VycmVuY3kYKCABKAlCFLpIEXIPMgpeW0EtWl17M30kmAEDEkAKD3BheW1lbnRfZGV0YWlscxgyIAEoCzIfLnR6ZXJvLnYxLmNvbW1vbi5QYXltZW50RGV0YWlsc0IGukgDyAEBEjAKCHF1b3RlX2lkGDwgASgLMhkudHplcm8udjEucGF5bWVudC5RdW90ZUlkSACIAQESVwoQdHJhdmVsX3J1bGVfZGF0YRhkIAEoCzI1LnR6ZXJvLnYxLnBheW1lbnQuQ3JlYXRlUGF5bWVudFJlcXVlc3QuVHJhdmVsUnVsZURhdGFCBrpIA8gBARrSAQoOVHJhdmVsUnVsZURhdGESLQoKb3JpZ2luYXRvchgKIAMoCzIPLml2bXMxMDEuUGVyc29uQgi6SAWSAQIIARIuCgtiZW5lZmljaWFyeRgUIAMoCzIPLml2bXMxMDEuUGVyc29uQgi6SAWSAQIIARI5CiNvcmlnaW5hdG9yX3Byb3ZpZGVyX2xlZ2FsX2VudGl0eV9pZBgeIAEoDUIHukgEKgIgAEgAiAEBQiYKJF9vcmlnaW5hdG9yX3Byb3ZpZGVyX2xlZ2FsX2VudGl0eV9pZEILCglfcXVvdGVfaWQiQgoHUXVvdGVJZBIZCghxdW90ZV9pZBgeIAEoA0IHukgEIgIgABIcCgtwcm92aWRlcl9pZBgoIAEoBUIHukgEGgIgACKuBwoVQ3JlYXRlUGF5bWVudFJlc3BvbnNlEiIKEXBheW1lbnRfY2xpZW50X2lkGAogASgJQge6SARyAhABEkQKCGFjY2VwdGVkGBQgASgLMjAudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuQWNjZXB0ZWRIABJdChNzZXR0bGVtZW50X3JlcXVpcmVkGCMgASgLMjoudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuU2V0dGxlbWVudFJlcXVpcmVkQgIYAUgAEkIKB2ZhaWx1cmUYHiABKAsyLy50emVyby52MS5wYXltZW50LkNyZWF0ZVBheW1lbnRSZXNwb25zZS5GYWlsdXJlSAAawgEKCEFjY2VwdGVkEhsKCnBheW1lbnRfaWQYCiABKARCB7pIBDICIAASOwoRc2V0dGxlbWVudF9hbW91bnQYHiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEjcKDXBheW91dF9hbW91bnQYKCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiMKEnBheW91dF9wcm92aWRlcl9pZBgyIAEoDUIHukgEKgIgABqXAQoSU2V0dGxlbWVudFJlcXVpcmVkEhsKCnBheW1lbnRfaWQYCiABKARCB7pIBDICIAASOwoRc2V0dGxlbWVudF9hbW91bnQYFCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiMKEnBheW91dF9wcm92aWRlcl9pZBgeIAEoDUIHukgEKgIgADoCGAEalwIKB0ZhaWx1cmUSRgoGcmVhc29uGAogASgOMjYudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuRmFpbHVyZS5SZWFzb24iwwEKBlJlYXNvbhIWChJSRUFTT05fVU5TUEVDSUZJRUQQABIaChZSRUFTT05fUVVPVEVfTk9UX0ZPVU5EEAoSKAokUkVBU09OX0NSRURJVF9PUl9QUkVERVBPU0lUX1JFUVVJUkVEEBQSJAogUkVBU09OX0FNT1VOVF9FWENFRURTX1FVT1RFX0JBTkQQHhIYChRSRUFTT05fUVVPVEVfRVhQSVJFRBAoEhsKF1JFQVNPTl9RVU9URV9JRF9VTktOT1dOEDJCDwoGcmVzdWx0EgW6SAIIASKYAQoUQ29uZmlybVBheW91dFJlcXVlc3QSGwoKcGF5bWVudF9pZBgKIAEoBEIHukgEMgIgABIcCglwYXlvdXRfaWQYFCABKARCCRgBukgEMgIgABI1CgdyZWNlaXB0GB4gASgLMh8udHplcm8udjEuY29tbW9uLlBheW1lbnRSZWNlaXB0SACIAQE6AhgBQgoKCF9yZWNlaXB0IhsKFUNvbmZpcm1QYXlvdXRSZXNwb25zZToCGAEimwIKHUNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXF1ZXN0EhsKCnBheW1lbnRfaWQYCiABKARCB7pIBDICIAASTAoIYXBwcm92ZWQYHiABKAsyOC50emVyby52MS5wYXltZW50LkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXF1ZXN0LkFwcHJvdmVkSAASTAoIcmVqZWN0ZWQYKCABKAsyOC50emVyby52MS5wYXltZW50LkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXF1ZXN0LlJlamVjdGVkSAAaCgoIQXBwcm92ZWQaJAoIUmVqZWN0ZWQSGAoGcmVhc29uGAogASgJQgi6SAVyAxiACEIPCgZyZXN1bHQSBbpIAggBIqwDCh5Db21wbGV0ZU1hbnVhbEFtbENoZWNrUmVzcG9uc2USTQoIYXBwcm92ZWQYHiABKAsyOS50emVyby52MS5wYXltZW50LkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXNwb25zZS5BcHByb3ZlZEgAEk0KCHJlamVjdGVkGCggASgLMjkudHplcm8udjEucGF5bWVudC5Db21wbGV0ZU1hbnVhbEFtbENoZWNrUmVzcG9uc2UuUmVqZWN0ZWRIABrOAQoIQXBwcm92ZWQSOAoOcGF5X291dF9hbW91bnQYCiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEjsKEXNldHRsZW1lbnRfYW1vdW50GBQgASgLMhgudHplcm8udjEuY29tbW9uLkRlY2ltYWxCBrpIA8gBARIhChBwYXlfb3V0X3F1b3RlX2lkGB4gASgDQge6SAQiAiAAEigKF3BheV9vdXRfY2xpZW50X3F1b3RlX2lkGCggASgJQge6SARyAhhAGgoKCFJlamVjdGVkQg8KBnJlc3VsdBIFukgCCAEiiwEKDVBheW1lbnRBbW91bnQSMgoOcGF5X291dF9hbW91bnQYFCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEgAEjUKEXNldHRsZW1lbnRfYW1vdW50GB4gASgLMhgudHplcm8udjEuY29tbW9uLkRlY2ltYWxIAEIPCgZhbW91bnQSBbpIAggBIsACChVGaW5hbGl6ZVBheW91dFJlcXVlc3QSGwoKcGF5bWVudF9pZBgKIAEoBEIHukgEMgIgABJCCgdzdWNjZXNzGB4gASgLMi8udHplcm8udjEucGF5bWVudC5GaW5hbGl6ZVBheW91dFJlcXVlc3QuU3VjY2Vzc0gAEkIKB2ZhaWx1cmUYKCABKAsyLy50emVyby52MS5wYXltZW50LkZpbmFsaXplUGF5b3V0UmVxdWVzdC5GYWlsdXJlSAAaTAoHU3VjY2VzcxI1CgdyZWNlaXB0GB4gASgLMh8udHplcm8udjEuY29tbW9uLlBheW1lbnRSZWNlaXB0SACIAQFCCgoIX3JlY2VpcHQaIwoHRmFpbHVyZRIYCgZyZWFzb24YCiABKAlCCLpIBXIDGIAIQg8KBnJlc3VsdBIFukgCCAEiGAoWRmluYWxpemVQYXlvdXRSZXNwb25zZSpACglRdW90ZVR5cGUSGgoWUVVPVEVfVFlQRV9VTlNQRUNJRklFRBAAEhcKE1FVT1RFX1RZUEVfUkVBTFRJTUUQATKHBQoOTmV0d29ya1NlcnZpY2USXwoLVXBkYXRlUXVvdGUSJC50emVyby52MS5wYXltZW50LlVwZGF0ZVF1b3RlUmVxdWVzdBolLnR6ZXJvLnYxLnBheW1lbnQuVXBkYXRlUXVvdGVSZXNwb25zZSIDkAICElYKCEdldFF1b3RlEiEudHplcm8udjEucGF5bWVudC5HZXRRdW90ZVJlcXVlc3QaIi50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UiA5ACARJlCg1DcmVhdGVQYXltZW50EiYudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVxdWVzdBonLnR6ZXJvLnYxLnBheW1lbnQuQ3JlYXRlUGF5bWVudFJlc3BvbnNlIgOQAgISaAoNQ29uZmlybVBheW91dBImLnR6ZXJvLnYxLnBheW1lbnQuQ29uZmlybVBheW91dFJlcXVlc3QaJy50emVyby52MS5wYXltZW50LkNvbmZpcm1QYXlvdXRSZXNwb25zZSIGiAIBkAICEmgKDkZpbmFsaXplUGF5b3V0EicudHplcm8udjEucGF5bWVudC5GaW5hbGl6ZVBheW91dFJlcXVlc3QaKC50emVyby52MS5wYXltZW50LkZpbmFsaXplUGF5b3V0UmVzcG9uc2UiA5ACAhKAAQoWQ29tcGxldGVNYW51YWxBbWxDaGVjaxIvLnR6ZXJvLnYxLnBheW1lbnQuQ29tcGxldGVNYW51YWxBbWxDaGVja1JlcXVlc3QaMC50emVyby52MS5wYXltZW50LkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXNwb25zZSIDkAICQtYBChRjb20udHplcm8udjEucGF5bWVudEIMTmV0d29ya1Byb3RvUAFaO2dpdGh1Yi5jb20vdC0wLW5ldHdvcmsvcHJvdmlkZXItc2RrL2dvL2FwaS90emVyby92MS9wYXltZW50ogIDVFZQqgIjVDAuUHJvdmlkZXJTZGsuQXBpLlR6ZXJvLlYxLlBheW1lbnTKAhBUemVyb1xWMVxQYXltZW504gIcVHplcm9cVjFcUGF5bWVudFxHUEJNZXRhZGF0YeoCElR6ZXJvOjpWMTo6UGF5bWVudGIGcHJvdG8z", [common_pb_js_1.file_tzero_v1_common_common, payment_method_pb_js_1.file_tzero_v1_common_payment_method, payment_receipt_pb_js_1.file_tzero_v1_common_payment_receipt, ivms101_pb_js_1.file_ivms101_v1_ivms_ivms101, wkt_1.file_google_protobuf_timestamp, validate_pb_js_1.file_buf_validate_validate]);
18
18
  /**
19
19
  * Describes the message tzero.v1.payment.UpdateQuoteRequest.
20
20
  * Use `create(UpdateQuoteRequestSchema)` to create a new message.
@@ -156,6 +156,29 @@ var CreatePaymentResponse_Failure_Reason;
156
156
  * @generated from enum value: REASON_CREDIT_OR_PREDEPOSIT_REQUIRED = 20;
157
157
  */
158
158
  CreatePaymentResponse_Failure_Reason[CreatePaymentResponse_Failure_Reason["CREDIT_OR_PREDEPOSIT_REQUIRED"] = 20] = "CREDIT_OR_PREDEPOSIT_REQUIRED";
159
+ /**
160
+ * The pinned quote's band cannot cover the requested amount. The quote is
161
+ * still live; retry with a smaller amount, split the payment across bands,
162
+ * or request a fresh GetQuote for a quote that covers the full amount.
163
+ *
164
+ * @generated from enum value: REASON_AMOUNT_EXCEEDS_QUOTE_BAND = 30;
165
+ */
166
+ CreatePaymentResponse_Failure_Reason[CreatePaymentResponse_Failure_Reason["AMOUNT_EXCEEDS_QUOTE_BAND"] = 30] = "AMOUNT_EXCEEDS_QUOTE_BAND";
167
+ /**
168
+ * The pinned quote's expires_at has passed. Auto-retry by calling GetQuote
169
+ * to obtain a fresh quote id and re-submit with it.
170
+ *
171
+ * @generated from enum value: REASON_QUOTE_EXPIRED = 40;
172
+ */
173
+ CreatePaymentResponse_Failure_Reason[CreatePaymentResponse_Failure_Reason["QUOTE_EXPIRED"] = 40] = "QUOTE_EXPIRED";
174
+ /**
175
+ * The pinned quote id does not exist for the pay-in/pay-out provider pair.
176
+ * Indicates a client-side plumbing bug (stale / mismatched id); no auto-retry
177
+ * will succeed until the client fixes quote propagation.
178
+ *
179
+ * @generated from enum value: REASON_QUOTE_ID_UNKNOWN = 50;
180
+ */
181
+ CreatePaymentResponse_Failure_Reason[CreatePaymentResponse_Failure_Reason["QUOTE_ID_UNKNOWN"] = 50] = "QUOTE_ID_UNKNOWN";
159
182
  })(CreatePaymentResponse_Failure_Reason || (exports.CreatePaymentResponse_Failure_Reason = CreatePaymentResponse_Failure_Reason = {}));
160
183
  /**
161
184
  * Describes the enum tzero.v1.payment.CreatePaymentResponse.Failure.Reason.
@@ -309,7 +309,9 @@ export type PaymentIntentPayInDetails = Message<"tzero.v1.payment_intent.Payment
309
309
  * *
310
310
  * Indicative exchange rate USD/XXX (base currency is always USD).
311
311
  *
312
- * Note: This is indicative only. The actual rate is determined when pay-in provider calls ConfirmFundsReceived
312
+ * Resolved live from the network's current quote snapshot on every call,
313
+ * including idempotent retries. The binding rate is locked in at
314
+ * ConfirmFundsReceived and may differ.
313
315
  *
314
316
  * @generated from field: tzero.v1.common.Decimal indicative_rate = 40;
315
317
  */
@@ -319,7 +321,9 @@ export type PaymentIntentPayInDetails = Message<"tzero.v1.payment_intent.Payment
319
321
  * Indicative fixed charge in USD retained by the pay-in provider per transfer.
320
322
  * Settlement is calculated as (amount / indicative_rate) - indicative_fix.
321
323
  *
322
- * Note: This is indicative only. The actual fix is locked in at ConfirmFundsReceived time.
324
+ * Resolved live from the network's current quote snapshot on every call,
325
+ * including idempotent retries. The binding fix is locked in at
326
+ * ConfirmFundsReceived and may differ.
323
327
  *
324
328
  * @generated from field: tzero.v1.common.Decimal indicative_fix = 50;
325
329
  */
@@ -471,6 +475,11 @@ export type CreatePaymentIntentResponse_Success = Message<"tzero.v1.payment_inte
471
475
  * Present these options to your user so they can choose how to pay.
472
476
  * Each entry contains the payment details needed to complete the payment.
473
477
  *
478
+ * Indicative rate/fix are resolved live on every call, including idempotent
479
+ * retries. The set of options (provider, payment_method, payment_details)
480
+ * is fixed at first call; individual options whose underlying quote has
481
+ * lapsed are omitted on retry.
482
+ *
474
483
  * @generated from field: repeated tzero.v1.payment_intent.PaymentIntentPayInDetails pay_in_details = 20;
475
484
  */
476
485
  payInDetails: PaymentIntentPayInDetails[];
@@ -510,7 +519,10 @@ export declare enum CreatePaymentIntentResponse_Failure_Reason {
510
519
  FAILURE_REASON_UNSPECIFIED = 0,
511
520
  /**
512
521
  * *
513
- * No quotes found for the requested currency/amount.
522
+ * No live quote covers the requested currency/amount. On first call this
523
+ * means the intent was never created. On an idempotent retry this means
524
+ * every stored offer has since lost its live quote; a subsequent retry
525
+ * may succeed once providers republish.
514
526
  *
515
527
  * @generated from enum value: FAILURE_REASON_QUOTE_NOT_FOUND = 10;
516
528
  */
@@ -100,7 +100,10 @@ var CreatePaymentIntentResponse_Failure_Reason;
100
100
  CreatePaymentIntentResponse_Failure_Reason[CreatePaymentIntentResponse_Failure_Reason["FAILURE_REASON_UNSPECIFIED"] = 0] = "FAILURE_REASON_UNSPECIFIED";
101
101
  /**
102
102
  * *
103
- * No quotes found for the requested currency/amount.
103
+ * No live quote covers the requested currency/amount. On first call this
104
+ * means the intent was never created. On an idempotent retry this means
105
+ * every stored offer has since lost its live quote; a subsequent retry
106
+ * may succeed once providers republish.
104
107
  *
105
108
  * @generated from enum value: FAILURE_REASON_QUOTE_NOT_FOUND = 10;
106
109
  */
@@ -0,0 +1,119 @@
1
+ import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
2
+ import type { Timestamp } from "@bufbuild/protobuf/wkt";
3
+ import type { Message } from "@bufbuild/protobuf";
4
+ /**
5
+ * Describes the file tzero/v1/system/system.proto.
6
+ */
7
+ export declare const file_tzero_v1_system_system: GenFile;
8
+ /**
9
+ * @generated from message tzero.v1.system.HealthRequest
10
+ */
11
+ export type HealthRequest = Message<"tzero.v1.system.HealthRequest"> & {};
12
+ /**
13
+ * Describes the message tzero.v1.system.HealthRequest.
14
+ * Use `create(HealthRequestSchema)` to create a new message.
15
+ */
16
+ export declare const HealthRequestSchema: GenMessage<HealthRequest>;
17
+ /**
18
+ * @generated from message tzero.v1.system.HealthResponse
19
+ */
20
+ export type HealthResponse = Message<"tzero.v1.system.HealthResponse"> & {
21
+ /**
22
+ * *
23
+ * Fully-qualified protobuf service names registered on this server, e.g.
24
+ * "tzero.v1.payment.ProviderService". Always includes
25
+ * "tzero.v1.system.SystemService".
26
+ *
27
+ * @generated from field: repeated string services = 10;
28
+ */
29
+ services: string[];
30
+ /**
31
+ * *
32
+ * Server wall-clock time. Useful to detect clock skew between the network
33
+ * and the provider.
34
+ *
35
+ * @generated from field: google.protobuf.Timestamp current_time = 20;
36
+ */
37
+ currentTime?: Timestamp | undefined;
38
+ /**
39
+ * *
40
+ * Semver of the provider SDK package, e.g. "1.1.15".
41
+ *
42
+ * @generated from field: string sdk_version = 30;
43
+ */
44
+ sdkVersion: string;
45
+ /**
46
+ * *
47
+ * Which SDK runtime/ecosystem this provider was built against.
48
+ *
49
+ * @generated from field: tzero.v1.system.SdkEcosystem sdk_ecosystem = 40;
50
+ */
51
+ sdkEcosystem: SdkEcosystem;
52
+ };
53
+ /**
54
+ * Describes the message tzero.v1.system.HealthResponse.
55
+ * Use `create(HealthResponseSchema)` to create a new message.
56
+ */
57
+ export declare const HealthResponseSchema: GenMessage<HealthResponse>;
58
+ /**
59
+ * @generated from enum tzero.v1.system.SdkEcosystem
60
+ */
61
+ export declare enum SdkEcosystem {
62
+ /**
63
+ * @generated from enum value: SDK_ECOSYSTEM_UNSPECIFIED = 0;
64
+ */
65
+ UNSPECIFIED = 0,
66
+ /**
67
+ * @generated from enum value: SDK_ECOSYSTEM_GO = 10;
68
+ */
69
+ GO = 10,
70
+ /**
71
+ * @generated from enum value: SDK_ECOSYSTEM_NODE = 20;
72
+ */
73
+ NODE = 20,
74
+ /**
75
+ * @generated from enum value: SDK_ECOSYSTEM_PYTHON = 30;
76
+ */
77
+ PYTHON = 30,
78
+ /**
79
+ * @generated from enum value: SDK_ECOSYSTEM_JAVA = 40;
80
+ */
81
+ JAVA = 40,
82
+ /**
83
+ * @generated from enum value: SDK_ECOSYSTEM_CSHARP = 50;
84
+ */
85
+ CSHARP = 50
86
+ }
87
+ /**
88
+ * Describes the enum tzero.v1.system.SdkEcosystem.
89
+ */
90
+ export declare const SdkEcosystemSchema: GenEnum<SdkEcosystem>;
91
+ /**
92
+ * *
93
+ * SystemService exposes operational/introspection RPCs on a provider
94
+ * endpoint. It is automatically registered by every provider SDK;
95
+ * customers do not implement it themselves. Calls are signed with the
96
+ * T-0 Network keypair, just like every other provider RPC.
97
+ *
98
+ * Health() is the first RPC. Future operational endpoints (e.g.
99
+ * Diagnostics, BuildInfo) belong on this service so customers continue
100
+ * to get them automatically as they upgrade the SDK.
101
+ *
102
+ * @generated from service tzero.v1.system.SystemService
103
+ */
104
+ export declare const SystemService: GenService<{
105
+ /**
106
+ * *
107
+ * Health returns the list of RPC services registered on this provider,
108
+ * the server's current wall-clock time, and the SDK build identifying
109
+ * this deployment. The returned `services` list always includes
110
+ * "tzero.v1.system.SystemService" itself.
111
+ *
112
+ * @generated from rpc tzero.v1.system.SystemService.Health
113
+ */
114
+ health: {
115
+ methodKind: "unary";
116
+ input: typeof HealthRequestSchema;
117
+ output: typeof HealthResponseSchema;
118
+ };
119
+ }>;
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ // @generated by protoc-gen-es v2.12.0 with parameter "target=ts,import_extension=js"
3
+ // @generated from file tzero/v1/system/system.proto (package tzero.v1.system, syntax proto3)
4
+ /* eslint-disable */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SystemService = exports.SdkEcosystemSchema = exports.SdkEcosystem = exports.HealthResponseSchema = exports.HealthRequestSchema = exports.file_tzero_v1_system_system = void 0;
7
+ const codegenv2_1 = require("@bufbuild/protobuf/codegenv2");
8
+ const wkt_1 = require("@bufbuild/protobuf/wkt");
9
+ const validate_pb_js_1 = require("../../../buf/validate/validate_pb.js");
10
+ /**
11
+ * Describes the file tzero/v1/system/system.proto.
12
+ */
13
+ exports.file_tzero_v1_system_system = (0, codegenv2_1.fileDesc)("Chx0emVyby92MS9zeXN0ZW0vc3lzdGVtLnByb3RvEg90emVyby52MS5zeXN0ZW0iDwoNSGVhbHRoUmVxdWVzdCLKAQoOSGVhbHRoUmVzcG9uc2USHgoIc2VydmljZXMYCiADKAlCDLpICZIBBiIEcgIQARI4CgxjdXJyZW50X3RpbWUYFCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQga6SAPIAQESHAoLc2RrX3ZlcnNpb24YHiABKAlCB7pIBHICEAESQAoNc2RrX2Vjb3N5c3RlbRgoIAEoDjIdLnR6ZXJvLnYxLnN5c3RlbS5TZGtFY29zeXN0ZW1CCrpIB4IBBBABIAAqpwEKDFNka0Vjb3N5c3RlbRIdChlTREtfRUNPU1lTVEVNX1VOU1BFQ0lGSUVEEAASFAoQU0RLX0VDT1NZU1RFTV9HTxAKEhYKElNES19FQ09TWVNURU1fTk9ERRAUEhgKFFNES19FQ09TWVNURU1fUFlUSE9OEB4SFgoSU0RLX0VDT1NZU1RFTV9KQVZBECgSGAoUU0RLX0VDT1NZU1RFTV9DU0hBUlAQMjJfCg1TeXN0ZW1TZXJ2aWNlEk4KBkhlYWx0aBIeLnR6ZXJvLnYxLnN5c3RlbS5IZWFsdGhSZXF1ZXN0Gh8udHplcm8udjEuc3lzdGVtLkhlYWx0aFJlc3BvbnNlIgOQAgFCzwEKE2NvbS50emVyby52MS5zeXN0ZW1CC1N5c3RlbVByb3RvUAFaOmdpdGh1Yi5jb20vdC0wLW5ldHdvcmsvcHJvdmlkZXItc2RrL2dvL2FwaS90emVyby92MS9zeXN0ZW2iAgNUVlOqAiJUMC5Qcm92aWRlclNkay5BcGkuVHplcm8uVjEuU3lzdGVtygIPVHplcm9cVjFcU3lzdGVt4gIbVHplcm9cVjFcU3lzdGVtXEdQQk1ldGFkYXRh6gIRVHplcm86OlYxOjpTeXN0ZW1iBnByb3RvMw", [wkt_1.file_google_protobuf_timestamp, validate_pb_js_1.file_buf_validate_validate]);
14
+ /**
15
+ * Describes the message tzero.v1.system.HealthRequest.
16
+ * Use `create(HealthRequestSchema)` to create a new message.
17
+ */
18
+ exports.HealthRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_tzero_v1_system_system, 0);
19
+ /**
20
+ * Describes the message tzero.v1.system.HealthResponse.
21
+ * Use `create(HealthResponseSchema)` to create a new message.
22
+ */
23
+ exports.HealthResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_tzero_v1_system_system, 1);
24
+ /**
25
+ * @generated from enum tzero.v1.system.SdkEcosystem
26
+ */
27
+ var SdkEcosystem;
28
+ (function (SdkEcosystem) {
29
+ /**
30
+ * @generated from enum value: SDK_ECOSYSTEM_UNSPECIFIED = 0;
31
+ */
32
+ SdkEcosystem[SdkEcosystem["UNSPECIFIED"] = 0] = "UNSPECIFIED";
33
+ /**
34
+ * @generated from enum value: SDK_ECOSYSTEM_GO = 10;
35
+ */
36
+ SdkEcosystem[SdkEcosystem["GO"] = 10] = "GO";
37
+ /**
38
+ * @generated from enum value: SDK_ECOSYSTEM_NODE = 20;
39
+ */
40
+ SdkEcosystem[SdkEcosystem["NODE"] = 20] = "NODE";
41
+ /**
42
+ * @generated from enum value: SDK_ECOSYSTEM_PYTHON = 30;
43
+ */
44
+ SdkEcosystem[SdkEcosystem["PYTHON"] = 30] = "PYTHON";
45
+ /**
46
+ * @generated from enum value: SDK_ECOSYSTEM_JAVA = 40;
47
+ */
48
+ SdkEcosystem[SdkEcosystem["JAVA"] = 40] = "JAVA";
49
+ /**
50
+ * @generated from enum value: SDK_ECOSYSTEM_CSHARP = 50;
51
+ */
52
+ SdkEcosystem[SdkEcosystem["CSHARP"] = 50] = "CSHARP";
53
+ })(SdkEcosystem || (exports.SdkEcosystem = SdkEcosystem = {}));
54
+ /**
55
+ * Describes the enum tzero.v1.system.SdkEcosystem.
56
+ */
57
+ exports.SdkEcosystemSchema = (0, codegenv2_1.enumDesc)(exports.file_tzero_v1_system_system, 0);
58
+ /**
59
+ * *
60
+ * SystemService exposes operational/introspection RPCs on a provider
61
+ * endpoint. It is automatically registered by every provider SDK;
62
+ * customers do not implement it themselves. Calls are signed with the
63
+ * T-0 Network keypair, just like every other provider RPC.
64
+ *
65
+ * Health() is the first RPC. Future operational endpoints (e.g.
66
+ * Diagnostics, BuildInfo) belong on this service so customers continue
67
+ * to get them automatically as they upgrade the SDK.
68
+ *
69
+ * @generated from service tzero.v1.system.SystemService
70
+ */
71
+ exports.SystemService = (0, codegenv2_1.serviceDesc)(exports.file_tzero_v1_system_system, 0);
@@ -4,7 +4,7 @@ import type { DescService } from "@bufbuild/protobuf";
4
4
  import type { ServiceImpl } from "@connectrpc/connect";
5
5
  export declare const REQUEST_VALIDITY_MILLIS = 60000;
6
6
  interface Router {
7
- service: <T extends DescService>(service: T, implementation: Partial<ServiceImpl<T>>) => void;
7
+ service: <T extends DescService, I extends ServiceImpl<T>>(service: T, implementation: I) => void;
8
8
  }
9
9
  export declare const createService: (networkPublicKey: string | Buffer, registerRoutes: (router: Router) => void) => {
10
10
  routes: (router: ConnectRouter) => void;
@@ -8,6 +8,8 @@ const connect_1 = require("@connectrpc/connect");
8
8
  const headers_js_1 = __importDefault(require("../common/headers.js"));
9
9
  const secp256k1_js_1 = require("@noble/curves/secp256k1.js");
10
10
  const validate_response_js_1 = require("./validate_response.js");
11
+ const system_pb_js_1 = require("../common/gen/tzero/v1/system/system_pb.js");
12
+ const system_js_1 = require("./system.js");
11
13
  exports.REQUEST_VALIDITY_MILLIS = 60000;
12
14
  const createSignatureVerification = (networkPublicKey) => (next) => async (req) => {
13
15
  const ts = decodeNum(getHeader(req, headers_js_1.default.SignatureTimestamp));
@@ -46,7 +48,17 @@ const createService = (networkPublicKey, registerRoutes) => {
46
48
  }
47
49
  return {
48
50
  routes: (router) => {
49
- registerRoutes(router);
51
+ const collected = [];
52
+ const origService = router.service.bind(router);
53
+ const wrappedRouter = {
54
+ service: (desc, impl) => {
55
+ collected.push(desc.typeName);
56
+ origService(desc, impl);
57
+ },
58
+ };
59
+ registerRoutes(wrappedRouter);
60
+ collected.push(system_pb_js_1.SystemService.typeName);
61
+ origService(system_pb_js_1.SystemService, (0, system_js_1.createSystemServiceImpl)(collected));
50
62
  },
51
63
  interceptors: [createSignatureVerification(networkPublicKey), (0, validate_response_js_1.createValidationInterceptor)()],
52
64
  grpcWeb: false,
@@ -0,0 +1,4 @@
1
+ import { HealthRequest, HealthResponse } from "../common/gen/tzero/v1/system/system_pb.js";
2
+ export declare const createSystemServiceImpl: (services: string[]) => {
3
+ health(_req: HealthRequest): HealthResponse;
4
+ };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSystemServiceImpl = void 0;
4
+ const protobuf_1 = require("@bufbuild/protobuf");
5
+ const wkt_1 = require("@bufbuild/protobuf/wkt");
6
+ const system_pb_js_1 = require("../common/gen/tzero/v1/system/system_pb.js");
7
+ const version_js_1 = require("../version.js");
8
+ const createSystemServiceImpl = (services) => ({
9
+ health(_req) {
10
+ return (0, protobuf_1.create)(system_pb_js_1.HealthResponseSchema, {
11
+ services,
12
+ currentTime: (0, wkt_1.timestampNow)(),
13
+ sdkVersion: version_js_1.SDK_VERSION,
14
+ sdkEcosystem: system_pb_js_1.SdkEcosystem.NODE,
15
+ });
16
+ },
17
+ });
18
+ exports.createSystemServiceImpl = createSystemServiceImpl;
@@ -0,0 +1 @@
1
+ export declare const SDK_VERSION = "1.1.16";
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SDK_VERSION = void 0;
4
+ // SDK semantic version. Bumped in lockstep with all other SDKs by the
5
+ // release.yaml workflow.
6
+ exports.SDK_VERSION = "1.1.16";
@@ -24,17 +24,6 @@ export type UpdateQuoteRequest = Message<"tzero.v1.payment.UpdateQuoteRequest">
24
24
  * @generated from field: repeated tzero.v1.payment.UpdateQuoteRequest.Quote pay_out = 10;
25
25
  */
26
26
  payOut: UpdateQuoteRequest_Quote[];
27
- /**
28
- * *
29
- * Zero or more quotes for pay-in operations, each quote must have a unique currency, and one or more bands, with the
30
- * unique client_quote_id for each band.
31
- *
32
- * Deprecated: pay-in quotes are no longer used.
33
- *
34
- * @generated from field: repeated tzero.v1.payment.UpdateQuoteRequest.Quote pay_in = 20 [deprecated = true];
35
- * @deprecated
36
- */
37
- payIn: UpdateQuoteRequest_Quote[];
38
27
  };
39
28
  /**
40
29
  * Describes the message tzero.v1.payment.UpdateQuoteRequest.
@@ -52,7 +41,10 @@ export type UpdateQuoteRequest_Quote = Message<"tzero.v1.payment.UpdateQuoteRequ
52
41
  */
53
42
  currency: string;
54
43
  /**
55
- * @generated from field: tzero.v1.payment.QuoteType quote_type = 20;
44
+ * Deprecated: rate type is no longer used; the server ignores the value.
45
+ *
46
+ * @generated from field: tzero.v1.payment.QuoteType quote_type = 20 [deprecated = true];
47
+ * @deprecated
56
48
  */
57
49
  quoteType: QuoteType;
58
50
  /**
@@ -651,7 +643,30 @@ export declare enum CreatePaymentResponse_Failure_Reason {
651
643
  *
652
644
  * @generated from enum value: REASON_CREDIT_OR_PREDEPOSIT_REQUIRED = 20;
653
645
  */
654
- CREDIT_OR_PREDEPOSIT_REQUIRED = 20
646
+ CREDIT_OR_PREDEPOSIT_REQUIRED = 20,
647
+ /**
648
+ * The pinned quote's band cannot cover the requested amount. The quote is
649
+ * still live; retry with a smaller amount, split the payment across bands,
650
+ * or request a fresh GetQuote for a quote that covers the full amount.
651
+ *
652
+ * @generated from enum value: REASON_AMOUNT_EXCEEDS_QUOTE_BAND = 30;
653
+ */
654
+ AMOUNT_EXCEEDS_QUOTE_BAND = 30,
655
+ /**
656
+ * The pinned quote's expires_at has passed. Auto-retry by calling GetQuote
657
+ * to obtain a fresh quote id and re-submit with it.
658
+ *
659
+ * @generated from enum value: REASON_QUOTE_EXPIRED = 40;
660
+ */
661
+ QUOTE_EXPIRED = 40,
662
+ /**
663
+ * The pinned quote id does not exist for the pay-in/pay-out provider pair.
664
+ * Indicates a client-side plumbing bug (stale / mismatched id); no auto-retry
665
+ * will succeed until the client fixes quote propagation.
666
+ *
667
+ * @generated from enum value: REASON_QUOTE_ID_UNKNOWN = 50;
668
+ */
669
+ QUOTE_ID_UNKNOWN = 50
655
670
  }
656
671
  /**
657
672
  * Describes the enum tzero.v1.payment.CreatePaymentResponse.Failure.Reason.
@@ -11,7 +11,7 @@ import { file_buf_validate_validate } from "../../../buf/validate/validate_pb.js
11
11
  /**
12
12
  * Describes the file tzero/v1/payment/network.proto.
13
13
  */
14
- export const file_tzero_v1_payment_network = /*@__PURE__*/ fileDesc("Ch50emVyby92MS9wYXltZW50L25ldHdvcmsucHJvdG8SEHR6ZXJvLnYxLnBheW1lbnQiwgUKElVwZGF0ZVF1b3RlUmVxdWVzdBI7CgdwYXlfb3V0GAogAygLMioudHplcm8udjEucGF5bWVudC5VcGRhdGVRdW90ZVJlcXVlc3QuUXVvdGUSPgoGcGF5X2luGBQgAygLMioudHplcm8udjEucGF5bWVudC5VcGRhdGVRdW90ZVJlcXVlc3QuUXVvdGVCAhgBGq4ECgVRdW90ZRImCghjdXJyZW5jeRgKIAEoCUIUukgRcg8yCl5bQS1aXXszfSSYAQMSNwoKcXVvdGVfdHlwZRgUIAEoDjIbLnR6ZXJvLnYxLnBheW1lbnQuUXVvdGVUeXBlQga6SAPIAQESQgoOcGF5bWVudF9tZXRob2QYGSABKA4yIi50emVyby52MS5jb21tb24uUGF5bWVudE1ldGhvZFR5cGVCBrpIA8gBARJICgViYW5kcxgeIAMoCzIvLnR6ZXJvLnYxLnBheW1lbnQuVXBkYXRlUXVvdGVSZXF1ZXN0LlF1b3RlLkJhbmRCCLpIBZIBAggBEjgKCmV4cGlyYXRpb24YPCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgi6SAWyAQJAARI1Cgl0aW1lc3RhbXAYRiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQga6SAPIAQEaxAEKBEJhbmQSIgoPY2xpZW50X3F1b3RlX2lkGAogASgJQgm6SAZyBBABGEASNAoKbWF4X2Ftb3VudBgoIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESLgoEcmF0ZRgyIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESKgoDZml4GDwgASgLMhgudHplcm8udjEuY29tbW9uLkRlY2ltYWxIAIgBAUIGCgRfZml4IhUKE1VwZGF0ZVF1b3RlUmVzcG9uc2Ui9wEKD0dldFF1b3RlUmVxdWVzdBI3CgZhbW91bnQYFCABKAsyHy50emVyby52MS5wYXltZW50LlBheW1lbnRBbW91bnRCBrpIA8gBARIuChBwYXlfb3V0X2N1cnJlbmN5GCggASgJQhS6SBFyDzIKXltBLVpdezN9JJgBAxJCCg5wYXlfb3V0X21ldGhvZBgyIAEoDjIiLnR6ZXJvLnYxLmNvbW1vbi5QYXltZW50TWV0aG9kVHlwZUIGukgDyAEBEjcKCnF1b3RlX3R5cGUYPCABKA4yGy50emVyby52MS5wYXltZW50LlF1b3RlVHlwZUIGukgDyAEBIsgKChBHZXRRdW90ZVJlc3BvbnNlEj0KB3N1Y2Nlc3MYFCABKAsyKi50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuU3VjY2Vzc0gAEj0KB2ZhaWx1cmUYHiABKAsyKi50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuRmFpbHVyZUgAEkQKCmFsbF9xdW90ZXMYKCADKAsyMC50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuUHJvdmlkZXJRdW90ZRrGAgoHU3VjY2VzcxIuCgRyYXRlGAogASgLMhgudHplcm8udjEuY29tbW9uLkRlY2ltYWxCBrpIA8gBARI4CgpleHBpcmF0aW9uGBQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIIukgFsgECQAESMwoIcXVvdGVfaWQYHiABKAsyGS50emVyby52MS5wYXltZW50LlF1b3RlSWRCBrpIA8gBARI4Cg5wYXlfb3V0X2Ftb3VudBgoIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESOwoRc2V0dGxlbWVudF9hbW91bnQYMiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiUKA2ZpeBg8IAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsGrQBCgdGYWlsdXJlEkEKBnJlYXNvbhgKIAEoDjIxLnR6ZXJvLnYxLnBheW1lbnQuR2V0UXVvdGVSZXNwb25zZS5GYWlsdXJlLlJlYXNvbiJmCgZSZWFzb24SFgoSUkVBU09OX1VOU1BFQ0lGSUVEEAASGgoWUkVBU09OX1FVT1RFX05PVF9GT1VORBAKEigKJFJFQVNPTl9DUkVESVRfT1JfUFJFREVQT1NJVF9SRVFVSVJFRBAUGt4ECg1Qcm92aWRlclF1b3RlEjMKCHF1b3RlX2lkGAogASgLMhkudHplcm8udjEucGF5bWVudC5RdW90ZUlkQga6SAPIAQESLgoEcmF0ZRgUIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESLgoKZXhwaXJhdGlvbhgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASOAoOcGF5X291dF9hbW91bnQYKCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBElcKCnNldHRsZW1lbnQYMiABKAsyOy50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuUHJvdmlkZXJRdW90ZS5TZXR0bGVtZW50Qga6SAPIAQESEgoKZXhlY3V0YWJsZRg8IAEoCBIlCgNmaXgYRiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbBrpAQoKU2V0dGxlbWVudBIwCgZhbW91bnQYCiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEjYKDGNyZWRpdF9saW1pdBgUIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESNAoKdG90YWxfdXNlZBgeIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESOwoRcHJlZnVuZGluZ19hbW91bnQYMiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBQg8KBnJlc3VsdBIFukgCCAEizAQKFENyZWF0ZVBheW1lbnRSZXF1ZXN0EiQKEXBheW1lbnRfY2xpZW50X2lkGAogASgJQgm6SAZyBBABGEASNwoGYW1vdW50GB4gASgLMh8udHplcm8udjEucGF5bWVudC5QYXltZW50QW1vdW50Qga6SAPIAQESJgoIY3VycmVuY3kYKCABKAlCFLpIEXIPMgpeW0EtWl17M30kmAEDEkAKD3BheW1lbnRfZGV0YWlscxgyIAEoCzIfLnR6ZXJvLnYxLmNvbW1vbi5QYXltZW50RGV0YWlsc0IGukgDyAEBEjAKCHF1b3RlX2lkGDwgASgLMhkudHplcm8udjEucGF5bWVudC5RdW90ZUlkSACIAQESVwoQdHJhdmVsX3J1bGVfZGF0YRhkIAEoCzI1LnR6ZXJvLnYxLnBheW1lbnQuQ3JlYXRlUGF5bWVudFJlcXVlc3QuVHJhdmVsUnVsZURhdGFCBrpIA8gBARrSAQoOVHJhdmVsUnVsZURhdGESLQoKb3JpZ2luYXRvchgKIAMoCzIPLml2bXMxMDEuUGVyc29uQgi6SAWSAQIIARIuCgtiZW5lZmljaWFyeRgUIAMoCzIPLml2bXMxMDEuUGVyc29uQgi6SAWSAQIIARI5CiNvcmlnaW5hdG9yX3Byb3ZpZGVyX2xlZ2FsX2VudGl0eV9pZBgeIAEoDUIHukgEKgIgAEgAiAEBQiYKJF9vcmlnaW5hdG9yX3Byb3ZpZGVyX2xlZ2FsX2VudGl0eV9pZEILCglfcXVvdGVfaWQiQgoHUXVvdGVJZBIZCghxdW90ZV9pZBgeIAEoA0IHukgEIgIgABIcCgtwcm92aWRlcl9pZBgoIAEoBUIHukgEGgIgACLQBgoVQ3JlYXRlUGF5bWVudFJlc3BvbnNlEiIKEXBheW1lbnRfY2xpZW50X2lkGAogASgJQge6SARyAhABEkQKCGFjY2VwdGVkGBQgASgLMjAudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuQWNjZXB0ZWRIABJdChNzZXR0bGVtZW50X3JlcXVpcmVkGCMgASgLMjoudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuU2V0dGxlbWVudFJlcXVpcmVkQgIYAUgAEkIKB2ZhaWx1cmUYHiABKAsyLy50emVyby52MS5wYXltZW50LkNyZWF0ZVBheW1lbnRSZXNwb25zZS5GYWlsdXJlSAAawgEKCEFjY2VwdGVkEhsKCnBheW1lbnRfaWQYCiABKARCB7pIBDICIAASOwoRc2V0dGxlbWVudF9hbW91bnQYHiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEjcKDXBheW91dF9hbW91bnQYKCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiMKEnBheW91dF9wcm92aWRlcl9pZBgyIAEoDUIHukgEKgIgABqXAQoSU2V0dGxlbWVudFJlcXVpcmVkEhsKCnBheW1lbnRfaWQYCiABKARCB7pIBDICIAASOwoRc2V0dGxlbWVudF9hbW91bnQYFCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiMKEnBheW91dF9wcm92aWRlcl9pZBgeIAEoDUIHukgEKgIgADoCGAEauQEKB0ZhaWx1cmUSRgoGcmVhc29uGAogASgOMjYudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuRmFpbHVyZS5SZWFzb24iZgoGUmVhc29uEhYKElJFQVNPTl9VTlNQRUNJRklFRBAAEhoKFlJFQVNPTl9RVU9URV9OT1RfRk9VTkQQChIoCiRSRUFTT05fQ1JFRElUX09SX1BSRURFUE9TSVRfUkVRVUlSRUQQFEIPCgZyZXN1bHQSBbpIAggBIpgBChRDb25maXJtUGF5b3V0UmVxdWVzdBIbCgpwYXltZW50X2lkGAogASgEQge6SAQyAiAAEhwKCXBheW91dF9pZBgUIAEoBEIJGAG6SAQyAiAAEjUKB3JlY2VpcHQYHiABKAsyHy50emVyby52MS5jb21tb24uUGF5bWVudFJlY2VpcHRIAIgBAToCGAFCCgoIX3JlY2VpcHQiGwoVQ29uZmlybVBheW91dFJlc3BvbnNlOgIYASKbAgodQ29tcGxldGVNYW51YWxBbWxDaGVja1JlcXVlc3QSGwoKcGF5bWVudF9pZBgKIAEoBEIHukgEMgIgABJMCghhcHByb3ZlZBgeIAEoCzI4LnR6ZXJvLnYxLnBheW1lbnQuQ29tcGxldGVNYW51YWxBbWxDaGVja1JlcXVlc3QuQXBwcm92ZWRIABJMCghyZWplY3RlZBgoIAEoCzI4LnR6ZXJvLnYxLnBheW1lbnQuQ29tcGxldGVNYW51YWxBbWxDaGVja1JlcXVlc3QuUmVqZWN0ZWRIABoKCghBcHByb3ZlZBokCghSZWplY3RlZBIYCgZyZWFzb24YCiABKAlCCLpIBXIDGIAIQg8KBnJlc3VsdBIFukgCCAEirAMKHkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXNwb25zZRJNCghhcHByb3ZlZBgeIAEoCzI5LnR6ZXJvLnYxLnBheW1lbnQuQ29tcGxldGVNYW51YWxBbWxDaGVja1Jlc3BvbnNlLkFwcHJvdmVkSAASTQoIcmVqZWN0ZWQYKCABKAsyOS50emVyby52MS5wYXltZW50LkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXNwb25zZS5SZWplY3RlZEgAGs4BCghBcHByb3ZlZBI4Cg5wYXlfb3V0X2Ftb3VudBgKIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESOwoRc2V0dGxlbWVudF9hbW91bnQYFCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiEKEHBheV9vdXRfcXVvdGVfaWQYHiABKANCB7pIBCICIAASKAoXcGF5X291dF9jbGllbnRfcXVvdGVfaWQYKCABKAlCB7pIBHICGEAaCgoIUmVqZWN0ZWRCDwoGcmVzdWx0EgW6SAIIASKLAQoNUGF5bWVudEFtb3VudBIyCg5wYXlfb3V0X2Ftb3VudBgUIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsSAASNQoRc2V0dGxlbWVudF9hbW91bnQYHiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEgAQg8KBmFtb3VudBIFukgCCAEiwAIKFUZpbmFsaXplUGF5b3V0UmVxdWVzdBIbCgpwYXltZW50X2lkGAogASgEQge6SAQyAiAAEkIKB3N1Y2Nlc3MYHiABKAsyLy50emVyby52MS5wYXltZW50LkZpbmFsaXplUGF5b3V0UmVxdWVzdC5TdWNjZXNzSAASQgoHZmFpbHVyZRgoIAEoCzIvLnR6ZXJvLnYxLnBheW1lbnQuRmluYWxpemVQYXlvdXRSZXF1ZXN0LkZhaWx1cmVIABpMCgdTdWNjZXNzEjUKB3JlY2VpcHQYHiABKAsyHy50emVyby52MS5jb21tb24uUGF5bWVudFJlY2VpcHRIAIgBAUIKCghfcmVjZWlwdBojCgdGYWlsdXJlEhgKBnJlYXNvbhgKIAEoCUIIukgFcgMYgAhCDwoGcmVzdWx0EgW6SAIIASIYChZGaW5hbGl6ZVBheW91dFJlc3BvbnNlKkAKCVF1b3RlVHlwZRIaChZRVU9URV9UWVBFX1VOU1BFQ0lGSUVEEAASFwoTUVVPVEVfVFlQRV9SRUFMVElNRRABMocFCg5OZXR3b3JrU2VydmljZRJfCgtVcGRhdGVRdW90ZRIkLnR6ZXJvLnYxLnBheW1lbnQuVXBkYXRlUXVvdGVSZXF1ZXN0GiUudHplcm8udjEucGF5bWVudC5VcGRhdGVRdW90ZVJlc3BvbnNlIgOQAgISVgoIR2V0UXVvdGUSIS50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVxdWVzdBoiLnR6ZXJvLnYxLnBheW1lbnQuR2V0UXVvdGVSZXNwb25zZSIDkAIBEmUKDUNyZWF0ZVBheW1lbnQSJi50emVyby52MS5wYXltZW50LkNyZWF0ZVBheW1lbnRSZXF1ZXN0GicudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UiA5ACAhJoCg1Db25maXJtUGF5b3V0EiYudHplcm8udjEucGF5bWVudC5Db25maXJtUGF5b3V0UmVxdWVzdBonLnR6ZXJvLnYxLnBheW1lbnQuQ29uZmlybVBheW91dFJlc3BvbnNlIgaIAgGQAgISaAoORmluYWxpemVQYXlvdXQSJy50emVyby52MS5wYXltZW50LkZpbmFsaXplUGF5b3V0UmVxdWVzdBooLnR6ZXJvLnYxLnBheW1lbnQuRmluYWxpemVQYXlvdXRSZXNwb25zZSIDkAICEoABChZDb21wbGV0ZU1hbnVhbEFtbENoZWNrEi8udHplcm8udjEucGF5bWVudC5Db21wbGV0ZU1hbnVhbEFtbENoZWNrUmVxdWVzdBowLnR6ZXJvLnYxLnBheW1lbnQuQ29tcGxldGVNYW51YWxBbWxDaGVja1Jlc3BvbnNlIgOQAgJC1gEKFGNvbS50emVyby52MS5wYXltZW50QgxOZXR3b3JrUHJvdG9QAVo7Z2l0aHViLmNvbS90LTAtbmV0d29yay9wcm92aWRlci1zZGsvZ28vYXBpL3R6ZXJvL3YxL3BheW1lbnSiAgNUVlCqAiNUMC5Qcm92aWRlclNkay5BcGkuVHplcm8uVjEuUGF5bWVudMoCEFR6ZXJvXFYxXFBheW1lbnTiAhxUemVyb1xWMVxQYXltZW50XEdQQk1ldGFkYXRh6gISVHplcm86OlYxOjpQYXltZW50YgZwcm90bzM", [file_tzero_v1_common_common, file_tzero_v1_common_payment_method, file_tzero_v1_common_payment_receipt, file_ivms101_v1_ivms_ivms101, file_google_protobuf_timestamp, file_buf_validate_validate]);
14
+ export const file_tzero_v1_payment_network = /*@__PURE__*/ fileDesc("Ch50emVyby92MS9wYXltZW50L25ldHdvcmsucHJvdG8SEHR6ZXJvLnYxLnBheW1lbnQijAUKElVwZGF0ZVF1b3RlUmVxdWVzdBI7CgdwYXlfb3V0GAogAygLMioudHplcm8udjEucGF5bWVudC5VcGRhdGVRdW90ZVJlcXVlc3QuUXVvdGUaqgQKBVF1b3RlEiYKCGN1cnJlbmN5GAogASgJQhS6SBFyDzIKXltBLVpdezN9JJgBAxIzCgpxdW90ZV90eXBlGBQgASgOMhsudHplcm8udjEucGF5bWVudC5RdW90ZVR5cGVCAhgBEkIKDnBheW1lbnRfbWV0aG9kGBkgASgOMiIudHplcm8udjEuY29tbW9uLlBheW1lbnRNZXRob2RUeXBlQga6SAPIAQESSAoFYmFuZHMYHiADKAsyLy50emVyby52MS5wYXltZW50LlVwZGF0ZVF1b3RlUmVxdWVzdC5RdW90ZS5CYW5kQgi6SAWSAQIIARI4CgpleHBpcmF0aW9uGDwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIIukgFsgECQAESNQoJdGltZXN0YW1wGEYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIGukgDyAEBGsQBCgRCYW5kEiIKD2NsaWVudF9xdW90ZV9pZBgKIAEoCUIJukgGcgQQARhAEjQKCm1heF9hbW91bnQYKCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEi4KBHJhdGUYMiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEioKA2ZpeBg8IAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsSACIAQFCBgoEX2ZpeEoECBQQFVIGcGF5X2luIhUKE1VwZGF0ZVF1b3RlUmVzcG9uc2Ui9wEKD0dldFF1b3RlUmVxdWVzdBI3CgZhbW91bnQYFCABKAsyHy50emVyby52MS5wYXltZW50LlBheW1lbnRBbW91bnRCBrpIA8gBARIuChBwYXlfb3V0X2N1cnJlbmN5GCggASgJQhS6SBFyDzIKXltBLVpdezN9JJgBAxJCCg5wYXlfb3V0X21ldGhvZBgyIAEoDjIiLnR6ZXJvLnYxLmNvbW1vbi5QYXltZW50TWV0aG9kVHlwZUIGukgDyAEBEjcKCnF1b3RlX3R5cGUYPCABKA4yGy50emVyby52MS5wYXltZW50LlF1b3RlVHlwZUIGukgDyAEBIsgKChBHZXRRdW90ZVJlc3BvbnNlEj0KB3N1Y2Nlc3MYFCABKAsyKi50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuU3VjY2Vzc0gAEj0KB2ZhaWx1cmUYHiABKAsyKi50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuRmFpbHVyZUgAEkQKCmFsbF9xdW90ZXMYKCADKAsyMC50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuUHJvdmlkZXJRdW90ZRrGAgoHU3VjY2VzcxIuCgRyYXRlGAogASgLMhgudHplcm8udjEuY29tbW9uLkRlY2ltYWxCBrpIA8gBARI4CgpleHBpcmF0aW9uGBQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIIukgFsgECQAESMwoIcXVvdGVfaWQYHiABKAsyGS50emVyby52MS5wYXltZW50LlF1b3RlSWRCBrpIA8gBARI4Cg5wYXlfb3V0X2Ftb3VudBgoIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESOwoRc2V0dGxlbWVudF9hbW91bnQYMiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiUKA2ZpeBg8IAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsGrQBCgdGYWlsdXJlEkEKBnJlYXNvbhgKIAEoDjIxLnR6ZXJvLnYxLnBheW1lbnQuR2V0UXVvdGVSZXNwb25zZS5GYWlsdXJlLlJlYXNvbiJmCgZSZWFzb24SFgoSUkVBU09OX1VOU1BFQ0lGSUVEEAASGgoWUkVBU09OX1FVT1RFX05PVF9GT1VORBAKEigKJFJFQVNPTl9DUkVESVRfT1JfUFJFREVQT1NJVF9SRVFVSVJFRBAUGt4ECg1Qcm92aWRlclF1b3RlEjMKCHF1b3RlX2lkGAogASgLMhkudHplcm8udjEucGF5bWVudC5RdW90ZUlkQga6SAPIAQESLgoEcmF0ZRgUIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESLgoKZXhwaXJhdGlvbhgeIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASOAoOcGF5X291dF9hbW91bnQYKCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBElcKCnNldHRsZW1lbnQYMiABKAsyOy50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UuUHJvdmlkZXJRdW90ZS5TZXR0bGVtZW50Qga6SAPIAQESEgoKZXhlY3V0YWJsZRg8IAEoCBIlCgNmaXgYRiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbBrpAQoKU2V0dGxlbWVudBIwCgZhbW91bnQYCiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEjYKDGNyZWRpdF9saW1pdBgUIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESNAoKdG90YWxfdXNlZBgeIAEoCzIYLnR6ZXJvLnYxLmNvbW1vbi5EZWNpbWFsQga6SAPIAQESOwoRcHJlZnVuZGluZ19hbW91bnQYMiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBQg8KBnJlc3VsdBIFukgCCAEizAQKFENyZWF0ZVBheW1lbnRSZXF1ZXN0EiQKEXBheW1lbnRfY2xpZW50X2lkGAogASgJQgm6SAZyBBABGEASNwoGYW1vdW50GB4gASgLMh8udHplcm8udjEucGF5bWVudC5QYXltZW50QW1vdW50Qga6SAPIAQESJgoIY3VycmVuY3kYKCABKAlCFLpIEXIPMgpeW0EtWl17M30kmAEDEkAKD3BheW1lbnRfZGV0YWlscxgyIAEoCzIfLnR6ZXJvLnYxLmNvbW1vbi5QYXltZW50RGV0YWlsc0IGukgDyAEBEjAKCHF1b3RlX2lkGDwgASgLMhkudHplcm8udjEucGF5bWVudC5RdW90ZUlkSACIAQESVwoQdHJhdmVsX3J1bGVfZGF0YRhkIAEoCzI1LnR6ZXJvLnYxLnBheW1lbnQuQ3JlYXRlUGF5bWVudFJlcXVlc3QuVHJhdmVsUnVsZURhdGFCBrpIA8gBARrSAQoOVHJhdmVsUnVsZURhdGESLQoKb3JpZ2luYXRvchgKIAMoCzIPLml2bXMxMDEuUGVyc29uQgi6SAWSAQIIARIuCgtiZW5lZmljaWFyeRgUIAMoCzIPLml2bXMxMDEuUGVyc29uQgi6SAWSAQIIARI5CiNvcmlnaW5hdG9yX3Byb3ZpZGVyX2xlZ2FsX2VudGl0eV9pZBgeIAEoDUIHukgEKgIgAEgAiAEBQiYKJF9vcmlnaW5hdG9yX3Byb3ZpZGVyX2xlZ2FsX2VudGl0eV9pZEILCglfcXVvdGVfaWQiQgoHUXVvdGVJZBIZCghxdW90ZV9pZBgeIAEoA0IHukgEIgIgABIcCgtwcm92aWRlcl9pZBgoIAEoBUIHukgEGgIgACKuBwoVQ3JlYXRlUGF5bWVudFJlc3BvbnNlEiIKEXBheW1lbnRfY2xpZW50X2lkGAogASgJQge6SARyAhABEkQKCGFjY2VwdGVkGBQgASgLMjAudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuQWNjZXB0ZWRIABJdChNzZXR0bGVtZW50X3JlcXVpcmVkGCMgASgLMjoudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuU2V0dGxlbWVudFJlcXVpcmVkQgIYAUgAEkIKB2ZhaWx1cmUYHiABKAsyLy50emVyby52MS5wYXltZW50LkNyZWF0ZVBheW1lbnRSZXNwb25zZS5GYWlsdXJlSAAawgEKCEFjY2VwdGVkEhsKCnBheW1lbnRfaWQYCiABKARCB7pIBDICIAASOwoRc2V0dGxlbWVudF9hbW91bnQYHiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEjcKDXBheW91dF9hbW91bnQYKCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiMKEnBheW91dF9wcm92aWRlcl9pZBgyIAEoDUIHukgEKgIgABqXAQoSU2V0dGxlbWVudFJlcXVpcmVkEhsKCnBheW1lbnRfaWQYCiABKARCB7pIBDICIAASOwoRc2V0dGxlbWVudF9hbW91bnQYFCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEiMKEnBheW91dF9wcm92aWRlcl9pZBgeIAEoDUIHukgEKgIgADoCGAEalwIKB0ZhaWx1cmUSRgoGcmVhc29uGAogASgOMjYudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVzcG9uc2UuRmFpbHVyZS5SZWFzb24iwwEKBlJlYXNvbhIWChJSRUFTT05fVU5TUEVDSUZJRUQQABIaChZSRUFTT05fUVVPVEVfTk9UX0ZPVU5EEAoSKAokUkVBU09OX0NSRURJVF9PUl9QUkVERVBPU0lUX1JFUVVJUkVEEBQSJAogUkVBU09OX0FNT1VOVF9FWENFRURTX1FVT1RFX0JBTkQQHhIYChRSRUFTT05fUVVPVEVfRVhQSVJFRBAoEhsKF1JFQVNPTl9RVU9URV9JRF9VTktOT1dOEDJCDwoGcmVzdWx0EgW6SAIIASKYAQoUQ29uZmlybVBheW91dFJlcXVlc3QSGwoKcGF5bWVudF9pZBgKIAEoBEIHukgEMgIgABIcCglwYXlvdXRfaWQYFCABKARCCRgBukgEMgIgABI1CgdyZWNlaXB0GB4gASgLMh8udHplcm8udjEuY29tbW9uLlBheW1lbnRSZWNlaXB0SACIAQE6AhgBQgoKCF9yZWNlaXB0IhsKFUNvbmZpcm1QYXlvdXRSZXNwb25zZToCGAEimwIKHUNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXF1ZXN0EhsKCnBheW1lbnRfaWQYCiABKARCB7pIBDICIAASTAoIYXBwcm92ZWQYHiABKAsyOC50emVyby52MS5wYXltZW50LkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXF1ZXN0LkFwcHJvdmVkSAASTAoIcmVqZWN0ZWQYKCABKAsyOC50emVyby52MS5wYXltZW50LkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXF1ZXN0LlJlamVjdGVkSAAaCgoIQXBwcm92ZWQaJAoIUmVqZWN0ZWQSGAoGcmVhc29uGAogASgJQgi6SAVyAxiACEIPCgZyZXN1bHQSBbpIAggBIqwDCh5Db21wbGV0ZU1hbnVhbEFtbENoZWNrUmVzcG9uc2USTQoIYXBwcm92ZWQYHiABKAsyOS50emVyby52MS5wYXltZW50LkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXNwb25zZS5BcHByb3ZlZEgAEk0KCHJlamVjdGVkGCggASgLMjkudHplcm8udjEucGF5bWVudC5Db21wbGV0ZU1hbnVhbEFtbENoZWNrUmVzcG9uc2UuUmVqZWN0ZWRIABrOAQoIQXBwcm92ZWQSOAoOcGF5X291dF9hbW91bnQYCiABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEIGukgDyAEBEjsKEXNldHRsZW1lbnRfYW1vdW50GBQgASgLMhgudHplcm8udjEuY29tbW9uLkRlY2ltYWxCBrpIA8gBARIhChBwYXlfb3V0X3F1b3RlX2lkGB4gASgDQge6SAQiAiAAEigKF3BheV9vdXRfY2xpZW50X3F1b3RlX2lkGCggASgJQge6SARyAhhAGgoKCFJlamVjdGVkQg8KBnJlc3VsdBIFukgCCAEiiwEKDVBheW1lbnRBbW91bnQSMgoOcGF5X291dF9hbW91bnQYFCABKAsyGC50emVyby52MS5jb21tb24uRGVjaW1hbEgAEjUKEXNldHRsZW1lbnRfYW1vdW50GB4gASgLMhgudHplcm8udjEuY29tbW9uLkRlY2ltYWxIAEIPCgZhbW91bnQSBbpIAggBIsACChVGaW5hbGl6ZVBheW91dFJlcXVlc3QSGwoKcGF5bWVudF9pZBgKIAEoBEIHukgEMgIgABJCCgdzdWNjZXNzGB4gASgLMi8udHplcm8udjEucGF5bWVudC5GaW5hbGl6ZVBheW91dFJlcXVlc3QuU3VjY2Vzc0gAEkIKB2ZhaWx1cmUYKCABKAsyLy50emVyby52MS5wYXltZW50LkZpbmFsaXplUGF5b3V0UmVxdWVzdC5GYWlsdXJlSAAaTAoHU3VjY2VzcxI1CgdyZWNlaXB0GB4gASgLMh8udHplcm8udjEuY29tbW9uLlBheW1lbnRSZWNlaXB0SACIAQFCCgoIX3JlY2VpcHQaIwoHRmFpbHVyZRIYCgZyZWFzb24YCiABKAlCCLpIBXIDGIAIQg8KBnJlc3VsdBIFukgCCAEiGAoWRmluYWxpemVQYXlvdXRSZXNwb25zZSpACglRdW90ZVR5cGUSGgoWUVVPVEVfVFlQRV9VTlNQRUNJRklFRBAAEhcKE1FVT1RFX1RZUEVfUkVBTFRJTUUQATKHBQoOTmV0d29ya1NlcnZpY2USXwoLVXBkYXRlUXVvdGUSJC50emVyby52MS5wYXltZW50LlVwZGF0ZVF1b3RlUmVxdWVzdBolLnR6ZXJvLnYxLnBheW1lbnQuVXBkYXRlUXVvdGVSZXNwb25zZSIDkAICElYKCEdldFF1b3RlEiEudHplcm8udjEucGF5bWVudC5HZXRRdW90ZVJlcXVlc3QaIi50emVyby52MS5wYXltZW50LkdldFF1b3RlUmVzcG9uc2UiA5ACARJlCg1DcmVhdGVQYXltZW50EiYudHplcm8udjEucGF5bWVudC5DcmVhdGVQYXltZW50UmVxdWVzdBonLnR6ZXJvLnYxLnBheW1lbnQuQ3JlYXRlUGF5bWVudFJlc3BvbnNlIgOQAgISaAoNQ29uZmlybVBheW91dBImLnR6ZXJvLnYxLnBheW1lbnQuQ29uZmlybVBheW91dFJlcXVlc3QaJy50emVyby52MS5wYXltZW50LkNvbmZpcm1QYXlvdXRSZXNwb25zZSIGiAIBkAICEmgKDkZpbmFsaXplUGF5b3V0EicudHplcm8udjEucGF5bWVudC5GaW5hbGl6ZVBheW91dFJlcXVlc3QaKC50emVyby52MS5wYXltZW50LkZpbmFsaXplUGF5b3V0UmVzcG9uc2UiA5ACAhKAAQoWQ29tcGxldGVNYW51YWxBbWxDaGVjaxIvLnR6ZXJvLnYxLnBheW1lbnQuQ29tcGxldGVNYW51YWxBbWxDaGVja1JlcXVlc3QaMC50emVyby52MS5wYXltZW50LkNvbXBsZXRlTWFudWFsQW1sQ2hlY2tSZXNwb25zZSIDkAICQtYBChRjb20udHplcm8udjEucGF5bWVudEIMTmV0d29ya1Byb3RvUAFaO2dpdGh1Yi5jb20vdC0wLW5ldHdvcmsvcHJvdmlkZXItc2RrL2dvL2FwaS90emVyby92MS9wYXltZW50ogIDVFZQqgIjVDAuUHJvdmlkZXJTZGsuQXBpLlR6ZXJvLlYxLlBheW1lbnTKAhBUemVyb1xWMVxQYXltZW504gIcVHplcm9cVjFcUGF5bWVudFxHUEJNZXRhZGF0YeoCElR6ZXJvOjpWMTo6UGF5bWVudGIGcHJvdG8z", [file_tzero_v1_common_common, file_tzero_v1_common_payment_method, file_tzero_v1_common_payment_receipt, file_ivms101_v1_ivms_ivms101, file_google_protobuf_timestamp, file_buf_validate_validate]);
15
15
  /**
16
16
  * Describes the message tzero.v1.payment.UpdateQuoteRequest.
17
17
  * Use `create(UpdateQuoteRequestSchema)` to create a new message.
@@ -153,6 +153,29 @@ export var CreatePaymentResponse_Failure_Reason;
153
153
  * @generated from enum value: REASON_CREDIT_OR_PREDEPOSIT_REQUIRED = 20;
154
154
  */
155
155
  CreatePaymentResponse_Failure_Reason[CreatePaymentResponse_Failure_Reason["CREDIT_OR_PREDEPOSIT_REQUIRED"] = 20] = "CREDIT_OR_PREDEPOSIT_REQUIRED";
156
+ /**
157
+ * The pinned quote's band cannot cover the requested amount. The quote is
158
+ * still live; retry with a smaller amount, split the payment across bands,
159
+ * or request a fresh GetQuote for a quote that covers the full amount.
160
+ *
161
+ * @generated from enum value: REASON_AMOUNT_EXCEEDS_QUOTE_BAND = 30;
162
+ */
163
+ CreatePaymentResponse_Failure_Reason[CreatePaymentResponse_Failure_Reason["AMOUNT_EXCEEDS_QUOTE_BAND"] = 30] = "AMOUNT_EXCEEDS_QUOTE_BAND";
164
+ /**
165
+ * The pinned quote's expires_at has passed. Auto-retry by calling GetQuote
166
+ * to obtain a fresh quote id and re-submit with it.
167
+ *
168
+ * @generated from enum value: REASON_QUOTE_EXPIRED = 40;
169
+ */
170
+ CreatePaymentResponse_Failure_Reason[CreatePaymentResponse_Failure_Reason["QUOTE_EXPIRED"] = 40] = "QUOTE_EXPIRED";
171
+ /**
172
+ * The pinned quote id does not exist for the pay-in/pay-out provider pair.
173
+ * Indicates a client-side plumbing bug (stale / mismatched id); no auto-retry
174
+ * will succeed until the client fixes quote propagation.
175
+ *
176
+ * @generated from enum value: REASON_QUOTE_ID_UNKNOWN = 50;
177
+ */
178
+ CreatePaymentResponse_Failure_Reason[CreatePaymentResponse_Failure_Reason["QUOTE_ID_UNKNOWN"] = 50] = "QUOTE_ID_UNKNOWN";
156
179
  })(CreatePaymentResponse_Failure_Reason || (CreatePaymentResponse_Failure_Reason = {}));
157
180
  /**
158
181
  * Describes the enum tzero.v1.payment.CreatePaymentResponse.Failure.Reason.
@@ -309,7 +309,9 @@ export type PaymentIntentPayInDetails = Message<"tzero.v1.payment_intent.Payment
309
309
  * *
310
310
  * Indicative exchange rate USD/XXX (base currency is always USD).
311
311
  *
312
- * Note: This is indicative only. The actual rate is determined when pay-in provider calls ConfirmFundsReceived
312
+ * Resolved live from the network's current quote snapshot on every call,
313
+ * including idempotent retries. The binding rate is locked in at
314
+ * ConfirmFundsReceived and may differ.
313
315
  *
314
316
  * @generated from field: tzero.v1.common.Decimal indicative_rate = 40;
315
317
  */
@@ -319,7 +321,9 @@ export type PaymentIntentPayInDetails = Message<"tzero.v1.payment_intent.Payment
319
321
  * Indicative fixed charge in USD retained by the pay-in provider per transfer.
320
322
  * Settlement is calculated as (amount / indicative_rate) - indicative_fix.
321
323
  *
322
- * Note: This is indicative only. The actual fix is locked in at ConfirmFundsReceived time.
324
+ * Resolved live from the network's current quote snapshot on every call,
325
+ * including idempotent retries. The binding fix is locked in at
326
+ * ConfirmFundsReceived and may differ.
323
327
  *
324
328
  * @generated from field: tzero.v1.common.Decimal indicative_fix = 50;
325
329
  */
@@ -471,6 +475,11 @@ export type CreatePaymentIntentResponse_Success = Message<"tzero.v1.payment_inte
471
475
  * Present these options to your user so they can choose how to pay.
472
476
  * Each entry contains the payment details needed to complete the payment.
473
477
  *
478
+ * Indicative rate/fix are resolved live on every call, including idempotent
479
+ * retries. The set of options (provider, payment_method, payment_details)
480
+ * is fixed at first call; individual options whose underlying quote has
481
+ * lapsed are omitted on retry.
482
+ *
474
483
  * @generated from field: repeated tzero.v1.payment_intent.PaymentIntentPayInDetails pay_in_details = 20;
475
484
  */
476
485
  payInDetails: PaymentIntentPayInDetails[];
@@ -510,7 +519,10 @@ export declare enum CreatePaymentIntentResponse_Failure_Reason {
510
519
  FAILURE_REASON_UNSPECIFIED = 0,
511
520
  /**
512
521
  * *
513
- * No quotes found for the requested currency/amount.
522
+ * No live quote covers the requested currency/amount. On first call this
523
+ * means the intent was never created. On an idempotent retry this means
524
+ * every stored offer has since lost its live quote; a subsequent retry
525
+ * may succeed once providers republish.
514
526
  *
515
527
  * @generated from enum value: FAILURE_REASON_QUOTE_NOT_FOUND = 10;
516
528
  */