Hi, No standard function can do it, so I think this may require a small customization, if only a GL account line is required.
For example, when selecting Vendor, if Vendor is A, insert "Service charge" and a fix charge into the first line of Purchase Line
Hope this will help.
Thanks.
ZHU