Global API
...
Request
Payment
Create
1min
Here is the below example on how to to create a Payment using Breadwinners Global API.
Request
Response
// Create a Map to store all the data of a Payment
List<Object> paymentsList = new List<Object>();
Map<String, Object> paymentMap = new Map<String, Object>();
paymentMap.put('DateString', '2021-11-11T00:00:00');
paymentMap.put('Amount', 50);
paymentMap.put('Reference', 'Test Payment');
// Initializing the Invoice
Map<String, Object> invoiceMap = new Map<String, Object>();
invoiceMap.put('InvoiceID', '93151e60-3cad-4384-a2ed-99935444a218');
paymentMap.put('Invoice', invoiceMap);
Map<String, Object> accountMap = new Map<String, Object>();
accountMap.put('Code', '880');
paymentMap.put('Account', accountMap);
paymentsList.add(paymentMap);
// Initializing the RequestJSON Data to be passed.
Map<String, Object> reqJSONMap = new Map<String, Object>();
reqJSONMap.put('payments', paymentsList);
String reqJSON = JSON.serialize(reqJSONMap);
Map<String, Object> finalReqMap = new Map<String, Object>();
Map<String, Object> reqOptions = new Map<String, Object>();
finalReqMap.put('queryParameters', reqOptions);
finalReqMap.put('version', '1.0');
finalReqMap.put('action', 'createPayment');
finalReqMap.put('RequestJSON', reqJSON);
finalReqMap.put('skipDML', false);
//Required, if Xero Multi-Org is enabled in Breadwinner.
finalReqMap.put('xeroOrgId', '!aa00TM');
System.debug('Request ::: ' + finalReqMap);
// Placing a request to Breadwinner Global API
Map<String, Object> respMap = bread_winner.BreadwinnerXeroAPI.call(finalReqMap);
System.debug('Response ::: ' + respMap);