J-P Soulieres - Cactus Commerce
An FYI that may apply to your issue. In the OrderSystem, field that start with an underscore do not get persisted to tge databases. So, in case, if you save the field in Request 1, and in Request 2 you reload the basket, that will will not be there. This may or may not apply to your issue as I don't know if your are trying to populate the _cc_number key yourself.
Depending on how your OrderPipelineMapping.xml is configured, normally the CreditCardNumber field of the CreditCard payment is transfered to the _cc_number field by the CS Pipeline Adapter (this is where values are moved from Order System Objects to CS Dictionaries). So assuming your are populating the CreditCardNumber field, that should make the value available in the _cc_number field of the dictionary (inside the pipeline).
<Class Name="CreditCardPayment">
<Property Name="CreditCardNumber" DictionaryKey="_cc_number" />
<Property Name="CreditCardIdentifier" DictionaryKey="cc_identifier" />
<Property Name="ExpirationMonth" DictionaryKey="_cc_expmonth" />
<Property Name="ExpirationYear" DictionaryKey="_cc_expyear" />
<Property Name="CardType" DictionaryKey="cc_type" />
</Class>
Anyway, hoping this info may help find the problem...
J-P