@@ -56,7 +56,8 @@ use crate::ln::outbound_payment;
5656use  crate :: ln:: outbound_payment:: { OutboundPayments ,  PaymentAttempts ,  PendingOutboundPayment } ; 
5757use  crate :: ln:: wire:: Encode ; 
5858use  crate :: chain:: keysinterface:: { EntropySource ,  KeysManager ,  NodeSigner ,  Recipient ,  SignerProvider ,  ChannelSigner } ; 
59- use  crate :: offers:: offer:: OfferBuilder ; 
59+ use  crate :: offers:: invoice_request:: InvoiceRequestBuilder ; 
60+ use  crate :: offers:: offer:: { Offer ,  OfferBuilder } ; 
6061use  crate :: offers:: parse:: SemanticError ; 
6162use  crate :: offers:: refund:: RefundBuilder ; 
6263use  crate :: offers:: signer:: DerivedPubkey ; 
@@ -5411,6 +5412,21 @@ where
54115412		RefundBuilder :: deriving_payer_id ( description,  payer_id,  amount_msats) 
54125413	} 
54135414
5415+ 	/// Creates an [`InvoiceRequestBuilder`] such that the [`InvoiceRequest`] it builds is 
5416+ /// recognized by the [`OnionMessenger`] when handling [`Invoice`] messages for the request. 
5417+ /// 
5418+ /// [`OnionMessenger`]: crate::onion_message::OnionMessenger 
5419+ /// [`InvoiceRequest`]: crate::offers::invoice_request::InvoiceRequest 
5420+ /// [`Invoice`]: crate::offers::invoice::Invoice 
5421+ pub  fn  create_invoice_request_builder < ' a > ( 
5422+ 		& self ,  offer :  & ' a  Offer 
5423+ 	)  -> Result < InvoiceRequestBuilder < ' a > ,  SemanticError >  { 
5424+ 		let  nonce = inbound_payment:: Nonce :: from_entropy_source ( & * self . entropy_source ) ; 
5425+ 		let  payer_id = DerivedPubkey :: new ( & self . inbound_payment_key ,  nonce) ; 
5426+ 
5427+ 		offer. request_invoice_deriving_payer_id ( payer_id) 
5428+ 	} 
5429+ 
54145430	/// Gets a payment secret and payment hash for use in an invoice given to a third party wishing 
54155431/// to pay us. 
54165432/// 
0 commit comments