Service - CommerceAccounting Customer Payment: Difference between revisions

From Izara Wiki
Jump to navigation Jump to search
Created page with "= Overview = Handle payments by customers. = Repository = ... = Object Schemas = ; Additional Information: Per Service Schemas <syntaxhighlight lang="JavaScript"> { objectType: "comAccCustomerPaymentLink", canDelete: false, belongTo: { serviceTag: "ComAccLink", objectType: "comAccLink" }, addOnDataStructure: [], storageResources: { "dynamo": { "storageType": "dynamoDB", "tableName": "comAccCustomerPaymentLink", } }, fieldNames: { //..."
 
No edit summary
 
(One intermediate revision by the same user not shown)
Line 9: Line 9:
= Object Schemas =
= Object Schemas =
; Additional Information: [[Per Service Schemas]]
; Additional Information: [[Per Service Schemas]]
== comAccCustomerPayment ==


<syntaxhighlight lang="JavaScript">
<syntaxhighlight lang="JavaScript">
{
{
objectType: "comAccCustomerPaymentLink",
objectType: "comAccCustomerPayment",
    generatedBy: "systemGenerated",
canDelete: false,
canDelete: false,
belongTo: {
    addOnDataStructure: [],
serviceTag: "ComAccLink",
objectType: "comAccLink"
},
addOnDataStructure: [],
storageResources: {
storageResources: {
"dynamo": {
"dynamo": {
"storageType": "dynamoDB",
"storageType": "dynamoDB",
"tableName": "comAccCustomerPaymentLink",
"tableName": "comAccCustomerPayment",
}
}
     },
     },
     fieldNames: {
     fieldNames: {
// probably have two dynamo tables, one identified by purchaseId, one by journalId
// businessId,
// organizationId,
// customerPaymentId,
 
// record lock eg: prefix: "updateCustomerPayment"
// updateCustomerPayment_status: {requiredOnCreate: true}, // open|lock,
// updateCustomerPayment_uniqueRequestId: {requiredOnCreate: true},
// updateCustomerPayment_timestamp: {requiredOnCreate: true},
 
journalId: {
type: "string",
optionalOnCreate: true,
canUpdate: true,
storageResourceTags: ["dynamo"],
},
     },
     },
     identifiers: [
     identifiers: [
{
{
// see above note
type: "partitionKey",
}
fieldNames: ["businessId", "organizationId"],
name: "comAccLinkId",
},
{
type: "sortKey",
fieldName: "customerPaymentId"
},
     ]
     ]
}
}

Latest revision as of 09:58, 8 August 2026

Overview

Handle payments by customers.

Repository

...

Object Schemas

Additional Information
Per Service Schemas

comAccCustomerPayment

{
	objectType: "comAccCustomerPayment",
    generatedBy: "systemGenerated",
	canDelete: false,
    addOnDataStructure: [],
	storageResources: {
		"dynamo": {
			"storageType": "dynamoDB",
			"tableName": "comAccCustomerPayment",
		}
    },
    fieldNames: {
		// businessId,
		// organizationId,
		// customerPaymentId,

		// record lock eg: prefix: "updateCustomerPayment"
		// updateCustomerPayment_status: {requiredOnCreate: true}, // open|lock, 
		// updateCustomerPayment_uniqueRequestId: {requiredOnCreate: true},
		// updateCustomerPayment_timestamp: {requiredOnCreate: true},

		journalId: {
			type: "string",
			optionalOnCreate: true,
			canUpdate: true,
			storageResourceTags: ["dynamo"],
		},
    },
    identifiers: [
		{
			type: "partitionKey",
			fieldNames: ["businessId", "organizationId"],
			name: "comAccLinkId",
		},
		{
			type: "sortKey",
			fieldName: "customerPaymentId"
		},
    ]
}
  • maintains a link between customerPaymentId and journalIds, so can adjust if changes made to payment

Relationships

...

flowSchemas

customerPaymentCreated

  • when creating a customer payment add journal entries

customerPaymentChange

  • make adjustment to journal entries
  • need to check for locked records

Working documents

CommerceAccounting Customer Payment