{
	"ID": "",
	"Customer": {
		"ID": "",
		"FullName": ""
	},
	"CreatedDateTime": "",
	"LastModifiedDateTime": "",
	"RefNumber": "",
	"PaymentMethodRef": {
		"ID": "",
		"FullName": ""
	},
	"Memo": "",
	"TotalAmount": 0, // [Total Amount of Payments, do NOT include credits here]
	"TxnNumber": "",
	"TxnDate": "",
	"Account": {
		"ID": "ID",
		"FullName": "FullName"
	},
	"DepositToAccount": {
		"ID": "",
		"FullName": ""
	},
	"TxnList": [{
		"RefNumber": "",
		"ID": "",
		"Amount": "",
		"Type": "",
		"Credits": [{
			"ID": "", // [credit memo ID] for process only
			"Amount": 0.00 // [credit amount to be applied to invoice]
		}]
	}],
	"IsSplitPayment": ""
}

Please note when applying credits to Invoices during Payment Process:

  • Credits are nested within the transaction object inside the TxnLIst. This is following QBDs format so that you can apply payments across multiple invoices using many credit memos for a many to many relationship.
  • Example: To apply the same credit memo to multiple invoices, you would then supply two invoices in the TxnList and use the same credit memo for each of the invoice's Credits. If you wanted to use many credit memos for one invoice you would put multiple credit memo ids and amounts in the Credits list.
  • The only limitation is that you need to be aware of the amount open on an invoice (must not exceed in credits) and the amount of credits available on a credit memo.
  • Once a credit amount is applied it can only be removed by deleting a payment, credit memo, or invoice in the QBD UI by a user.
  • If running a process call a subsequent time, the amount applied will increase, not update. So if your payment was including an amount of $10 of credit to apply to an invoice and then you ran another process changing the JSON to be $15 the total amount of that credit would be $25, not $15. You can only add once a credit amount is applied to an invoice.