What info do you need to save to be able to refund? Normally the transactionId is enough. If you need extra info you should save them as server secure order properties. order.Properties.AddOrUpdate(new CustomProperty("key", "value"){ServerSideOnly = true});
In this case the payment provider needs three extra fields as input for the refund transaction. On top of the transaction id. Like customer name, IBAN, etc. I don't know why they need this. Will discuss this with them. Because I don't like storing this kind of information on my frontoffice server.
I'll look to see if I can achieve the same thing with the order property. However than the payment module might be less generic, so this can be a trade-off.
Another option would be just encrypt the encoded parameters using the secret key.
Customer name is already at the order level - order.PaymentInformation.FirstName and LastName. But yeah the other properties should be saved as order properties. And it could make sense to encrypt it :)
Extra properties on payment?
Hi,
Currently working on a payment provider. I need to store extra properties on the payment so I will be able to refund later. Is this possible?
Merijn
The way I want to do it now is to encode 4 parametes into the CallBackinfo paymentIdentifier field. Suppose this currently is the best place for it.
Hi Merijn
What info do you need to save to be able to refund? Normally the transactionId is enough. If you need extra info you should save them as server secure order properties. order.Properties.AddOrUpdate(new CustomProperty("key", "value"){ServerSideOnly = true});
Kind regards
Anders
In this case the payment provider needs three extra fields as input for the refund transaction. On top of the transaction id. Like customer name, IBAN, etc. I don't know why they need this. Will discuss this with them. Because I don't like storing this kind of information on my frontoffice server.
I'll look to see if I can achieve the same thing with the order property. However than the payment module might be less generic, so this can be a trade-off.
Another option would be just encrypt the encoded parameters using the secret key.
Customer name is already at the order level - order.PaymentInformation.FirstName and LastName. But yeah the other properties should be saved as order properties. And it could make sense to encrypt it :)
Kind regards
Anders
is working on a reply...