Service - CommerceAccounting Customer Payment

From Izara Wiki
Jump to navigation Jump to search

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