@cfxlabsinc/b2b-services
    Preparing search index...

    The email system's record of each send attempt, one email_delivery row apiece. A caller that must not proceed until a customer was actually emailed (the recurring fee charge waits on its invoice) reads it by event id.

    Index
    instance: (...args: []) => EmailDeliveryService = ...

    The process default: built from each dependency's own instance().

    • Parameters

      • __namedParameters: {
            customerId: string;
            eventId: string;
            outcome:
                | {
                    reason: "NO_ACTIVE_TEMPLATE"
                    | "NO_RECIPIENTS";
                    sent: false;
                    statusVariant:
                        | "PENDING_VERIFICATION"
                        | "ACTION_REQUIRED"
                        | "APPROVED"
                        | "REVIEW"
                        | "DISABLED"
                        | "BLOCKED"
                        | "DELETED"
                        | "*"
                        | "PENDING"
                        | "DEPOSITED"
                        | "CANCELLED"
                        | "COMPLETED"
                        | "RETURNED"
                        | "SUCCEEDED"
                        | "DECLINED"
                        | "AUTHORIZED"
                        | "SIGN_UP"
                        | "RESEND_CODE"
                        | "FORGOT_PASSWORD"
                        | "UPDATE_USER_ATTRIBUTE"
                        | "VERIFY_USER_ATTRIBUTE"
                        | "ADMIN_CREATE_USER"
                        | "AUTHENTICATION"
                        | "ACCOUNT_TAKE_OVER_NOTIFICATION"
                        | "SUBMITTED"
                        | "INFO_REQUESTED";
                }
                | {
                    reason: "REJECTED";
                    rejected: string[];
                    sent: false;
                    statusVariant: | "PENDING_VERIFICATION"
                    | "ACTION_REQUIRED"
                    | "APPROVED"
                    | "REVIEW"
                    | "DISABLED"
                    | "BLOCKED"
                    | "DELETED"
                    | "*"
                    | "PENDING"
                    | "DEPOSITED"
                    | "CANCELLED"
                    | "COMPLETED"
                    | "RETURNED"
                    | "SUCCEEDED"
                    | "DECLINED"
                    | "AUTHORIZED"
                    | "SIGN_UP"
                    | "RESEND_CODE"
                    | "FORGOT_PASSWORD"
                    | "UPDATE_USER_ATTRIBUTE"
                    | "VERIFY_USER_ATTRIBUTE"
                    | "ADMIN_CREATE_USER"
                    | "AUTHENTICATION"
                    | "ACCOUNT_TAKE_OVER_NOTIFICATION"
                    | "SUBMITTED"
                    | "INFO_REQUESTED";
                }
                | {
                    alreadySent: string[];
                    bodyText: string;
                    contentHash: string;
                    held: string[];
                    recipients: string[];
                    rejected: string[];
                    sent: true;
                    statusVariant: | "PENDING_VERIFICATION"
                    | "ACTION_REQUIRED"
                    | "APPROVED"
                    | "REVIEW"
                    | "DISABLED"
                    | "BLOCKED"
                    | "DELETED"
                    | "*"
                    | "PENDING"
                    | "DEPOSITED"
                    | "CANCELLED"
                    | "COMPLETED"
                    | "RETURNED"
                    | "SUCCEEDED"
                    | "DECLINED"
                    | "AUTHORIZED"
                    | "SIGN_UP"
                    | "RESEND_CODE"
                    | "FORGOT_PASSWORD"
                    | "UPDATE_USER_ATTRIBUTE"
                    | "VERIFY_USER_ATTRIBUTE"
                    | "ADMIN_CREATE_USER"
                    | "AUTHENTICATION"
                    | "ACCOUNT_TAKE_OVER_NOTIFICATION"
                    | "SUBMITTED"
                    | "INFO_REQUESTED";
                    subject: string;
                    templateKey: | "IDENTITY"
                    | "ORGANIZATION"
                    | "LEDGER_ACCOUNT"
                    | "PAYMENT_INSTRUMENT"
                    | "DEPOSIT"
                    | "WITHDRAW"
                    | "TRANSFER"
                    | "CARD_TRANSACTION"
                    | "INVOICE"
                    | "RECEIPT"
                    | "AUTH"
                    | "APPLICATION";
                    version: number;
                };
            templateKey: | "IDENTITY"
            | "ORGANIZATION"
            | "LEDGER_ACCOUNT"
            | "PAYMENT_INSTRUMENT"
            | "DEPOSIT"
            | "WITHDRAW"
            | "TRANSFER"
            | "CARD_TRANSACTION"
            | "INVOICE"
            | "RECEIPT"
            | "AUTH"
            | "APPLICATION";
            termsVersion: number
            | null;
        }
        • customerId: string

          Recorded as null when no customer has this id.

        • eventId: string
        • outcome:
              | {
                  reason: "NO_ACTIVE_TEMPLATE"
                  | "NO_RECIPIENTS";
                  sent: false;
                  statusVariant:
                      | "PENDING_VERIFICATION"
                      | "ACTION_REQUIRED"
                      | "APPROVED"
                      | "REVIEW"
                      | "DISABLED"
                      | "BLOCKED"
                      | "DELETED"
                      | "*"
                      | "PENDING"
                      | "DEPOSITED"
                      | "CANCELLED"
                      | "COMPLETED"
                      | "RETURNED"
                      | "SUCCEEDED"
                      | "DECLINED"
                      | "AUTHORIZED"
                      | "SIGN_UP"
                      | "RESEND_CODE"
                      | "FORGOT_PASSWORD"
                      | "UPDATE_USER_ATTRIBUTE"
                      | "VERIFY_USER_ATTRIBUTE"
                      | "ADMIN_CREATE_USER"
                      | "AUTHENTICATION"
                      | "ACCOUNT_TAKE_OVER_NOTIFICATION"
                      | "SUBMITTED"
                      | "INFO_REQUESTED";
              }
              | {
                  reason: "REJECTED";
                  rejected: string[];
                  sent: false;
                  statusVariant: | "PENDING_VERIFICATION"
                  | "ACTION_REQUIRED"
                  | "APPROVED"
                  | "REVIEW"
                  | "DISABLED"
                  | "BLOCKED"
                  | "DELETED"
                  | "*"
                  | "PENDING"
                  | "DEPOSITED"
                  | "CANCELLED"
                  | "COMPLETED"
                  | "RETURNED"
                  | "SUCCEEDED"
                  | "DECLINED"
                  | "AUTHORIZED"
                  | "SIGN_UP"
                  | "RESEND_CODE"
                  | "FORGOT_PASSWORD"
                  | "UPDATE_USER_ATTRIBUTE"
                  | "VERIFY_USER_ATTRIBUTE"
                  | "ADMIN_CREATE_USER"
                  | "AUTHENTICATION"
                  | "ACCOUNT_TAKE_OVER_NOTIFICATION"
                  | "SUBMITTED"
                  | "INFO_REQUESTED";
              }
              | {
                  alreadySent: string[];
                  bodyText: string;
                  contentHash: string;
                  held: string[];
                  recipients: string[];
                  rejected: string[];
                  sent: true;
                  statusVariant: | "PENDING_VERIFICATION"
                  | "ACTION_REQUIRED"
                  | "APPROVED"
                  | "REVIEW"
                  | "DISABLED"
                  | "BLOCKED"
                  | "DELETED"
                  | "*"
                  | "PENDING"
                  | "DEPOSITED"
                  | "CANCELLED"
                  | "COMPLETED"
                  | "RETURNED"
                  | "SUCCEEDED"
                  | "DECLINED"
                  | "AUTHORIZED"
                  | "SIGN_UP"
                  | "RESEND_CODE"
                  | "FORGOT_PASSWORD"
                  | "UPDATE_USER_ATTRIBUTE"
                  | "VERIFY_USER_ATTRIBUTE"
                  | "ADMIN_CREATE_USER"
                  | "AUTHENTICATION"
                  | "ACCOUNT_TAKE_OVER_NOTIFICATION"
                  | "SUBMITTED"
                  | "INFO_REQUESTED";
                  subject: string;
                  templateKey: | "IDENTITY"
                  | "ORGANIZATION"
                  | "LEDGER_ACCOUNT"
                  | "PAYMENT_INSTRUMENT"
                  | "DEPOSIT"
                  | "WITHDRAW"
                  | "TRANSFER"
                  | "CARD_TRANSACTION"
                  | "INVOICE"
                  | "RECEIPT"
                  | "AUTH"
                  | "APPLICATION";
                  version: number;
              }

          A send held by another attempt is retried, never recorded.

        • templateKey:
              | "IDENTITY"
              | "ORGANIZATION"
              | "LEDGER_ACCOUNT"
              | "PAYMENT_INSTRUMENT"
              | "DEPOSIT"
              | "WITHDRAW"
              | "TRANSFER"
              | "CARD_TRANSACTION"
              | "INVOICE"
              | "RECEIPT"
              | "AUTH"
              | "APPLICATION"
        • termsVersion: number | null

          The invoice terms version that was rendered; null for other emails.

      Returns Promise<void>