The most notable difference between business-to-business (B2B) versus business-to-consumer (B2C) money movement models is the party receiving the payment. In B2B commerce, a business sells a product or service directly to another business. In B2C commerce, a business sells a product or service directly to a consumer. This guide discusses the additional considerations required for business programs.

## SEC code support for businesses and consumers

Galileo supports four <<glossary:SEC code>>s to solidify our commitment to adapt to industry standards and ensure strict compliance for originating <<glossary:ACH>> transactions. When using the <a href="ref:post_createachtransaction" target="_blank">Create ACH Transaction</a> endpoint, the appropriate SEC code is determined based on the account types in the Galileo system for the source and destination accounts.

SEC codeTitleConsumer / businessUse case
CCDCorporate Credit or DebitB2BTransfer of funds between business accounts or to consolidate funds from several accounts of the same business.
CIECustomer Initiated EntryC2BOutgoing credit entry initiated by an individual (usually through a bill payment service) used to pay some sort of obligation.
PPDPrearranged Payment and DepositB2CRecurring entry for direct deposit of payroll, pension, etc., or for direct payment of recurring bills such as utilities, loans, insurance, etc.
WEBInternet Initiated / Mobile EntryC2CSingle or recurring person-to-person credit, or debit initiated from an authorization via the internet or a wireless network.

## File generation based on SEC code

Nacha files are formatted in a digital envelope and contain important instructions. The batch header contains specific information about the payment, such as the SEC code, description, and effective date. The detailed transaction record includes information about the payee (banking information), and the amount to be paid. Below are more details specific to the file format generated by Galileo.

### Batch header record

The three-character SEC code is indicated in Field 6 of the Company / Batch Header record (type 5), which is populated by Galileo. Additionally, In accordance with Nacha guidelines, Fields 7, 8, 9 in the Entry Detail Records are populated based on the SEC code, respectively:

  • **CCD** — Identification Number, Receiving Company Name, and Discretionary Data

  • **PPD** — Individual Identification Number, Individual Name, and Discretionary Data

  • **CIE** — Individual Name, Individual Identification Number, and Discretionary Data Note: This code is applicable for outgoing credits only. Galileo does not support outgoing ACH debits from consumer to corporate accounts.

  • **WEB** — Individual Identification Number, Individual Name, and Payment Type Code

### Entry details record

Depending on the nature of transactions between business or consumer accounts, the “Individual Identification Number” or “Identification Number” field may be mandatory or may be optional:

  • **B2B funds transfer** (CCD) — The Identification Number is optional.

    • Galileo uses the client-provided value passed in the `identNumber` field in [Create ACH Transaction](🔗). It should contain the account number by which the Receiver is known to the Originator. It is included for further identification and for descriptive purposes.

  • **B2C funds transfer** (PPD) — The Individual Identification Number is optional.

    • For a return fee related to an ARC, BOC, POP, or RCK entry, or to an item that was eligible to be converted to a debit entry, but was not converted, this field must contain the Check Serial Number contained within the ARC, BOC, POP, or RCK Entry or item.

  • **C2B funds transfer** (CIE) — The Individual Identification Number is mandatory.

    • Galileo uses the value passed in the `identNumber` field in <a href="ref:post_createachtransaction" target="_blank">Create ACH Transaction</a>. It should contain the account number by which the Originator is known to the Receiver, in order to update accounts receivable records. It should be the number shown on an invoice, statement, billhead, notice, or other communication as the reference. Numbers may be policy, customer, invoice, meter, sequence, and/or alphanumeric combinations.

  • **C2C funds transfer** (WEB) — The Individual Identification Number is mandatory for credit transactions.

    • For a Person-to-Person (P2P) entry, this field contains the name of the Originator for use by the RDFI on the periodic statement.

## Company name

For a B2B transaction, it is important to have a placeholder to pass the payee’s information to the RDFI. For example, “ABC Fintech” operates as a business program within the Galileo platform, specializing in providing business banking services to enterprises. “XYZ Corp” is a business that is a customer of ABC Fintech (the business name on the Galileo account is XYZ Corp). When XYZ Corp initiates an outgoing ACH, the `companyName` field in the outgoing ACH file will include the value “XYZ Corp".

Note

Many of the outgoing payments from business accounts are for supplier/vendor payments, and vendors need to know the actual sender of the transaction for reconciliation purposes.

Business programs need to accurately populate the `businessName` field of the business accounts hosted in the Galileo system with the name by which the Originator is known to and readily recognized by the Receiver of the ACH entry. This ensures the correct value is retrieved during ACH transaction processing:

  • **Existing accounts under business programs** — use <a href="ref:post_updateaccount" target="_blank">Update Account</a> to update the `businessName` field.

  • **New business programs** — populate the `businessName` field while using <a href="ref:post_createaccount" target="_blank">Create Account</a>.

Use <a href="ref:post_addachaccountcorporate" target="_blank">Add ACH Account Corporate</a> to link an external business account to the account in the Galileo system. This distinguishes whether transactions are CCD or PPD, based on the source and destination account type.

Note

You may need to modify the existing flow in your application to capture this additional information about whether the account being linked is an individual or a business account. Subsequently, you would need to call the appropriate endpoint based on this distinction.

### Company identification field

Galileo recommends using the `companyIdentification` field (mandatory, Field: 5, Position: 41-50, Length 10, alphanumeric) instead of `companyName` for reconciliation purposes. `companyIdentification` is an alphanumeric code that can be used to uniquely identify the client (Galileo program) when the `companyName` field identifies the business name / true sender.