Payment Profile

API name: cpm__Payment_Profile__c

Description

The Payment Profile object contains details about a specific payment method that a contact or account has used. A separate Payment Profile record is created for different credit cards, bank account and BIC or sort code combinations, etc. Installments are linked to payment profiles to determine what details should be used when collecting the payment.

   FinDock does not store the primary account number (PAN) of a card on the payment profile, only tokenized card details.

When handling changes to payment details stored on a payment profile, in most cases you should create a new Payment Profile record rather than updating the existing record. This preserves the history of payment data related to installments paid using the original payment profile information.

Record types

Record types are used to separate and display information relevant for a given payment method. The FinDock Core package includes four record types that cover all payment method types. However, older installations may still have and use other record types that are no longer required in new installations.

Core record types:

  • BBAN - for all non-IBAN account types; record layout and data validation are determined by the Country Picklist value.
  • Credit Card - for all card types and brands
  • IBAN - for all IBAN accounts
  • Wallet - for various payment methods such as ApplePay, GooglePay, Swish, etc.

Legacy record types:

  • Bank Account - UK bank accounts for Bacs package (replaced by BBAN record type)
  • Bank Account - Norway and Sweden bank accounts for Nordics package (replaced by BBAN record type)
  • Bank Account (Stripe) - UK bank accounts for Stripe package (replaced by BBAN record type)
  • Legacy Bank Account (Deprecated) - UK bank accounts for (Core package replaced by BBAN record type)
  • PayPal - Payer account for PayPal package (replaced by Wallet record type)

You can configure different page layouts for each record type to improve the user experience and streamline actions. For information about working with record types and page layouts, see Assign Page Layouts to Profiles or Record Types.

Identification and uniqueness

The Payment Profile object includes two fields for identification and enforcing uniqueness: Primary Identifier and Unique Identifier.

The Primary Identifier field is an indexed identification field that can be queried by processes like Guided Matching. The field value is determined by Record Type (account, credit card, etc.).

The Unique Identifier field is an indexed field with an enforceable, unique value that is upserted during Guided Matching processing. When payment profile uniqueness is enforced (FinDock Core general setting - disabled by default), this field ensures duplicate records are not created because of parallel processing.

The Unique Identifier value is composed of the following elements separated by an underscore:

Record Type Name + Primary Identifier + Wallet Type (if applicable) + 18 char Contact Id (or Account Id)

Payment Profile fields

LabelNameTypeDescription
Accountcpm__Account__cLookup(Account)Account record linked to the payment profile
Activecpm__Active__cCheckboxIf not checked, the payment profile cannot be used to collect payments.
Bank Accountcpm__Bank_Account__cText(50)The unique, country-specific number that identifies the payer’s account at a specific bank
Bank Codecpm__Bank_Code__cText(255)A unique identifier for a financial institution in a given country issued by a central bank or banking association
Bank Namecpm__Bank_Name__cText(255)The name of the financial institution where the payer hold the bank account
BICcpm__BIC_Code__cText(50)The Business Identifier Code or SWIFT Code of the payer’s bank
Branch Codecpm__Branch_Code__cText(50)The country-specific identifier of the payer’s bank branch location, also known as clearing number, routing number, etc.
Brandcpm__Brand__cText(50)Card brand
Card BINcpm__Card_BIN__cText(6)Bank Identification Number of card (first four to six digits)
CCVcpm__CCV__cText (Encrypted)(5)3-digit Card Verification Value
Citycpm__City__cText(255)Non-EEA payer city name, required for SEPA Direct Debit
Clearing Member Idcpm__Clearing_Member_Id__cText(80)The legal identifier of the payer’s Swiss financial institution
Contactcpm__Contact__cLookup(Contact)Contact record linked to the payment profile
Countrycpm__Country_PL__cPicklistPicklist for BBAN accounts used for validation and record type page layout
Countrycpm__Country__cText(255)Non-EEA payer Alpha-2 ISO country code, required for SEPA Direct Debit
Created ByCreatedByIdLookup(User)Standard Salesforce field
Credit Card Numbercpm__Credit_Card_Number__cText (Encrypted)(175)Last four digits of the card number
CurrencyCurrencyIsoCodePicklistStandard Salesforce field in multi-currency orgs
Custom Tax Codepaysepa__Custom_Tax_Code__cText(80)Tax code for SEPA/SEDA payments in Italy that overrides payer's default tax code from contact/account
Enforce Uniquenesscpm__Enforce_Uniqueness__cCheckboxIndicates if FinDock enforces uniqueness of payment profile
Expiration Monthcpm__Expiration_Date__cPicklistCard expiration month
Expiration Yearcpm__Expiration_Year__cPicklistCard expiration year
Fingerprintphstr__Fingerprint__cText(100) (External ID)Stripe-specific unique identifier
Funding Typecpm__Funding_Type__cPicklistIndicates card type (credit or debit), required by specific processors
Holder Namecpm__Holder_Name__cText(255)Payer’s name as it appears in the bank account owner details
House name or numbercpm__Housename_Or_Number__cText(255)Non-EEA payer house name or number, required for SEPA Direct Debit
Housenumber (deprecated)cpm__Housenumber__cNumber(18, 0)Deprecated
IBANcpm__IBAN__cText(35)International Bank Account Number that identifies the country, bank and account number of a payer’s bank account in a valid format
Last Modified ByLastModifiedByIdLookup(User)Standard Salesforce field
OwnerOwnerIdLookup(User,Group)Standard Salesforce field
Payer Idpp4ph__Payer_Id__cText(255) (External ID)Payer identification specific to PayPal
Payer Namepp4ph__Payer_Name__cText(255)Payer name specific to PayPal
PayPal Email Addresspp4ph__PayPal_Email_Address__cEmailPayer email address specific to PayPal
Primary Identifiercpm__Primary_Identifier__cText(255) (External ID)Indexed identification for payment profile
ProcessingHub Idcpm__ProcessingHub_Id__cText(80) (External ID)Id of process ProcessingHub process that last used the payment profile
Record TypeRecordTypeIdRecord TypeStandard Salesforce field
ReferenceNameAuto NumberStandard Salesforce field
Reparent Payment ProfileNPFF__Reparent_Payment_Profile__cText(255)Deprecated
Sort Codecpm__Sort_Code__cText(50)6-digit sort code of the payer’s UK bank
Sort Codepaybacs__Sort_Code__cText(50)Deprecated
State/Provincecpm__State_Province__cText(255)Payer's address state or province
Streetcpm__Street__cText(255)Non-EEA payer street address, required for SEPA Direct Debit
Suffixcpm__Suffix__cText(10)Payer's name suffix, such as Jr. or Sr.
Tokencpm__Token__cText(255)Token used to securely identify the card (instead of the card number)
Token Issuercpm__Token_Issuer__cText(80)Provider that issued the card token stored in the payment profile
Unique Identifiercpm__Unique_Identifier__cText(255) (External ID) (Unique Case Insensitive)Indexed identification with enforceable uniqueness for payment profile
Wallet Idcpm__Wallet_Id__cText(50)Identification number of payer's digital wallet
Wallet Typecpm__Wallet_Type__cPicklistIndicates the payment method associated with the wallet, e.g. Apple Pay or Google Pay
Zipcodecpm__Zipcode__cText(15)Non-EEA payer postal code, required for SEPA Direct Debit

Was this page helpful?