The following is an example of create Payment where we are setting every possible field (See for the available fields). The response will return the exact request data plus the new QuickBooks Payment Id (Id) and the newly created Salesforce Payment Id (salesforceID).
// Create a Map to store all the data of a Payment
Map<String, Object> paymentMap = new Map<String, Object>();
paymentMap.put('TotalAmt','100');
paymentMap.put('DisplayName','Breadwinner Inc');
paymentMap.put('CustomerRef' , new Map<String, Object>{'value' => '99'});
// Initializing the RequestJSON Data to be passed.
Map<String, Object> requestJSONMap = new Map<String, Object>();
requestJSONMap.put('payments', new List<Object>{paymentMap});
String reqJSON = JSON.serialize(requestJSONMap);
Map<String, Object> reqObj = new Map<String, Object>();
reqObj.put('version', '1.0');
reqObj.put('action', 'createPayment');
reqObj.put('requestJSON', reqJSON);
//Required, if QuickBooks Multi-Org is enabled in Breadwinner.
reqObj.put('qbOrgId', '!aa00TM');
// Placing a request to Breadwinner Global API
Map<String, Object> respMap = breadwinner_qbo.BreadwinnerQBAPI.call(reqObj);
System.debug(respMap);