Ready to Pay

Get available payment methods for a specific transaction or a purchase.

The payment methods order shown to a customer SHOULD be the same as the order in the response.

The list of available methods is generated from available Gateway Accounts intersected with the last matched Rules Engine adjust-ready-to-pay action on ready-to-pay-requested event.

If there were no actions matched for the specific request, then all methods supported by the Gateway Accounts are sent.

To invert this behavior place an all-matching rule at the very end of the ready-to-pay-requested event in Rules Engine with an empty paymentMethods property of the adjust-ready-to-pay action.

If Ready to Pay is used with Transaction-scoped JWT all fields will be ignored except the riskMetadata.

SecurityPublishableApiKey
Request
Request Body schema: application/json
One of:
currency
required
string (CurrencyCode) = 3 characters

Currency code in ISO 4217 format.

amount
required
number <double>

The amount.

websiteId
required
string <= 50 characters

The website identifier string.

required
object (Risk metadata)

Risk metadata used for 3D Secure and risk scoring.

ipAddress
string <ipv4 or ipv6>

Customer's IP address.

fingerprint
string <= 50 characters

Customer's fingerprint.

object (HttpHeaders)

The HTTP headers.

property name*
additional property
string
object (Browser data)

Browser data used for 3D Secure and risk scoring.

colorDepth
required
integer [ 1 .. 48 ]

Browser color depth in bits per pixel. This value is obtained using the screen.colorDepth property.

isJavaEnabled
required
boolean

Specifies whether Java is enabled in a browser. This value is obtained from the navigator.javaEnabled property.

language
required
string <= 8 characters

Browser language settings. This value is obtained from the navigator.language property.

screenWidth
required
integer [ 0 .. 65535 ]

Width of the browser screen. This value is obtained from the screen.width property.

screenHeight
required
integer [ 0 .. 65535 ]

Height of the browser screen. This value is obtained from the screen.height property.

timeZoneOffset
required
integer [ -1410 .. 1410 ]

Browser time zone offset in minutes from UTC. A positive offset indicates that the local time is behind UTC. A negative offset indicates that the local time is ahead of UTC. You can find this value using the (new Date()).getTimezoneOffset() property.

object (Extra data)

Third party data used for risk scoring.

kountFraudSessionId
string [ 10 .. 32 ]

Alpha-numeric fraudSessionId as provided by the Kount SDK.

payPalMerchantSessionId
string [ 1 .. 64 ]

MerchantSessionID as generated by the PayPal Fraudnet SDK.

threatMetrixSessionId
string [ 1 .. 128 ] [a-zA-Z0-9_-]+

Temporary identifier that is unique to the visitor's session and passed to ThreatMetrix.

object

The billing address.

firstName
string or null <= 45 characters ^[\w\s\-\p{L},.']+$

Contact's first name.

lastName
string or null <= 45 characters ^[\w\s\-\p{L},.']+$

Contact's last name.

organization
string or null <= 255 characters ^[\w\s\-\p{L},.'&]+$

The contact's organization.

address
string or null <= 60 characters ^[\w\s\-\/\p{L},.#;:()'&]+$

First line of the contact's street address.

address2
string or null <= 60 characters ^[\w\s\-\/\p{L},.#;:()'&]+$

Second line of the contact's street address.

city
string or null <= 45 characters ^[\w\s\-\p{L},.']+$

Contact's city of residence.

region
string or null <= 45 characters ^[\w\s\-\/\p{L},.#;:()']+$

Contact's region of residence.

country
string or null <= 2 characters ^[A-Z]{2}$

Contact's country of residence in ISO 3166 alpha-2 country code. For examples, see ISO.org.

postalCode
string or null <= 10 characters ^[\w\s\-]+$

Contact's postal code.

Array of objects (ContactPhoneNumbers)

List of phone numbers associated with the contact.

Array
label
required
string <= 45 characters

Phone number label or name.

value
required
string <= 50 characters

Phone number value.

primary
boolean

Specifies whether the phone number is the contact's primary phone number.

Array of objects (ContactEmails)

List of email addresses associated with the contact.

Array
label
required
string <= 45 characters

Email label or name.

value
required
string <email> <= 255 characters

Email address value.

primary
boolean

Specifies whether the email address is the contact's primary email address.

dob
string or null <date>

Contact's date of birth in ISO-8601 YYYY-MM-DD format.

jobTitle
string or null <= 255 characters ^[\w\s\-\/\p{L},.#;:()']+$

The contact's job title.

Responses
200

Payment methods retrieved.

Response Schema: application/json
method
required
string

The payment method.

(Apple Pay Digital Wallet (object or null)) or (Google Pay Digital Wallet (object or null))

The specific feature (for example, digital wallet or a processor) of this method. If method doesn't have any features - will be null.

One of:

The specific feature (for example, digital wallet or a processor) of this method. If method doesn't have any features - will be null.

name
string (ApplePayFeatureName)

The feature name.

Value: "Apple Pay"
displayName
string

A string of 64 or fewer UTF-8 characters containing the canonical name for your store, suitable for display. Don’t localize the name.

country
string (DigitalWalletCountry) ^[A-Z]{2}$

The ISO 3166 alpha-2 country code where the payment is processed. This is often the location for settling the payment. Consult with your Payment Service Provider (PSP) to determine the appropriate country code.

brands
Array of strings (PaymentCardBrand) non-empty

The list of supported brands.

Items Enum: "Visa" "MasterCard" "American Express" "Discover" "Maestro" "Solo" "Electron" "JCB" "Voyager" "Diners Club" … 4 more
filters
Array of strings (ReadyToPayMethodFilters)

For the method to be applicable any of the following filters should match. If no filters are sent, then no restrictions applied. This follows our standard filter format.

401

Unauthorized access. Invalid credentials used.

403

Access forbidden.

422

Invalid data was sent.

post/ready-to-pay
Request samples
application/json
{
  • "currency": "USD",
  • "amount": 0,
  • "websiteId": "4f6cf35x-2c4y-483z-a0a9-158621f77a21",
  • "billingAddress": {
    },
  • "riskMetadata": {
    }
}
Response samples
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]