issue #23937 - part 2 of desktop client side

Part 2 of the Qt client changes that correspond to the xtuple changes in https://github.com/xtuple/xtuple/pull/1591 for transactions without a corresponding ccard record.
@bendiy 
 The Qt UI shows `O` if the card type is not recognized. The Qt and stored procedure code only know how to create Visa, MasterCard, Discover, and American Express == check them for errors (number length, type & number agreement, and checksum).

I don't see anything preventing clients that don't create `ccard`s from using other values. We just need a unique list of single character abbreviations for card types. They'll just appear in the Qt UI as `O` until/unless we add support for more. _until_ vs. _unless_ is up to @shackbarth .