@@ -196,8 +196,8 @@ export class PaymentHandler
196
196
throw new Error ( `failed request. no 'payments' in body` ) ;
197
197
}
198
198
199
- const senderDID = DID . parse ( paymentRequest . from ) ;
200
- const receiverDID = DID . parse ( paymentRequest . to ) ;
199
+ const senderDID = DID . parse ( paymentRequest . to ) ;
200
+ const receiverDID = DID . parse ( paymentRequest . from ) ;
201
201
202
202
const payments : PaymentInfo [ ] = [ ] ;
203
203
for ( let i = 0 ; i < paymentRequest . body . payments . length ; i ++ ) {
@@ -221,7 +221,7 @@ export class PaymentHandler
221
221
} ) ;
222
222
}
223
223
224
- const paymentMessage = createPayment ( receiverDID , senderDID , payments ) ;
224
+ const paymentMessage = createPayment ( senderDID , receiverDID , payments ) ;
225
225
const responseEncoded = byteEncoder . encode ( JSON . stringify ( paymentMessage ) ) ;
226
226
const packerOpts =
227
227
this . _params . packerParams . mediaType === MediaType . SignedMessage
@@ -273,6 +273,10 @@ export class PaymentHandler
273
273
throw new Error ( `failed request. empty 'from' field` ) ;
274
274
}
275
275
276
+ if ( ! paymentRequest . to ) {
277
+ throw new Error ( `failed request. empty 'to' field` ) ;
278
+ }
279
+
276
280
const agentMessage = await this . handlePaymentRequestMessage ( paymentRequest , opts ) ;
277
281
278
282
const response = byteEncoder . encode ( JSON . stringify ( agentMessage ) ) ;
@@ -283,7 +287,7 @@ export class PaymentHandler
283
287
provingMethodAlg : proving . provingMethodGroth16AuthV2Instance . methodAlg
284
288
} ;
285
289
286
- const senderDID = DID . parse ( paymentRequest . from ) ;
290
+ const senderDID = DID . parse ( paymentRequest . to ) ;
287
291
return this . _packerMgr . pack ( this . _params . packerParams . mediaType , response , {
288
292
senderDID,
289
293
...packerOpts
@@ -294,7 +298,7 @@ export class PaymentHandler
294
298
* @inheritdoc IPaymentHandler#handlePayment
295
299
*/
296
300
async handlePayment ( payment : PaymentMessage , opts : PaymentHandlerOptions ) {
297
- if ( opts . paymentRequest && opts . paymentRequest . from !== payment . to ) {
301
+ if ( opts . paymentRequest . from !== payment . to ) {
298
302
throw new Error (
299
303
`sender of the request is not a target of response - expected ${ opts . paymentRequest . from } , given ${ payment . to } `
300
304
) ;
0 commit comments