Service - CommerceAccounting Link
Jump to navigation
Jump to search
Overview
Configures the link between a Business in Izara Commerce and an organization in Izara Accounting.
Repository
...
Object Schemas
- Additional Information
- Per Service Schemas
comAccLink
{
objectType: "comAccLink",
canDelete: false,
belongTo: {
serviceTag: "User",
objectType: "user"
},
addOnDataStructure: [],
storageResources: {
"dynamo": {
"storageType": "dynamoDB",
"tableName": "comAccLink",
}
},
fieldNames: {
// probably have two dynamo tables, one identified by businessId, one by organizationId
},
identifiers: [
{
// see above note
}
]
}
comAccAccountLink
{
objectType: "comAccAccountLink",
canDelete: true,
belongTo: {
serviceTag: "User",
objectType: "user"
},
addOnDataStructure: [],
storageResources: {
"dynamo": {
"storageType": "dynamoDB",
"tableName": "comAccAccountLink",
}
},
fieldNames: {
businessId: {
fromObjType:{
serviceTag: "CommerceAccountingLink",
objectType: "comAccLink"
},
},
organizationId: {
fromObjType:{
serviceTag: "CommerceAccountingLink",
objectType: "comAccLink"
},
},
accountTag: { // this is the granular accounting classification that actions need to add entries to
type: "string",
requiredOnCreate: true,
canUpdate: false,
userCanUpdate: false,
storageResourceTags: ["dynamo"],
},
accountId: { // accountId from Izara Accounting
type: "string",
requiredOnCreate: true,
canUpdate: true,
userCanUpdate: true,
storageResourceTags: ["dynamo"],
},
},
identifiers: [
{
type: "partitionKey",
fieldNames: ["businessId","organizationId"],
name: "comAccLinkId",
},
{
type: "sortKey",
fieldName: "accountTag"
},
]
}
- sets up which Accounting Accounts are used for different connection tasks
- example: which Accounting Account is adjusted when stock increases/decreases
- will need to have a plugIn level shared const lib of all accountTags
Relationships
...