Custom financial operation configuration reference

Use this reference with the Create custom financial operations overview and Create a custom financial operation guides when selecting transaction-type values and transaction-flow amount keys.

Endpoints

OperationMethod and path
Create transaction typePOST /v1/transaction-types
List transaction typesGET /v1/transaction-types
Create transaction flowPOST /v1/transaction-flow
List transaction flowsGET /v1/transaction-flow
Update transaction flowPATCH /v1/transaction-flow/processing-code/{processingCode}/transaction-type/{transactionTypeId}

Custom amount examples

Use key = OTHER when a transaction flow must use an authorization-provided amount that is not represented by the standard PRINCIPAL, INSTALLMENT, or CONTRACT amount types.

The following values are examples of valid custom amounts used with key = OTHER:

custom_keyDescription
interestAmountInterest amount associated with the authorization.
iofAmountTax amount associated with the authorization.
fee_12345AmountAmount generated by a linked fee model.
Insurance01AmountAmount generated by a custom payment-agreement component.

When key = OTHER, the transaction is generated only when the authorization includes the specified custom_key.

Installment operation matrix

Amount typeposted_transaction = trueposted_transaction = false
PRINCIPALCreates one posted transaction per installment using only the principal amount. Interest, taxes, fees, and other charges are excluded.Creates one non-posted transaction containing the total contract principal amount.
INSTALLMENTCreates one posted transaction per installment using the full installment amount, including applicable interest, taxes, fees, and other charges.Not supported.
CONTRACTNot supported.Creates one non-posted transaction containing the total contract amount, including all applicable charges.
OTHER + custom_keyCreates one posted transaction per installment using the specified custom amount. Examples include iofAmount, interestAmount, and amounts associated with linked fee models.Creates one non-posted transaction containing the total contract amount associated with the specified custom value.

Single-payment operation matrix

key or custom_keyposted_transaction = trueposted_transaction = false
PRINCIPALOne posted transaction for principal only.This configuration is not covered by this guide. Contact your Pismo representative to confirm the behavior.
INSTALLMENTNot applicable.Not applicable.
CONTRACTOne posted transaction for the total operation amount.This configuration is not covered by this guide. Contact your Pismo representative to confirm the behavior.
OTHER with custom_keyOne posted transaction for the named custom amount.This configuration is not covered by this guide. Contact your Pismo representative to confirm the behavior.

Minimum viable configuration

Operation typeRequired transaction flows
InstallmentA non-posted CONTRACT or PRINCIPAL flow and a posted INSTALLMENT or PRINCIPAL flow.
Single-paymentA posted CONTRACT or PRINCIPAL flow.

Reversal configuration rules

  • The reversal processing code has the same number of transaction types as the original processing code.
  • Each reversal flow uses the same key and, for OTHER, the corresponding custom_key.
  • Each reversal transaction type uses the inverse credit value.
  • Each reversal transaction type keeps the same posted_transaction value as the corresponding original transaction type.

Duplicate configuration pattern

A posted OTHER flow using custom_key = interestAmount can overlap with a posted INSTALLMENT flow because the installment amount already includes applicable interest. If both transaction types have accounting mappings, the configuration can produce duplicate or unintended financial effects.

Example authorization and reversal mapping

PurposeProcessing codeTransaction type IDDescriptioncreditposted_transactionLevelFlow key
Installment purchaseINST017710Installment transactionfalsetrueInstallmentINSTALLMENT
Contract purchaseINST017711Contract transactionfalsefalseContractCONTRACT
Installment reversalINST997712Installment reversal transactiontruetrueInstallmentINSTALLMENT
Contract reversalINST997713Contract reversal transactiontruefalseContractCONTRACT

How to read this example

The mappings work in corresponding pairs:

  • Transaction types 7710 and 7712 both use INSTALLMENT and the same posted_transaction value, but opposite credit values.
  • Transaction types 7711 and 7713 both use CONTRACT and the same posted_transaction value, but opposite credit values.
  • The original and reversal processing codes use matching transaction-type and transaction-flow structures so that cancellation produces the corresponding reversal transactions and accounting entries.

For example, when processing code INST01 creates installment and contract transactions, the linked reversal processing code INST99 creates the corresponding reversal transactions using matching keys and transaction levels.

Related topics


Did this page help you?