---
title: "ロイヤルティプログラムとカードドメインモデル"
slug: "the-loyalty-programs-and-cards-domain-model"
abstract: ""
---
# ロイヤルティプログラムとカードドメインモデル

この節では、以下の3つの主張が成り立つロイヤルティプログラムおよびカードオブジェクトを表すドメインモデルについて説明します。

-   ドメインモデルは主に外部商取引システムとSitecore間で情報を転送するためのDTOオブジェクトとして機能します。
-   ドメインモデルは最低限必要な情報だけを契約として含み、特定の商取引システムと統合されると通常拡張されます。
-   ドメインモデルは、Sitecore開発者が製品データを外部のコマースシステムと同期させる必要がある場合や、外部コマースシステムからSitecoreに製品データをプッシュする際に使用されます

以下のクラス図はドメインモデルを示しています:

![03000018.png](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/102/sitecore-experience-commerce/images/03000018.png)

![03000019.png](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/102/sitecore-experience-commerce/images/03000019.png)

> !注ドメインモデルは外部システムとの契約を構成する抽象クラスで構成されています。これらの契約はインターフェースではなく抽象クラスとして定義されており、必要に応じて後から簡単に拡張できるようになっています。これはフレームワーク設計ガイドラインで定義されたベストプラクティスガイドラインに従っています。
> 
> 契約のデフォルト実装はConnectの一部として提供されます。外部商取引システムを持つ実際のConnectプロバイダーがデフォルト以上の機能を持っている場合、その実装は置き換え可能です。実際のクラスのインスタンス化はすべて依存性注入によって処理されます。

## クラス:ロイヤルティカード

LoyaltyCardクラスは顧客が所有するロイヤルティカードを表すために使われます。

名称

種類

概要

ExternalId

ストリング

外部コマースシステムにおけるロイヤルティカードの一意識別子。

カスタマーID

ストリング

顧客IDカードに紐づいています。

ユーザーID

ストリング

カードに関連付けられたユーザーIDです。

ショップネーム

ストリング

カードが関連付けられているショップ名です。

カード番号

ストリング

カードの番号。

プログラムID

一覧

カードが関連付けられているプログラムのIDです。

リワードポイント

一覧

カードのポイントは?

## クラス:LoyaltyCardPaymentInfo

LoyaltyCardPaymentInfoクラスは支払い情報クラスを拡張し、顧客がロイヤルティカードで注文を支払うことを可能にします。

名称

種類

概要

金額

小数点

カードにチャージするポイントの量。

## クラス:LoyaltyCardTier(忠誠心カードティア)

LoyaltyCardTierクラスは、ロイヤリティカードが関与するティアを表すために使われます。例えば、ブロンズ、シルバー、ゴールドなどです。

名称

種類

概要

ティア

ストリング

カードが関連付けられているティア。

有効性から

デートタイム

ティアが有効になるタイミングです。

ValidTo

デートタイム

カードがもはやそのティアの一部でなくなった場合。

## クラス:ロイヤルティカードトランザクション

LoyaltyCardTransactionオブジェクトは、ロイヤルティカードへのポイントの追加または削除の記録として使われます。

名称

種類

概要

LoyaltyCardId

ストリング

外部コマースシステムにおけるロイヤルティカードの一意識別子。

カスタマーID

ストリング

顧客IDカードに紐づいています。

ユーザーID

ストリング

カードに関連付けられたユーザーIDです。

ショップネーム

ストリング

カードが関連付けられているショップ名です。

RewardPointType

RewardPointType

発生したポイント取引の種類。

リワードポイント金額

小数点

与えられたポイントの数。

エントリタイプ

LoyaltyRewardPointEntryType

この取引のエントリーの種類。

有効期限

デートタイム

報酬の期限が切れる日です。

エントリーデートタイム

デートタイム

取引が行われた日付。

## クラス:LoyaltyProgram

LoyaltyProgramオブジェクトは、ロイヤルティカードが関与するプログラムを表すために使われます。

名称

種類

概要

ExternalId

ストリング

外部商取引システムにおけるロイヤルティプログラムの一意識別子。

名称

ストリング

プログラムの名前です。

概要

ストリング

説明の名前です。

ショップネーム

ストリング

プログラムが関連している店舗の名前。

ロイヤルティティアーズ

一覧

プログラム内に存在する階層。

## クラス:LoyaltyRewardPoints

LoyaltyRewardPointオブジェクトはカード上のポイント活動を表すために使われます。

名称

種類

概要

概要

ストリング

報酬ポイントの説明。

RewardPointType

RewardPointType

報酬となるポイントの種類。

通貨コード

ストリング

報酬となるポイントの通貨。

発行ポイント

小数点

ポイントの額。

使用ポイント

小数点

使われるポイントの数。

ポイント期限切れ

小数点

失効したポイントの数。

アクティブポイント

小数点

アクティブなポイントの量。

## クラス:忠誠心報酬ポイントエントリータイプ

LoyaltyRewardPointEntryTypeオブジェクトは、さまざまな報酬ポイントエントリータイプの列挙です。

名称

種類

概要

全くありません

LoyaltyRewardPointEntryType

未割り当ての報酬ポイントエントリータイプ。

アーン

LoyaltyRewardPointEntryType

報酬ポイントを稼いでいる。

贖罪

LoyaltyRewardPointEntryType

報酬ポイントを得た。

## クラス:ポイントベース忠誠度層

PointBasedLoyaltyTierオブジェクトはLoyaltyTierクラスの拡張であり、プログラム内のロイヤリティティアに基づくポイントを表現するために使われます。

名称

種類

概要

ポイント必要

小数点

ティアを満たすために必要なポイント数。

## クラス:忠誠プログラム概要

LoyaltyProgramSummaryオブジェクトはロイヤルティプログラムの概要を表すために使われます。

名称

種類

概要

名称

ストリング

プログラムの名前です。

概要

ストリング

プログラムの説明。

ショップネーム

ストリング

プログラムが関連している店舗の名前。

LoyaltyProgramId

ストリング

この要約のためのロイヤルティプログラムのID。

## クラス:RewardPointType

RewardPointTypeオブジェクトは、さまざまな報酬ポイントエントリータイプの列挙です。

名称

種類

概要

贖いようがない

RewardPointType

ポイントは取り戻せません。

贖金可能

RewardPointType

ポイントは取り戻せます。