Payment-method

Give customers access to their wallet

Give customers access to select or create the payment method needed. Can be used alone to get a card on file or with other actions such as payment or payout.

You can also tokenize the saved payment methods. Tokenization of a payment method involves converting the sensitive payment data (such as credit card numbers) into a unique identifier or token that can be used for processing payments without exposing the actual payment details.

You can also add restrictions to what payment methods will be allowed, in order to match the payment mechanisms with your business needs.

You can use ! to define exclusions in restrictions, allowing it to accept all values except the specified one. For example, !DEBIT means it will accept anything except DEBIT.

You can also set an intent on a payment method action, it allows customers to select or add payment methods that align with the merchant products configured for the specified intent.

No products are required to use this action.

This action pairs well with the following actions.

State

The id and type of the chosen payment method.

Union

When unioned there will be no accept button shown. Instead, the unionize action will immediately receive each selected payment method.

Macro level details for how union attribute behaves can be found within the Union documentation.

Features

NameTypeDescriptionRules
descriptionstringWhen not unioned to another action is used to tell the user why a card is being captured.
Examples: "Donation towards the annual charity event.".
MinLength: 3
Pattern: ^(?!\s*$).+
intentstringWhen an intent is set on a payment method action, it allows customers to select or add payment methods that align with the merchant products configured for the specified intent.
Examples: "payments".
Possible values: payments, payouts.
restrictionsarrayTo restrict the payment methods (tenders) allowed to be used for payment. For example, if this is a debt payment you might only allow ACH and DEBIT in order to comply with regulatory restrictions.
Examples: [{'type':['ACH'],'accountType':['Savings']},{'type':['CreditCard'],'binType':['DEBIT'],'cardCategory':['gold'],'brand':['visa']}].
See restrictions
forgetHiddenbooleanTurns off the display of 'Forget this payment method after use' checkbox on GUI side when value is true.
Examples: true.
forgetDefaultbooleanHandling of deafult value of 'Forget this payment method after use' checkbox. Though customer can change checkbox's value later.
Examples: true.

restrictions

NameTypeDescriptionRules
typearray(required) The type of tender determines what attributes you can use for restriction. Our current list of additional attributes only apply to CreditCard, so when you enable a restriction for ACH it will be for all cases of ACH.
Examples: ['ACH'].
Possible values: CreditCard, ACH.
binTypearrayUsed to define a funding type (bin type) for a credit card. Specify more than one value in the array if you want more than one to apply.
Examples: ['DEBIT','!DEBIT'].
Possible values: DEBIT, CREDIT, CHARGE CARD, !DEBIT, !CREDIT, !CHARGE CARD.
cardCategoryarrayWhich categories of cards will be accepted.
Examples: ['classic','business','!platinum','!corporate'].
Possible values: classic, business, corporate, platinum, prepaid, !classic, !business, !corporate, !platinum, !prepaid.
brandarrayWhat card brands will be accepted like Visa, MasterCard and Discover. This value is always lower case and must match exactly what we have defined.
Examples: "visa", "mastercard", "american-express", "diners-club", "discover", "ebt", "!discover", "!mastercard".
binarrayWhat card bin will be accepted which is starting digit of card number
Examples: "123456", "4444", "98768", "!4111", "!232456".
accountTypearraySpecify the account type in case of ACH.
Examples: ['Savings','!Checking'].
Possible values: Savings, Checking, !Savings, !Checking.

Context

NameTypeDescriptionRules
defaultSelectionAllowListarrayAn array of payment method restrictions that defines the specific payment tender types allowed for messaging-based payments.
Examples: [{'type':'ACH'},{'type':'Token','subType':'ACH'}].
See defaultSelectionAllowList

defaultSelectionAllowList

NameTypeDescriptionRules
typestring(required) Specifies the payment method type.Possible values: ACH, Token, CreditCard.
subTypestringSpecifies a sub-type if further granularity is needed (only allowed when type is Token).Possible values: ACH, CreditCard.

Example

Below is an example payload for adding an action to a business process or blueprint.

{
    "type": "payment-method",
    "union": 1,
    "context": {
        "defaultSelectionAllowList": [
            {
                "type": "ACH"
            },
            {
                "type": "Token",
                "subType": "ACH"
            }
        ]
    },
    "features": {
        "description": "Donation towards the annual charity event.",
        "intent": "payments",
        "restrictions": [
            {
                "type": [
                    "ACH"
                ],
                "accountType": [
                    "Savings"
                ]
            },
            {
                "type": [
                    "CreditCard"
                ],
                "binType": [
                    "DEBIT"
                ],
                "cardCategory": [
                    "gold"
                ],
                "brand": [
                    "visa"
                ]
            }
        ],
        "forgetHidden": true,
        "forgetDefault": true
    }
}