Service - CommerceAccounting Customer: Difference between revisions

From Izara Wiki
Jump to navigation Jump to search
No edit summary
Mint (talk | contribs)
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Overview =
= Overview =


Connects each customer to their Accounting accounts, such as accountsReceivable, and vice versa
Connects each customer to their Accounting accounts, such as accountsReceivable


= Repository =
= Repository =
Line 15: Line 15:
{
{
objectType: "comAccCustomerLink",
objectType: "comAccCustomerLink",
    generatedBy: "userGenerated",
canDelete: false,
canDelete: false,
belongTo: {
belongTo: {
serviceTag: "ComAccLink",
serviceTag: "CommerceAccountingLink",
objectType: "comAccLinkByBusiness"
objectType: "comAccLinkByBusiness"
},
},
Line 25: Line 26:
"storageType": "dynamoDB",
"storageType": "dynamoDB",
"tableName": "comAccCustomerLink",
"tableName": "comAccCustomerLink",
}
},
"graph": {}
      "myGraph": {
            "storageType": "graph",
            "graphServerTag": "GraphHandler"
      }
     },
     },
     fieldNames: {
     fieldNames: {
// businessId
// businessId
// organizationId
// customerId
// customerId
// accountlinkTag // type of link: accountsReceivable|..
// accountLinkTag // type of link: accountsReceivable|..
// accountId
// accountId
     },
     },
Line 37: Line 42:
{
{
type: "partitionKey",
type: "partitionKey",
fieldNames: ["businessId","customerId"],
fieldNames: ["businessId", "organizationId", "customerId"],
name: "comAccLinkCusId",
},
},
{
{
type: "sortKey",
type: "sortKey",
fieldName: "accountlinkTag"
fieldName: "accountLinkTag"
},
},
     ]
     ]
Line 47: Line 53:
</syntaxhighlight>
</syntaxhighlight>


== comAccDefaultCustomerLink ==
== comAccCustomerDefaultLink ==


<syntaxhighlight lang="JavaScript">
<syntaxhighlight lang="JavaScript">
{
{
objectType: "comAccDefaultCustomerLink",
objectType: "comAccCustomerDefaultLink",
    generatedBy: "userGenerated",
canDelete: false,
canDelete: false,
belongTo: {
belongTo: {
serviceTag: "ComAccLink",
serviceTag: "CommerceAccountingLink",
objectType: "comAccLinkByBusiness"
objectType: "comAccLinkByBusiness"
},
},
Line 61: Line 68:
"dynamo": {
"dynamo": {
"storageType": "dynamoDB",
"storageType": "dynamoDB",
"tableName": "comAccDefaultCustomerLink",
"tableName": "comAccCustomerDefaultLink",
}
},
"graph": {}
      "myGraph": {
            "storageType": "graph",
            "graphServerTag": "GraphHandler"
      }
     },
     },
     fieldNames: {
     fieldNames: {
// businessId
// businessId
// accountlinkTag // type of link: accountsReceivable|..
// organizationId
// accountLinkTag // type of link: accountsReceivable|..
// accountId
// accountId
     },
     },
Line 73: Line 84:
{
{
type: "partitionKey",
type: "partitionKey",
fieldName: "businessId",
fieldNames: ["businessId", "organizationId"],
name: "comAccLinkId",
},
},
{
{
type: "sortKey",
type: "sortKey",
fieldName: "accountlinkTag"
fieldName: "accountLinkTag"
},
},
     ]
     ]
Line 94: Line 106:
* or maybe returns accountId to Sales createSale flow which sends to Accounting
* or maybe returns accountId to Sales createSale flow which sends to Accounting


= accountlinkTag =
= accountLinkTag =


== accountsReceivable ==
== accountsReceivable ==

Latest revision as of 03:52, 10 August 2026

Overview

Connects each customer to their Accounting accounts, such as accountsReceivable

Repository

...

Object Schemas

Additional Information
Per Service Schemas

comAccCustomerLink

{
	objectType: "comAccCustomerLink",
    generatedBy: "userGenerated",
	canDelete: false,
	belongTo: {
		serviceTag: "CommerceAccountingLink",
		objectType: "comAccLinkByBusiness"
	},
	addOnDataStructure: [],
	storageResources: {
		"dynamo": {
			"storageType": "dynamoDB",
			"tableName": "comAccCustomerLink",
		},
       "myGraph": {
            "storageType": "graph",
            "graphServerTag": "GraphHandler"
       }
    },
    fieldNames: {
		// businessId
		// organizationId
		// customerId
		// accountLinkTag // type of link: accountsReceivable|..
		// accountId
    },
    identifiers: [
		{
			type: "partitionKey",
			fieldNames: ["businessId", "organizationId", "customerId"],
			name: "comAccLinkCusId",
		},
		{
			type: "sortKey",
			fieldName: "accountLinkTag"
		},
    ]
}

comAccCustomerDefaultLink

{
	objectType: "comAccCustomerDefaultLink",
    generatedBy: "userGenerated",
	canDelete: false,
	belongTo: {
		serviceTag: "CommerceAccountingLink",
		objectType: "comAccLinkByBusiness"
	},
	addOnDataStructure: [],
	storageResources: {
		"dynamo": {
			"storageType": "dynamoDB",
			"tableName": "comAccCustomerDefaultLink",
		},
       "myGraph": {
            "storageType": "graph",
            "graphServerTag": "GraphHandler"
       }
    },
    fieldNames: {
		// businessId
		// organizationId
		// accountLinkTag // type of link: accountsReceivable|..
		// accountId
    },
    identifiers: [
		{
			type: "partitionKey",
			fieldNames: ["businessId", "organizationId"],
			name: "comAccLinkId",
		},
		{
			type: "sortKey",
			fieldName: "accountLinkTag"
		},
    ]
}

Relationships

...

flowSchemas

createSale

  • sends request to Accounting to create entries in comAccCustomerLink.accountlinkTag = accountsReceivable account
  • or maybe returns accountId to Sales createSale flow which sends to Accounting

accountLinkTag

accountsReceivable

Working documents

CommerceAccounting Customer