0% found this document useful (0 votes)
66 views122 pages

ProPay-API-Manual-XML 2

The document outlines the ProPay Application Programming Interface (API) and its various transaction types and updates from version 6.18.7 to 6.18.43. It provides instructions for developers on integrating the API into their software, including compliance with PCI Data Security Standards. Additionally, it details the process for testing and certifying software solutions with ProPay's services.

Uploaded by

omololupatrick
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
66 views122 pages

ProPay-API-Manual-XML 2

The document outlines the ProPay Application Programming Interface (API) and its various transaction types and updates from version 6.18.7 to 6.18.43. It provides instructions for developers on integrating the API into their software, including compliance with PCI Data Security Standards. Additionally, it details the process for testing and certifying software solutions with ProPay's services.

Uploaded by

omololupatrick
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 122

Version 6.18.

43

PROPAY® APPLICATION PROGRAMMING INTERFACE


Instruction to interface with ProPay®
Date Version Description Author
12/10/2019 6.18.7 Updated 4.2 to include a section to update Negative Limits Implementations
Added additional Single Sign On pages in 4.9
1/23/2020 6.18.8 Added General Ledger to Gross Billing Bank Account Implementations
Added additional Single Sign On pages
04/21/2020 6.18.9 Updated several sample request Implementations
Updated birthday description field to reflect change in values to get a success
 Birthday must be 01-01-1981 to get a status 00 in test
07/07/2020 6.18.10 Added New Method: Implementations
8.4 Get ProPay Enhanced Account Details
08/12/2020 6.18.11 Added Quasi Cash Indicator to Transtype 04, 05, and 33 Implementations
9/01/2021 6.18.12 Additions have been made for Heartland device ordering and general updates Implementations
9/22/2021 6.18.13 Added Transtypes 130 and 430 Implementations
2/18/2021 6.18.14 Small updates to existing Transtypes Implementations
4/13/2022 6.18.15 Fix typo, add CheckGatewayStatus to transtype 13 Product
4/15/2022 6.18.16 Add globaltransId’s, gatewayTransId’s, and cardBrandTransactionId’s to Product
transtype 16
4/22/2022 6.18.17 Add refund attempt retry restriction of 30 seconds to eliminate duplicate refunds Product
5/16/22 6.18.18 Add 5 new optional fields to transtype 01 – T&C and compliance gathering fields Product
6/22/22 6.18.19 Fixed missing info for transtype 11 – added secondaryTransNum response Product
7/7/22 6.18.20 Added new previous address and business info tags to Transtype 01 Product
10/5/22 6.18.21 PostBackURL2 is not optional for Transit on Transtype 01 Product
10/17/22 6.18.22 Add accountName to transtype 33 (split Pay) Product
10/19/22 6.18.23 Add transtype 221 a la carte fee creation, typo fixes Product
11/3/22 6.18.24 Change description for TransType 46 Product
1/12/23 6.18.25 Add UK specific fileds to TransType 42 Product
1/13/23 6.18.26 Add fields to TransType 221, Add TransType222, typo fixes Product
1/25/23 6.18.27 Add CA specific attributes and timezone notes to device ordering in transtype 01 Product
1/30/23 6.18.28 Add Culture Code to transtype 01 Product
2/01/23 6.18.29 Remove Transtype 221 Product
2/06/23 6.18.30 Add Update Rates group to TransType 42 Product
2/24/23 6.18.31 Add transtype 212 Product
03/20/23 6.18.32 Add Network Token to Transtypes 04, 05, 07, 33 Product
06/29/23 6.18.33 Add description to transtype 34 noting search behavior Product
08/04/23 6.18.34 Add Apple Pay tokenization to TT 04,05,33 Product
08/11/23 6.18.35 Add note to tt 430 – ship to state – for UK. Do not pass. Product
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 2
08/23/23 6.18.36 Add tt 302 – Obtain auth key for SSO boarding Product
09/07/23 6.18.37 Add tt 431 – Device order tax calculation (add sections to tt 01) Product
10/03/23 6.18.38 Add Enable POS software to TT 42 Product
11/08/23 6.18.39 Update TT 130 to get tier information Product
01/09/24 6.18.40 Added exclude from sweep request in TT 42, response in TT 19 Product
03/14/24 6.18.41 Added estimate card usage elements, TT 01, Fix Misc. Typos Product
04/09/24 6.18.42 Added additional fields to TT 19 – enhanced account ping Product
04/17/24 6.18.43 Change notes and descriptions for average and highest ticket in tt01 and 19 Product

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 3
Contents
1.0 ProPay® Application Programming Interface .............................................................................................................................................................................. 6
2.0 Interface Testing and Certification ................................................................................................................................................................................................ 8
3.0 Technical Implementation .............................................................................................................................................................................................................. 9
4.0 Account Management Methods ................................................................................................................................................................................................. 11
4.1 Create ProPay Account Transaction Type 01 ....................................................................................................................................................................................................... 11
4.2 Edit a ProPay Account Transaction Type 42 ......................................................................................................................................................................................................... 31
4.3 Reset a ProPay Account’s Password Transaction Type 32 ................................................................................................................................................................................... 39
4.4 Renew a ProPay Account Transaction Type 39 .................................................................................................................................................................................................... 40
4.5 Add a ProPay Account’s Beneficial Ownership Information Transaction Type 44 ............................................................................................................................................... 42
4.6 Move a ProPay Account Off of a Partner’s Program Transaction Type 41 ........................................................................................................................................................... 44
4.7 Upload a Document to ProPay (Chargeback specific) Transaction Type 46......................................................................................................................................................... 45
4.8 Upload a Document to ProPay Transaction Type 47............................................................................................................................................................................................ 46
4.9 Obtain a Working Key for Single-Sign-On Transaction Type 300 ......................................................................................................................................................................... 47
4.10 Update Bank Account Ownership Details Transaction Type 210 ....................................................................................................................................................................... 49
4.11 Update a ProPay Account’s Beneficial Ownership Count Transaction Type 211 ............................................................................................................................................... 52
4.12 Order A New Device Transaction Type 430........................................................................................................................................................................................................ 53
4.13 Address Lookup (Eqiufax) Transaction Type 212 ............................................................................................................................................................................................... 56
4.14 Obtain a Working Key for Single-Sign-On Boarding Transaction 302................................................................................................................................................................. 58
4.14 Device Order Tax Calculation Transaction 431 .................................................................................................................................................................................................. 59
5.0 Funds Management Methods ...................................................................................................................................................................................................... 61
5.1 Add funds to a ProPay Account Transaction Type 37 .......................................................................................................................................................................................... 61
5.2 Sweep funds from a ProPay Account Transaction Type 38 .................................................................................................................................................................................. 62
5.3 Reissue a ProPay MasterCard Debit Card Transaction Type 31 ........................................................................................................................................................................... 63
5.4 Send a Propay MasterCard PIN Mailer Transaction Type 30 ............................................................................................................................................................................... 64
5.5 Mark a ProPay MasterCard Debit Card Lost or Stolen Transaction Type 29 ........................................................................................................................................................ 65
5.6 Flash Funds – Add or Change Card Assigned to a ProPay Account Transaction Type 209 ................................................................................................................................... 66
5.7 Flash Funds – Push Funds to On-File Card Transaction Type 45 .......................................................................................................................................................................... 67
5.8 Reserve Funds – Establish Reserve Transaction Type 50 ....................................................................................................................................................................... 68
5.9 Reserve Funds – Release Reserve Transaction Type 51 ....................................................................................................................................................................... 68
5.11 Account Fee – Reverse an A La Carte fee transaction Transaction Type 222 ........................................................................................................................... 69
6.0 Transaction processing Methods ................................................................................................................................................................................................. 70
6.1 Process a Credit Card (authorize only) Transaction Type 05 ................................................................................................................................................................................ 70
6.2 Capture an Authorized Credit Card Transaction Transaction Type 06 ................................................................................................................................................................. 76
6.3 Process a Credit Card Transaction Type 04 .......................................................................................................................................................................................................... 77
6.4 Process an ACH Transaction Transaction Type 36................................................................................................................................................................................................ 83
6.5 Void or Refund an Existing Transaction Transaction Type 07 .............................................................................................................................................................................. 85
6.7 Issue a Credit to a Credit Card Transaction Type 35 ............................................................................................................................................................................................ 88
6.8 Get Currency Conversion Rate Transaction Type 03 ............................................................................................................................................................................................ 89
6.9 Get Working Key for Mobile SDK Transaction Type 301 ...................................................................................................................................................................................... 90
7.0 In-Network Transaction Methods ................................................................................................................................................................................................. 91
7.1 Disburse funds Transaction Type 02 .................................................................................................................................................................................................................... 91
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 4
7.2 ProPay Spendback Transaction Transaction Type 11 ........................................................................................................................................................................................... 92
7.3 ProPay SplitPay Transaction Transaction Type 33 ............................................................................................................................................................................................... 93
7.4 Reverse SplitPay Transaction Transaction Type 43 .............................................................................................................................................................................................. 99
7.5 Split Funds from an Existing Transaction Transaction Type 16 .......................................................................................................................................................................... 101
8.0 Get Information Methods ............................................................................................................................................................................................................ 102
8.1 Get ProPay Account Details (Account Ping) Transaction Type 13 ...................................................................................................................................................................... 102
8.2 Get current ProPay Account Balance Transaction Type 14 ................................................................................................................................................................................ 104
8.3 Get Transaction Details Transaction Type 34 ..................................................................................................................................................................................................... 105
8.4 Get ProPay Enhanced Account Details Transaction Type 19 ............................................................................................................................................................................. 108
8.5 Get a currency’s conversion amount Transaction Type 03 ................................................................................................................................................................................ 115
8.6 Get Tier Information Transaction Type 130 ....................................................................................................................................................................................................... 116

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 5
1.0 ProPay® Application Programming Interface
ProPay is a robust payments network that utilizes ProPay merchant accounts to process major card brands, ACH payments, and supported
alternative payment methods. A ProPay user account is not needed to make a purchase from a ProPay merchant using their credit card, ACH
account information or supported alternative payment method type.

How to use this manual:


This manual is designed to enable developers to integrate the ProPay API into their own software solutions. The ProPay API is not written specific to a
single platform but its users should have an understanding of basic principles.
- Developers should have an understanding of Hyper Text Transfer Protocol (HTTP) communication
- The consumption of external Web services and creation of a Secure Sockets Layer (SSL) connection from their own development platform.
- Certain methods require an understanding of SSL communication using X.509 certificates and Advanced Encryption Standard (AES)
encryption on the developer’s own platform.
- Extensible Markup Language

While ProPay offers resources and materials to assist developers in creating solutions and software, it is the responsibility of the developer to develop
his or her own solution and software on the intended development platform to make use of and consume the services offered by ProPay. For
additional resources please visit our new site: www.propay.com/developer.

Disclaimer
ProPay provides the following documentation on an “AS IS” basis without warranty. ProPay does not represent or warrant that ProPay’s website or
the API will operate securely or without interruption. ProPay further disclaims any representation or warranty as to the performance or any results that
may be obtained through use of the API.

Regardless of its cause, ProPay will not be liable to client for any direct, indirect, special, incidental, or consequential damages or lost profits arising
out of or in connection with client’s use of this documentation, even if ProPay is advised of the possibility of such damages. Please be advised that
this limitation applies whether the damage is caused by the system client uses to connect to the ProPay services or by the ProPay services
themselves

Pay Card Industry (PCI) Data Security Standard (DSS) Compliance


All merchants must be compliant with the Payment Card Industry Data Security Standard (PCI DSS). For merchants that are integrating into the
ProPay API, which includes the handling and transmission of card data directly, merchants are required to validate that they have completed the
appropriate PCI DSS requirements.
Validating compliance may include an on on-site assessment (for very large merchants) by a Qualified Security Assessor (QSA), or the completion of
a Self-Assessment Questionnaire for smaller merchants, as applicable to their processing volumes and circumstances. Depending upon the
architecture of the cardholder data environment, compliance with the PCI DSS may also include quarterly vulnerability scans and a penetration test.
It is the responsibility of the merchant to validate compliance with the PCI DSS and to provide validation documentation to ProPay. Failure to
validate compliance may result in fines, fees, and penalties for non-compliance or data breaches.

Service Providers must also comply with the PCI DSS. A Service Provider is defined as any entity that stores, processes, or transmits cardholder data
on behalf of a merchant or acquiring bank. Currently, service providers processing more than 300,000 transactions annually must undergo an on-site
assessment by a QSA. Smaller Service Providers must validate compliance by completing the “SAQ – D Service Provider.” Compliance may also

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 6
include quarterly vulnerability scans and a penetration test. In addition to the requirement to validate compliance with the PCI DSS, Service
Providers have an additional obligation to register with the Card Brands. This allows the Card Brands additional insight into entities that may be
storing, processing, or transmitting cardholder data. Registration involves some due diligence on the part of the acquiring bank and a listing on the
Visa Global Service Provider Registry and the MasterCard PCI-Compliant Service Provider List. If a Service Provider has undergone the registration
process with another acquirer, it must still register through ProPay, but needs only to provide its registration number, as opposed to undergoing the
underwriting process again.

For current information about the defined Merchant and Service Provider processing levels and their corresponding PCI DSS requirements, please
see www.pcisecuritystandards.org

Merchants and service providers may be able to limit the scope of their PCI Compliance requirements by using tokenization solutions, such as
ProPay’s ProtectPay solution to remove card data from traversing their environments. For more details on those options, please discuss with a ProPay
relationship manager.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 7
2.0 Interface Testing and Certification
Integrating a developed software solution to the ProPay web integration requires the following steps:

1. Request API credentials from a ProPay sales representative and/or account manager. Then integrate those methods specific for your project
scope. A ProPay sales representative and/or account manager will help determine which methods are required for the specific project scope
2. Design, develop, build and test the software solution using the ProPay Integration Server
a. The ProPay Integration XML URI: https://xmltest.propay.com/API/PropayAPI.aspx
b. The ProPay Integration XML URI for Canada: https://xmltestcanada.propay.com/API/PropayAPI.aspx
3. Request Production (Live) Credentials from a ProPay sales representative and/or account manager Live Credentials MUST be kept confidential
a. The ProPay Production XML URI: https://epay.propay.com/API/PropayAPI.aspx
b. The ProPay Production XML URI for Canada: https://www.propaycanada.ca/API/PropayAPI.aspx
c. The ProPay Production API REST base URI: https://api.propay.com/ProPayAPI

To improve the customer experience, ProPay requires that new developers test their software solutions before receiving credentials to process live
transactions. This integration process is designed to assist the developer in building a robust solution that can handle and process all the various
responses that come from real time credit card and ACH processing. This process ultimately improves the end-user experience. Please plan
accordingly when developing timelines and schedules to accommodate for testing against the ProPay Integration environment. Negotiated fees
are not refunded in the production environment.

Test account numbers for Credit Card and ACH processing are listed in the Appendix to this document

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 8
3.0 Technical Implementation
Secure Transmission
ProPay recognizes the importance of handling financial transactions in a secure manner, and ensures that our solutions offer high levels of
transmission security. ProPay ensures that request information is transmitted using the latest Secure Sockets Layer (SSL) encryption practices. SSL
creates a secure connection between client and server over which encrypted information is sent. ProPay hosts the SSL certificate for this connection
type. Most method requests will negotiate an SSL connection automatically over port 443.

ProPay API Authentication


ProPay will generate a unique certStr which must be included in all API transactions. This authorization credential grants access to perform
transactions. Most transactions are performed using an ‘affiliate’ certStr which is authorized to perform a variety of functions on accounts related to
a specific business.
ProPay also uses application IP whitelisting to authenticate requests for a business. A developed solution’s IPs must be whitelisted in order to submit
transactions. If the solution does not have static IP addresses, an alternate secondary form of authentication can be requested through the ProPay
relationship manager.

Usage of X509 Certificates


Specific ProPay API methods require the usage of a ProPay-issued X509 certificate as an added measure of security. This certificate is an added
layer of security and protection from loss in the event of credential theft. In this case ProPay, as a Certificate Authority, will issue an x509 certificate
tied to the client’s credentials. The x509 certificate is used as an additional credential submitted in the request headers, and not for the creation of
an SSL connection. API method requests that require this additional credential should still be auto-negotiated over port 443.

In order to submit the x509 certificate with the ProPay API method requires the following:

1. Install the issued x509 certificate onto the client server.


2. Export the x509 certificate using the supplied password and default Machine Key Set into memory.
3. Base64 encode the exported bytes of the x509 certificate.
4. Add ‘X509Certificate’ as an HTTP header and set its value to the result of step 3.

The cases which require use of an x509 certificate for communication are listed in this document under the individual method description.

IP Whitelisting
The ProPay API uses application source IP whitelisting to prevent requests from unauthorized systems. IP whitelist requests are done by client
credential. If a developed solution supports multiple clients, the related system IPs will need to be provided for each client certStr supported.
If a request is submitted from an IP address that is not listed as an allowed IP address for the supplied certStr, the API will reject the request and
respond with the status code: 59 - user not authenticated.

Clients must provide ProPay a list or range of IPs that should be added to the whitelist for the client’s certStr. Failure to provide ProPay with this list or
failure to notify ProPay of changes will result in API request failures.

XML Request Structure:


The XML interface for consuming the ProPay API uses the following model
<?xml version='1.0'?>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 9
<!DOCTYPE Request.dtd>
<XMLRequest>
<certStr></certStr>
<termid></termid>
<class>partner</class>
<XMLTrans>
<transType></transType>
</XMLTrans>
</XMLRequest>

Authorization Elements – Required for All Methods


Request Element Notes
certStr Affiliation Credential for API Access or Disbursement Account Credential for Funds Disbursements
termid ProPay Credential, omit unless directed
class Always set value to : partner

XMLTrans Object
The remaining <XMLTrans> object is used to define the specific “ask” for each action performed by the ProPay API. <XMLTrans> contains the tag
<transType> which defines the action to be performed. There is no nesting of child elements. Not all elements are required nor will all elements be
returned.

Best Practices
- When transitioning from the ProPay testing environments to the ProPay live servers, new API authentication credentials and service endpoints will
be provided. These should be defined and referenced throughout the developed software solution as to only have to update a single reference.
- Payment processing over the internet can take up to 1 minute before an API response is received. Shorter system timeout values should not be
configured.
- When building a solution, it is helpful to provide a basic means by which the business can locate the actual API request and response detail (with
sensitive data redacted). Having this data available enables faster troubleshooting and issue resolution with the ProPay Technical Support team.
Any such logs should include a UTC timestamp to a resolution no less than hh:mm:ss.
- Credit card transactions can take several seconds to process, due to the various parties involved in completing a transaction request. While
ProPay has duplicate transaction prevention logic, it is recommended that developers take measures to discourage the clicking of a browser
back button, or clicking ‘submit’ a second time to prevent duplicate transaction submission. ProPay also recommends that developers generate
a visual control that indicates the transaction is processing during the waiting period.
- Developers should use a generic method to iterate through child nodes in an XML document with XML responses. Developers can also de-
serialize by using NodeName-Value pairs in some sort of a data structure such as a dictionary or array. De-serializers need to be generic enough
that they can handle additional elements, as added through version updates and enhancements. De-serializers should also be generic enough
to account for missing elements from responses as null, as not all values are returned and they are only returned if they exist. Not all elements are
returned by the API for each method as indicated by each table of elements. An element is only returned if not null.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 10
4.0 Account Management Methods
4.1 Create ProPay Account Transaction Type 01
This section describes data required to create a ProPay merchant account.
- Upon successful creation, an account number and temporary password will be returned. If the new account holder logs into ProPay’s website,
he or she will be afforded the opportunity to change his or her password.
- Items flagged a “Best Practice” are highly recommended when boarding a new merchant. Not providing these fields may increase the
likelihood of holds being placed on production accounts.

Identity Verification
In order to comply with Industry regulations and legal requirements, ProPay must validate the identity of each merchant account created. ProPay
uses a major third-party credit reporting services to perform identity validation on the individual or business enrolling for each account. Validation will
be performed based on either:

Personal Information
This validation is performed using the supplied required merchant/distributor personal information. Exact requirements differ by market.
- In the U.S. a social security number is required and used to validate the applicant’s identity.
- In Canada, no specific government-issued document is required
- In Australia and New Zealand, the Medical Insurance Number is required

Business Information
ProPay can validate a business using its Tax ID number along with other required fields. Note: Business validation is not possible for card-only
accounts or, currently, outside of the U.S. Approval to perform business validation is required.
- Business Accounts are ineligible for ProPay MasterCards
- Business Accounts cannot utilize ProPay API method 4.2.2. Reset ProPay Account Password. Passwords are reset online by supplying the EIN
instead of SSN, or by contacting ProPay Customer Service (NOTE: For UK merchants, do not pass EIN)

Threat Metrix Signup Validation:


ProPay uses a best in class fraud prevention tool provided by ThreatMetrix. Some of our API partners may also be required to implement this solution
into their own signup flows. Threat Metrix requires that:
- The partner includes an ‘iFramed’ widget on their website. Into the URL of this iFrame, the partner passes a unique ID of their own creation.
- The partner then includes extra data in their signup API request. (Including the same unique identifier passed into the iFrame)

International signups:
Designating a signup as international is accomplished by specifying a <country> tag other than USA. If <country> is not passed, USA is assumed.
Most international signups are performed for a ProPay Card-Only account that cannot process credit cards. Merchant accounts are currently
available only in the US, Canada, Australia and New Zealand. Many of the formatting rules that exist for domestic signups are relaxed for
international accounts and many of the required tags are optional for international signups. Please note that state and country are still limited to 3
characters for international signups.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 11
Even though addresses outside of the United States contain values other than ‘zip code’ or ‘state’, ProPay uses these tags to define their analogous
counterparts. Please use <zip> to define any type of postal routing code, and use <state> to define a province, county, shire, prefecture, etc.
In the United States, state values must conform to standardized abbreviations, and zip codes must be of either 5 or 9 digit lengths without a dash.
These restrictions are not true for international signups where <state> can be longer than two characters. Formatting characters such as spaces and
dashes should be omitted, unless these are considered part of the actual state or zip in that country.

Similarly, in the United States, phone numbers must be standardized as ten digits while outside of the US, lengths may vary. Please omit all formatting
characters.

Paying for a ProPay Account


If the client program is configured in such a way that the business entity will pay for all ProPay accounts enrolled under its affiliation, or that the
individual users will pay ProPay directly when activating their account, no payment information is required to be submitted at the time of enrollment.

ProPay accounts must be paid for before funds can be accessed or payment transactions may be performed. If the client program involves a
direct payment for the account by the user at the time of enrollment, the optional payment information elements may be passed in the request.
International Card-Only accounts may receive commission disbursements prior to ID verification, but the user will not be able to access funds until
activation is complete.

Special notes on the use of externalId tag:


Generally the ‘ExternalId’ tag is used to store a value in ProPay that identifies the user in the client solution system. Omitting the ExternalId may
prevent users from restoring a lost password, and prevents an affiliate from performing a request for account details from ProPay using that value.

Personal Data – Required


XML Element Type Max Required Notes
firstName String 20 Required Merchant/Individual first names. Alphanumeric.
mInitial String 2 Optional Merchant/Individual middle initial. Alphanumeric.
lastName String 25 Required Merchant/Individual last name. Alphanumeric.
Merchant/Individual Date of birth. Must be in ‘mm-dd-yyyy’ format. *Individual must be 18+ to
dob String Required obtain an account. A birthday of 01-01-1971 will return a status 66 (Failed KYC) in the test
environment.
Merchant/Individual social security number. Must be 9 characters without dashes. *Required
ssn String 9 Optional*
for USA when using personal validation. If business validated, do not pass!
Merchant/Individual email address. Must be unique in ProPay system. *ProPay’s system will
sourceEmail String 55 Required send automated emails to the email address on file unless NotificationEmail is provided.
*Truncated, if value provided is greater than max value.
Merchant/Individual day phone number. *For USA, CAN, NZL and AUS value must be 10
dayPhone String Required
characters
Merchant/Individual evening phone number. *For USA, CAN, NZL and AUS value must be 10
evenPhone String Required
characters
Communication Email Address. *ProPay’s system will send automated emails to the email
NotificationEmail String 55 Optional
address on file rather than the Source Email.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 12
Required to specify the currency in which funds should be held, if other than USD. An affiliation
currencyCode String 3 Optional* must be granted permission to create accounts in currencies other than USD. ISO 4217
standard 3 character currency code.
One of the previously assigned merchant tiers. *If not provided, will default to cheapest
tier String Optional*
available tier.
This is a partner’s own unique identifier. Typically used as the distributor or consultant ID. For UK
externalId String 20 Optional
Merchant, use to capture the Partner Bank CIN.
Numeric value which will give a user access to ProPay’s IVR system. Can also be used to reset
phonePin String 4 Optional
password.
ProPay account username. Must be unique in ProPay system. *Username defaults to
userId String 55 Optional
<sourceEmail> if userId is not provided.
IpSignup String 16 Optional Signup IP Address
TRUE / When marked true, the submerchant is attesting that they are a US citizen. (Value passed
USCitizen Boolean Optional
FALSE should be either true, false, or null)
When marked true, the submerchant is attesting that there are no other individuals that have
25% ownership or a controlling interest in the entity that have not already been disclosed
TRUE /
BOAttestation Boolean Optional elsewhere in the application process. The partner is also attesting that a pop up or other
FALSE
message has been displayed to the submerchant to explain these requirements. (Value
Passed should be Either true, false or null)
The IP address of the device that was used to agree to ProPay's Terms and
TermsAcceptanceIP String 15 Optional
Conditions.(Maximum value should be accepted 15 characters)
TermsAcceptanceTimeSta Date Date.Tim
Optional The timestamp associated with the agreement to ProPay's Terms and Conditions
mp Time e.Now
This refers to the version of our terms and conditions that was provided to the submerchant for
review and to which they are agreeing.(Valid numeric values are 1 - 5

1 - merchant US
TermsVersion Numeric 1 Optional
2 - payment US
3 - merchant CA
4 - merchant UK
5 - merchant AU)
This represents the country in which the merchant was born. ISO 3166 3 Digit alpha code
nationality String 3 Optional applies. For Example: GBR, USA, etc.
*Mandatory for UK merchants
The culture code is used by the system to send notifications in a particular language. The
culture code is required for Canada accounts. Acceptable codes include:
 en-AU - English - Australia
 en-CA - English - Canada
 en-NZ - English - New Zealand
CultureCode String 11 Optional  en-US - English - United States
 es-MX - Spanish - Mexico
 es-US - Spanish - United States
 fr-CA - French - Canada
 fr-FR - French - France
 ja-JP - Japanese - Japan
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 13
 ko-KR - Korean - Korea
 pt-PT - Portuguese - Portugal
 ru-RU - Russian - Russia
 zh-CHS - Chinese (Simplified)
 zh-Hans - Chinese

Personal Address - Required


XML Element Type Max Required Notes
addr
String 100 Required Merchant/Individual physical street Address. PO Boxes are not allowed. Alphanumeric. *Mandatory for UK merchants

aptNum String 100 Optional Merchant/Individual physical Address. Use for 2nd Address Lin.
Merchant/Individual physical Address. Alphanumeric. *For UK merchants, use to provide the Building / Home Name.
addr3 String 100 Optional
For Example: Primrose Cottage
city String 30 Required Merchant/Individual physical Address city. *Mandatory for UK merchants
Merchant/Individual physical Address state. *Standard 2 character abbreviation for state, province, prefecture, etc.
state String 3 Required
*Does not apply to UK merchants
Merchant/Individual physical Address zip/postal code. For the USA: 5 or 9 characters without a dash. For CAN: 6
zip characters postal code with a space “XXX XXX” For AUS and NZ 4 character code. For the UK: 6 - 8 alphanumeric
String Required
character postal code with a space. The first part is 2 - 4 digits. The 2nd half is 3 digits “YYYY YYY”.
*Mandatory for UK merchants
country ISO 3166 standard 3 character country codes. Required if creating an account in a country other than USA.
String 3 Optional
*Country must be an approved country to create a ProPay account. US Territories should use 'USA'.
String Optional This is a unique address identification number assigned to each address returned by Equifax.
addressId 20
*The value for this tag is provided in the Address Lookup API response
String Optional This is the building / home number for the street address. For Example: 501a Halfway Street. Value for this tag would
bldgNumber 50 be “501a”.
*Mandatory for UK merchants
String Optional The District associated with the Merchant's address.
district 50
*For use by UK merchants
String Optional The post town that is associated with the Merchant's address.
postTown 100
*Mandatory for UK merchants
String Optional The county associated with the Merchant's address.
county 50
*Mandatory for UK merchants
String Optional The length of time the merchant has lived in their current address, represented in whole months (i.e. 5, 10, etc.).
timeAtAddress 3
*Mandatory for UK merchants

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 14
Personal Previous Address – Optional
XML Element Type Max Required Notes
address3 String 100 Optional Merchant/Individual physical Address. Alphanumeric.
**In the UK, use to provide the Building / Home Name**
timeAtAddress Integer 3 Optional The length of time the individual has lived in their current address, represented in whole months (i.e. 5, 10, etc.).
**Mandatory for the UK**
String This is the building / home number for the previous street address. For Example: 501a Halfway Street. Value for this
prevBldNumber 50 Optional tag would be 501a.
*Required for UK merchants if time in current address less than 24 months
String Optional Merchant/Individual physical previous street Address without the building / house number. For Example: 501a
prevAddr 100 Halfway Street. Value for this tag would be Halfway Street. PO Boxes are not allowed. Alphanumeric.
*Required for UK merchants if time in current address less than 24 months
String Optional Merchant/Individual previous physical Address. Use for the 2nd Address Line.
prevAptNum 100
*Required for UK merchants if time in current address less than 24 months
String Optional Merchant/Individual previous physical Address. Alphanumeric.
prevAddr3 100
*For UK merchants, use to provide the Building / Home Name. For Example: Primrose Cottage
String Optional Merchant/Individual previous physical Address city.
prevCity 30
*Required for UK merchants if time in current address less than 24 months
String Optional The county associated with the Merchant's previous address.
prevCounty 50
*Required for UK merchants if time in current address less than 24 months
String Optional The District associated with the Merchant's previous address.
prevDistrict 50
*For use by UK merchants
String Optional The post town that is associated with the Merchant's previous address.
prevPostTown 100
*Required for UK merchants if time in current address less than 24 months
String Optional Merchant/Individual previous physical Address state. Standard 2 character abbreviation for state, province,
prevState 3 prefecture, etc.
*Does not apply to UK merchants
String Optional Merchant/Individual previous physical Address zip/postal code. For the USA: 5 or 9 characters without a dash. For
CAN: 6 character postal code with a space “XXX XXX” For AUS and NZ 4 character code. For the UK: 6 - 8
prevZip 9
alphanumeric character postal code with a space. The first part is 2 - 4 digits. The 2nd half is 3 digits “YYYY YYY”.
*Required for UK merchants if time in current address less than 24 months
Optional ISO 3166 standard 3 character country codes. Required if creating an account in a country other than the USA.
prevCountry String 3 *Country must be an approved country to create a ProPay account. US Territories should use 'USA'.
*Required for UK merchants if time in current address less than 24 months
prevAddressId String 20 Optional This is a unique address identification number assigned to each address returned by Equifax.
**The value for this tag is provided in the Address Lookup API response**

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 15
Business Data – Required for business validated accounts. May also be required for personal validated accounts by ProPay Risk Team
XML Element Type Max Required Notes
BusinessLegalName String 255 Required The legal name of the business as registered.
This field can be used to provide DBA information on an account. ProPay accounts can be
DoingBusinessAs String 255 Required configured to display DBA on cc statements. (Note most banks’ CC statements allow for 29
characters so 255 max length is not advised.)
Employer Identification Number can be added to a ProPay account. Must be 9 characters without
EIN String Required
dashes. *For UK, do not pass
String 4 Optional Merchant Category Code
MCCCode
WebsiteURL String 255 Required The Business’ website URL
BusinessDesc String 255 Required The Business’ description
The monthly volume of bank card transactions; Value representing the number of pennies in USD,
MonthlyBankCardVolume Int(64) Required
or the number of [currency] without decimals. Defaults to null if not sent
The average amount of an individual transaction; Value representing the number of pennies in
AverageTicket Int(64) Required
USD, or the number of [currency] without decimals. Defaults to null if not sent.
The highest transaction amount; Value representing the number of pennies in USD, or the number
HighestTicket Int(64) Required
of [currency] without decimals. Defaults to null if not sent.
BusinessAddress String 100 Required Business Physical Address
Business Physical Address. *For UK merchants, use to provide the Flat or Suite #. For Example: Flat B
BusinessAddress2 String 100 Optional
| Suite 103
BusinessCity String 30 Required Business Physical Address City
BusinessCountry String Required Must be ISO standard 3 character country code.
If domestic signup this value MUST be one of the standard 2 character abbreviations. Rule also
BusinessState String 3 Required applies for Canadian signups. (Must be standard province abbreviation.) *Does not apply to UK
merchants
For USA: 5 or 9 characters without a dash. For CAN: 6 characters postal code with a space “XXX
BusinessZip String Required XXX”. For AUS and NZ 4 character code. For the UK: 6 - 8 alphanumeric character postal code
with a space. The first part is 2 - 4 digits. The 2nd half is 3 digits “YYYY YYY”.
Busiiness Type is mandatory for Uk merchants. (UK mandatory values include D, P, Q, R, S)
Valid values are:
BusinessType Valid Value

C - Corp. (Non-publicly traded) D


Limited Company
BusinessType Sting 1 Optional
C - Corp. (Publicly traded) E

501c3 Non-Profit Organization F

Municipality or Government Organization G

LLC (Non-publicly traded) M

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 16
LLC (Publicly traded) N

General Partnership Q

Publicly Traded Partnership R


Limited Liability Partnership

Sole Proprietorship S
Sole Trader

American Express Reserved Indicator X

Limited Partnership P

BusinessRegistrationNumb Company registration number.


String 50 Optional
er *Mandatory for merchants outside of the United States whose Business Type is Limited Company
Optional Business day phone number. *For USA, CAN, NZ and AUS values must be 10 characters. For the UK,
BusinessPhoneNumber String 15 the value must be 11 characters.
*Mandatory for UK merchants
Optional Business Physical Address.
BusinessAddress3 String 100
*For UK merchants, use to provide the Building Name
Optional The District associated with the business address.
BusinessDistrict String 50
*For use by UK merchants
Optional The post town that is associated with the business address.
BusinessPostTown String 100
*Mandatory for UK merchants
Optional The county associated with the business address.
BusinessCounty String 50
*Mandatory for UK merchants
Optional The length of time the business has been at the current address represented in whole months (i.e.
timeAtBusinessAddress String 3 5, 10, etc.).
*Required for UK merchants if business has been at current address less than 24 months
String Optional Legal Address is the registered office address which can differ form where the business is actually
LegalAddress 100
run. PO Boxes are not allowed. Alphanumeric. **Reqruied for the UK**
String Optional Legal physical address. PO Boxes are not allowed. Alphanumeric. **For the UK, use to provide the
LegalAddress2 100
Flat or Suite #. Ex. Flat B | Suite 103**
String Optional Legal physical address. PO Boxes are not allowed. Alphanumeric. **For the UK, use to provide the
LegalAddress3 100
Building Name
String Optional
LegalAddressCity 30 Legal Physical Address: City. **Reqruired for the UK**

String Optional
LegalAddressCounty 50 Legal Physical Address: County. **For use in the UK**

String Optional
LegalAddressDistrict 50 Legal Physical Address: District. **For use in the UK**

String Optional
LegalAddressPostTown 100 Legal Physical Address: Post Town. **Requried for the UK**
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 17
String Optional
LegalAddressState 3 Legal Physical Address: State. **Does not apply to the UK**

String Optional Legal Physical Address: Zip Code. For USA: 5 or 9 characters without dash. For CAN: 6 character
postal code with a space “XXX XXX” For AUS and NZ 4 character code. For the UK: Zip Code is 6
LegalAddressZip 9
- 8 characters in length with the first character being Alphabetic: A9 9AA (6 character), A99 9AA
(7 character), AA9A 9AA (8 character). **Required for the UK**
String Optional
LegalAddressCountry 3 Must be ISO standard 3 character country code. **Requried for the UK**

Business Previous Address


XML Element Type Max Required Notes
Business physical address. PO Boxes are not allowed. Alphanumeric.
BusinessPreviousAddress String 100 Optional
*Required for UK merchants if Merchant has been at current business address less than 24 months
BusinessPreviousAddress2 String 100 Optional Business physical address. PO Boxes are not allowed. Alphanumeric
Optional Business physical address. PO Boxes are not allowed. Alphanumeric.
BusinessPreviousAddress3 String 100
*For UK merchants, use to provide the Building Name
String Optional Business Physical Address: City.
BusinessPreviousCity 30
*Required for UK merchants if Merchant has been at current business address less than 24 months
String Optional The county associated with the business previous address.
BusinessPreviousCounty 50
*Required for UK merchants if Merchant has been at current business address less than 24 months
BusinessPreviousDisctrict String 50 Optional The District associated with the business previous address. *For use by UK merchants
Optional The post town that is associated with the business previous address.
BusinessPreviousPostTown String 100
*Required for UK merchants if Merchant has been at current business address less than 24 months
Optional Business Physical Address: State. Standard 2 character abbreviation for state, province,
BusinessPreviousState String 3 prefecture, etc.
*Does not apply to UK merchants
Optional Business physical address zip/postal code. For the USA: 5 or 9 characters without a dash. For CAN:
6 character postal code with a space “XXX XXX” For AUS and NZ 4 character code. For the UK: 6 -
BusinessPrevousZip String 9 8 alphanumeric character postal code with a space. The first part is 2 - 4 digits. The 2nd half is 3
digits “YYYY YYY”.
*Required for UK merchants if Merchant has been at current business address less than 24 months
Optional Must be ISO standard 3 character country code.
BusinessPreviousCountry String 3
*Required for UK merchants if Merchant has been at current business address less than 24 months

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 18
International Signup Data – Frequently Required for partners who sign up international merchants
XML Element Type Max Required Notes
documentType String 1 Optional* Values 1( Driver’s license), 2(Passport), 3( Australia Medicare)
intlID String Optional* Corresponds to the document number provided by DocumentType.
Corresponds to the Expiry date of the document provided by DocumentType. Should be a valid
documentExpDate String Optional*
date.
documentIssuingState String Optional* Required if the DocumentType is 1 (Driver’s license). The driver’s license issuing state.
Required if the DocumentType is 1 (Driver’s license) and Country is NZL. This is driver’s license
driversLicenseVersion String Optional*
version number.
Required if the DocumentType is 3 (Australia Medicare) and Country is AUS. The data should be
medicareReferenceNumber String Optional*
parsed to Number.
medicareCardColor String Optional* Required if the DocumentType is 3 (Australia Medicare) and Country is AUS.

Account Payment (Credit Card) Information – A payment method is required if account fee not paid for by partner
XML Element Type Max Required Notes
NameOnCard String Required Card holder’s name as it appears on card.
Must pass Luhn check. Used to pay for an account if ProPay has not set account type up as free
ccNum String 16 Required
to users.
Used to pay for an account if ProPay has not set account type up as free to users. Submitted as
expDate String 4 Required
mmyy.

Account Payment (ACH) Information – A payment method is required if account fee not paid for by partner
XML Element Type Max Required Notes
PaymentBankAccountNumber String Required Used to pay for an account via ACH and monthly renewal. Financial institution account number.
Used to pay for an account via ACH and monthly renewal. Financial institution routing number.
PaymentBankRoutingNumber String Required
Must be a valid ACH routing number.

Used to pay for an account via ACH and monthly renewal. Valid values are: Checking, Savings,
PaymentBankAccountType String Required
and GeneralLedger

Account Payment (ProtectPay) Information – A payment method is required if account fee not paid for by partner
XML Element Type Max Required Notes
paymentMethodId String Required Used to pay for an account via a ProtectPay Payment Method ID. Valid value is a GUID.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 19
Mailing Address – Optional. Used if mailed correspondence from Propay should be sent to separate address
XML Element Type Max Required Notes
mailAddr String 100 Optional Merchant/Individual mailing address if different than physical address.
mailApt String Optional Merchant/Individual mailing address if different than physical address.
Merchant/Individual mailing address if different than physical address. *For UK merchants, use to provide the Building /
mailAddr3 String 100 Optional
Home Name. For Example: Primrose Cottage
mailCity String 30 Optional Merchant/Individual mailing city if different than physical address.
Merchant/Individual mailing state if different than physical address. *Standard 2 character abbreviation for state,
mailState String 3 Optional
province, prefecture, etc. *Does not apply to UK merchants

mailCountry String 3 Optional ISO 3166 standard 3 character country codes. Required if creating an account in a country other than USA.

Merchant/Individual mailing zip/postal code if different than physical address. For the USA: 5 or 9 characters without a
mailZip String Optional dash. For CAN: 6 characters postal code with a space “XXX XXX” For AUS and NZ 4 character code. For the UK: 6 - 8
alphanumeric character postal code with a space. The first part is 2 - 4 digits. The 2nd half is 3 digits “YYYY YYY”.
String Optional The District associated with the mailing address.
mailDistrict 50
*For use by UK merchants
String Optional The Post town associated with the mailing address.
mailPostTown 100
*For use by UK merchants
String Optional The county associated with the mailing address.
mailCounty 50
*For use by UK merchants

Primary Bank Account Information – Optional. Used to add a bank account to which funds can be settled
XML Element Type Max Required Notes
AccountCountryCode String 3 Required ISO 3166 standard 3-character country code.
accountName String 32 Required Merchant/Individual Name.
AccountNumber String 25 Required Financial institution account number.
AccountOwnershipType String 15 Required Valid values are: Personal and Business
Valid values are:
 C – Checking
accountType String 1 Required
 S – Savings
 G – General Ledger
BankName String 50 Required Name of financial institution.
Financial institution routing number. Must be a valid ACH routing number. *For UK merchants, use for
RoutingNumber String 9 Required
the 6 digit bank sort code (xx-xx-xx or xxxxxx)

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 20
Secondary Bank Account Information – Optional. Used to add an account from which fees are pulled. Only works when Primary bank added
XML Element Type Max Required Notes
Required if adding secondary bank account. Must be ISO standard 3 character code. This will
SecondaryAccountCountryCode String 3 Required
become the account to which proceeds of transactions are sent in split sweep functionality.
Required if adding secondary bank account info as part of the signup. This will become the
SecondaryAccountName String 32 Required
account to which proceeds of transactions are sent in split sweep functionality.
Required if adding secondary bank account info as part of the signup. This will become the
SecondaryAccountNumber String 25 Required
account to which proceeds of transactions are sent in split sweep functionality.
Required if adding secondary account as part of the signup. Valid values are ‘Personal’ or
SecondaryAccountOwnershipType String 15 Required ‘Business’ If accountType is G, then this value is always overwritten as ‘Business’ This will become
the account to which proceeds of transactions are sent in split sweep functionality.
Required if adding secondary bank account info as part of the signup. Valid values are:
 C – Checking
SecondaryAccountType String 1 Required
 S – Savings
 G – General Ledger
Required if adding secondary bank account info as part of the signup. This will become the
SecondaryBankName String 50 Required
account to which proceeds of transactions are sent in split sweep functionality.
Required if adding secondary bank account info as part of the signup, must be a valid Fedwire
SecondaryRoutingNumber String 9 Required ACH participant routing number. This will become the account to which proceeds of
transactions are sent in split sweep functionality.

Bank Account Ownership Information – Optional. Transfers out of ProPay account won’t work without this information when bank outside US.
XML Element Type Max Required Notes
BankaccountOwnerData
.PrimaryBankAccountOwnerData String 25 Required Bank account owner’s first name
.FirstName
BankaccountOwnerData
.PrimaryBankAccountOwnerData String 25 Required Bank account owner’s last name
.LastName
BankaccountOwnerData
.PrimaryBankAccountOwnerData String 25 Required Bank account owner’s address
.Address1
BankaccountOwnerData
.PrimaryBankAccountOwnerData String 25 Required Bank account owner’s address
.Address2
BankaccountOwnerData
.PrimaryBankAccountOwnerData String 25 Required Bank account owner’s address
.City
BankaccountOwnerData
.PrimaryBankAccountOwnerData String 25 Required Bank account owner’s address
.StateProvince
BankaccountOwnerData
.PrimaryBankAccountOwnerData String 25 Required Bank account owner’s address
.PostalCode

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 21
Gross Billing Information – Optional. Used with prior approval to automatically bill fees to separate account
XML Element Type Max Required Notes
GrossSettleAddress String 25 Optional Gross Settle credit card billing address.
GrossSettleCity String 25 Optional Gross Settle credit card billing address.
GrossSettleCountry String 3 Optional Gross Settle credit card billing address. Must be 3 character ISO standard country code.
Gross Settle credit card billing address. Must be 2 character standard US State or Canadian
GrossSettleState String 2 Optional
province code.
Gross Settle credit card billing address. For USA: 5 or 9 characters without dash. For CAN: 6
GrossSettleZipCode String 9 Optional* characters postal code with a space “XXX XXX” Do not use if not USA or CAN. *Required if
payment method is a credit card.
GrossSettleAccountCountryCode String 3 Optional* ISO standard 3 character country code. *Required if payment method is a bank account.
GrossSettleAccountHolderName String Optional* Bank account-holder’s name. *Required if payment method is a bank account.
*Required if Gross Settle billing info is bank account. Valid values are:
 C – Checking
GrossSettleAccountType String 10 Optional*
 S – Savings
 G – General Ledger
GrossSettleAccountNumber String 25 Optional* Bank account number. *Required if payment method is a bank account.
Routing number of valid Fedwire ACH participant. *Required if payment method is a bank
GrossSettleRoutingNumber String 9 Optional*
account.
GrossSettleCreditCardNumber String 16 Optional* Valid credit card number. *Required if payment method is a credit card.
GrossSettleCreditCardExpDate String 4 Optional* Credit card expiration date. *Required if payment method is a credit card.
GrossSettleNameOnCard String 25 Optional* Name on credit card. *Required if payment method is a credit card.

Devices – Optional. Used for Portico device ordering.


XML Element Type Max Required Notes
Name String 20 Required Unique name of the device being ordered.
Quantity String 2 Required Number of devices ordered. Defaults to 0.
Attributes Optional Parent tag for specifying special attributes for an individual device
Attributes.Item Optional Specify an attribute item
Name of the attribute item. E.g. “Heartland.AMD.OfficeKey” which is specific to boarding
Attributes.Item[“Name”] String 20 Required Portico devices for AMD through Heartland, or “Canada.CP.Language” which is specific to
Canadian submerchants and passed to EzPOS for device ordering.
Value of the attribute item. In the above example, the value of “Heartland.AMD.OfficeKey”,
or the value of “Canada.CP.Language” being either “en” or “fr”.
Attributes.Item[“Value”] String 20 Required <Attributes>
<Item Name=”Canada.CP.Language” Value=”en”/>
</Attributes>

Time Zone – Required for partners ordering Heartland Portico devices and Canada Portico devices.
XML Element Type Max Required Notes
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 22
Must be one of the following TimeZone abbreviations **Only Canadian time zones are valid
for Canada devices.**
UTC Universal Time Coordinated

PT Pacific Time (US) (UTC-8/7DST) **CA time zone

MST Arizona (Mountain Standard Time[US]) (UTC-7)

MT Mountain Time (US) (UTC-7/6DST) **CA time zone

CT Central Time (US) (UTC-6/5DST) **CA time zone

ET Eastern Time (US) (UTC-5/4DST) **CA time zone

HST Hawaii Standard Time (UTC-10)

AT Atlantic Time (UTC-4/3DST) **CA time zone

AST Puerto Rico (Atlantic Standard Time)(UTC-4)

AKST Alaska (Alaskan Standard Time) (UTC-9)

ECT European Central Time (UTC+1)


TimeZone String 5 Optional
EET Eastern European Time (UTC+2)

EAT Eastern African Time (UTC+3)

MET Middle East Time (UTC+3.30)

NET Near East Time (UTC+4)

PLT Pakistan Lahore Time (UTC+5)

IST India Standard Time (UTC+5.30)

BST Bangladesh Standard Time (UTC+6)

VST Vietnam Standard Time (UTC+7)

CTT China Taiwan Time (UTC+8)

JST Japan Standard time (UTC+9)

ACT Australia Central Time (UTC+9.30)

AET Australia Eastern Time (UTC+10)

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 23
SST Solomon Standard Time (UTC+11)

NZST New Zealand Standard Time (UTC+12)

MIT Midway Islands Time (UTC+11)

NST Canada Newfoundland Time (UTC+3.30) **CA time zone

AGT Argentina Standard Time (UTC+3.00)

CAT Central African Time (UTC+2)

Merchant Beneficiary Owner Information – Required for all merchants validating KYC based off of personal data
XML Element Type Max Required Notes
OwnerCount String 1 Required Number of Beneficiary Owners, should be maximum 5.
Title String 55 Required This field contains the Title.
FirstName String 20 Required Owner First Name.
LastName String 25 Required Owner Last Name.
Email String 55 Required Owner Email ID.
DateOfBirth String 10 Required Date of Birth of the Owner. Must be in ‘mm-dd-yyyy’ format.
Percentage String 3 Required Percentage stake in company by owner. Must be whole number between 0 and 100.
Required Street address where Owner resides. *Required if passing Merchant Beneficiary Owner
Address String 100
Information.
Optional Street address where Owner resides. *For UK merchants, use for the Apt or Flat number. For
Address2 String 100
Example: Apt 102 | Flat A
SSN String 9 Required Social Security Number of the Owner. Should be 9 digits. *Does not apply to UK merchants
City String 55 Required The name of the city where the Owner resides.
Required The postal code where the Owner resides. For the UK: 6 - 8 alphanumeric character postal
Zip String 10
code with a space. The first part is 2 - 4 digits. The 2nd half is 3 digits “YYYY YYY”.
Required The region code that corresponds to the state where the Owner resides. *Does not apply to
State String 3
UK merchants
Country String 3 Required The three-character, alpha country code for where the Owner resides.
String Optional This is the building / home number for the street address. For Example: 501a Halfway Street.
bldgNumber 50 Value for this tag would be 501a.
*Mandatory for UK merchants
String Optional The District associated with the address.
district 50
*For use by UK merchants**
String Optional The Post town associated with the address.
postTown 100
*Mandatory for UK merchants**

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 24
String Optional The county associated with the address.
county 50
*Mandatory for UK merchants**
String Optional This represents the country in which the merchant was born. ISO 3166 3 Digit alpha code
nationality 3 applies. For Example: GBR, USA, etc.
*Mandatory for UK merchants**
addressId String 20 Optional This is a unique address identification number assigned to each address returned by Equifax.
**The value for this tag is provided in the Address Lookup API response**
address3 String 100 Optional Merchant/Individual physical Address. Alphanumeric.
**In the UK, use to provide the Building / Home Name**
timeAtAddress Integer 3 Optional The length of time the individual has lived in their current address, represented in whole
months (i.e. 5, 10, etc.).
**Mandatory for the UK**
String This is the building / home number for the previous street address. For Example: 501a Halfway
prevBldNumber 50 Optional Street. Value for this tag would be 501a.
*Required for UK merchants if time in current address less than 24 months
String Optional Merchant/Individual physical previous street Address without the building / house number.
For Example: 501a Halfway Street. Value for this tag would be Halfway Street. PO Boxes are
prevAddr 100
not allowed. Alphanumeric.
*Required for UK merchants if time in current address less than 24 months
String Optional Merchant/Individual previous physical Address. Use for the 2nd Address Line.
prevAptNum 100
*Required for UK merchants if time in current address less than 24 months
String Optional Merchant/Individual previous physical Address. Alphanumeric.
prevAddr3 100 *For UK merchants, use to provide the Building / Home Name. For Example: Primrose
Cottage
String Optional Merchant/Individual previous physical Address city.
prevCity 30
*Required for UK merchants if time in current address less than 24 months
String Optional The county associated with the Merchant's previous address.
prevCounty 50
*Required for UK merchants if time in current address less than 24 months
String Optional The District associated with the Merchant's previous address.
prevDistrict 50
*For use by UK merchants
String Optional The post town that is associated with the Merchant's previous address.
prevPostTown 100
*Required for UK merchants if time in current address less than 24 months
String Optional Merchant/Individual previous physical Address state. Standard 2 character abbreviation for
prevState 3 state, province, prefecture, etc.
*Does not apply to UK merchants
String Optional Merchant/Individual previous physical Address zip/postal code. For the USA: 5 or 9
characters without a dash. For CAN: 6 character postal code with a space “XXX XXX” For
prevZip 9 AUS and NZ 4 character code. For the UK: 6 - 8 alphanumeric character postal code with a
space. The first part is 2 - 4 digits. The 2nd half is 3 digits “YYYY YYY”.
*Required for UK merchants if time in current address less than 24 months
Optional ISO 3166 standard 3 character country codes. Required if creating an account in a country
other than the USA.
prevCountry String 3 *Country must be an approved country to create a ProPay account. US Territories should use
'USA'.
*Required for UK merchants if time in current address less than 24 months

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 25
prevAddressId String 20 Optional This is a unique address identification number assigned to each address returned by Equifax.
**The value for this tag is provided in the Address Lookup API response**

Significant Owner Information – May be required for some partners based on ProPay Risk decision
XML Element Type Max Required Notes
AuthorizedSignerFirstName String 20 Required Seller’s Authorized Signer First Name. By default Merchant’s First name is saved*.
AuthorizedSignerLastName String 25 Required Seller’s Authorized Signer Last Name. By default Merchant’s Last name is saved*.
This field contains the Seller’s Authorized Signer Title*. Commonly used Authorized Signer Titles
AuthorizedSignerTitle String 20
Optional include:
For US: Seller’s Significant Owner First Name.
SignificantOwnerFirstName String 20 Required
For CAN: Seller’s Significant Owner or Authorized Signer First Name.
For US: Seller’s Significant Owner Last Name.
SignificantOwnerLastName String 20 Required
For CAN: Seller’s Significant Owner or Authorized Signer Last Name.
SignificantOwnerSSN String 9 Required Social Security Number of the Seller’s Significant Owner. Should be 9 digits.
SignificantOwnerDateOfBirth Date Required Date of Birth of the Seller’s Significant Owner. Must be in ‘mm-dd-yyyy’ format.
SignificantOwnerStreetAddress String 40 Required Street address where Seller’s Significant Owner resides.
SignificantOwnerCityName String 40 Required The name of the city where the Seller’s Significant Owner resides.
SignificantOwnerCityName String 40 Required The name of the city where the Seller’s Significant Owner resides.
SignificantOwnerRegionCode String 6 Required The region code that corresponds to the state where the Seller’s Significant Owner resides.
SignificantOwnerPostalCode String 9 Required The postal code for where the Seller's Significant Owner resides.
SignificantOwnerCountryCode String 2 Required The two-character, alpha country code for where the Seller's Significant Owner resides.
SignificantOwnerTitle String 50 Required This field contains the Seller’s Significant Signer Title.
SignificantOwnerPercentage Byte Required Percentage for Significant Owner. Percentage should be in between 0 and 100.

Threat Risk Assessment Information – May be required based on ProPay Risk Decision
XML Element Type Max Required Notes
MerchantSourceIp String 64 Required SourceIp of Merchant, see ProPay Fraud Detection Solutions Manual.
ThreatMetrixPolicy String 32 Required Threat Metrix Policy, see ProPay Fraud Detection Solutions Manual.
ThreatMetrixSessionId String 128 Required SessionId for Threat Metrix, see ProPay Fraud Detection Solutions Manual.

SoundPayment –Required for Transit Devices


XML Element Type Max Required Notes
SoundPaymentsSettingsPwd String Required Used for sound payments password settings
SoundPaymentsUsername String Required Used for sound payment user name
SoundPaymentsPwd String Required Used for sound payment password
SoundPaymentsTerminalId String Required Used for sound payment terminal
SoundPaymentsPosId String Required Used for sound payment posid
SoundPaymentsToken String Required Used for sound payment token
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 26
Required for Transit, Canada Portico, and UK Portico Devices
XML Element Type Max Required Notes
PostbackUrl String Required Used to pass back the Card Not Present credentials
PostbackUrl2 String Optional Used to pass back the Card Present credentials
FulfilmentNotes String Required This filed is added in business info element

Estimated Card Usage - Optional


XML Element Type Max Required Notes
Required Estimate. This is the percentage of merchant’s transactions that are card present, (Chip,
EstimateCardUsageData.CardPresent Integer 3 Touch, Swipe, etc). This is a percentage value of all expected processing. Values must be
between 0 and 100. Total of all estimated values must equal 100.
Integer Required Depreceiated – no longer valid. Place a ‘0’ here unless otherwise known. Estimate. This is the
EstimateCardUsageDatra.CardNotPre
3 percentage of merchant’s transactions that are card not present - keyed processing. Values
sentKeyed
must be between 0 and 100. Total of all estimated values must equal 100.
Integer Required Estimate. This is the percentage of merchant’s transactions that are card not present –
EstimateCardUsageData.CardNotPres
3 ecommerce. (ex. online store purchasing, etc.). Values must be between 0 and 100. Total of
entEcommerce
all estimated values must equal 100.

Response Elements
Element Type Conditional Notes
transType String No Will always return as 01.
Result of the transaction request. See ProPay Appendix for result code
status String No
definitions
password String No Temporary password
accntNum Integer No Primary identifier for new ProPay account
tier String No Type of account created
When the transaction is a success the property inside will be filled with data from GPApi, when the
XML
Transit Portico / Transit Tier transaction is a failure the properties will be empty and the status will be different. Check Appendix B for
Element
code result.
transNum string Portico / Transit Tier This is the transactionInfoId of the charged transaction.
Name string Portico / Transit Tier The name of the device that was ordered.
Price string Portico / Transit Tier This is the unit price for the device that was ordered
Quantity string Portico / Transit Tier This is the quantity of devices that were ordered, should match the requested quantity.
TotalAmount string Portico / Transit Tier This is the total amout that was charged to the credit card.
CurrencyCode string Portico / Transit Tier This is the currency that the Price and TotalAmount are represented.
Yes (Only if devices
TotalDevicePrice string The total device price (net amount).
were orderd)
Yes (Only if devices
TotalTaxRate string The total tax rate of the total device price (in percents).
were orderd)
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 27
Yes (Only if devices
TotalTax string The tax amount that needs to be added on total device price.
were orderd)
Yes (Only if devices
TotalAmount string The devices amount with tax included (gross amount).
were orderd)

Sample XML Request Response


<?xml version="1.0"?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>01</transType>
<username/> <status>00</status>
<sourceip/> <sourceEmail>[email protected]</sourceEmail>
<certStr>4d8c657a7bc64e31bce4fc37741abb</certStr> <password>!WTYSefRW3</password>
<termid>8a399ce744</termid> <accntNum>123456</accntNum>
<class>partner</class> <tier>Merchant</tier>
<XMLTrans> <beneficialOwnerDataResult>
<transType>01</transType> <Owner>
<country>GBR</country> <FirstName>First1</FirstName>
<sourceEmail>[email protected]</sourceEmail> <LastName>Last1</LastName>
<firstName>Bill</firstName> <status>Validated</status>
<mInitial/> </Owner>
<lastName>Smith</lastName> </beneficialOwnerDataResult>
<addr>Hong Alert Test Street 1</addr> <TotalDevicePrice>89.35.80</TotalDevicePrice>
<aptNum>111</aptNum> <TotalTaxRate>10.0000</TotalTaxRate>
<city>Hong Alert City 1</city> <TotalTaxAmount>893.58</TotalTaxAmount>
<state/> <TotalAmount>9829.38</TotalAmount>
<zip>84043</zip> </XMLTrans>
<addressId/> </XMLResponse>
<bldgNumber>501A</bldgNumber>
<district>CA</district>
<postTown>Lindon</postTown>
<county>CA</county>
<timeAtAddress>20</timeAtAddress>
<prevBldgNumber>505A</prevBldgNumber>
<prevAddr>PrevAddr</prevAddr>
<prevAptNum>PrevAptNum</prevAptNum>
<prevAddr3>PrevAddr3</prevAddr3>
<prevCity>PrevCity</prevCity>
<prevCounty>PrevCounty</prevCounty>
<prevDistrict/>
<prevPostTown>PrevPostTown</prevPostTown>
<prevState>CA</prevState>
<prevZip>1234 567</prevZip>
<prevCountry>GBR</prevCountry>
<dayPhone>8015551112</dayPhone>
<evenPhone>8015551112</evenPhone>
<ssn>333224445</ssn>
<externalId/>
<dob>01-01-1981</dob>
<phonePin/>
<ccName>Sylvester Stallone</ccName>
<ccNum>4111111111111111</ccNum>
<expDate>0624</expDate>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 28
<CVV2>999</CVV2>
<password/>
<acceptedTermsAndConditions>False</acceptedTermsAndConditions>
<CurrencyCode>GBP</CurrencyCode>
<paymentMethodId/>
<userId/>
<BankName>The Big Bank</BankName>
<accountName>Test Merchant</accountName>
<AccountNumber>111111111</AccountNumber>
<RoutingNumber>111111</RoutingNumber>
<accountType>C</accountType>
<AccountOwnershipType>Personal</AccountOwnershipType>
<SecondaryAccountName/>
<SecondaryAccountType/>
<SecondaryRoutingNumber/>
<SecondaryAccountNumber/>
<SecondaryBankName/>
<SecondaryAccountOwnershipType/>
<SecondaryAccountCountryCode/>
<GrossSettleAddress/>
<GrossSettleCity/>
<GrossSettleState/>
<GrossSettleZipCode/>
<GrossSettleCountry/>
<GrossSettleNameOnCard/>
<GrossSettleCreditCardNumber/>
<GrossSettleCreditCardExpDate/>
<GrossSettleAccountType>Unknown</GrossSettleAccountType>
<GrossSettleAccountCountryCode/>
<GrossSettleRoutingNumber/>
<GrossSettleAccountNumber/>
<GrossSettleAccountHolderName/>
<tier>6269fbaf-16f9-4ba0-8</tier>
<EIN>584384656</EIN>
<BusinessLegalName>Hong Alert Test Store 1</BusinessLegalName>
<DoingBusinessAs>nomatch</DoingBusinessAs>
<BusinessAddress>Test Street 1</BusinessAddress>
<BusinessCity>Hong Alert City 1</BusinessCity>
<BusinessState>UT</BusinessState>
<BusinessZip>128901</BusinessZip>
<BusinessCountry>GBR</BusinessCountry>
<BusinessAddress2/>
<BusinessRegistrationNumber>55555555</BusinessRegistrationNumber>
<BusinessPhoneNumber>88888888888</BusinessPhoneNumber>
<BusinessAddress3/>
<BusinessDistrict/>
<BusinessPostTown>Lindon</BusinessPostTown>
<BusinessCounty>GBR</BusinessCounty>
<TimeAtBusinessAddress>18</TimeAtBusinessAddress>
<BusinessPreviousAddress>BusinessPreviousAddress</BusinessPreviousAddress>
<BusinessPreviousAddress2>BusinessPreviousAddress2</BusinessPreviousAddress2>
<BusinessPreviousAddress3>BusinessPreviousAddress3</BusinessPreviousAddress3>
<BusinessPreviousCity>BusinessPreviousCity</BusinessPreviousCity>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 29
<BusinessPreviousCounty>BusinessPreviousCounty</BusinessPreviousCounty>
<BusinessPreviousDistrict>BusinessPreviousDistrict</BusinessPreviousDistrict>
<BusinessPreviousPostTown>BusinessPreviousPostTown</BusinessPreviousPostTown>
<BusinessPreviousState>CA</BusinessPreviousState>
<BusinessPreviousZip>1234567</BusinessPreviousZip>
<BusinessPreviousCountry>GBR</BusinessPreviousCountry>
<WebsiteURL/>
<MerchantLegalName>Hong Alert Test Store 1</MerchantLegalName>
<BusinessDesc/>
<MonthlyBankCardVolume>0</MonthlyBankCardVolume>
<AverageTicket>0</AverageTicket>
<HighestTicket>0</HighestTicket>
<mailApt/>
<mailAddr/>
<mailCity/>
<mailState/>
<mailZip/>
<mailCountry/>
<mailPostTown>Lindon</mailPostTown>
<mailCounty>CA</mailCounty>
<mailDistrict/>
<MerchantSourceip>127.0.0.1</MerchantSourceip>
<ThreatMetrixPolicy/>
<ThreatMetrixSessionid/>
<intlID/>
<driversLicenseVersion/>
<documentType/>
<documentExpDate/>
<documentIssuingState/>
<medicareReferenceNumber/>
<medicareCardColor/>
<AuthorizedSignerFirstName/>
<AuthorizedSignerLastName/>
<AuthorizedSignerTitle/>
<SignificantOwnerFirstName>Bill</SignificantOwnerFirstName>
<SignificantOwnerLastName>Smitch</SignificantOwnerLastName>
<SignificantOwnerSSN>759687533</SignificantOwnerSSN>
<SignificantOwnerDateOfBirth>1981-01-01</SignificantOwnerDateOfBirth>
<SignificantOwnerStreetAddress>Hong Alert Test Street 1</SignificantOwnerStreetAddress>
<SignificantOwnerCityName>Hong Alert City 1</SignificantOwnerCityName>
<SignificantOwnerRegionCode>UT</SignificantOwnerRegionCode>
<SignificantOwnerPostalCode>84042</SignificantOwnerPostalCode>
<SignificantOwnerCountryCode>US</SignificantOwnerCountryCode>
<SignificantOwnerTitle>Owner</SignificantOwnerTitle>
<SignificantOwnerPercentage>100</SignificantOwnerPercentage>
<PaymentBankAccountNumber/>
<PaymentBankRoutingNumber/>
<PaymentBankAccountType/>
<GrossSettlePropayAccountNumber/>
<FulfillmentNotes/>
<BusinessType>D</BusinessType>
<Nationality>GBR</Nationality>
<intlIDs>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 30
<intlID>
<Type>2</Type>
<ID>52657</ID>
</intlID>
<intlID>
<Type>14</Type>
<ID>89765242</ID>
</intlID>
</intlIDs>
<BeneficialOwnerData>
<OwnerCount>1</OwnerCount>
<Owners>
<Owner>
<FirstName>Bill1</FirstName>
< LastName>Smith1</LastName>
<Title>Owner</Title>
<Address>Hong Alert Test Street 1</Address>
<Address2/>
<Percentage>100</Percentage>
<SSN>759687533</SSN>
<Country>USA</Country>
<State>UT</State>
<City>Hong Alert City 1</City>
<Zip>84042</Zip>
<Email>[email protected]</Email>
<DateOfBirth>1981-01-01</DateOfBirth>
<BldgNumber>503A</BldgNumber>
<District/>
<PostTown>Lindon</PostTown>
<County>CA</County>
<Nationality>GBR</Nationality>
</Owner>
</Owners>
</BeneficialOwnerData>
<EstimatedCardUsageData>
<CardPresent>50</CardPresent>
<CardNotPresentKeyed>48</CardNotPresentKeyed>
<CardNotPresentEcommerce>2</CardNotPresentEcommerce>
</EstimatedCardUsageData>
</XMLTrans>
</XMLRequest>

4.2 Edit a ProPay Account Transaction Type 42


This method will update the information associated with a ProPay account by updating specific group of information as denoted below.

Please understand special rules for use of this method:


- This transaction type requires an X.509 certificate as additional authentication
- Only one group should be passed per request.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 31
- If a group is passed, the API user must pass all data elements that comprise that group. If a value from a group is passed empty then the data
related to that information is updated in the ProPay system.
- Allowance to perform an edit of each group is subject to approval. If you try to perform an edit for a disallowed group, your request will fail.

Account identification – Required


Element Type Max Required Notes
accountNum Int(32) Int(32) Required The ProPay account to be updated

Group: Account Information - Optional


Element Type Max Required Notes
dayPhone integer Required If domestic or Canadian account, this value must be 10 characters with no dash.
evenPhone integer Required If domestic or Canadian account, this value must be 10 characters with no dash.
firstName string 20 Required First Name on ProPay Account
lastName string 25 Required Last Name on ProPay Account
mInitial string 2 Required Middle Initial on ProPay Account
sourceEmail string 55 Required Email linked to ProPay account *Truncated, if value provided is greater than max value.
externalId string 20 Optional Client system’s unique Id linked to ProPay Account
timeZone string 6 Optional Client time zone

Group: Account Security - Optional


Element Type Max Required Notes
Temporary password which will allow a onetime login to ProPay’s website. Must be at least eight characters. Must
password string 20 Required not contain part or the entire first or last name. Must contain at least one capital letter, one lower case letter, and
either one symbol or one number.

Group: Account Address Information - Optional


Element Type Max Required Notes
addr string 100 Required Merchant Street Address
city string 30 Required Merchant Address city
country string Required See Appendix B for possible country codes.
Merchant Address state. MUST be one of the standard 2 character abbreviations for US or Canada. For
state string 3 Required
international, this value is limited to 3 characters.
Merchant Address zip. If domestic signup this value must be either 5 or 9 characters with no dash. For Canada
zip string Required
this value must be 6 characters.
addr3 string 100 Optional Merchant Address line 3
aptNum string 100 Optional Merchant Address apartment number
string Optional This is the building / home number for the street address. (Ex. 501a Halfway St. – Value for this tag would be
bldgNumber 50
“501a” **Mandatory for UK Merchants**
district string 50 Optional The District associated with the merchant’s address **For use by UK merchants**
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 32
postTown string 100 Optional The post town that is associated with the merchant’s address. **Mandatory for UK Merchants**
county string 50 Optional the county associated with the merchant’s addres **For use by UK merchants**
mailAddr string 100 Optional Merchant Mailing Street Address
mailAddr3 string 100 Optional Merchant Mailing address line 3
mailApt string 100 Optional Merchant Mailing Address apartment number
mailCity string 30 Optional Merchant Mailing Address city
mailCountry String Optional Merchant Mailing Address country See Appendix B for possible country codes.
Merchant Mailing Address state MUST be one of the standard 2 character abbreviations for US or Canada. For
mailState string 3 Optional
international, this value is limited to 3 characters.
Merchant Mailing Address zip. For US, it should be 5 or 9 characters with no dash. For Canada this value must
mailZip string Optional
be 6 characters.
mailDistrict string 50 Optional The District associated with the mailing address **For use by UK merchants**
mailPostTown string 100 Optional The Post Town associated with the mailing address. **For use by UK merchants**
mailCounty string 50 Optional The county associated with the mailing address. **For use by UK merchants**

Group: Account Permissions - Optional


Element Type Max Required Notes
ACHIn Boolean Required Account permitted to load funds via ACH. Valid values are: Y and N
Account balance allowed to be pushed to on-file DDA. Affects automatic sweeps. Valid values
ACHOut Boolean Required
are: Y and N
CCProcessing Boolean Required Valid values are: Y and N
ProPayIn Boolean Required Valid values are: Y and N
ProPayOut Boolean Required Valid values are: Y and N
Valid values between 0 and 9999999. Expressed as number of pennies in USD or number of
CreditCardMonthLimit String Optional
account’s currency without decimals.
Valid values between 0 and 9999999. Expressed as number of pennies in USD or number of
CreditCardTransactionLimit String Optional
account’s currency without decimals.
Used to update status of ProPay account. Note: the ONLY value that will allow an account to
process transactions is ‘ReadyToProcess’ Valid values are:
 ReadyToProcess
 FraudAccount
 RiskwiseDeclined
MerchantOverallStatus String Optional  Hold
 Canceled
 FraudVictim
 ClosedEULA
 CloseExcessiveChargeback
SoftLimitEnabled Boolean Optional Valid values are Y and N. Please work with ProPay for more information about soft limits feature
AchPaymentSoftLimitEnabled Boolean Optional Valid values are Y and N. Please work with ProPay for more information about soft limits feature

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 33
Valid values between 0 and 499. Please work with ProPay for more information about soft limits
SoftLimitAchOffPercent String Optional
feature
Valid values between 0 and 499. Please work with ProPay for more information about soft limits
AchPaymentAchOffPercent String Optional
feature
Valid values between 0 and 999999999999999. Expressed as number of pennies in USD or number
ACHPaymentMonthLimit String Optional
of account’s currency without decimals
Valid values between 0 and 9999999. Expressed as number of pennies in USD or number of
ACHPaymentPerTranLimit String Optional
account’s currency without decimals

Group: Primary Bank Information - Optional


Element Type Max Required Notes
AccountCountryCode string 25 Required ISO 3166 standard 3 character country codes. Current allowed values are: USA and CAN
accountType string Required Valid values are: Checking, Savings, and GeneralLedger
AccountName string 32 Reqruied Name on the bank account
AccountNumber integer 20 Required Bank Account Number
BankName string 50 Required Bank Name
RoutingNumber Integer 20 Required Valid ABA routing number or CPA EFT code.
AccountOwnershipType string 15 Optional Valid values are: Personal and Business

Group: Secondary Bank Information - Optional


Element Type Max Required Notes
ISO 3166 standard 3 character country codes. Current allowed values are: USA and
SecondaryAccountCountryCode string Required
CAN
SecondaryAccountType string Required Valid values are: Checking, Savings, and GeneralLedger
SecondaryAccountName string 32 Optional Name on the Bank Account
SecondaryAccountNumber string 20 Optional Bank Account Number
SecondaryAccountOwnershipType string Optional Valid values are: Personal and Business
SecondaryBankName string 50 Optional Bank Name
SecondaryRoutingNumber string 9 Optional Valid ABA routing number or CPA EFT code

Group: Merchant Business Information - Optional


Element Type Max Required Notes
AuthorizedSignerFirstName string 20 Optional Authorized Signer First Name
AuthorizedSignerLastName string 25 Optional Authorized Signer Last Name
AuthorizedSignerTitle string 20 Optional Authorized Signer Title
BusinessAddress string 100 Optional Business Address
BusinessAddress2 string 100 Optional Business Address2
BusinessLegalName string 255 Optional Business Legal Name
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 34
BusinessCity string 30 Optional BusinessCity
BusinessDesc string 255 Optional BusinessDescription
BusinessState string 3 Optional BusinessState
BusinessZip string Optional BusinessZip
DoingBusinessAs string 40 Optional DoingBusinessAs
EIN string Optional EIN *For UK, Do not pass
HighestTicket Int(64) Optional HighestTicket
MonthlyBankCardVolume Int(64) Optional MonthlyBankCardVolume
WebsiteURL string 255 Optional WebsiteURL
BusinessDistrict string 50 Optional The District associated with the business address **For use by UK merchants**
BusinessPostTown string 100 Optional The post town that is associated with the business address **For use by UK merchants**
BusinessCounty string 50 Optional The county associated with the business address **For use by UK merchants**
BusinessAddress3 string 100 Optional Business Physical Address **For UK merchants, use to provide Building name**

Group: Gross Settle Information (Credit Card) - Optional


Element Type Max Required Notes
GrossSettleCreditCardExpDate string 4 Required Expiration Date of the Credit Card used to pay for Gross Settle fees.
GrossSettleCreditCardNumber string Required Credit Card number of the Credit Card used to pay for Gross Settle fees.
GrossSettleNameOnCard string 25 Required Name on credit card.
GrossSettleAddress string Required Street Address related to the Gross Billing Payment Method.
GrossSettleCity string Required City related to the Gross Billing Payment Method.
Country related to the Gross Billing Payment Method. ISO 3166 standard 3 character country
codes. Current allowed values are:
GrossSettleCountry string Required
 USA
 CAN
GrossSettleState string Required State related to the Gross Billing Payment Method.
GrossSettleZipCode string Required Street Address related to the Gross Billing Payment Method.
The ProPay account must be setup for Gross Billing and it must be enabled. Gross Billing Address Elements must be submitted in addition when updating Gross Billing
credit card information to preserve information on file.

Group: Gross Settle Information (Bank Account) - Optional


Element Type Max Required Notes
currency code of the bank account used to pay for Gross Settle fees
CurrencyCode string 3 Optional
USD
ISO 3166 standard 3 character country codes. Current allowed values are:
GrossSettleAccountCountryCode string 3 Required  USA
 CAN
GrossSettleAccountHolderName string 32 Required Name on the bank account used to pay for Gross Settle fees

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 35
GrossSettleAccountNumber string Required Bank account number of the bank account used to pay for Gross Settle fees
GrossSettleAddress string Required Street Address related to the Gross Billing Payment Method.
GrossSettleCity string Required City related to the Gross Billing Payment Method.
GrossSettleRoutingNumber string 9 Required Routing number of the bank account used to pay for Gross Settle fees
GrossSettleState string Required State related to the Gross Billing Payment Method.
GrossSettleZipCode string Required Street Address related to the Gross Billing Payment Method.
Valid Values are:
 C - Checking
GrossSettleAccountType string 10 Required
 S – Savings
 G – General Ledger

Group: Monthly Renewal Information (Credit Card) - Optional


Element Type Max Required Notes
ccNum string Required Credit Card number of the Credit Card for editing Monthly Renewal data.
expDate string Required Expiration Date of the Credit Card for editing Monthly Renewal data.

Group: Monthly Renewal Information (Bank Account) - Optional


Element Type Max Required Notes
PaymentBankAccountNumber string Required Bank account number of the bank account used for editing Monthly Renewal data.
PaymentBankRoutingNumber string Required Routing number of the bank account used for editing Monthly Renewal data.
PaymentBankAccountType string Required Valid values are: Checking and Savings – for Savings

Group: Negative limits - Optional


Element Type Max Required Notes
negativelimit Int(64) Required amount must be greater than zero

Group: Update Rates - Optional


Element Type Max Required Notes
accounNum Int(32) Required Assigned to each account by ProPay
VisaCNPPerTrans string 0/ Optional CNP rate for Visa (Minimum value = 0. Max = unlimited)
VisaCNPDiscount string 0/100 Optional CNP discount for Visa (Minimum value = 0. Max = 100)
MCCNPPerTrans string 0/ Optional CNP rate for Master Card (Minimum value = 0. Max = unlimited)
MCCNPDiscount string 0/100 Optional CNP Discount rate for Master Card (Minimum value = 0. Max = 100)
DiscoverCNPPerTrans string 0/ Optional CNP rate for Discover (Minimum value = 0. Max = unlimited)
DiscoverCNPDiscount string 0/100 Optional CNP Discount rate for Discover (Minimum value = 0. Max = 100)
AmexCNPPerTrans string 0/ Optional CNP rate for American Express (Minimum value = 0. Max = unlimited)
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 36
AmexCNPDiscount string 0/100 Optional CNP Discount rate from American Express (Minimum value = 0. Max = 100)
VisaCPPerTrans string 0/ Optional CP rate for Visa (Minimum value = 0. Max = unlimited)
VisaCPDiscount string 0/100 Optional CP discount for Visa (Minimum value = 0. Max = 100)
MCCPPerTrans string 0/ Optional CP rate for Master Card (Minimum value = 0. Max = unlimited)
MCCPDiscount string 0/100 Optional CP Discount rate for Master Card (Minimum value = 0. Max = 100)
DiscoverCPPerTrans string 0/ Optional CP rate for Discover (Minimum value = 0. Max = unlimited)
DiscoverCPDiscount string 0/100 Optional CP Discount rate for Discover (Minimum value = 0. Max = 100)
AmexCPPerTrans string 0/ Optional CP rate for American Express (Minimum value = 0. Max = unlimited)
AmexCPDiscount string 0/100 Optional CP Discount rate from American Express (Minimum value = 0. Max = 100)
VisaPDPerTrans string 0/ Optional PinDebit rate for Visa (Minimum value = 0. Max = unlimited)
VisaPDDiscount string 0/100 Optional PinDebit discount for Visa (Minimum value = 0. Max = 100)
MCPDPerTrans string 0/ Optional PinDebit rate for Master Card (Minimum value = 0. Max = unlimited)
MCPDDiscount string 0/100 Optional PinDebit Discount rate for Master Card (Minimum value = 0. Max = 100)
DiscoverPDPerTrans string 0/ Optional PinDebit rate for Discover (Minimum value = 0. Max = unlimited)
DiscoverPDDiscount string 0/100 Optional PinDebit Discount rate for Discover (Minimum value = 0. Max = 100)
AmexPDPerTrans string 0/ Optional PinDebit rate for American Express (Minimum value = 0. Max = unlimited)
AmexPDDiscount string 0/100 Optional PinDebit Discount rate from American Express (Minimum value = 0. Max = 100)

Group: Toggle Software package - Optional


Element Type Max Required Notes
accounNum string Required Assigned to each account by ProPay
enablePOS boolean Required Values: True/False This enables/disables the software package

Group: Transfer Funds Configuration - Optional


Element Type Max Required Notes
accounNum string Required Assigned to each account by ProPay
ExcludeFromSweep boolean Required Valid values are: Y and N

Response Elements
Element Type Notes
transType string Will always return as 42.
status string Result of the transaction request. See Appendix for result code definitions.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>42</transType>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 37
<certStr>MyCertStr</certStr> <status>00</status>
<termid>termid</termid> </XMLTrans>
<class>partner</class> </XMLResponse>
<XMLTrans>
<transType>42</transType>
<accountNum>123456</accountNum>
<dayPhone>4464464464</dayPhone>
<evenPhone>4464464464</evenPhone>
<externalId>2212157</externalId>
<firstName>John</firstName>
<lastName>Doe</lastName>
<timeZone>MT</timeZone>
<mInitial>F</mInitial>
<VisaCNPperTrans>AB</VisaCNPperTrans>
<VisaCNPDiscount>1</VisaCNPDiscount>
<MCCNPPerTrans>0.1</MCCNPPerTrans>
<MCCPDiscount>200</MCCNPDiscount>
<sourceEmail>[email protected]</sourceEmail>
<ExcludeFromSweep>Y</ExcludeFromSweep>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 38
4.3 Reset a ProPay Account’s Password Transaction Type 32
This method will reset a ProPay web login password. An email will be sent to the account email address on file from [email protected]
containing a temporary password that can be used to login, but must be changed to something new by the user at that point.

Account Identification - Required


Element Type Max Required Notes
accountNum Int(32) Required The account whose password is to be reset

Response Elements
Element Type Notes
status string Result of the transaction request. See Appendix for result code definitions.
accountNum integer Echo of the account the API request was made for.
password string The temporary password generated.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>32</transType>
<certStr>MyCertStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <password>5X!a2jSeqJ</password>
<class>partner</class> <status>00</status>
<XMLTrans> </XMLTrans>
<transType>32</transType> </XMLResponse>
<accountNum>123456</accountNum>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 39
4.4 Renew a ProPay Account Transaction Type 39
This method will extend the expiration date of a ProPay account by one year. This may also be used to change the tier of an existing account.

Renewal Fees
ProPay account renewals require the collection of the account renewal fee. This method will attempt to collect the fee as follows:
1. If the API request includes on of the optional payment groups below, it will be used in an attempt to collect renewal fees.
2. Then, if either no payment group is passed, or if payment fails, ProPay will check to see if the account is set up to be paid for by the partner. If
such is the case, the account will simply be renewed.
3. Finally, ProPay will attempt to collect renewal fees from the account’s available balance.
If all of these attempts to collect the renewal fees fails the renewal request will return denied.

Account Identification - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay.
Supplying a value will change the accounts tier under the affiliation upon renewal.
tier String Optional
If not passed the tier will not be changed.

Group: Payment Information (Credit Card) - Optional


Element Type Max Required Notes
CVV2 String 4 Required The credit card CVV code.
ccNum String 16 Required The credit card number used to pay for the renewal. *Required if using credit card to pay renewal fee.
expDate String 4 Required The credit card expiration date in ‘mmdd’ format. *Required if using credit card to pay renewal fee.
The US zip code of the credit card. 5 or 9 digits without a dash for US cards. Omit for international credit
zip String 9 Required
cards.

Group: Payment Information (Bank Account) - Optional


Element Type Max Required Notes
Used to pay for an account via ACH and monthly renewal. Financial institution account number.
PaymentBankAccountNumber String Required
*Required if using ACH to pay renewal fee.
Used to pay for an account via ACH and monthly renewal. Financial institution routing number.
PaymentBankRoutingNumber String Required
Must be a valid ACH routing number. *Required if using ACH to pay renewal fee.
Used to pay for an account via ACH and monthly renewal. Valid values are: Checking and
PaymentBankAccountType String Required
Savings

Response Elements
Element Type Notes
transType string Will always return as 39.
status string Result of the transaction request. See Appendix for result code definitions.
tier string The tier the account was renewed under.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 40
Sample XML Request Response
<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>39</transType>
<certStr>MyCertStr</certStr> <status>00</status>
<termid>termid</termid> <accountNum>12345678</accountNum>
<class>partner</class> <tier> Merchant </tier>
<XMLTrans> </XMLTrans>
<transType>39</transType> </XMLResponse>
<accountNum>12345678</accountNum>
<tier>Merchant</tier>
<ccNum>4747474747474747</ccNum>
<expDate>1229</expDate>
<zip>12345</zip>
<CVV2>999</CVV2>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 41
4.5 Add a ProPay Account’s Beneficial Ownership Information Transaction Type 44
This method may be used to add new beneficial owner information when the original account boarding call included OwnerCount, but did not
include all owner data. Note: to change existing owner data, please contact ProPay Underwriting.
Request Elements - Required
Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay.
BeneficialOwnerData - - -
BeneficialOwnerData .Owners - - -
Owners.Owner - - -
Owner.Title String 55 Required This field contains the Title.
Owner.FirstName String 20 Required Owner First Name.
Owner.LastName String 25 Required Owner Last Name.
Owner.Email String 55 Required Owner Email ID.
Owner.DateOfBirth String Required Date of Birth of the Owner. Must be in ‘mm-dd-yyyy’ format.
Owner.Percentage String 3 Required Percentage stake in company by owner. Must be whole number between 0 and 100.
Owner.Address String 100 Required Street address where Owner resides.
Owner.SSN String 9 Required Social Security Number of the Owner. Should be 9 digits.
Owner.City String 55 Required The name of the city where the Owner resides.
Owner.Zip String 10 Required The postal code where the Owner resides.
Owner.State String 3 Required The region code that corresponds to the state where the Owner resides.
Owner.Country String 3 Required The three-character, alpha country code for where the Owner resides.

Response Elements
Element Type Notes
transType string Will always return as 44.
status string Result of the transaction request. See ProPay Appendix for result codes.
beneficialOwnerDataResult BeneficialOwnerDataResult The validation results for each beneficial owner provided

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>44</transType>
<certStr>My certStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> <beneficialOwnerDataResult>
<XMLTrans> <Owner>
<transType>44</transType> <FirstName>First1</FirstName>
<accountNum>123456</accountNum> <LastName>Last1</LastName>
<BeneficialOwnerData> <Status>NotValidated</Status>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 42
<Owners> </Owner>
<Owner> </beneficialOwnerDataResult>
<FirstName>First1</FirstName> </XMLTrans>
<LastName>Last1</LastName> </XMLResponse>
<Title>CEO</Title>
<Address>XYZ</Address>
<Percentage>10</Percentage>
<SSN>123545677</SSN>
<Country>USA</Country>
<State>UT</State>
<City>Lehi</City>
<Zip>84010</Zip>
<Email>[email protected]</Email>
<DateOfBirth>11-11-1988</DateOfBirth>
</Owner>
</Owners>
</BeneficialOwnerData>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 43
4.6 Move a ProPay Account Off of a Partner’s Program Transaction Type 41
This method will remove a ProPay account from an affiliation. The affiliation must have appropriate settings to enable this feature.
- This method should be used when an affiliation desires to remove a user from their group.
- Generally this is used because the affiliate partner has agreed to pay for annual account fees, but only for active users.
- If an affiliate user re-activates their relationship with the affiliate, they will need to contact ProPay Customer Service to be re-assigned to the
correct affiliation.
- This method does NOT cancel the account; it only removes the account from the affiliation.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay

Response Elements
Element Type Notes
status string Result of the transaction request. See Propay Appendix for result code definitions

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>41</transType>
<certStr>MyCertStr</certStr> <status>00</status>
<termid>termid</termid> </XMLTrans>
<class>partner</class> </XMLResponse>
<XMLTrans>
<transType>41</transType>
<accountNum>123456</accountNum>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 44
4.7 Upload a Document to ProPay (Chargeback specific) Transaction Type 46
This method can be used to send an image file to ProPay, and is specifically designed to support the documents you use to dispute a credit card
chargeback for both direct CC and DTE CC transactions. This version of document upload has you “tag” the document to a specific transaction
that has been charged-back.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay
DocumentName String 100 Required Name the document according to instructions provided to you by ProPay’s Risk team.
The transaction number of the chargeback you need to dispute. *It is required to pass only one
TransactionReference String 40 Required* variable; use either TransacitonReference OR gatewayTransactionId. Passing both will return error
228. Including neither the transacitonReference or gatewayTransactionId results in error 229.
DocType String 4 Required File format. Valid types: tif, pdf, tiff, jpg, jpeg

Document String (10mb) Required The document data in base64 format.

This is the global gateway transaciton identification number. *It is required to pass only one variable;
gatewayTransactionId String 100 Required* use either TransacitonReference OR gatewayTransactionId. Passing both will return error 228.
Including neither the transacitonReference or gatewayTransactionId results in error 229.

Response Elements
Element Type Notes
status string Result of the transaction request. See Propay Appendix for result code definitions

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>46</transType>
<certStr>MyCertStr</certStr> <status>00</status>
<termid>termid</termid> </XMLTrans>
<class>partner</class> </XMLResponse>
<XMLTrans>
<transType>46</transType>
<accountNum>123456789</accountNum>
<DocumentName>Chargeback 456</DocumentName>
<DocType>doc</DocType>
<TransactionReference>345</TransactionReference>
<Document>VGVzdCBCYXNlNjQ=</Document>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 45
4.8 Upload a Document to ProPay Transaction Type 47
This method can be used to send an image file to ProPay. The ProPay Risk team may request that you perform this action to underwrite an account
that was denied via automated boarding, to increase the processing limit on accounts, or to provide data when we’ve had to put an accounts
ability to process on hold.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay
documentName String 100 Required Name the document according to instructions provided to you by ProPay’s Risk team.
The type of document you’ve been asked to provide by ProPay’s Risk team. Valid values are:
DocCategory String 40 Required
Verification, FraudHolds, Underwriting, RetrievalRequest
docType String 4 Required File format. Valid types: tif, pdf, tiff, bmp, jpg, jpeg, gif, png, doc, docx
Document String (10mb) Required The document data in base64 format.

Response Elements
Element Type Notes
status string Result of the transaction request. See Propay Appendix for result code definitions

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>47</transType>
<certStr>MyCertStr</certStr> <status>00</status>
<termid>termid</termid> </XMLTrans>
<class>partner</class> </XMLResponse>
<XMLTrans>
<transType>47</transType>
<accountNum>123456789</accountNum>
<DocumentName>Additional boarding info</DocumentName>
<DocCategory>Underwriting</DocCategory>
<DocType>doc</DocType>
<Document>VGVzdCBCYXNlNjQ=</Document>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 46
4.9 Obtain a Working Key for Single-Sign-On Transaction Type 300
Specific pages, normally offered to users on ProPay’s own website, can be embedded into your own interface. Each ProPay hosted widget will
present a dead-end to the account holder. The ProPay navigation menu doesn’t appear, so that you can build your own navigation based on
what makes sense for your own interface. This also means that you should obtain a separate working key for each page. They are single-use.
Once you’ve obtained the working key, you can navigate to a specific Propay page with the key included in the web address, as with the following
examples:

Production
https://propay.merchant-portals.com/[SupportedPage]?authToken=3b9f65d1-d4ea-4af8-ch28-7513091923a1&accountnum=31234567

Integration
https://il01merchantportals.propay.com/[SupportedPage]?authToken=3b9f65d1-d4ea-4af8-ch28-7513091923a1&accountnum=31234567

Currently supported pages for single-sign-on:


 Account/AddUpdateCheckingAccount  ProPayCard/ActivateCard
 Account/ConfirmValidationDeposits  ProPayCard/LostOrStolenCard
 Account/SendValidationDeposits  ProPayCard/UpdatePin
 Account/AddUpdateFlashFundAccount  ProPayCard/ReissueCard
 ManageFunds/TransferFundsToDebitCard  PaymentMethod/editpaymentmethod
 ManageFunds/TransferFundsToBankAccount  Document/UploadDocument
 ManageFunds/TransferFundsToanotherpropayaccount  Risk/ListChargeBacks
 ManageFunds/AddFundsToPropayAccount  Report/AdvancedTransactionSearch
 ManageFunds/ScheduledTransfers  Report/ConsolidatedFees
 Profile/EditBusinessInfo  Report/LimitsRatesAndFees
 Profile/UpdateAddressAndPhone  Report/TransactionDetails **
 Profile/UpdatePin  Report/TransactionReport
 Profile/UpdateEmail  Report/SweepReport
 ProPayCard/Index  Device/OrderAdditionalDevices
 ProPayCard/RequestCard

**Note: The TransactionDetails page presents the user with information specific to a single transaction. It is necessary, as a result, to pass an
additional parameter (the transNum) into the redirect URL. Simply pass this number as an additional parameter into the URL before continuing with
the rest of the name-value pairs. In addition, you can add reportid=1& to add a button that will redirect to the full transaction report.
Ex. Report/TransactionDetails/2?reportId=1&authtoken=1236547897e-db5c-49e0-1234-290a2eff760c&accountnum=31234567

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 47
Request Elements - Required
Element Type Max Required Notes
accountNum Int(64) Required The account to which you will “log-in”
ReferrerUrl String Required The ProPay system requires that your single-sign-on originate from the URL originally provided here.
IpAddress String Required The IP address of the device requesting the page.
IpSubnetMask String 120 Required The IP address of the device requesting the page.

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
AuthToken String The ProPay transaction identifier. Will be a GUID.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>300</transType>
<certStr>My certStr</certStr> <AuthToken>7f792d71-573e-4168-bdce-a1fc137596e5</AuthToken>
<termid>termid</termid> <status>00</status>
<class>partner</class> </XMLTrans>
<XMLTrans> </XMLResponse>
<transType>300</transType>
<accountNum>1111111</accountNum>
<ReferrerUrl>http://www.myURL.com</ReferrerUrl>
<IpAddress>206.192.156.0</IpAddress>
<IpSubnetMask>255.255.255.0</IpSubnetMask>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 48
4.10 Update Bank Account Ownership Details Transaction Type 210
Use this method to update the ownership details for a bank account tied to a ProPay account. (The direct deposit account.) This method is mostly important for
ProPay Canadian accounts boarded via the API. In Canada, ownership details of the bank account, must be on-file in order to transfer funds out of the ProPay
account, and to that DDA. This method is not required for US-based ProPay accounts.

(Note: editing the actual DDA is done using transaction type 42. ProPay is moving towards a model where each type of edit is done using an independent
method, however, DDA edits are still done using a single Edit-Account API call.)

Request Elements - Required


Element Type Max Required Notes
accountNum Int(64) Required The account to edit.

Group: Primary Account Ownership - Optional


XML Element Type Max Required Notes
BankAccountOwnerData
.PrimaryBankAccountOwner String 25 Optional Bank account owner’s first name
.FirstName
BankAccountOwnerData
. PrimaryBankAccountOwner String 25 Optional Bank account owner’s last name
.LastName
BankAccountOwnerData
. PrimaryBankAccountOwner String 50 Optional Bank account owner’s address
.Address1
BankAccountOwnerData
. PrimaryBankAccountOwner String 50 Optional Bank account owner’s address
.Address2
BankAccountOwnerData
. PrimaryBankAccountOwner String 50 Optional Bank account owner’s address
.Address3
BankAccountOwnerData
. PrimaryBankAccountOwner String 25 Optional Bank account owner’s city
.City
BankAccountOwnerData
. PrimaryBankAccountOwner String 3 Optional Bank account owner’s state
.StateProvince
BankAccountOwnerData
. PrimaryBankAccountOwner String 10 Optional Bank account owner’s postal code
.PostalCode
BankAccountOwnerData
. PrimaryBankAccountOwner String 3 Optional Bank account owner’s country
.Country
BankAccountOwnerData
String 25 Optional Bank account owner’s phone
. PrimaryBankAccountOwner
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 49
.Phone

Group: Secondary Account Ownership - Optional


XML Element Type Max Required Notes
BankAccountOwnerData
. SecondaryBankAccountOwner String 25 Optional Bank account owner’s first name
.FirstName
BankAccountOwnerData
. SecondaryBankAccountOwner String 25 Optional Bank account owner’s last name
.LastName
BankAccountOwnerData
. SecondaryBankAccountOwner String 50 Optional Bank account owner’s address
.Address1
BankAccountOwnerData
. SecondaryBankAccountOwner String 50 Optional Bank account owner’s address
.Address2
BankAccountOwnerData
. SecondaryBankAccountOwner String 50 Optional Bank account owner’s address
.Address3
BankAccountOwnerData
. SecondaryBankAccountOwner String 25 Optional Bank account owner’s city
.City
BankAccountOwnerData
. SecondaryBankAccountOwner String 3 Optional Bank account owner’s state
.StateProvince
BankAccountOwnerData
. SecondaryBankAccountOwner String 10 Optional Bank account owner’s postal code
.PostalCode
BankAccountOwnerData
. SecondaryBankAccountOwner String 3 Optional Bank account owner’s country
.Country
BankAccountOwnerData
. SecondaryBankAccountOwner String 25 Optional Bank account owner’s phone
.Phone

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
AuthToken String The ProPay transaction identifier. Will be a GUID.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>210</transType>
<status>00</status>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 50
<sourceip></sourceip> </XMLTrans>
<certStr>7d95514f2aad4f189da34e464d9a2c</certStr> </XMLResponse>
<termid>termid</termid>
<class>partner</class>
<XMLTrans>
<accountNum>715876206</accountNum>
<transType>210</transType>
<BankAccountOwnerData>
<PrimaryBankAccountOwner>
<FirstName>Style</FirstName>
<LastName>Stallone</LastName>
<Address1>3400 N Ashton Blvd</Address1>
<Address2>3401 M Ashton Clad</Address2>
<Address3>3402 L Ashton Blvd</Address3>
<City>Orlando</City>
<StateProvince>FL</StateProvince>
<PostalCode>X0A 0H0</PostalCode>
<Country>CAN</Country>
<Phone>123456789</Phone>
</PrimaryBankAccountOwner>
<SecondaryBankAccountOwner>
<FirstName>Thomas</FirstName>
<LastName>Hanks </LastName>
<Address1>1970 Diamond Blvd</Address1>
<Address2>1971 Diamond Blvd</Address2>
<Address3>1972 Diamond Blvd</Address3>
<City>Orlando</City>
<StateProvince>FL</StateProvince>
<PostalCode>X0A 0H0</PostalCode>
<Country>CAN</Country>
<Phone>123456789</Phone>
</SecondaryBankAccountOwner>
</BankAccountOwnerData>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 51
4.11 Update a ProPay Account’s Beneficial Ownership Count Transaction Type 211
This method will update the beneficial owner count for a ProPay account. Count can range from 1 to 5.
Note: This method can only update the beneficial owner count and not the owner data.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay.
BeneficialOwnerData.OwnerCount String Required The beneficial owner count to update.

Response Elements
Element Type Notes
transType string Will always return as 211.
status string Result of the transaction request. See ProPay Appendix for result codes.

Sample XML Request Response


<XMLRequest> <XMLResponse>
<sourceip></sourceip> <XMLTrans>
<certStr>816b58a093e84975ae7f9a6ecc9eb9</certStr> <transType>211</transType>
<termid>d597c275b3</termid> <status>00</status>
<XMLTrans> </XMLTrans>
<transType>211</transType> </XMLResponse>
<accountNum>717283175</accountNum>
<BeneficialOwnerData>
<OwnerCount>2</OwnerCount>
</BeneficialOwnerData>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 52
4.12 Order A New Device Transaction Type 430
This method is used to order a new device.
Note: This method is currently restricted to partners using the Propay-Portico solution and using Portico Devices.

Request Elements - Required


Element Type Max Required Notes
accntNum Int(32) Required Assigned to each account by ProPay.
shipTo String Required The name of the company that is receiving the device.
shipToContact String 30 Required The name of the person who would be receiving the device.
shipToAddress String Required The address where the device should be shipped.
shipToAddress2 String Optional
shipToCity String Required The City where the device should be shipped
shipToState String Required The State where the device should be shipped *For UK: do not pass.
shipToZip String Required The Zip Code where the device should be shipped
shipToPhone String 10 Required Phone number of the contact. Must be 10 characters
The name that appears on the credit card used for purchase. Optional if the price of
cardholderName String Required
the device is $0.00
The credit card number of the card used for purchase. Optional if the price of the
CcNum String Required
device is $0.00
The expiration date of the card used for purchase. Optional if the price of the device
ExpDate String Required
is $0.00
CVV2 String Required The CVV of the card used for purchase. Optional if the price of the device is $0.00
billingZip String Required The billing zip code. Optional if the price of the device is $0.00
Name Sting 20 Required Unique name of the device being ordered.
Quantity String Required The number of devices to charge for and order.
Attributes String 2 Optional Parent tag for specifying special attributes for an individual device
Attributes.Item Optional Specify an attribute item
Name of the attribute item. For example “Heartland.AMD.OfficeKey” which is specific
Attributes.Item[“Name”] String 20 Required to Portico devices for AMD. The value of this item is passed to Heartland for
equipment boarding.
Value of the attribute item. In the above example, the value of
Attributes.Item[“Value”] String 20 Required
“Heartland.AMD.OfficeKey”.
SoundPayments Required Includes the data for the soundpayments
SoundPaymentsSettingsPwd String Required Used for sound payments password settings
SoundPaymentsUsername String Required Used for sound payment user name
SoundPaymentsPwd String Required Used for sound payment password
SoundPaymentsTerminalId String Required Used for sound payment terminal
SoundPaymentsPosId String Required Used for sound payment posid
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 53
SoundPaymentsToken String Required Used for sound payment token
PostbackURL1 String 1500 Required
PostbackURL2 String 1500 Required

Response Elements
Element Type Conditional Notes
transType string No Will always return as 430.
status string No Result of the transaction request. See ProPay Appendix for result codes.
transNum string Portico / Transit Tier This is the transactionInfoId of the charged transaction.
Name string Portico / Transit Tier The name of the device that was ordered.
Price string Portico / Transit Tier This is the unit price for the device that was ordered
This is the quantity of devices that were ordered, should match the
Quantity string Portico / Transit Tier
requested quantity.
*This is the total amout that was charged to the credit card. If tax
Portico / Transit Tier or if tax
TotalAmount string calculating conditions are met, the total amount will show the devices
calculations are met
amount with tax included (gross amount).
CurrencyCode string Portico / Transit Tier This is the currency that the Price and TotalAmount are represented in.
Yes (Only if tax calculating
TotalDevicePrice string The total device price (net amount).
conditions are met)
Yes (Only if tax calculating
TotalTaxRate string The total tax rate of the total device price (in percents).
conditions are met)
Yes (Only if tax calculating
TotalTax string The tax amount that needs to be added on total device price.
conditions are met)

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 54
Sample XML Request Response
<XMLRequest> <?xml version="1.0"?>
<certStr/> <XMLResponse>
<termid/> <XMLTrans>
<class>partner</class> <transType>430</transType>
<XMLTrans> <status>00</status>
<transType>430</transType> <Devices>
<accntNum>718039075</accntNum> <Device>
<shipTo>Test Company</shipTo> <Name>Test Device #1d257427e</Name>
<shipToContact>John Q. Public</shipToContact> <Quantity>1</Quantity>
<shipToAddress>2675 W 600 N</shipToAddress> <Price>8919.8</Price>
<shipToAddress2>Test Second Address</shipToAddress2> <CurencyCode>USD</CurrencyCode>
<shipToCity>Lindon</shipToCity> </Device>
<shipToState>UT</shipToState> <Devices/>
<shipToZip>84042</shipToZip> <currencyCode>USD</currencyCode>
<shipToPhone>801-555-1212</shipToPhone> <TotalDevicePrice>8919.80</TotalDevicePrice>
<cardholderName>Cardholder Name</cardholderName> <TotalTaxRate>10.0000</TotalTaxRate>
<CcNum>4111111111111111</CcNum> <TotalTaxAmount>891.98</TotalTaxAmount>
<ExpDate>0422</ExpDate> <TotalAmount>9811.78</TotalAmount>
<CVV2>999</CVV2> </XMLTrans>
<billingZip>84003</billingZip> </XMLResponse>
<PostbackUrl>https://apis-sit.globalpay.com/ucp/postback/merchants
/platform/eyJtY3NfcmF3X2RhdGEiOnsibW1hX2lkIjoiTU1BXzBm
MTA0ZjYxMTk4ODQ5MDE4ZjI1NWYzNjRlN2M0ZDllIiwicHJvZHVjdC
I6W10sIm1jc19tZXJjaGFudF9pZCI6Ik1FUl9kODdkOGE1NmI4YzQ0
ZjVkYWY1YzEwNzExZDkwYzA0MiJ9LCJYLUdQLVZlcnNpb24iOiIyMD
IxLTAzLTIyIiwibV9hcHBfaWQiOiJqd0VrTUo4bUNYRVVQNkVXdjUw
OFc2WU1qNXpQSlNOVyIsInhfZ2xvYmFsX3RyYW5zYWN0aW9uX2lkIj
oicnJ0LWY5ZGI5OTk3LWI2ZTgtNDUzZS1iNWEyLTlhNmJiNTMxNGJj
MmY4bDh1In0=</PostbackUrl>
<PostbackUrl2>https://apis-sit.globalpay.com/ucp/postback/merchants/platform/
eyJtY3NfcmF3X2RhdGEiOnsibW1hX2lkIjoiTU1BXzBmMTA0ZjYxMTk4ODQ5MDE
4ZjI1NWYzNjRlN2M0ZDllIiwicHJvZHVjdCI6W10sIm1jc19tZXJjaGFudF9pZC
I6Ik1FUl9kODdkOGE1NmI4YzQ0ZjVkYWY1YzEwNzExZDkwYzA0MiJ9LCJYLUdQL
VZlcnNpb24iOiIyMDIxLTAzLTIyIiwibV9hcHBfaWQiOiJqd0VrTUo4bUNYRVVQ
NkVXdjUwOFc2WU1qNXpQSlNOVyIsInhfZ2xvYmFsX3RyYW5zYWN0aW9uX2lkIjo
icnJ0LWY5ZGI5OTk3LWI2ZTgtNDUzZS1iNWEyLTlhNmJiNTMxNGJjMmY4b
Dh1In0=</PostbackUrl2>
<SoundPayments>
<SoundPayment>
<SoundPaymentsSettingsPwd>12365478</SoundPaymentsSettingsPwd>
<SoundPaymentsPosId>1</SoundPaymentsPosId>
<SoundPaymentsPwd>12365478</SoundPaymentsPwd>
<SoundPaymentsTerminalId>9530</SoundPaymentsTerminalId>
<SoundPaymentsToken>token123</SoundPaymentsToken>
<SoundPaymentsUsername>soundUserName</SoundPaymentsUsername>
</SoundPayment>
</SoundPayments>
<Devices>
<Device>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 55
<Name>Nimbus2000</Name>
<Quantity>1</Quantity>
<Attributes>
<ItemName="Heartland.AMD.OfficeKey" Value="sample_value"/>
</Attributes>
</Device>
</Devices>
</XMLTrans>
</XMLRequest>

4.13 Address Lookup (Equifax) Transaction Type 212


This method is for use outside of the United States and will return several details associated with the merchant and/or beneficiary owner address. This call ie
specific to Equifax.

Request Elements - Required


Element Type Max Required Notes
Include if the address represents a building that has been given a name OR is
important to the location of the merchant or beneficiary owner address.
bldgName String Optional
*Mandatory if the Building Number is not provided.

String 50 Optional The building number for the merchant or beneficiary owner address.
bldgNumber
*Mandatory if Building Name is not provided.
bldgPostCode String 10 Required The postal code related to the building for the merchant or beneficiary owner
address.

Response Elements
Element Type Notes
addrTransId String This is a "transaction" id assigned by Equifax to identify the address listings returned against each API
call to their Address Lookup service.
addrTransIdCreatedDate String This is the date the Equifax "transaction" id was created.
Address Array
addrId String This is a unique address identity number assigned to each distinct
address returned by Equifax.
buildingName String The name of the building associated with the address.
buildingNumber String The building number for the address.
buildingAddress1 String The street address.
buildingDistrict String District associated with the address.
buildingTown String Town associated with the address.
buildingCounty String County associated with the address.
buildingCountry String Country associated with the address.
buildingPostalCode String Postal code associated with the address.
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 56
Sample XML Request Response
<XMLRequest> <XMLResponse>
<certStr>4318546c9e6b43bfb81be4555f6837</certStr> <XMLTrans>
<termid>30c5cad2b7</termid> <transType>212</transType>
<XMLTrans> <status>00</status>
<transType>212</transType> <addrTransId>ff12a9f2-0002-4deb-8495-e95c048efb36</addrTransId>
<bldgName>221 B</bldgName> <addrTransIdCreatedDate>2022-07-07T07:16:56.751+00:00</addrTransIdCreatedDate>
<bldgNumber>12545</bldgNumber> <addresses>
<bldgPostCode>CB6 1AS</bldgPostCode> <address>
</XMLTrans> <addrId>28030106476</addrId>
</XMLRequest> <buildingName>221 B</buildingName>
<buildingNumber>2649</buildingNumber>
<buildingAddress1>BAKER STREET</buildingAddress1>
<buildingDistrict>Harrow</buildingDistrict>
<buildingTown>ELY</buildingTown>
<buildingCounty>CAMBS</buildingCounty>
<buildingCountry>United Kingdom</buildingCountry>
<buildingPostalCode>CB6 1AS</buildingPostalCode>
</address>
<address>
<addrId>28030108290</addrId>
<buildingName>221 B</buildingName>
<buildingNumber>4278</buildingNumber>
<buildingAddress1>CROMWELL ROAD</buildingAddress1>
<buildingDistrict>Harrow</buildingDistrict>
<buildingTown>ELY</buildingTown>
<buildingCounty>CAMBS</buildingCounty>
<buildingCountry>United Kingdom</buildingCountry>
<buildingPostalCode>CB6 1AS</buildingPostalCode>
</address>
</addresses>
</XMLTrans>
</XMLResponse>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 57
4.14 Obtain a Working Key for Single-Sign-On Boarding Transaction 302
NOTE: ONLY for Boarding. This API call will return an error code if the Partner hasn’t been configured with a tier to allow online boarding. Once the
merchant has been boarded, the merchant’s account number must be used to get an authorization token and access the account management SSO
pages.
Request Element Type Max Required Notes
certStr string Required Affiliation Credential for API Access.
termid string Required ProPay Credential.
class string Required Always set value to : partner
transtype string Required Transtype: 302 (This method is a request for an authorization token)
tier string Required This is the tier that the merchant will signup under (selected by the partner)
ReferrerUrl string Optional This is the website URL where you are embedding the iFrame
IpAddress string Optional Web address of the server sending the request
IpSubnetMask string Optional Subnet mask of computer sending the request (normally 255.255.255.0)

Response Elements
Element Type Notes
Result of the transaction request. See Propay Appendix B for result code definitions (00 is
status string
success).
transType string This was the transtype completed
URL string This is the URL to the authorized embeddable iframe – this includes the authorization token
expiration string This is the date and time when the authorization token provided will expire

Sample XML Request Response


<XMLRequest> <XMLResponse>
<certStr>8ac9b7db6b8b3717fe60d2e8</certStr> <XMLTrans>
<termid>760d2e8</termid> <url>https://propay.merchant-
<class>partner</class> portals.com/MerchantSignup?onboardingauthorizationtoken=859c358e-4f61-46b5-a41c-
<XMLTrans> cf6c882dd1ff</url>
<transType>302</transType> <expiration>2023-08-01T23:34:42Z</expiration>
<tier>Tier Name</tier> <transType>302</transType>
</XMLTrans> <status>00</status>
</XMLRequest> </XMLTrans>
</XMLResponse>

The URL provided in the XMLResponse is the address of the embeddable iFrame.
Embedded code example:
<html>
<body>
<iframe src=https://propay.merchant-portals.com/MerchantSignup?onboardingauthorizationtoken=859c358e-4f61-46b5-a41c-cf6c882dd1ff" width="800" height="800"> </iframe>
</body>
</html>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 58
4.14 Device Order Tax Calculation Transaction 431
Use this method to calculate tax on device order. Given the shipping address and the devices that you want to order, this endpoint will provide tax
information with the help of third-party provider Avalara.

Address Information - Required


Element Type Max Required Notes
shipToAddress string 100 Yes The address line 1 where the device should be shipped.
shipToAddress2 string 100 No The address line 2 where the device should be shipped.
shipToCity string 30 Yes The city where the device should be shipped.
shipToZip string 10 Yes The zip code where the device should be shipped.
shipToState string 3 Yes The state where the device should be shipped. (NOT required for UK addresses)
shipToCountry string 3 Yes The country where the device should be shipped.

Devices - Reqruied
Element Type Max Required Notes
Name string 50 Yes Unique name of the device being ordered.
Quantity string Int32 Yes Number of devices ordered.

Tier Information - Optoinal


XML Element Type Max Required Notes
tier string 20 No The name of the tier where the devices are settled (ex. Premium).

Response Elements
Element Type Notes
transType string The transaction type. Will always return as 431.
status string Result of the transaction request. See the ProPay Appendix for result code definitions.
Name string The name of the device being ordered.
Quantity string Number of devices ordered.
Price string The price of each device.
TotalDevicePrice string The total device price (net amount).
TotalTaxRate string The total tax rate calculated on the total device price (in percents).
TotalTax string The tax amount that needs to be added on total device price.
TotalAmount string The devices amount with tax included (gross amount).

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 59
Sample XML Request Response
<XMLRequest> <XMLResponse>
<certStr>8ac9b7db6b8b3717fe60d2e8</certStr> <XMLTrans>
<termid>760d2e8</termid> <transType>431</transType>
<class>partner</class> <status>00</status>
<XMLTrans> <Devices>
<transType>431</transType> <Device>
<tier>Tier Name</tier> <Name>Test Device #13867aa66</Name>
<shipToAddress>Address Line</shipToAddress> <Quantity>1</Quantity>
<shipToAddress2>A150</shipToAddress2> <Price>8919.80</Price> </Device>
<shipToCity>Denver</shipToCity> <Device>
<shipToZip>80014</shipToZip> <Name>Test Device #24900b396</Name>
<shipToState>CO</shipToState> <Quantity>1</Quantity>
<shipToCountry>USA</shipToCountry> <Price>4.00</Price>
<Devices> </Device> </Devices>
<Device> <TotalDevicePrice>89.35.80</TotalDevicePrice>
<Name>Test Device #13867aa66</Name> <TotalTaxRate>10.0000</TotalTaxRate>
<Quantity>1</Quantity> <TotalTaxAmount>893.58</TotalTaxAmount>
</Device> <TotalAmount>9829.38</TotalAmount>
<Device> </XMLTrans>
<Name>Test Device #24900b396</Name> </XMLResponse>
<Quantity>1</Quantity>
</Device>
</Devices>
</XMLTrans>
</XMLRequest>
5.0 Funds Management Methods
5.1 Add funds to a ProPay Account Transaction Type 37
This method will load an account with funds from its on-file direct deposit account.
- This transaction type is only available for US Merchants
- If an account’s DDA has not been “validated” on the ProPay website, then this method will not work and the API will return a 67 response code.
(This response code can also indicate that the account is not permitted to add funds via an API request.)
- The amount must be greater than or equal to $1.00 USD and funds take 1-5 business days to become available based on the account settings.
- This transaction type requires an x509 certificate as additional authentication.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay.
amount Int(64) Required The value representing the number of pennies in USD, or the number of [currency] without decimals.

Response Elements
Element Type Notes
transType string Will always return as 37.
status string Result of the transaction request. See Appendix for result code definitions
accountNum Int(32) Echo of the account the API request was made for.
transNum Int(32) The ProPay account transaction identifier.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>37</transType>
<certStr>MyCertStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> <transNum>1820</transNum>
<XMLTrans> </XMLTrans>
<transType>37</transType> </XMLResponse>
<amount>100</amount>
<accountNum>123456</accountNum>
</XMLTrans>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 61
5.2 Sweep funds from a ProPay Account Transaction Type 38
This method will initiate a transfer of funds from the ProPay account available balance to its on file direct deposit bank account. This method should
be used if regularly-scheduled system sweeps do not meet business needs or greater control over the amount or timing of sweeps is desired.
- This transaction type is only available for US Merchants
- The account must have a balance greater or equal to $1.00 USD

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay.
amount Int(64) Required The value representing the number of pennies in USD, or the number of [currency] without decimals.

Response Elements
Element Type Notes
transType string Will always return as 38.
status string Result of the transaction request. See ProPay Appendix for result code definitions.
accountNum Int(32) Echo of the account the API request was made for.
transNum Int(32) The ProPay account transaction identifier.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>38</transType>
<certStr>My certStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> <transNum>1820</transNum>
<XMLTrans> </XMLTrans>
<transType>38</transType> </XMLResponse>
<amount>100</amount>
<accountNum>123456</accountNum>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 62
5.3 Reissue a ProPay MasterCard Debit Card Transaction Type 31
This method will request that a new ProPay MasterCard with the same number be sent to the account mailing address.

- Use this method for ProPay MasterCards that are worn out from repeated use and before the current expiration date of the card.
- If a new card number is required due the card being lost or stolen use ProPay API method 4.6.3 ‘Mark ProPay MasterCard Lost or Stolen’ to have
a new card issued.
- If the account has been marked to have a PIN mailer sent each time a card is issued or reissued, the PIN number will be mailed to account
mailing address. See 4.6.2 ‘Send ProPay MasterCard PIN mailer’ for more details.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum integer Echo of the account the API request was made for

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>31</transType>
<certStr>My certStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> </XMLTrans>
<XMLTrans> </XMLResponse>
<transType>31</transType>
<accountNum>123456</accountNum>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 63
5.4 Send a Propay MasterCard PIN Mailer Transaction Type 30
This method will send a ProPay MasterCard PIN number through standard postal service to the account mailing address.
- This method will set the account to always require a PIN to be mailed to the account mailing address whenever a ProPay MasterCard is issued or
reissued.
- This method will return a status 00 regardless of services allowed. If an account is not permitted to receive it, a ProPay MasterCard mailer will not
be sent.

Request Elements Defined


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay

Response Elements Defined


Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum integer Echo of the account the API request was made for

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>30</transType>
<certStr>My certStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> </XMLTrans>
<XMLTrans> </XMLResponse>
<transType>30</transType>
<accountNum>123456</accountNum>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 64
5.5 Mark a ProPay MasterCard Debit Card Lost or Stolen Transaction Type 29
This method will mark the ProPay MasterCard issued to a ProPay account lost or stolen. This will immediately disable the currently-assigned ProPay
MasterCard and issue a new card with a new number. The card PIN number will be mailed to the account mailing address.
- If an account does not have a ProPay MasterCard assigned to it, this method will respond with a status 48, invalid ccNum.
- If an account has a ProPay MasterCard status of ‘card requested’ but it has not been issued, this method will return with a status 49, invallid
expDate

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay

Response Elements Defined


Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum integer Echo of the account the API request was made for

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>29</transType>
<certStr>My certStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> </XMLTrans>
<XMLTrans> </XMLResponse>
<transType>29</transType>
<accountNum>123456</accountNum>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 65
5.6 Flash Funds – Add or Change Card Assigned to a ProPay Account Transaction Type 209
This method is used to add a card as a destination for ProPay’s Flash Funds solution. It can also be used to change the card already attached to an
account.
- Only debit cards are supported. Funds transfer to a credit card takes as long as standard ACH out.
- Only Visa and MasterCard cards are supported.
- Requires the use of x509 certificate

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay.
ccNum String 19 Required Standard cc numbers which must pass Luhn check.
expDate String 4 Required The expiration date in MMYY format.
CVV2 String 4 Required The Card CVV2 Code. *Accepts both 3 and 4 character types.
cardholderName String 25 Required Name on card.
streetAddress String 20 Required Card holder’s address.
city String 30 Required Card holder’s address
state String 2 Required ISO standard 2 character US State code.
zipCode String 9 Required Valid-format US zip code 5 or 9 digits.

Response Elements Defined


Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum integer Echo of the account the API request was made for

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>209</transType>
<certStr>My certStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> </XMLTrans>
<XMLTrans> </XMLResponse>
<transType>209</transType>
<accountNum>718033306</accountNum>
<ccNum>4895142232120006</ccNum>
<expDate>1025</expDate>
<CVV2>022</CVV2>
<cardholderName>Clint Eastwood</cardholderName>
<addr>900 Metro Center Blv</addr>
<city>San Fransisco</city>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 66
<state>CA</state>
<zip>94404</zip>
<country>USA</country>
</XMLTrans>
</XMLRequest>

5.7 Flash Funds – Push Funds to On-File Card Transaction Type 45


This method is used to push money from a ProPay account out to the on-file payment instrument set up for Flash Funds.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay.
amount Int(32) Required The value representing the number of pennies in USD, or the number of [currency] without decimals.

Response Elements Defined


Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum integer Echo of the account the API request was made for

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>45</transType>
<certStr>My certStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> </XMLTrans>
<XMLTrans> </XMLResponse>
<transType>45</transType>
<accountNum>123456</accountNum>
<amount>100</amount>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 67
5.8 Reserve Funds – Establish Reserve Transaction Type 50
This method is used to move funds from Available balance to Reserve balance of a ProPay account.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay.
amount Int(32) Required The value representing the number of pennies in USD, or the number of [currency] without decimals.

Response Elements Defined


Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum integer Echo of the account the API request was made for

Sample XML Request Response


<?xml version='1.0'?>
<!DOCTYPE Request.dtd> <XMLResponse>
<XMLRequest> <XMLTrans>
<certStr>My certStr</certStr> <transType>50</transType>
<termid>termid</termid> <accountNum>123456</accountNum>
<XMLTrans> <status>00</status>
<transType>50</transType> </XMLTrans>
<accountNum>123456</accountNum> </XMLResponse>
<amount>100</amount>
</XMLTrans>
</XMLRequest>

5.9 Reserve Funds – Release Reserve Transaction Type 51


This method is used to move funds from Reserve balance to Available balance of a ProPay account.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay.
amount Int(32) Required The value representing the number of pennies in USD, or the number of [currency] without decimals.

Response Elements Defined


Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum integer Echo of the account the API request was made for

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 68
Sample XML Request Response
<?xml version='1.0'?>
<!DOCTYPE Request.dtd> <XMLResponse>
<XMLRequest> <XMLTrans>
<certStr>My certStr</certStr> <transType>51</transType>
<termid>termid</termid> <accountNum>123456</accountNum>
<XMLTrans> <status>00</status>
<transType>51</transType> </XMLTrans>
<accountNum>123456</accountNum> </XMLResponse>
<amount>100</amount>
</XMLTrans>
</XMLRequest>

5.11 Account Fee – Reverse an A La Carte fee transaction Transaction Type 222
This method creates a single reversal of an a la carte fee transaction against the merchant account.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay.
amount Int(32) $10,000 Required The value representing the number of pennies in USD, or the number of [currency] without decimals.
Valid fee Types:
 1 – PCI Services Fee
 2 – PCI noncompliance Fee
 3 - Report Delivery Fee
 4 – Gateway Access Fee
 5 – Account Maintenance Fee
refundReasonType Int(32) Required
 6 – Fraud Prevention Fee
 7 – Service Fee
 8 – SOW Fee
 9 – Activation Fee
 10 – Monthly License Fee

AttemptNumber Int(32) Required Transaction Number

Response Elements Defined


Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions

Sample XML Request Response

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 69
<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <status>00</status>
<certStr>My certStr</certStr> </XMLTrans>
<termid>termid</termid> </XMLResponse>
<class>partner</class>
<XMLTrans>
<transType>222</transType>
<accountNum>718039538</accountNum>
<amount>2</amount>
<refundReasonType>7</refundReasonType>
<AttemptNumber>3</AttemptNumber>
</XMLTrans>
</XMLRequest>

6.0 Transaction processing Methods


6.1 Process a Credit Card (authorize only) Transaction Type 05
This method will attempt to authorize an amount against a supplied Credit Card. An authorized amount only reserves those cardholder funds for
future capture. In order to transfer the money from the issuer into the designated ProPay merchant account, a capture request of the authorized
amount is required. Authorizations that will not be captured should be voided. Authorizations that are not captured are automatically voided after
30 days.

Using this API method does not reduce the burden of PCI compliance requirements on the merchant. The merchant remains accountable for all obligations
associated with the handling of cardholder data. Such liability includes, but is not limited to validation of compliance with the PCI DSS according to the appropriate
instrument as determined by the Payment Card Industry Security Standards Council, and financial and legal responsibility for any breach of cardholder data
originating with the entity using this API method. ProPay offers the ProtectPay® service to reduce PCI compliance requirements on the merchant. For additional
Information concerning ProtectPay® please speak to a ProPay sales representative or account manager.

This method requires one of several optional means to supply the credit card number:
- Card Not Present Data: ccNum, expDate, CVV2, Address information
- Encrypted “Track Data” from an approved swipe device: encryptingDeviceType, keySerialNumber, encryptedTrackData, encryptedTrackData2
- External Payment Provider Information (wallet solution): externalPaymentMethodProvider, externalPaymentMethodIdentifier

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay
comment1 String 120 Optional Merchant transaction descriptor.
comment2 String 120 Optional Merchant transaction descriptor.
ISO standard 3 character currency code for a foreign currency transaction. Amex and Discover
currencyCode String 3 Optional are not supported on Multi-Currency transactions (Auth in one currency, settle in another)
*Must be an allowed currency code for the merchant account.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 70
Best Transactions are rejected as duplicate when the same card is charged for the same amount with
invNum String 50
practice the same invoice number, including blank invoices, in a 30 second period.
The value representing the number of pennies in USD, or the number of [currency] without
amount Integer Required
decimals.
Letters, numbers and spaces but no special characters are allowed.
TransactionMerch This value will appear on the cardholder’s credit card statement. Full descriptor length is 29, but the
String 25 Optional
antDescriptor first 4 characters are consumed by a prefix that is set by ProPay. (Either identifies ProPay, or the
integrated partner.)

Request Element – Optional – Network Token


Element Type Max Required Notes
Tokenization.Token String Required This field contains eleven digits that uniquely identify the pairing of token requestor with the token
RequestorID domain. It is assigned by the token service provider and is unique within the token vault.
String Required This would be the encrypted string (converted to HEX) that goes into G3v017 in the CAVV Revised
Tokenization.TAAV field. The format is a 40-digit A/N HEX value.

Note: VISA's recommendation is to use this value instead of the DTVV


String Required This is the same as PAN (surrogate to PAN); 13-19 digits.
Tokenization.Token
This will be provided by the Token Service Provider.
String Required The Dynamic Token Verification Value (DTVV) exists for Visa merchants that process
tokenized e-commerce transactions
Tokenization.DTVV
This will be provided by the Token Service Provider.
Note: VISA's recommendation is to use TAVV instead of the DTVV
Tokenization.Token String Required
This is like card expiry date
ExpiryDate
Valid Values are Y and N. Defaults to N if not passed * Only required if payment is recurring
recurringPayment String 1 Optional payment
ExternalTransactio Data returned in this field is recorded and submitted as part of the data capture settlement format.
nIdentifier String 15 Optional * Only required if payment is recurring payment
*Recurring payments require both the recurringPayment and ExternalTransactionIdentifier elements to be passed in addition to all other existing
fields.

Request Element – Optional – MasterCard Only


Element Type Max Required Notes
If the merchant is performing a MasterCard transaciton, then they can send the CITMITIndicator in
CITMITIndicator String Optional the XML Request. If providing a CITMITIndicator, you must also provide a valid CITMITSubIndicator.
This is for MasterCard only. Valid Values Provided below. Defaults to ‘N’ if not passed.
If the merchant is performing a MasterCard transaction, a CITMITSubIndicator may be specified in
CIMITSubIndicator String Optional the XML Request. SubIndicators must have a valid Indicator specified. Valid values are provided
below.

CITMIT Indicator and SubIndicator values


CITMIT Indicator CITMIT SubIndicator Transaction Type Example

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 71
01 Credential on File C101
02 Standing Order (Variable amount, fixed frequency) C102
C1
03 Subscription (Fixed amount and fixed frequency) C103
04 Installment C104
01 Unscheduled, credential on file M101
02 Standing order (Variable amount, fixed frequency) M102
M1
03 Subscription(Fixed amount and fixed frequency) M103
04 Installment M104
05 Partial shipment M205
06 Related / delayed charge M206
M2
07 No show charge M207
08 Resubmission M208

CITMIT example Scenarios:


 If a cardholder uses a credential on file to perchance new item today: Indicator should be C101 (Customer initiated / Credential on file)
 If a cardholder initiates a purchase and the merchant stores credentials for future carcholder-initiated purchases: indicatror should C101
 If cardholder purchases and merchant charges card on file: indicator should be M101 (merchant initiated / unscheduled card on file)
 If cardholder purchases multiple items, shipped at separate times: indicator should be M205 (merchant initiated / partial shipment)

Credit Card Data: Card Not Present - Optional


Element Type Max Required Notes
ccNum String Required Standard cc numbers which must pass Luhn check.
CVV2 String Optional The Card CVV2 Code. *Accepts both 3 and 4 character types.
expDate String Required The expiration date in MMYY format.
Cardholder address. AVS does not typically work when cards are issued outside the US. *Max
addr String 50 Optional
length is 40 for multi-currency transactions.
addr2 String 20 Optional Cardholder Address second line
addr3 String 100 Optional Cardholder Address third line
aptNum String 20 Optional Cardholder apartment number *Do not use if using addr2 instead
city String 30 Optional Cardholder City.
state String Optional Cardholder state. *2 character state code submitted in all capital letters
Best Cardholder zip or postal code *Minimum 3 characters maximum 9. ProPay May require this
Zip String
Practice information for merchants to receive best processing rates.
Cardholder country. Necessary for valid AVS responses on ProPay accounts held in foreign
country String Optional
currencies.
cardholderName String 100 Optional Not needed if track data used

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 72
Credit Card Data: ProPay Approved Swipe Device - Optional
Element Type Max Required Notes
Some devices encrypt the data on each track separately.
encryptedTrack2Data String Optional*
*When track 2 has been encrypted as a separate value this value is required.
encryptedTrackData String Required Contents of track 1 or track 1 and 2 submitted as encrypted block.
Valid Values:
MagTekM20
MagTekFlash
encryptingDeviceType String Required IdTechUniMag
MagTekADynamo
MagTekDynaMag
RoamData
Value is obtained from the hardware device. This value is required to identify the
keySerialNumber String Required
ProPay hosted decryption key needed to decrypt the Track Data.

Credit Card Data: External Wallet provider - Optional


Element Type Max Required Notes
externalPaymentMethodIdentifier String Required Must be a valid Visa Checkout or MasterPass payment identifier.
externalPaymentMethodProvider String Required Valid Values are VisaCheckout and MasterPass
MasterPassWalletId String Required MasterPass Wallet ID provided by MasterPass.

Fraud Control using Guardian Cyber-Shield - Optional


Element Type Max Required Notes
SessionId Guid 36 Required Required for, and obtained from Threat Metrix fraud prevention solution
InputIpAddress IP 16 Required Optional for Threat Metrix. Status 133 is returned when declined by Threat Metrix.

Specialty Processing - Optional


Element Type Max Required Notes
Valid values are: Y and N. If a ProPay Merchant Account is set up for Bill Payment, this is always
billPay String Optional
included in the request to the cardholder’s bank no matter what API request specifies.
recurringPayment String 1 Optional Valid Values are Y and N. Defaults to N if not passed
Valid Values are Y and N. Defaults to N if not passed or if an invalid entry is detected. Only works
DebtRepayment String 1 Optional
with Visa transactions.

Quasi Cash Transaction Indicator - Optional


Element Type Max Required Notes
If the merchant is performing a Quasi Cash transaction while attempting an account opening
IsQuasiCash String 1 Optional transaction, then they need to send the quasi cash indicator in the XML API request. This indicator is
supported for VISA and MasterCard only.
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 73
Valid values are Y and N. Defaults to N if not passed

Apple Pay Tokenization – Optional


NOTE: Partners need to be integrated with Apple before any implementation of this method will work. Apple integration is required to obtain the correct cryptogram
for the transaction. In essence, the ProPay system simply uses the cryptogram instead of the credit card number for the transaction.
Element Type Max Required Notes
This field contains eleven digits that uniquely identify the pairing of token requestor
Required
ApplePay.TokenRequestorID String with the token domain. It is assigned by the token service provider and is unique
(Visa)
within the token vault.
Required This would be the encrypted string (converted to HEX) that goes into G3v017 in the
ApplePay.TAAV String
(Visa) CAVV Revised field. The format is a 40-digit A/N HEX value.
Required This is the same as PAN (surrogate to PAN); 13-19 digits.
ApplePay.Token String
(Visa) This will be provided by the Token Service Provider.
Required
ApplePay.TokenExpiryDate String This is like card expiry date
(Visa)
Universal Cardholder Authentication Field (UCAF) is a cryptographic value.
Mastercard® SecureCode™ issuer or cardholder-generated authentication data
Required
ApplePay.SecureCode String 32 resulting from all SecureCode fully authenticated or attempts transaction for
(MasterCard)
Mastercard account. This field is populated when a UCAF-enabled merchant has
collected authentication data and must pass it in the transaction to the issuer.
Required
ApplePay.ProgramProtocol String 1 Cardholder Authentication Field. Mastercard SecureCode transactions only.
(MasterCard)
The Directory Server Transaction ID is generated by the EMV 3DS Mastercard Directory
Server during the authentication transaction and passed back to the merchant with
AppolePay.DirectoryServerTra Required
String 36 the authentication results. This field allows the merchant to pass the Directory Server
nsactionID (MasterCard)
Transaction ID during authorization in order to link authentication and authorization
data for Mastercard Identity Check. This data is also required for capture/settlement.
ApplePay.DigitalPaymentCryp Required It is used to send a Digital Secure Remote Payment (DSRP) cryptogram for DSRP
String 28
togram (MasterCard) transactions submitted as electronic commerce.
This field indicates if the cardholder is a registered user on a merchant's website
ApplePay.RegisteredUserIndic Required
String (Discover transactions only). This field is required for Discover e-Commerce
ator (Discover)
transactions.
This field defines the date when the cardholder last voluntarily changed his or her
ApplePay.LastRegisteredChan Required
Integer 1 registered profile (Discover transactions only). If the Registered User Indicator value is
geDate (Discover)
N, this value should be zero filled. Format: DDMMYYYY.

Response Elements
Element Type Notes
status string Result of the transaction request. See Propay Appendix for result code definitions
accountNum integer ProPay account number transaction was processed against.
The auth code supplied by the issuing bank.
authCode string
*Only returned on a successful transaction.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 74
Issuer returned AVS response. *Most issuers approve even if mismatch. Please review and use response to void if
AVS string
concerns exist about AVS response..
convertedAmount integer Amount expressed in the currency of the merchant account. * Returned on multi-currency transactions.
convertedCurrencyCode string ISO standard currency code of the ProPay merchant account. *Returned on multi-currency transactions.
currencyConversionRate decimal Exchange rate of the currency conversion. See 3.3 *Returned on multi-currency transactions.
CVV2Resp string Issuer returned CVV2 response. *Almost all issuers decline if CVV mismatch.
GrossAmt integer Gross amount of transaction of pennies in USD, or the number of [currency] without decimals.
GrossAmtLessNetAmt integer Total amount of fees charged.
invNum string Echo of the invNum passed in the request
NetAmt integer Net amount of transaction after fees charged.
PerTransFee integer The ProPay set per transaction fee applied to this transaction.
Rate decimal The percentage based fee applied to this transaction.
resp string Textual representation of the issuer returned response code.
Response String Returned with the Amex Enhanced Auth Fraud solution
responseCode string The Issuer returned response code. See Propay Appendix for response code definitions
transNum integer The ProPay transaction identifier
ExternalTransactionIdentifier String Data returned in this field is recorded and submitted as part of the data capture settlement format.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>05</transType>
<certStr>MyCertStr</certStr> <status>00</status>
<termid>termid</termid> <accountNum>123456</accountNum>
<class>partner</class> <invNum>cc1</invNum>
<XMLTrans> <transNum>1</transNum>
<transType>05</transType> <authCode>A11111</authCode>
<amount>100</amount> <AVS>T</AVS>
<addr>right here</addr> <responseCode>0</responseCode>
<zip>22222</zip> <convertedAmount>100</convertedAmount>
<accountNum>123456</accountNum> <convertedCurrencyCode>USD</convertedCurrencyCode>
<ccNum>4747474747474747</ccNum> <currencyConversionRate>1</currencyConversionRate>
<expDate>1229</expDate> <NetAmt>0</NetAmt>
<CVV2>999</CVV2> <GrossAmt>100</GrossAmt>
<cardholderName>John Doe</cardholderName> <GrossAmtLessNetAmt>100</GrossAmtLessNetAmt>
<invNum>cc1</invNum> <PerTransFee>0</PerTransFee>
<billPay>N</billPay> <Rate>0.00</Rate>
<DebtRepayment>N</DebtRepayment> </XMLTrans>
<isquasicash>N</isquasicash> </XMLResponse>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 75
6.2 Capture an Authorized Credit Card Transaction Transaction Type 06
This method will capture a credit card transaction that was initiated by the Authorization Only API method.
- Captures should be performed within 24 hours of the original authorization
- Clients cannot capture for more than the original authorization, except in specific circumstances.
- Payments should not be captured more than 48 hours before a purchased product is shipped or a service provided

Request Elements - Required


Element Type Max Required Notes
Signed
accountNum Int(32) Required Assigned to each account by ProPay
Int(32)
transNum Int(32) Required
Minimum amount must be 100 (one dollar) If no amount is submitted, captures for total of initial auth.
amount Int(32) Optional
Capture amount cannot be for more than initial Auth.

Response Elements
Element Type Notes
status String See Propay Appendix for explanation of each status
accountNum Integer Assigned to each account by ProPay
GrossAmt Integer Transaction Gross Amount
GrossAmtLessNetAmt Integer The resulting sum of both types of fee applied to this transaction.
NetAmt Integer Transaction Net Amount after ProPay applies fees.
PerTransFee Integer The ‘flat’ per transaction portion of the ProPay fee applied to this transaction.
Rate Decimal The percentage based fee applied to this transaction.
transNum Integer The ProPay transaction identifier

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>06</transType>
<status>00</status>
<certStr>MyCertStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <transNum>9</transNum>
<class>partner</class> <convertedAmount>100</convertedAmount>
<XMLTrans> <convertedCurrencyCode>Unsupported</convertedCurrencyCode>
<transType>06</transType> <currencyConversionRate>0</currencyConversionRate>
<amount>100</amount> <NetAmt>62</NetAmt>
<accountNum>123456</accountNum> <GrossAmt>100</GrossAmt>
<GrossAmtLessNetAmt>38</GrossAmtLessNetAmt>
<transNum>1</transNum> <PerTransFee>35</PerTransFee>
</XMLTrans> <Rate>3.25</Rate>
</XMLRequest> </XMLTrans>
</XMLResponse>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 76
6.3 Process a Credit Card Transaction Type 04
This method will attempt to process a complete payment (authorize and capture) against a Credit Card.

Using this API method does not reduce the burden of PCI compliance requirements on the merchant. The merchant remains accountable for all obligations
associated with the handling of cardholder data. Such liability includes, but is not limited to validation of compliance with the PCI DSS according to the appropriate
instrument as determined by the Payment Card Industry Security Standards Council, and financial and legal responsibility for any breach of cardholder data
originating with the entity using this API method. ProPay offers the ProtectPay® service to reduce PCI compliance requirements on the merchant. For additional
Information concerning ProtectPay® please speak to a ProPay sales representative or account manager.

This method requires one of several optional means to supply the credit card number:
- Card Not Present Data: ccNum, expDate, CVV2, Address information
- Encrypted “Track Data” from an approved swipe device: encryptingDeviceType, keySerialNumber, encryptedTrackData, encryptedTrackData2
- External Payment Provider Information (wallet solution): externalPaymentMethodProvider, externalPaymentMethodIdentifier

Primary Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay
comment1 String 120 Optional Merchant transaction descriptor.
comment2 String 120 Optional Merchant transaction descriptor.
ISO standard 3 character currency code for a foreign currency transaction. Amex and Discover
currencyCode String 3 Optional are not supported on Multi-Currency transactions (Auth in one currency, settle in another)
*Must be an allowed currency code for the merchant account.
Best Transactions are rejected as duplicate when the same card is charged for the same amount with
invNum String 50
practice the same invoice number, including blank invoices, in a 30 second period.
The value representing the number of pennies in USD, or the number of [currency] without
amount Integer Required
decimals.
Letters, numbers and spaces but no special characters are allowed.
TransactionMerch This value will appear on the cardholder’s credit card statement. Full descriptor length is 29, but the
String 25 Optional
antDescriptor first 4 characters are consumed by a prefix that is set by ProPay. (Either identifies ProPay, or the
integrated partner.)

Request Element – Optional – Network Token


Element Type Max Required Notes
Tokenization.Token String Required This field contains eleven digits that uniquely identify the pairing of token requestor with the token
RequestorID domain. It is assigned by the token service provider and is unique within the token vault.
String Required This would be the encrypted string (converted to HEX) that goes into G3v017 in the CAVV Revised
Tokenization.TAAV field. The format is a 40-digit A/N HEX value.

Note: VISA's recommendation is to use this value instead of the DTVV


String Required This is the same as PAN (surrogate to PAN); 13-19 digits.
Tokenization.Token
This will be provided by the Token Service Provider.
String Required The Dynamic Token Verification Value (DTVV) exists for Visa merchants that process
Tokenization.DTVV
tokenized e-commerce transactions
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 77
This will be provided by the Token Service Provider.
Note: VISA's recommendation is to use TAVV instead of the DTVV
Tokenization.Token String Required
This is like card expiry date
ExpiryDate
Valid Values are Y and N. Defaults to N if not passed * Only required if payment is recurring
recurringPayment String 1 Optional payment
ExternalTransactio Data returned in this field is recorded and submitted as part of the data capture settlement format.
nIdentifier String 15 Optional * Only required if payment is recurring payment
*Recurring payments require both the recurringPayment and ExternalTransactionIdentifier elements to be passed in addition to all other existing
fields.

Request Element – Optional – MasterCard Only


Element Type Max Required Notes
If the merchant is performing a MasterCard transaciton, then they can send the CITMITIndicator in
CITMITIndicator String Optional the XML Request. If providing a CITMITIndicator, you must also provide a valid CITMITSubIndicator.
This is for MasterCard only. Valid Values Provided below. Defaults to ‘N’ if not passed.
If the merchant is performing a MasterCard transaction, a CITMITSubIndicator may be specified in
CIMITSubIndicator String Optional the XML Request. SubIndicators must have a valid Indicator specified. Valid values are provided
below.

CITMIT Indicator and SubIndicator values


CITMIT Indicator CITMIT SubIndicator Transaction Type Example
01 Credential on File C101
02 Standing Order (Variable amount, fixed frequency) C102
C1
03 Subscription (Fixed amount and fixed frequency) C103
04 Installment C104
01 Unscheduled, credential on file M101
02 Standing order (Variable amount, fixed frequency) M102
M1
03 Subscription(Fixed amount and fixed frequency) M103
04 Installment M104
05 Partial shipment M205
06 Related / delayed charge M206
M2
07 No show charge M207
08 Resubmission M208

CITMIT example Scenarios:


 If a cardholder uses a credential on file to perchase new item today: Indicator should be C101 (Customer initiated / Credential on file)
 If a cardholder initiates a purchase and the merchant stores credentials for future cardholder-initiated purchases: indicatror should C101
 If cardholder purchases and merchant charges card on file: indicator should be M101 (merchant initiated / unscheduled card on file)
 If cardholder purchases multiple items, shipped at separate times: indicator should be M205 (merchant initiated / partial shipment)
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 78
Credit Card Data: Card Not Present - Optional
Element Type Max Required Notes
ccNum String Required Standard cc numbers which must pass Luhn check.
CVV2 String Optional The Card CVV2 Code. *Accepts both 3 and 4 character types.
expDate String Required The expiration date in MMYY format.
Cardholder address. AVS does not typically work when cards are issued outside the US. *Max
addr String 50 Optional
length is 40 for multi-currency transactions.
addr2 String 20 Optional Cardholder Address second line
addr3 String 100 Optional Cardholder Address third line
aptNum String 20 Optional Cardholder apartment number *Do not use if using addr2 instead
city String 30 Optional Cardholder City.
state String Optional Cardholder state. *2 character state code submitted in all capital letters
Best Cardholder zip or postal code *Minimum 3 characters maximum 9. ProPay May require this
Zip String
Practice information for merchants to receive best processing rates.
Cardholder country. Necessary for valid AVS responses on ProPay accounts held in foreign
country String Optional
currencies.
cardholderName String 100 Optional Not needed if track data used

Credit Card Data: ProPay Approved Swipe Device - Optional


Element Type Max Required Notes
Some devices encrypt the data on each track separately. *When track 2 has been
encryptedTrack2Data String Optional*
encrypted as a separate value this value is required.
encryptedTrackData String Required Contents of track 1 or track 1 and 2 submitted as encrypted block.
Valid Values:
MagTekM20
MagTekFlash
encryptingDeviceType String Required IdTechUniMag
MagTekADynamo
MagTekDynaMag
RoamData
Value is obtained from the hardware device. This value is required to identify the
keySerialNumber String Required
ProPay hosted decryption key needed to decrypt the Track Data.

Credit Card Data: External Wallet provider - Optional


Element Type Max Required Notes
externalPaymentMethodIdentifier String Required Must be a valid Visa Checkout or MasterPass payment identifier.
externalPaymentMethodProvider String Required Valid Values are VisaCheckout and MasterPass
MasterPassWalletId String Required MasterPass Wallet ID provided by MasterPass.
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 79
Fraud Control using Guardian Cyber-Shield - Optional
Element Type Max Required Notes
SessionId Guid 36 Required Required for, and obtained from Threat Metrix fraud prevention solution
InputIpAddress IP 16 Required Optional for Threat Metrix. Status 133 is returned when declined by Threat Metrix.

Specialty Processing - Optional


Element Type Max Required Notes
Valid values are: Y and N. If a ProPay Merchant Account is set up for Bill Payment, this is always
billPay String Optional
included in the request to the cardholder’s bank no matter what API request specifies.
recurringPayment String 1 Optional Valid Values are Y and N. Defaults to N if not passed
Valid Values are Y and N. Defaults to N if not passed or if an invalid entry is detected. Only works
DebtRepayment String 1 Optional
with Visa transactions.
Quasi Cash Transaction Indicator - Optional
Element Type Max Required Notes
If the merchant is performing a Quasi Cash transaction while attempting an account opening
transaction, then they need to send the quasi cash indicator in the XML API request. This indicator is
IsQuasiCash String 1 Optional
supported for VISA and MasterCard only.
Valid values are Y and N. Defaults to N if not passed

Apple Pay Tokenization – Optional


NOTE: Partners need to be integrated with Apple before any implementation of this method will work. Apple integration is required to obtain the correct cryptogram
for the transaction. In essence, the ProPay system simply uses the cryptogram instead of the credit card number for the transaction.
Element Type Max Required Notes
This field contains eleven digits that uniquely identify the pairing of token requestor
Required
ApplePay.TokenRequestorID String with the token domain. It is assigned by the token service provider and is unique
(Visa)
within the token vault.
Required This would be the encrypted string (converted to HEX) that goes into G3v017 in the
ApplePay.TAAV String
(Visa) CAVV Revised field. The format is a 40-digit A/N HEX value.
Required This is the same as PAN (surrogate to PAN); 13-19 digits.
ApplePay.Token String
(Visa) This will be provided by the Token Service Provider.
Required
ApplePay.TokenExpiryDate String This is like card expiry date
(Visa)
Universal Cardholder Authentication Field (UCAF) is a cryptographic value.
Mastercard® SecureCode™ issuer or cardholder-generated authentication data
Required
ApplePay.SecureCode String 32 resulting from all SecureCode fully authenticated or attempts transaction for
(MasterCard)
Mastercard account. This field is populated when a UCAF-enabled merchant has
collected authentication data and must pass it in the transaction to the issuer.
Required
ApplePay.ProgramProtocol String 1 Cardholder Authentication Field. Mastercard SecureCode transactions only.
(MasterCard)
The Directory Server Transaction ID is generated by the EMV 3DS Mastercard Directory
AppolePay.DirectoryServerTra Required
String 36 Server during the authentication transaction and passed back to the merchant with
nsactionID (MasterCard)
the authentication results. This field allows the merchant to pass the Directory Server
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 80
Transaction ID during authorization in order to link authentication and authorization
data for Mastercard Identity Check. This data is also required for capture/settlement.
ApplePay.DigitalPaymentCryp Required It is used to send a Digital Secure Remote Payment (DSRP) cryptogram for DSRP
String 28
togram (MasterCard) transactions submitted as electronic commerce.
This field indicates if the cardholder is a registered user on a merchant's website
ApplePay.RegisteredUserIndic Required
String (Discover transactions only). This field is required for Discover e-Commerce
ator (Discover)
transactions.
This field defines the date when the cardholder last voluntarily changed his or her
ApplePay.LastRegisteredChan Required
Integer 1 registered profile (Discover transactions only). If the Registered User Indicator value is
geDate (Discover)
N, this value should be zero filled. Format: DDMMYYYY.

Response Elements
Element Type Notes
status string Result of the transaction request. See Propay Appendix for result code definitions
accountNum integer ProPay account number transaction was processed against.
authCode string The auth code supplied by the issuing bank. *Only returned on a successful transaction.
Issuer returned AVS response. *Most issuers approve even if mismatch. Please review and use response to void if
AVS string
concerns exist about AVS response.
convertedAmount integer Amount expressed in the currency of the merchant account. * Returned on multi-currency transactions.
convertedCurrencyCode string ISO standard currency code of the ProPay merchant account. *Returned on multi-currency transactions.
currencyConversionRate decimal Exchange rate of the currency conversion. See 3.3 *Returned on multi-currency transactions.
CVV2Resp string Issuer returned CVV2 response. *Almost all issuers decline if CVV mismatch.
GrossAmt integer Gross amount of transaction of pennies in USD, or the number of [currency] without decimals.
GrossAmtLessNetAmt integer Total amount of fees charged.
invNum string Echo of the invNum passed in the request
NetAmt integer Net amount of transaction after fees charged.
PerTransFee integer The ProPay set per transaction fee applied to this transaction.
Rate decimal The percentage based fee applied to this transaction.
resp string Textual representation of the issuer returned response code.
Response String Returned with the Amex Enhanced Auth Fraud solution
responseCode string The Issuer returned response code. See Propay Appendix for response code definitions
transNum integer The ProPay transaction identifier
ExternalTransactionIdentifier String Data returned in this field is recorded and submitted as part of the data capture settlement format.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>04</transType>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 81
<certStr>MyTestCertStr00000001</certStr> <status>00</status>
<termid>termid</termid> <accountNum>123456</accountNum>
<class>partner</class> <invNum>cc1</invNum>
<XMLTrans> <transNum>1</transNum>
<transType>04</transType> <authCode>A11111</authCode>
<amount>100</amount> <AVS>T</AVS>
<addr>right here</addr> <responseCode>0</responseCode>
<zip>22222</zip> <convertedAmount>100</convertedAmount>
<accountNum>3130000</accountNum> <convertedCurrencyCode>USD</convertedCurrencyCode>
<ccNum>4747474747474747</ccNum> <currencyConversionRate>1</currencyConversionRate>
<expDate>1229</expDate> <NetAmt>0</NetAmt>
<CVV2>999</CVV2> <GrossAmt>100</GrossAmt>
<cardholderName>John Doe</cardholderName> <GrossAmtLessNetAmt>100</GrossAmtLessNetAmt>
<invNum>cc1</invNum> <PerTransFee>0</PerTransFee>
<billPay>N</billPay> <Rate>0.00</Rate>
<DebtRepayment>N</DebtRepayment> </XMLTrans>
<isquasicash>N</isquasicash> </XMLResponse>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 82
6.4 Process an ACH Transaction Transaction Type 36
This method will perform an ACH draft of funds from a payers checking or savings account, also known as an eCheck.
- This transaction type requires additional agreements be in place and the account enabled to receive ACH payments.
- This transaction type is only available for US Merchants

Request Elements - Required


Element Type Max Required Notes
accountName String 32 Required A descriptive name for the account being drawn from.
accountNum Int(32) Required Assigned to each account by ProPay
AccountNumber Int(32) 20 Required Bank account number.
accountType String Required Valid values are: Checking and Savings
The value representing the number of pennies in USD, or the number of [currency] without
amount Int(32) Required
decimals.
RoutingNumber Int(32) 9 Required Valid ABA routing number or CPA EFT code
StandardEntryClassCode String 3 Required Valid values are: WEB, TEL, CCD, and PPD
comment1 String 120 Optional Optional Comment Line 1
comment2 String 120 Optional Optional Comment Line 2
invNum String 50 Optional Optional Invoice Number for external tracking

Fraud Monitoring using Guardian Cyber-Shield - Optional


Element Type Max Required Notes
InputIpAddress IP Optional Optional for Threat Metrix. Status 133 is returned when declined by Threat Metrix.
SessionId Guid 36 Optional Required for, and obtained from Threat Metrix fraud prevention solution

Response Elements
Element Type Notes
status String Result of the transaction request. See Propay Appendix for result code definitions
accountNum Int(32) ProPay account number transaction was processed against.
invNum String Echo of the Passed Invoice Number. Will not return if not passed in the request.
transNum Int(32) ProPay assigned transaction identifier.
GrossAmtLessNetAmt long Difference of Gross amount and Net amount
Rate decimal Rate
PerTransFee Int(32) per transaction fee
NetAmt Long Net amount
GrossAmt Long Transaction amount

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 83
Sample XML Request Response
<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>36</transType>
<certStr>My certStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <invNum> My Invoice </invNum>
<class>partner</class> <status>00</status>
<XMLTrans> <transNum>1820</transNum>
<transType>36</transType> <GrossAmtLessNetAmt>10</GrossAmtLessNetAmt>
<amount>100</amount> <Rate>1.00</Rate>
<accountNum>1547785</accountNum> <PerTransFee>1</PerTransFee>
<RoutingNumber>014584599</RoutingNumber> <NetAmt>50</NetAmt>
<AccountNumber>123456</AccountNumber> <GrossAmt>60</GrossAmt>
<accountType>Checking</accountType> </XMLTrans>
<StandardEntryClassCode>WEB</StandardEntryClassCode> </XMLResponse>
<accountName>Personal Account</accountName>
<invNum>My Invoice</invNum>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 84
6.5 Void or Refund an Existing Transaction Transaction Type 07
This method will either Void a transaction or Refund a transaction based on the status of the transaction and the settings of the ProPay account at
the time it is attempted. This method is used to refund/void for both Credit Card and ACH transactions,
- Captured transactions can be voided up until the time when ProPay submits the transaction for settlement with the processor. This will cancel the
transaction and processing fees will not be assessed. A void must be for the full amount of the original transaction. The transaction number
returned will be the same as the auth or capture transaction.
- Authorized transactions that have not been captured are voidable.
- For transactions that have been settled this method will perform a refund of the transaction, and will return a new transaction number identifying
the refund. Multiple partial refunds are allowed up to the total amount of the original transaction. Refunding a transaction will not reverse the
fees for the original transaction. The ProPay account must have funds available or be configured with a ‘line of credit’ to perform refunds.
- Refunds must be performed for settled transactions even if they have not yet funded into the ProPay account.
- Enhanced spendback transactions in a pending state (awaiting expiration or funds in the source ProPay account) can be voided.
- Currency rates fluctuate regularly every day. When performing a refund on a settled transaction authorized in a foreign currency, the amount
subtracted from the merchant account may be higher or lower than the original transaction amount due to rate fluctuation. The cardholder will
receive a refund of the original amount.
- If the original transaction was tokenized, the tokenized values must be used when attempting a void or refund of the transaction.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay
transNum Integer Required The ProPay transaction identifier
The value representing the number of pennies in USD, or the number of [currency] without decimals.
amount Int(64) Optional
*Minimum of 100 and if not passed, the entire transaction amount will be refunded or voided.
ISO standard 3 character currency code for a foreign currency transaction. *Required if the currency
currencyCode String 3 Optional*
of the original transaction is different than the currency of the ProPay account.
If not passed, invoice number will be the same as the transaction invNum being refunded.
Transactions are rejected as duplicate when the same card is refunded for the same amount with the
invNum String 50 Optional
same invoice number, including blank invoices, in a 30 second period. Duplicate refunds will get
Response code 69.

Request Element – Optional – Network Token


Element Type Max Required Notes
Tokenization.Token This field contains eleven digits that uniquely identify the pairing of token requestor with the token
String Required
RequestorID domain. It is assigned by the token service provider and is unique within the token vault.
This would be the encrypted string (converted to HEX) that goes into G3v017 in the CAVV Revised
field. The format is a 40-digit A/N HEX value.
Tokenization.TAAV String Required*
*In case this valuei s not sent, send DTVV

Note: VISA's recommendation is to use this value instead of the DTVV


The Dynamic Token Verification Value (DTVV) exists for Visa merchants that process
Tokenization.DTVV String Optional tokenized e-commerce transactions
This will be provided by the Token Service Provider.
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 85
Note: VISA's recommendation is to use TAVV instead of the DTVV

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum integer ProPay merchant account transaction was processed against
convertedAmount integer Amount expressed in the currency of the merchant account. * Returned on multi-currency transactions.
convertedCurrencyCode string ISO standard currency code of the ProPay merchant account. *Returned on multi-currency transactions.
currencyConversionRate decimal Exchange rate of the currency conversion. See 3.3 *Returned on multi-currency transactions.
transNum integer The ProPay transaction identifier

Sample XML Request Response


<?xml version='1.0'?> <XMLTrans>
<!DOCTYPE Request.dtd> <transType>07</transType>
<XMLRequest> <accountNum>3130000</accountNum>
<certStr>MyTestCertStr00000001</certStr> <transNum>453123</transNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> </XMLTrans>
<XMLTrans> </XMLResponse>
<transType>07</transType>
<accountNum>3130000</accountNum>
<transNum>453123</transNum>
<amount>4000</amount>
<invNum>4578A</invNum>
</XMLTrans>
</XMLRequest>

6.6 Issue an ACH Credit Transaction Type 40


This method will perform an ACH disbursement as a refund to an ACH transaction. When refunding an ACH transaction, a partial refund amount can
be specified for partial refunds. The ProPay account must have funds available in order to refund transactions. Refunding a transaction will not
reverse the fees for the original transaction.
- Refunds to a personal bank account must use the SEC Code: CCD.
- Refunds to a business account must use the SEC Code: PPD.
- This transaction type requires an x509 certificate as additional authentication.
- This transaction type is only available for US Merchants

Request Values - Required


Element Type Max Required Notes

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 86
AccountCountryCode String 3 Required ISO 3166 standard 3 character country codes. Current allowed values are: USA and CAN
AccountName String 32 Required Name on the Bank Account
accountNum Int(32) Required Assigned to each account by ProPay
AccountNumber Int(32) 20 Required Bank account number.
accountType String 20 Required Valid values are: Checking and Savings
The value representing the number of pennies in USD, or the number of [currency] without
amount Int(64) Required
decimals.
RoutingNumber Int(32) 9 Required Valid ABA routing number or CPA EFT code
StandardEntryClassCode String 3 Required Valid values are: CCD and PPD
comment1 String 120 Optional Optional Comment Line 1
comment2 String 120 Optional Optional Comment Line 2
invNum String 50 Optional Optional Invoice Number for external tracking

Response Values
Element Type Notes
status String Result of the transaction request. See ProPayAppendix for result code definitions
accountNum Int(32) ProPay merchant account transaction was processed against
invNum String Echo of the Passed Invoice Number. Will not return if not passed in the request.
transNum Int(32) The ProPay transaction identifier

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>40</transType>
<certStr>MyCertStr</certStr> <transNum>3</transNum>
<termid>termid</termid> <status>00</status>
<class>Partner</class> <accountNum>123456</accountNum>
<XMLTrans> <invNum>My Invoice Number</invNum>
<transType>40</transType> </XMLTrans>
<accountNum>123456</accountNum> </XMLResponse>
<amount>1000</amount>
<RoutingNumber>121106252</RoutingNumber>
<AccountNumber>12345678</AccountNumber>
<accountName>TEST</accountName>
<StandardEntryClassCode>CCD</StandardEntryClassCode>
<AccountCountryCode>USA</AccountCountryCode>
<accountType>Checking</accountType>
<comment1>Comment 1</comment1>
<comment2>Comment 2</comment2>
<invNum>My Invoice Number</invNum>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 87
6.7 Issue a Credit to a Credit Card Transaction Type 35
This method will issue a credit to a credit card. Credits are issued from the available balance of the ProPay Merchant Account. If a ProPay Merchant
account lacks the available balance settings to issue a credit the request will fail.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay
The value representing the number of pennies in USD, or the number of [currency] without decimals.
amount Int(64) Required
*Minimum of 100
cardholderName String 100 Required Not needed if track data used
ccNum String Required Standard cc numbers which must pass Luhn check
expDate String Required mmdd format
comment1 String 120 Optional
comment2 String 120 Optional
invNum String 50 Optional
Omit unless specially instructed by ProPay. Passing a customer email address will create an email
sourceEmail String Optional
receipt to be sent from ProPay.

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum Int(32) Assigned to each account by ProPay
AuthCode String Issuer auth code. Usually 5 characters long
invNum String Return of the value passed in the request
Resp String Textual representation of the Card Issuer responseCode.
responseCode String Issuer response
sourceEmail String Omit unless specially instructed by ProPay
transNum Int(32) The ProPay transaction identifier

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>35</transType>
<certStr>MyCertStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <invNum>cc1</invNum>
<class>partner</class> <status>00</status>
<XMLTrans> <transNum>1820</transNum>
<transType>35</transType> </XMLTrans>
<amount>100</amount> </XMLResponse>
<accountNum>123456</accountNum>
<ccNum>4747474747474747</ccNum>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 88
<expDate>1229</expDate>
<cardholderName>John Doe</cardholderName>
<invNum>cc1</invNum>
</XMLTrans>
</XMLRequest>

6.8 Get Currency Conversion Rate Transaction Type 03


This method will return a currency conversion of the amount supplied. It is only useful for ProPay accounts enabled to authorize transactions in a
local currency then settle into US Dollars. Currency rates are updated once every 24 hours and are guaranteed by the Planet Payment FX Assured®
guarantee.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay
amount Int(64) Required The value representing the number of [currencyCode] without a decimal.
currencyCode String 3 Required ISO standard 3 character currency code.
currencyCodeTo String 3 Optional ISO standard 3 character currency code. If not passed, defaults to funded currency of account.

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum Int(32) Return of the value passed in request
convertedAmount Int(32) The value of currencyCode when converted to currencyCodeTo
convertedCurrencyCode String Return of value passed as currencyCodeTo in request, or default on account
currencyConversionRate Decimal Exchange Rate of currency conversion.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>03</transType>
<certStr>MyCertStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <convertedAmount>121</convertedAmount>
<class>partner</class> <status>00</status>
<XMLTrans> <convertedCurrencyCode>USD</convertedCurrencyCode>
<transType>03</transType> <currencyConversionRate>.975<currencyConversionRate>
<amount>100</amount> </XMLTrans>
<accountNum>123456</accountNum> </XMLResponse>
<currencyCode>EUR</currencyCode>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 89
6.9 Get Working Key for Mobile SDK Transaction Type 301
This method provides the working key required by the ProPay mobile SDK to perform all actions. This method also returns a number of values that are
useful when processing with the mobile SDK. Separate documentation exists for the mobile SDK.
- This transaction type requires an x509 certificate for authentication
- Can only obtain working key for mobile processing on an account belonging to your own program (as specified by credential and certificate)
- SessionToken last 60 minutes but time period refreshes after each use

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
accountNum Int(32) Return of the value passed in request
identityId Int(64) In addition to the session token, this value is required by many of the Mobile SDK methods.
tipRule Object Describes whether or not the account can capture for greater than the initial auth to facilitate tips.
sessionToken GUID This is the value required by most mobile SDK methods
grantedRights Object Multiple instances of GrantedRight. Definition of rights explained in mobile SDK documentation.

Sample XML Request Response


<?xml version='1.0'?> <?xml version="1.0"?>
<!DOCTYPE Request.dtd> <XMLResponse>
<XMLRequest> <XMLTrans>
<certStr>MyCertStr</certStr> <transType>301</transType>
<termid>termid</termid> <status>00</status>
<class>partner</class> <accountNum>716079199</accountNum>
<XMLTrans> <identityId>3209250</identityId>
<transType>301</transType> <sessionToken>dd015a44-891a-4370-a2fa-255e72a8b6df</sessionToken>
<accountNum>123456</accountNum> <tipRule>
</XMLTrans> <canAcceptTips>False</canAcceptTips>
</XMLRequest> <maximumDifference>0</maximumDifference>
<maximumDifferentialMultiplier>0</maximumDifferentialMultiplier>
</tipRule>
<grantedRights>
<grantedRight>
<rightName>ViewMHP</rightName>
<systemId>PPL</systemId>
<accountId>716079199</accountId>
</grantedRight>
</grantedRights>
</XMLTrans>
</XMLResponse>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 90
7.0 In-Network Transaction Methods
7.1 Disburse funds Transaction Type 02
This method will immediately disburse funds from a specifically designated ProPay source account into another.
- Minimum amount is $1.00 USD
- Rather than using the normal affiliate certStr, this method uses a certStr directly tied to the source account for funds disbursement

Request Elements - Required


Element Type Max Required Notes
amount Int(64) Required The value representing the number of pennies in USD, or the number of [currency] without decimals.
recAccntNum Int(32) Required ProPay assigned account identifier. The receiving account.
comment1 String 120 Optional Optional Comment Line 1
comment2 String 120 Optional Optional Comment Line 2
invNum String 50 Optional Optional Invoice Number for external tracking

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
invNum String Echo of the value passed into request.
transNum Int(32) The ProPay transaction identifier

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>02</transType>
<certStr>My certStr</certStr> <invNum>My Invoice</invNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> <transNum>2</transNum>
<XMLTrans> </XMLTrans>
<transType>02</transType> </XMLResponse>
<amount>123</amount>
<recAccntNum>123456</recAccntNum>
<invNum>My Invoice</invNum>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 91
7.2 ProPay Spendback Transaction Transaction Type 11
This method will immediately transfer available funds from a ProPay Account to a specified receiving account. It is best employed by entities that
wish to enable their distributors to pay for products. The buyer and seller must both have a ProPay account tied to the same ProPay affiliation.
1. Minimum amount is $1.00 USD

Enhanced SpendBack:
An affiliation can be configured to allow an enhanced form of SpendBack which allows the use of a ProPay user’s pending balance. These
transactions initially are in a pending state until the related credit card charge has settled. At the same time, the sender’s available balance may
become negative. Multiple times per day, ProPay’s system attempts to ‘complete’ enhanced SpendBack transactions. Settlement becomes
possible when the available balance in the sender’s account becomes sufficient to cover the transaction.

Every enhanced Spendback transaction is given a time to live. If the TTL expires before funds become available, the process is reversed. The pending
transaction disappears from the receiver’s account and the funds are credited back to the sender’s. Whenever a TTL expires, ProPay will send a
message indicating that such has occurred via ProPay’s Affiliate Notification System.

Request Elements - Required


Element Type Max Required Notes
amount Int(64) Required Minimum amount must be 100 (one dollar)
accountNum Int(32) Required Assigned to each account by ProPay. This is the ‘from’ account.
recAccntNum Int(32) Required Assigned to each account by ProPay. This is the ‘to’ account.
allowPending Boolean Optional This is used to initiate enhanced SpendBack if an organization has been configured to allow this feature
invNum String 50 Optional
comment1 String 120 Optional
comment2 String 120 Optional

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
Indicates whether enhanced SpendBack had to be used to support the transaction. Will be returned if
pending Boolean
allowPending is specified
transNum Int(32) The transaction number for the originating ProPay account. The sender’s transaction number.
secondaryTransNum Integer The transaction number for the receiving ProPay account. The recipient’s transaction number.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 92
Sample XML Request Response
<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>11</transType>
<certStr>MyCertStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> <transNum>26</transNum>
<XMLTrans> <secondaryTransNum>65872</secondaryTransNum>
<transType>11</transType> <pending>Y</pending>
<amount>213</amount> </XMLTrans>
<accountNum>123456</accountNum> </XMLResponse>
<recAccntNum>789012</recAccntNum>
<allowPending>Y</allowPending>
<comment1>test</comment1>
</XMLTrans>
</XMLRequest>

7.3 ProPay SplitPay Transaction Transaction Type 33


This method will perform a ProPay SplitPay transaction, which is a combination of Transaction Type o4(CC Transaction) or 36(ACH Tranaction) and
Transaction Type 16 Split funds From a Transaction. This method defines 2 transactions, one for the initial credit card transaction, and the second for
the split payment to another ProPay account. The movement of funds on the split payment does not complete until the underlying credit card
charge is completed.

This method requires one of two optional means to supply the credit card number:
- Card Not Present Data: ccNum, expDate, CVV2, Address information
- Encrypted “Track Data” from an approved swipe device: encryptingDeviceType, keySerialNumber, encryptedTrackData, encryptedTrackData2
- ACH Data

There are two parts defined within your API call:


1. An amount to charge the credit card
2. A secondaryAmount that gets ‘split’ off to a second ProPay account when the credit card transaction settles. - Use an exact amount rather than
a percentage for this value. (Percentage-based calculations must be performed prior to method submission.)

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay
comment1 String 120 Optional Merchant transaction descriptor.
comment2 String 120 Optional Merchant transaction descriptor.
ISO standard 3 character currency code for a foreign currency transaction. Amex and Discover
currencyCode String 3 Optional are not supported on Multi-Currency transactions (Auth in one currency, settle in another)
*Must be an allowed currency code for the merchant account.
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 93
Best Transactions are rejected as duplicate when the same card is charged for the same amount with
invNum String 50
practice the same invoice number, including blank invoices, in a 30 second period.
The value representing the number of pennies in USD, or the number of [currency] without
amount Integer Required
decimals.
ProPay identifier. This is the account to which the split should be pushed off when transaction
recAccntNum Int(32) Required
settles.
secondaryAmount Int(64) Required Amount to be split off to the secondary account when transaction settles.
Letters, numbers and spaces but no special characters are allowed.
TransactionMerch This value will appear on the cardholder’s credit card statement. Full descriptor length is 29, but the
String 25 Optional
antDescriptor first 4 characters are consumed by a prefix that is set by ProPay. (Either identifies ProPay, or the
integrated partner.)

Request Element – Optional – Network Token (Single Use)


Element Type Max Required Notes
Tokenization.Token String Required This field contains eleven digits that uniquely identify the pairing of token requestor with the token
RequestorID domain. It is assigned by the token service provider and is unique within the token vault.
String Required This would be the encrypted string (converted to HEX) that goes into G3v017 in the CAVV Revised
Tokenization.TAAV field. The format is a 40-digit A/N HEX value.

Note: VISA's recommendation is to use this value instead of the DTVV


String Required This is the same as PAN (surrogate to PAN); 13-19 digits.
Tokenization.Token
This will be provided by the Token Service Provider.
String Required The Dynamic Token Verification Value (DTVV) exists for Visa merchants that process
tokenized e-commerce transactions
Tokenization.DTVV
This will be provided by the Token Service Provider.
Note: VISA's recommendation is to use TAVV instead of the DTVV
Tokenization.Token String Required
This is like card expiry date
ExpiryDate
ExternalTransactio
nIdentifier String 15 Optional Data returned in this field is recorded and submitted as part of the data capture settlement format.

Request Element – Optional – MasterCard Only


Element Type Max Required Notes
If the merchant is performing a MasterCard transaciton, then they can send the CITMITIndicator in
CITMITIndicator String Optional the XML Request. If providing a CITMITIndicator, you must also provide a valid CITMITSubIndicator.
This is for MasterCard only. Valid Values Provided below. Defaults to ‘N’ if not passed.
If the merchant is performing a MasterCard transaction, a CITMITSubIndicator may be specified in
CIMITSubIndicator String Optional the XML Request. SubIndicators must have a valid Indicator specified. Valid values are provided
below.

CITMIT Indicator and SubIndicator values


CITMIT Indicator CITMIT SubIndicator Transaction Type Example
C1 01 Credential on File C101
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 94
02 Standing Order (Variable amount, fixed frequency) C102
03 Subscription (Fixed amount and fixed frequency) C103
04 Installment C104
01 Unscheduled, credential on file M101
02 Standing order (Variable amount, fixed frequency) M102
M1
03 Subscription(Fixed amount and fixed frequency) M103
04 Installment M104
05 Partial shipment M205
06 Related / delayed charge M206
M2
07 No show charge M207
08 Resubmission M208

CITMIT example Scenarios:


 If a cardholder uses a credential on file to perchance new item today: Indicator should be C101 (Customer initiated / Credential on file)
 If a cardholder initiates a purchase and the merchant stores credentials for future carcholder-initiated purchases: indicatror should C101
 If cardholder purchases and merchant charges card on file: indicator should be M101 (merchant initiated / unscheduled card on file)
 If cardholder purchases multiple items, shipped at separate times: indicator should be M205 (merchant initiated / partial shipment)

Credit Card Data: Card Not Present - Optional


Element Type Max Required Notes
ccNum String Required Standard cc numbers which must pass Luhn check.
CVV2 String Optional The Card CVV2 Code. *Accepts both 3 and 4 character types.
expDate String Required The expiration date in MMYY format.
Cardholder address. AVS does not typically work when cards are issued outside the US. *Max
addr String 50 Optional
length is 40 for multi-currency transactions.
addr2 String 20 Optional Cardholder Address second line
addr3 String 100 Optional Cardholder Address third line
aptNum String 20 Optional Cardholder apartment number *Do not use if using addr2 instead
city String 30 Optional Cardholder City.
state String Optional Cardholder state. *2 character state code submitted in all capital letters
Best Cardholder zip or postal code *Minimum 3 characters maximum 9. ProPay May require this
Zip String
Practice information for merchants to receive best processing rates.
Cardholder country. Necessary for valid AVS responses on ProPay accounts held in foreign
country String Optional
currencies.
cardholderName String 100 Optional Not needed if track data used

Credit Card Data: ProPay Approved Swipe Device - Optional


Element Type Max Required Notes
encryptedTrack2Data String Optional* Some devices encrypt the data on each track separately.
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 95
*When track 2 has been encrypted as a separate value this value is required.
encryptedTrackData String Required Contents of track 1 or track 1 and 2 submitted as encrypted block.
Valid Values:
MagTekM20
MagTekFlash
encryptingDeviceType String Required IdTechUniMag
MagTekADynamo
MagTekDynaMag
RoamData
Value is obtained from the hardware device. This value is required to identify the
keySerialNumber String Required
ProPay hosted decryption key needed to decrypt the Track Data.

ACH Data - Optional


Element Type Max Required Notes
AccountNumber Int(32) 20 Required Bank account number.
accountType String Required Valid values are Checking and Savings
RoutingNumber Int(32) 9 Required Valid ABA routing number or CPA EFT code
accountName String Optional Merchant/Individual name. *Required only when the transaciton is for ACH SplitPay
StandardEntryClassCode String 3 Required Valid values are: WEB, TEL, CCD, PPD
Pass ‘ACH’ If not passed, and ACH data is supplied, an error will be returned. If not
PaymentType String 100 Required
passed, Credit Card is assumed

Fraud Control using Guardian Cyber-Shield - Optional


Element Type Max Required Notes
SessionId Guid 36 Required Required for, and obtained from Threat Metrix fraud prevention solution
InputIpAddress IP 16 Required Optional for Threat Metrix. Status 133 is returned when declined by Threat Metrix.

Specialty Processing - Optional


Element Type Max Required Notes
Valid values are: Y and N. If a ProPay Merchant Account is set up for Bill Payment, this is always
billPay String Optional
included in the request to the cardholder’s bank no matter what API request specifies.
recurringPayment String 1 Optional Valid Values are Y and N. Defaults to N if not passed
Valid Values are Y and N. Defaults to N if not passed or if an invalid entry is detected. Only works
DebtRepayment String 1 Optional
with Visa transactions.
If the merchant is performing a Quasi Cash transaction while attempting an split pay transaction,
IsQuasiCash String 1 Optional then they need to send the quasi cash indicator in the XML API request. This indicator is supported
for VISA and MasterCard only. Valid values are Y and N. Defaults to N if not passed

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 96
Apple Pay Tokenization – Optional
NOTE: Partners need to be integrated with Apple before any implementation of this method will work. Apple integration is required to obtain the correct cryptogram
for the transaction. In essence, the ProPay system simply uses the cryptogram instead of the credit card number for the transaction.
Element Type Max Required Notes
This field contains eleven digits that uniquely identify the pairing of token requestor
Required
ApplePay.TokenRequestorID String with the token domain. It is assigned by the token service provider and is unique
(Visa)
within the token vault.
Required This would be the encrypted string (converted to HEX) that goes into G3v017 in the
ApplePay.TAAV String
(Visa) CAVV Revised field. The format is a 40-digit A/N HEX value.
Required This is the same as PAN (surrogate to PAN); 13-19 digits.
ApplePay.Token String
(Visa) This will be provided by the Token Service Provider.
Required
ApplePay.TokenExpiryDate String This is like card expiry date
(Visa)
Universal Cardholder Authentication Field (UCAF) is a cryptographic value.
Mastercard® SecureCode™ issuer or cardholder-generated authentication data
Required
ApplePay.SecureCode String 32 resulting from all SecureCode fully authenticated or attempts transaction for
(MasterCard)
Mastercard account. This field is populated when a UCAF-enabled merchant has
collected authentication data and must pass it in the transaction to the issuer.
Required
ApplePay.ProgramProtocol String 1 Cardholder Authentication Field. Mastercard SecureCode transactions only.
(MasterCard)
The Directory Server Transaction ID is generated by the EMV 3DS Mastercard Directory
Server during the authentication transaction and passed back to the merchant with
AppolePay.DirectoryServerTra Required
String 36 the authentication results. This field allows the merchant to pass the Directory Server
nsactionID (MasterCard)
Transaction ID during authorization in order to link authentication and authorization
data for Mastercard Identity Check. This data is also required for capture/settlement.
ApplePay.DigitalPaymentCryp Required It is used to send a Digital Secure Remote Payment (DSRP) cryptogram for DSRP
String 28
togram (MasterCard) transactions submitted as electronic commerce.
This field indicates if the cardholder is a registered user on a merchant's website
ApplePay.RegisteredUserIndic Required
String (Discover transactions only). This field is required for Discover e-Commerce
ator (Discover)
transactions.
This field defines the date when the cardholder last voluntarily changed his or her
ApplePay.LastRegisteredChan Required
Integer 1 registered profile (Discover transactions only). If the Registered User Indicator value is
geDate (Discover)
N, this value should be zero filled. Format: DDMMYYYY.

Response Elements
Element Type Notes
status String Result of the transaction request. See ProPay Appendix for result code definitions
AccountNum Integer ProPay account number transaction was processed against.
AuthCode String The auth code supplied by the issuing bank. *Only returned on a successful transaction.
Issuer returned AVS response. *Most issuers approve even if mismatch. Please review and use response to void if
AVS String
concerns exist about AVS response.
convertedAmount Integer Amount expressed in the currency of the merchant account. * Returned on multi-currency transactions.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 97
convertedCurrencyCode String ISO standard currency code of the ProPay merchant account. *Returned on multi-currency transactions.
CurrencyConversionRate Decimal Exchange rate of the currency conversion. See 3.3 *Returned on multi-currency transactions.
CVV2Resp String Issuer returned CVV2 response. *Almost all issuers decline if CVV mismatch.
GrossAmt Integer Gross amount of transaction of pennies in USD, or the number of [currency] without decimals.
GrossAmtLessNetAmt Integer Total amount of fees charged.
InvNum String Echo of the invNum passed in the request
NetAmt Integer Net amount of transaction after fees charged.
PerTransFee Integer The ProPay set per transaction fee applied to this transaction.
Rate Decimal The percentage based fee applied to this transaction.
Resp String Textual representation of the issuer returned response code.
Response String Returned with the Amex Enhanced Auth Fraud solution
ResponseCode String The Issuer returned response code. See ProPay Appendix for response code definitions
TransNum Integer The ProPay transaction identifier
RecAccntNum Integer The ProPay account identifier of the account to which the split portion of the SplitPay transaction is being sent.
secondaryTransNum Integer The transaction identifier of the split portion of the transaction.
CurrencyCode String ISO standard 3 character code defines which currency this transaction occurred in

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>33</transType>
<certStr>MyCertStr</certStr> <status>00</status>
<termid>termid</termid> <accountNum>123456</accountNum>
<class>partner</class> <invNum>cc1</invNum>
<XMLTrans> <transNum>1</transNum>
<transType>33</transType> <authCode>A11111</authCode>
<accountNum>123456789</accountNum> <AVS>T</AVS>
<recAccntNum>987654321</recAccntNum> <recAccntNum>987654321</recAccntNum>
<amount>500</amount> <secondaryTransNum>87</secondaryTransNum>
<ccNum>4111111111111111</ccNum> <responseCode>0</responseCode>
<expDate>1229</expDate> <convertedAmount>100</convertedAmount>
<secondaryAmount>100</secondaryAmount> <convertedCurrencyCode>USD</convertedCurrencyCode>
</XMLTrans> <currencyConversionRate>1</currencyConversionRate>
</XMLRequest> <NetAmt>0</NetAmt>
<GrossAmt>100</GrossAmt>
<GrossAmtLessNetAmt>100</GrossAmtLessNetAmt>
<PerTransFee>0</PerTransFee>
<Rate>0.00</Rate>
</XMLTrans>
</XMLResponse>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 98
7.4 Reverse SplitPay Transaction Transaction Type 43
This method will attempt to roll back a ProPay SplitPay transaction. This transaction supports ACH payments and credit cards.

It is important to understand the steps this method performs in order to effectively use it:
- This method checks to see if the credit card transaction upon which the split is based is still voidable. If so, the credit card transaction simply
voids and the split will never occur.
- This method then checks the balance in the originating account to see if the payment transaction can be refunded. The sum of the returned
split funds and the available balance in the originating account must be equal to or greater than the amount of the credit card refund in order
to succeed.
- Finally, this transaction checks the value of the <requireCCRefund> element:
 If requireCCRefund is true, and the account would be unable to refund the CC charge, the method will fail.
 If requireCCRefund is false, and the originating account is unable to perform the CC refund, then ONLY the reverse of the split will be
performed and the originating account will need to satisfy the funds availability issue prior to refunding the cardholder.

Request Elements - Required


Element Type Max Required Notes
accountNum Integer Required This is the account number for the destination of the original split.
This is the amount to be pushed back from the destination side of the original split to the originating side of
amount Integer Required
the same.
ccAmount Integer Required This is the amount to be refunded back to the cardholder. This is used for both CC and ACH transactions.
requireCCRefund Boolean Required Y or N. This is for both CC and ACH transactions.
transNum Integer Required This is the transaction number on the destination side of the original split.
comment1 String 120 Optional Optional Comment Line 1
comment2 String 120 Optional Optional Comment Line 2
invNum String 50 Optional Invoice Number for the transaction
Omit unless specially instructed by ProPay.
sourceEmail String Optional
Passing a customer email address will create an email receipt to be sent from ProPay.

Response Elements
Element Type Notes
status String See Propay Appendix for explanation of each status
accountNum Integer This is the account number of the recipient of the original split.
amount Integer This is the amount pushed back.
recAccntNum Integer This is the account number of the original charger of the credit card.
secondaryAmount Integer This is the amount refunded to the credit card.
This is the newly created transaction number for the credit card refund. What is returned is the identifier on the side of the
secondaryTransNum Integer
original charger of the credit card.
This is the newly created transaction number for the split being reversed. What is returned is the identifier on the side of
transNum Integer
the recipient of the original split.

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 99
Sample XML Request Response
<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>43</transType>
<certStr>MyCertStr</certStr> <status>00</status>
<termid>termid</termid> <accountNum>123456</accountNum>
<class>partner</class> <transNum>143</transNum>
<XMLTrans> <secondaryTransNum>41</secondaryTransNum>
<transType>43</transType> <amount>500</amount>
<accountNum>123456</accountNum> <secondaryAmount>1000</secondaryAmount>
<transNum>143</transNum> </XMLTrans>
<amount>500</amount> </XMLResponse>
<ccAmount>1000</ccAmount>
<requireCCRefund>Y</requireCCRefund>
<invNum>testinvoicenumber</invNum>
</XMLTrans>
</XMLRequest>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 100
7.5 Split Funds from an Existing Transaction Transaction Type 16
This method will split a portion of funds from a transaction on an affiliated account and put them into a designated ProPay account. It can perform
a Splitpay transaction either on underlying credit card transaction or ach transaction.

Credit Card: This method will create placeholder transaction that stays in a pending state until the credit card transaction upon which it is base
settles into the ProPay account. This method cannot be performed against an auth-only transaction; the charge must be captured.
Ach: This method will create placeholder transaction that stays in a pending state until the ACH transaction upon which it is base funds into the
ProPay account.

Request Elements - Required


Ma
Element Type Required Notes
x
ProPay account identifier. This is the ‘from’ account and the account upon which the cc transaction or
accountNum Integer Required
ach transaction was initially performed.
recAccntNum Integer Required ProPay account identifier. This is the account to which the split will be sent when the transaction settles.
amount Integer Required The amount to be split off to the recAccntNum when the transaction settles.
transNum Integer Required ProPay transaction identifier. It is when this transaction settles that the timed pull will occur.
invNum String 50 Optional Optional Invoice Number for external tracking
comment1 String 120 Optional Optional Comment Line 1
comment2 String 120 Optional Optional Comment Line 2
gatewayTransactionId String 100 Optional The transaction identification number for the Gateway
Optional The transaction identification number for the Global Payments facilitator which is integrated to ProPay
globaltransId String 50
and which the submerchant interfaces directly
Optional The Source of the transaction identification number for the Global Payments facilitator which is integrated
globalTransSource String 10
to ProPay and which the submerchant interfaces directly
cardBrandTransactionId String 15 Optional The transaction identification number of the Card Brand

Response Elements
Element Type Notes
transType String Always 16 for this transaction type
accountNum Integer The accountNum of the original merchant
status String See section ProPay Appendix for explanation of each status code returned
transNum Integer Transaction identifier for the recipient’s account.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>16</transType>
<certStr>MyCertStr</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <transNum>5</transNum>
<class>partner</class> <status>00</status>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 101
<XMLTrans> </XMLTrans>
<transType>16</transType> </XMLResponse>
<accountNum>123456</accountNum>
<recAccntNum>987654</recAccntNum>
<amount>2000</amount>
<transNum>11</transNum>
<gatewayTransactionId></gatewayTransactionId>
<cardBrandTransactionId></cardBrandTransactionId>
<globaltransId></globaltransId>
<globalTransSource></globalTransSource>
</XMLTrans>
</XMLRequest>

8.0 Get Information Methods


8.1 Get ProPay Account Details (Account Ping) Transaction Type 13
This method will return several details of a ProPay account.
- Accounts must belong to the Affiliation in order to be retrieved.
- Returns a status 23 (invalid accountType) if an account is not found
- Returns status 74 (trans or account error) if multiple parameters are submitted

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) ** Required Assigned to each account by ProPay
externalId String 20 ** Required This is a client’s own unique identifier. Typically used as the distributor ID.
sourceEmail String ** Required Merchant/Individual email address. Must be unique in ProPay system.
CheckGatewayBoardin This queries the HeartLand boarding status of the account. Is only used with HeartLand
String 1 Optional
gStatus accounts
**Only pass one of these request elements

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
The ProPay account Status.
accntStatus string
*See ProPay Appendix for a description of each account status type.
accountNum string Assigned to each account by ProPay
Addr string Merchant/Individual physical Address.
Affiliation string The Affiliation the account belongs to
Indicates if the ProPay account may process against the Application Programing Interface. Y indicates yes, N
apiReady string
indicates no.
City string Account physical Address.
CurrencyCode string The ProPay account processing currency.
Expiration string The ProPay account expiration date
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 102
signupDate string The ProPay account creation dated
sourceEmail string Merchant/Individual email address. Must be unique in ProPay system.
State string Merchant/Individual physical Address.
Tier string Type of ProPay account provided to user.
visaCheckoutMerchantId string The boarded Visa Checkout Merchant Id. Only returns if applicable.
Zip string Merchant/Individual physical Address.
CreditCardTransactionLimit string Maximum amount for a credit card transaction.
CreditCardMonthLimit string Maximum amount for credit card transactions during a month.
ACHPaymentPerTranLimit string ACH payment limit per transaction for the associated account.
ACHPaymentMonthLimit string ACH payment transaction monthly limit for the associated account.
CreditCardMonthlyVolume string Monthly volume for credit cards payments.
ACHPaymentMonthlyVolume string Monthly volume for ACH payments for the account.
ReserveBalance string Reserve balance for the account.
MasterPassCheckoutMerchantId string The boarded MasterPass Checkout Merchant Id.
Response to CheckGatewayBoardingStatus - Indicates whether account has been boarded with Heartland’s
IsBoarded string
systems. Responses are Y or N.
Response to CheckGatewayBoardingStatus – Replies with the String of the Gateway DTE Partner. Part of the
Gateway string
Heartland system.

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>13</transType>
<certStr>MyCertStr</certStr> <accountNum>1148111</accountNum>
<termid>termid</termid> <tier>Premium</tier>
<class>partner</class> <expiration>11/27/2025 12:00:00 AM</expiration>
<XMLTrans> <signupDate>4/17/2008 3:17:00 PM</signupDate>
<transType>13</transType> <affiliation>SRKUUW9 </affiliation>
<accountNum>123456</accountNum> <accntStatus>Ready</accntStatus>
<CheckGatewayBoardingStatus>Y</CheckGatewayBoardingStatus> <addr>123 Anywhere St</addr>
</XMLTrans> <city>Lehi</city>
</XMLRequest> <state>UT</state>
<zip>84043</zip>
<status>00</status>
<apiReady>Y</apiReady>
<currencyCode>USD</currencyCode>
<CreditCardTransactionLimit>65000</CreditCardTransactionLimit>
<CreditCardMonthLimit>250000</CreditCardMonthLimit>
<ACHPaymentPerTranLimit>1000</ACHPaymentPerTranLimit>
<ACHPaymentMonthLimit>5000</ACHPaymentMonthLimit>
<CreditCardMonthlyVolume>0</CreditCardMonthlyVolume>
<ACHPaymentMonthlyVolume>0</ACHPaymentMonthlyVolume>
<ReserveBalance>0</ReserveBalance>
<GatewayBoardingStatus>
<IsBoarded>N</IsBoarded>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 103
<Gateway>NA</Gateway>
</GatewayBoardingStatus>
</XMLTrans>
</XMLResponse>

8.2 Get current ProPay Account Balance Transaction Type 14


This method retrieves the ProPay account’s current available and pending balances. It also returns a number of data points about the use of
available funds as a transfer out of the ProPay account.

Request Elements -Required


Element Type Max Required Notes
accountNum Int(32) Required Assigned to each account by ProPay

Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
amount Int(64) The account’s available balance specified in the currency’s lowest denomination (100 = $1.00)
The account’s pending balance specified in the currency’s lowest denomination (100 = $1.00) The affiliate credential must be
pending Int(64)
enabled for Enhanced Spendback in order to receive this element in the response.
reserveAmount Int(64) The accont’s reserve balance specified in the currency’s lowest denomintation (100 = $1.00)
enabled Boolean Member of both achOut and flashFunds. Describes whether ability to transfer funds in specified manner is currently allowed.
Member of both achOut and flashFunds. Describes remaining limit for funds transfer. Note: flashFunds imposes a daily transfer
limitRemaining Long
fee, while achOut does not. (The limitRemaining for achOut will essentially be the current available balance on the account.)
transferFee Decimal Member of both achOut and flashFunds. Cost to transfer money using the specified method.
accountLastFour String Member of both achOut and flashFunds. Obfuscated account details for recipient
feeType String Member of both achOut and flashFunds. Describes whether trasnferFee is a flat amount or a percentage. (Specified as $ or %.)

Sample XML Request Response


<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTrans>
<XMLRequest> <transType>14</transType>
<certStr>MyCertSt</certStr> <accountNum>123456</accountNum>
<termid>termid</termid> <status>00</status>
<class>partner</class> <amount>10000</amount>
<XMLTrans> <pendingAmount>15300</pendingAmount>
<transType>14</transType> <reserveAmount>200000</reserveAmount>
<accountNum>123456</accountNum> <achOut>
</XMLTrans> <enabled>Y</enabled>
</XMLRequest> <limitRemaining>2800100</limitRemaining>
<transferFee>25</transferFee>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 104
<feeType>$</feeType>
<accountLastFour>6789</accountLastFour>
</achOut>
<flashFunds>
<enabled>Y</enabled>
<limitRemaining>2800100</limitRemaining>
<transferFee>25</transferFee>
<feeType>$</feeType>
<accountLastFour>6789</accountLastFour>
</flashFunds>
</XMLTrans>
</XMLResponse>

8.3 Get Transaction Details Transaction Type 34


This method will return the details of a specified transaction(s) using search criteria. This method must be performed on an account and for a
transaction that is owned by the affiliate identified by the certification string.

The order of precedence for searching is as follows:


1. invoiceExternalRefNum
2. transNum
3. All other elements are used equally to match transactions. The more elements provided will better filter the results.
 payerName
 ccNumLastfour
 invNum
 comment1
 amount

Request Elements - Required


Element Type Max Required Notes
accountNum Int(64) Required The ProPay account identifier.
amount Int(64) Optional** To search by amount.
ccNumLastFour Int(32) 4 Optional** To search by card number.
Comment1 String 128 Optional** To search by comment1
invNum String 50 Optional** To search by invoice number
invoiceExternalRefNum String Optional** To search by an external reference value. If submitted, the API will ignore all other search criteria.
payerName String 100 Optional** To search by cardholder name.
The ProPay transaction identifier. If submitted, the API will ignore all other search criteria. If not
transNum Int(32) Optional** submitted, the system will use all other criteria, but will only search for transacitons in the last 90
days.
** At least one of these elements must be passed

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 105
Response Elements
Element Type Notes
status string Result of the transaction request. See ProPay Appendix for result code definitions
amount Integer
authAmount Integer Returned if multi-currency processing is enabled. Amount expressed in foreign currency
authCode String Issuer response code.
authCurrencyCode String Returned if multi-currency processing is enabled. ISO standard 3 character currency code of the transaction
AVS String Issuer’s AVS response. See ProPay Appendix for common responses.
ccNumLastFour String Card number.
comment1 String
comment2 String
currencyCode
currencyConversionRate Decimal Returned if multi-currency processing is enabled. Exchange Rate of currency conversion. See 3.3
CVV2Resp String Issuer’s CID response.
initialTransactionResult String Result of the transaction attempt. See ProPay Appendix for possible statuses.
invNum String Invoice Number.
invoiceExternalRefNum String Returned if included in the lookup request.
netAmount Integer Net amount of transaction.
payerName String Cardholder Name
This tag will be present only if the transaction is through SPS using ‘LegacyPropay’ processor.
ExternalUniqueIdentifier Int(64)
If not then the tag will not be present in the response.
Result String The textual representation of the issuer’s initial response.
returnCode
returnCodeDescription
transNum Integer ProPay assigned transaction identifier.
txnStatus String Current transaction status. See ProPay Appendix B Responses for possible statuses
txntype String Transaction type. See ProPay Appendix for possible types.
cardType String Tag is not present if transaction is not payment card. Valid values are: Visa, MasterCard, AmericanExpress, and Discover
DateTime
TxnDate Transaction date.
(MT)
DateTime
FundDate Funded date.
(MT)
DateTime
NachaEffectiveEntryDate NACHA effective entry date.
(MT)

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 106
Sample XML Request Response
<?xml version='1.0'?> <XMLResponse>
<!DOCTYPE Request.dtd> <XMLTransactions>
<XMLRequest> <XMLTrans>
<certStr>MyCertStr</certStr> <transType>34</transType>
<termid>termid</termid> <transNum>147</transNum>
<class>partner</class> <authCode>A11111</authCode>
<XMLTrans> <AVS>T</AVS>
<transType>34</transType> <CVV2Resp>M</CVV2Resp>
<accountNum>123456</accountNum> <ccNumLastFour>4747</ccNumLastFour>
<invNum>cc1</invNum> <amount>100</amount>
<payerName>Jane Doe</payerName> <invNum>cc1</invNum>
</XMLTrans> <netAmount>72</netAmount>
</XMLRequest> <txnStatus>CCDebitPending</txnStatus>
<txnType>CCDebit</txnType>
<payerName>John Doe</payerName>
<ExternalUniqueIdentifier>523347</ExternalUniqueIdentifier>
<authAmount>100</authAmount>
<authCurrencyCode>USD</authCurrencyCode>
<currencyConversionRate>1.000000000</currencyConversionRate>
<status>00</status>
<currencyCode>USD</currencyCode>
<returnCode />
<returnCodeDescription />
<initialTransactionResult>SUCCESS</initialTransactionResult>
<cardType>Visa</cardType>
<TxnDate>6/10/2021 12:42:49 PM</TxnDate>
<FundDate>6/10/2021 12:43:17 PM</FundDate>
<NachaEffectiveEntryDate>6/10/2021 12:42:49 PM</NachaEffectiveEntryDate>
</XMLTrans>
</XMLTransactions>
</XMLResponse>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 107
8.4 Get ProPay Enhanced Account Details Transaction Type 19
This method retrieves a vast amount of information for the requested ProPay account, including: Personal Information, Account Data, Addresses,
Business Information and Bank Account Information. This API call returns the same information as is provided in the Extended Signup Report.

Please understand special rules for use of this method:


- This transaction type requires that an additional permission is enabled for the credentials

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required ProPay assigned account identifier of the merchant account.

Response Elements
Element Type Notes
transType string 19 constant value
status string Result of the transaction request. See ProPay appendix for result code definitions.
AccountNumber string Primary identifier for ProPay Account
PersonalData{SourceEmail string Source email on the ProPay account
PersonalData{FirstName string Account owner first name
PersonalData{MiddleInitial string Account owner middle initial
PersonalData{LastName string Account owner last name
PersonalData{PhoneInformation{DayPhone string Account owner day phone
PersonalData{PhoneInformation{EveningPhone string Account owner evening phone
AccountData{ExternalId string Account external identifier
AccountData{AccntStatus string Current status of account
AccountData{Expiration string Account expiration date
AccountData{SignupDate string Account signup date
AccountData{Affiliation string Affiliation associated with the account
AccountData{Tier string Tier associated with the account
AccountData{apiReady string Indicates if the account is api ready
AccountData{MasterPassCheckoutMasterId string Checkout ID for MasterPass (SRC)
AccountData{AchOutEnabled string Indicates if the account is enabled for ACH transfers to on-file DDA
AccountData{CurrencyCode string Account currency code
Communication Email Address. *ProPay’s system will send automated emails to the email address on
AccountData{NotificationEmail string
file ratherthan the Source Email.
AccountData{ExcludedFromSweep string indicates if the account is excluded from the new sweep job

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 108
Address{HomeAddress1 string Account owner home address 1
Address{HomeAddress2 string Account owner home address 2
Address{HomeAddress3 string Account owner home address 3
Address{HomeCity string Account owner home city
Address{HomeState string Account owner home state
Address{HomeZip string Account owner home zip
Address{HomeCountry string Account owner home country
MailAddress{MailAddress1 string Account owner mail address 1
MailAddress{MailAddress2 string Account owner mail address 2
MailAddress{MailAddress3 string Account owner mail address 3
MailAddress{MailCity string Account owner mail city
MailAddress{MailState string Account owner mail state
MailAddress{MailZip string Account owner mail zip code
MailAddress{MailCountry string Account owner mail country
BusinessData{BusinessLegalName string The business’ legal name
BusinessData{DoingBusinessAs string The business’ “doing business as” name (DBA)
BusinessData{EIN string The business’ “Employer Identification Number” (EIN) *Does not apply to UK merchants
BusinessData{BusinessAddress string Business address
BusinessData{BusinessAddress2 string Business address 2
BusinessData{BusinessCity string Business city
BusinessData{BusinessState string Business state
BusinessData{BusinessZip string Business zip code
BusinessData{WebsiteURL string The business’ website URL
The average amount of an individual transaction; Value representing the number of pennies in
BusinessData{AverageTicket string
USD, or the number of [currency] without decimals.
The highest transaction amount; Value representing the number of pennies in USD, or the number of
BusinessData{HighestTicket string
[currency] without decimals.
AccountLimits{CreditCardTransactionLimit string Merchant credit card transaction limit
AccountLimits{CreditCardMonthLimit string Merchant credit card monthly limit
AccountLimits{CreditCardMonthlyVolume string Merchant credit card monthly volume
AccountLimits{NegativeLimit string Merchant negative limit
AccountLimits{ACHPaymentPerTranLimit string Merchant ach payment per transaction limit
AccountLimits{ACHPaymentMonthLimit string Merchant ach payment month limit
AccountLimits{ACHPaymentMonthlyVolume string Merchant ach payment monthly volume
AccountLimits{AchPaymentSoftLimitEnabled string Merchant ach payment soft payment soft limit enabled
AccountLimits{AchPaymentAchOffPercent string Merchant ach payment ach payment ach off percent
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 109
AccountLimits{SoftLimitEnabled string Merchant soft limit enabled
AccountLimits{SoftLimitAchOffPercent string Merchant soft limit ach limit ach off percent
AccountBalance{AvailableBalance string The account’s available balance specified in the currency’s lowest denomination (100 = $1.00)
AccountBalance{PendingBalance string The account’s pending balance specified in the currency’s lowest denomination (100 = $1.00)
AccountBalance{ReserveBalance string The account’s reserve balance specified in the currency’s lowest denomination (100 = $1.00)
BankAccount{PrimaryBankAccount{PrimaryAcc
string Primary bank account country code
ountCountryCode
BankAccount{PrimaryBankAccount{PrimaryAcc
string Primary bank account type
ountType
BankAccount{PrimaryBankAccount{PrimaryAcc
string Primary bank account ownership type
ountOwnershipType
BankAccount{PrimaryBankAccount{PrimaryBan
string Bank name for the primary bank account
kName
BankAccount{PrimaryBankAccount{PrimaryAcc
string Last 4 digits of the primary bank account number
ountNumberLast4
BankAccount{PrimaryBankAccount{PrimaryRout
string Routing number for the primary bank account
ingNumber
BankAccount{SecondaryBankAccount{Second
string Secondary bank account country code
aryAccountCountryCode
BankAccount{SecondaryBankAccount{Second
string Secondary bank account type
aryAccountType
BankAccount{SecondaryBankAccount{Second
string Secondary bank account ownership type
aryAccountOwnershipType
BankAccount{SecondaryBankAccount{Second
string Bank name for the secondary bank account
aryBankName
BankAccount{SecondaryBankAccount{Second
string Last 4 digits of the secondary bank account number
aryAccountNumberLast4
BankAccount{SecondaryBankAccount{Second
string Routing number for the secondary bank account
aryRountingNumber
GrossBillingInformation{GrossSettleBankAccount
string Account holder name for the gross settle account on file
{GrossSettleAccountHolderName
GrossBillingInformation{GrossSettleBankAccount Last 4 digits of account number for the gross settle account on file
string
{GrossSettleAccountNumberLast4
GrossBillingInformation{GrossSettleBankAccount Routing number for the gross settle account on file
string
{GrossSetlleRoutingNumber
GrossBillingInformation{GrossSettleBankAccount Account type (ACH, Card or ProPay) for gross settlement
string
{GrossSettleAccountType
GrossBillingInformation{GrossSettleAddress{Gross Address for the gross settle account on file
string
SettleAccountAddress
GrossBillingInformation{GrossSettleAddress{Gross City for the gross settle account on file
string
SettleAccountCity
GrossBillingInformation{GrossSettleAddress{Gross State for the gross settle account on file
string
SettleAccountState

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 110
GrossBillingInformation{GrossSettleAddress{Gross Country code for the gross settle account on file
string
SettleAccountCountryCode
GrossBillingInformation{GrossSettleAddress{Gross Zip code for the gross settle account on file
string
SettleAccountZipCode
AdditionalSignupReportInformation{AffiliateID string Unique Id for the owning affiliate
AdditionalSignupReportInformation{AffiliateNam string Name of the owning affiliate
e
AdditionalSignupReportInformation{ACHToManu string Indicates if a manual hold has been placed on ACH transfers
alHold
AdditionalSignupReportInformation{ACHToAPIH string Indicates if a manual hold has been placed on ACH API transfers
old
AdditionalSignupReportInformation{CKOutRejec string Indicates if a hold has been placed on outbound
tHold
AdditionalSignupReportInformation{CCSoftLimits string Indicates if a hold has been triggered by exceeding soft limits for credit card processing
Hold
AdditionalSignupReportInformation{ACHSoftLimi string Indicates if a hold has been triggered by exceeding soft limits for ACH transactions
tHold
AdditionalSignupReportInformation{ACHFromM string Indicates if a hold has been manually placed on ACHFrom transfers
anualHold
AdditionalSignupReportInformation{ACHFromAP string Indicates if a hold has been placed on ACHFrom API transfers
IHold
AdditionalSignupReportInformation{CKInRejectH string Indicates if a hold has been placed
old
AdditionalSignupReportInformation{ACHToBank string The functionality that allows the merchant to be paid has been disabled due to the UK BACS
ValidationHold Mandate. The BACS Mandate has not been completed
AdditionalSignupReportInformation{ACHFromBa string The functionality that allows ProPay to collect funds from the merchant bank account has been
nkValidationHold disabled due to the UK BACS Mandate. The BACS Mandate has not been completed

AdditionalSignupReportInformation{NonExpiring string The account is set to not expire


AdditionalSignupReportInformation{SweepCanA string Whether the account is enabled to use outbound sweeps
CHOut
AdditionalSignupReportInformation{SweepCanA string Whether the account can receive ACH sweeps
CHIn
AdditionalSignupReportInformation{SweepBank string Whether the bank account listed has been validated
AccountValidated
AdditionalSignupReportInformation{SweepInTra string The limit for sweep transactions
nsactionLimit
AdditionalSignupReportInformation{SweepInMo string The limit for monthly sweep amounts
nthlyLimit
AdditionalSignupReportInformation{SweepInMo string The actual volume for sweeps on this account
nthlyVolume
AdditionalSignupReportInformation{CCAllowed string Whether the account has rights to process credit card payments
AdditionalSignupReportInformation{CCFunding string The account's configured hold days for credit card payments
HoldDays

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 111
AdditionalSignupReportInformation{CCRefundLi string The amount of a line of credit for refunding credit card processing
neOfCredit
AdditionalSignupReportInformation{ACHPayme string Whether the Account can receive ACH Payments
ntsAllowed
AdditionalSignupReportInformation{ACHPayme string How many hours ACH payments are configured to be held
ntsFundingHoldHours
AdditionalSignupReportInformation{ACHPayme string Rates for ACH Payments
ntsRatePerTran
AdditionalSignupReportInformation{ACHPayme string The discount for ACH payments (if any)
ntsRateDiscount
AdditionalSignupReportInformation{ACHPayme string The fee for returning ACH payments
ntsReturnFee
AdditionalSignupReportInformation{AchPaymen string The fee for a notice of change for ACH payments
tsNOCFee
AdditionalSignupReportInformation{GrossSettleA string Whether the account is set to use gross settlement billing
ccountPresent
AdditionalSignupReportInformation{MerchantDe string Descriptor for credit card statements. (Usually DBA)
scriptor
AdditionalSignupReportInformation{VoidCaptur string Whether the accounts has the right to void captured transactions
ed
AdditionalSignupReportInformation{MCC string The Merchant Category Code for the merchant in the ProPay system

Sample XML Request Response


<?xml version='1.0'?> <?xml version="1.0"?>
<!DOCTYPE Request.dtd> <XMLResponse>
<XMLRequest> <XMLTrans>
<certStr>certStr</certStr> <transType>19</transType>
<termid>termid</termid> <status>00</status>
<class>partner</class> <accountNum>718174450</accountNum>
<XMLTrans> <personalData>
<transType>19</transType> <sourceEmail>[email protected]</sourceEmail>
<accountNum>718174450</accountNum> <firstName>Clint</firstName>
</XMLTrans> <lastName>Eastwood</lastName>
</XMLRequest> <phoneInformation>
<dayPhone>9876543211</dayPhone>
<evenPhone>9876543211</evenPhone>
</phoneInformation>
</personalData>
<accountData>
<externalId></externalId>
<accntStatus>6</accntStatus>
<expiration>5/6/2021 12:00:00 AM</expiration>
<signupDate>5/6/2020 10:06:29 PM</signupDate>
<affiliation>CD83111F</affiliation>
<tier>72c241be-f092-4d20-8</tier>
<apiReady>Y</apiReady>
<achOutEnabled>N</achOutEnabled>
<currencyCode>USD</currencyCode>
<notificationEmail>[email protected]</notificationEmail>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 112
<excludedFromSweep>Y</excludedFromSweep>
</accountData>
<address>
<addr>3400 N Ashton Blvd</addr>
<aptNum>Suite 200</aptNum>
<city>Lehi</city>
<state>UT</state>
<postalCode>84043</postalCode>
<country>USA</country>
</address>
<mailAddress>
<mailAddr>3400 N Ashton Blvd</mailAddr>
<mailApt>Suite 200</mailApt>
<mailCity>Lehi</mailCity>
<mailState>UT</mailState>
<mailPostalCode>84043</mailPostalCode>
<mailCountry>USA</mailCountry>
</mailAddress>
<businessData>
<businessLegalName>Business Name LLC</businessLegalName>
<doingBusinessAs>Business DBA</doingBusinessAs>
<ein>251825813</ein>
<businessAddress>3400 N Ashton Blvd </businessAddress>
<businessAddress2></businessAddress2>
<businessCity> Lehi</businessCity>
<businessState>UT</businessState>
<businessZip>74043</businessZip>
<websiteURL>www.businesssite.com</websiteURL>
<averageTicket>400</averageTicket>
<highestTicket>1000</highestTicket>
</businessData>
<accountLimits>
<creditCardTransactionLimit>50000</creditCardTransactionLimit>
<creditCardMonthLimit>300000</creditCardMonthLimit>
<creditCardMonthlyVolume>0</creditCardMonthlyVolume>
<negativeLimit>0</negativeLimit>
<achPaymentPerTranLimit>0</achPaymentPerTranLimit>
<achPaymentMonthLimit>0</achPaymentMonthLimit>
<achPaymentMonthlyVolume>0</achPaymentMonthlyVolume>
<achPaymentSoftLimitEnabled>N</achPaymentSoftLimitEnabled>
<softLimitEnabled>N</softLimitEnabled>
</accountLimits>
<accountBalance>
<availableBalance>0</availableBalance>
<pendingBalance>0</pendingBalance>
<reserveBalance>0</reserveBalance>
</accountBalance>
<bankAccount>
<primaryBankAccount>
<primaryAccountCountryCode>USA</primaryAccountCountryCode>
<primaryAccountType>Checking</primaryAccountType>
<primaryAccountOwnershipType>1</primaryAccountOwnershipType>
<primaryBankName>Primary Zions</primaryBankName>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 113
<primaryAccountNumberLast4>5678</primaryAccountNumberLast4>
<primaryRoutingNumber>091000019</primaryRoutingNumber>
</primaryBankAccount>
<secondaryBankAccount>
<secondaryAccountCountryCode>USA</secondaryAccountCountryCode>
<secondaryAccountType>Checking</secondaryAccountType>
<secondaryAccountOwnershipType>1</secondaryAccountOwnershipType>
<secondaryBankName>Secondary Zions</secondaryBankName>
<secondaryAccountNumberLast4>4321</secondaryAccountNumberLast4>
<secondaryRoutingNumber>091000019</secondaryRoutingNumber>
</secondaryBankAccount>
</bankAccount>
<grossBillingInformation>
<grossSettleAccount>
<grossSettleAccountHolderName>Gross Settle Two
DDA</grossSettleAccountHolderName>

<grossSettleAccountNumberLast4>7890</grossSettleAccountNumberLast4>
<grossSettleRoutingNumber>091000019</grossSettleRoutingNumber>
<grossSettleAccountType>ACH</grossSettleAccountType>
</grossSettleAccount>
<grossSettleAddress>
<grossSettleAccountAddress>123 Main Street</grossSettleAccountAddress>
<grossSettleAccountCity>Lehi</grossSettleAccountCity>
<grossSettleAccountState>UT</grossSettleAccountState>
<grossSettleAccountCountryCode>USA</grossSettleAccountCountryCode>
<grossSettleAccountZipCode>84043</grossSettleAccountZipCode>
</grossSettleAddress>
</grossBillingInformation>
<additionalSignupReportInformation>
<affiliateID>982542</affiliateID>
<affiliateName>55a1fd5c-f674-4797-a086-2b9a00</affiliateName>
<achToManualHold>Y</achToManualHold>
<achToAPIHold>N</achToAPIHold>
<ckOutRejectHold>N</ckOutRejectHold>
<ccSoftLimitsHold>Y</ccSoftLimitsHold>
<achSoftLimitHold>N</achSoftLimitHold>
<achFromManualHold>Y</achFromManualHold>
<achFromAPIHold>N</achFromAPIHold>
<ckInRejectHold>N</ckInRejectHold>
<achToBankValidationHold>Y</achToBankValidationHold>
<achFromBankValidationHold>N</achFromBankValidationHold>
<nonExpiring>N</nonExpiring>
<sweepCanACHOut>N</sweepCanACHOut>
<sweepCanACHIn>N</sweepCanACHIn>
<sweepBankAccountValidated>N</sweepBankAccountValidated>
<sweepInTransactionLimit>25000</sweepInTransactionLimit>
<sweepInMonthlyLimit>100000</sweepInMonthlyLimit>
<sweepInMonthlyVolume>50000</sweepInMonthlyVolume>
<ccAllowed>N</ccAllowed>
<ccFundingHoldDays>2</ccFundingHoldDays>
<ccRefundLineOfCredit>0</ccRefundLineOfCredit>
<achPaymentsAllowed>N</achPaymentsAllowed>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 114
<achPaymentsFundingHoldHours>24</achPaymentsFundingHoldHours>
<achPaymentsRatePerTran>0</achPaymentsRatePerTran>
<achPaymentsRateDiscount>0</achPaymentsRateDiscount>
<achPaymentsReturnFee>1000</achPaymentsReturnFee>
<achPaymentsNOCFee>0</achPaymentsNOCFee>
<grossSettleAccountPresent>N</grossSettleAccountPresent>
<merchantDescriptor>DBA</merchantDescriptor>
<voidCaptured>N</voidCaptured>
<mcc>5999</mcc>
</additionalSignupReportInformation>
</XMLTrans>
</XMLResponse>

8.5 Get a currency’s conversion amount Transaction Type 03


This method will return the US dollar value of an amount you intend to process in another currency. The amount converted is based on the settings
for the ProPay account information provided and is guaranteed as what will be received as USD for 24 hours.

Request Elements - Required


Element Type Max Required Notes
accountNum Int(32) Required ProPay assigned account identifier of the merchant account.
amount Int(64) Required The value representing the number of [currency] without decimals.
currencyCode String 3 Required ISO 4217 standard 3 character currency code. *Must be an authorized for the specified merchant account.
currencyCodeTo String 3 Optional ISO 4217 standard 3 character currency code. If not passed will default to accounts settlemnent currency

Response Elements
Element Type Notes
status String The result of the API request; See ProPay Appendix for Response Code Definitions.
accountNum Int(32) ProPay assigned account identifier of the merchant account submitted.
convertedAmount Int(32) The value representing the converted number of [currency] without decimals.
convertedCurrencyCode String ISO 4217 standard 3 character currency code of the merchant account.
currencyConversionRate Decimal Exchange Rate of currency conversion.

Sample XML Request Response


<XMLRequest> <XMLResponse>
<certStr>My certStr</certStr> <XMLTrans>
<termid>termid</termid> <transType>03</transType>
<class>partner</class> <status>00</status>
<XMLTrans> <accountNum>123456</accountNum>
<transType>03</transType> <convertedAmount>129</convertedAmount>
<accountNum>123456</accountNum> <convertedCurrencyCode>USD</convertedCurrencyCode>
<amount>100</amount> <currencyConversionRate>1.2905713</currencyConversionRate>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 115
<currencyCode>EUR</currencyCode> </XMLTrans>
<currencyCodeTo>USD</currencyCodeTo> </XMLResponse>
</XMLTrans>
</XMLRequest>

8.6 Get Tier Information Transaction Type 130


Transtype130 returns a comprehensive list of all settings for each tier configured for an affiliate, (103 variables). Specifying a tier name restricts the
response to one single tier.

Request Elements - Required


Element Type Max Required Notes
transType string Required This will always show “130”
If specified, the system will only return information for the specified tier. If this is not specified, all affiliate tiers
tier string Optional
will be returned. For incorrect tier names, the reply will contain an error code, (usually 94 – “unavailable tier”).

Response Elements
Element Type Notes
AffiliateName String
RequiredDataDDA Boolean Should consider user experiance to always require this
RequiredDataIPAddress Boolean
RequiredDataSourceEmail Boolean
RequiredDataTimeZone Boolean Only required for Heartland but should always be passed for best user experience
RequiredDataSeparateSignificantOwnerDat Boolean
a
RequiredDataMeetInTheCloudData Boolean As customers using a full experience website, it is unlikely these customers will fit the profile. As such,
when this is a required element, website needn't support.
ProcessorRegion String General info. The implications of this are also covered via required field instructions
RequiredDataBusinessLegalName Boolean
RequiredDataDBA Boolean
RequiredDataBusinessDescription Boolean
RequiredDataEIN Boolean
RequiredDataBusinessPhoneNumber Boolean
RequiredDataBusinessType Boolean
RequiredDataBusinessMCC Boolean
BusinessDefaultMCC String Provides the MCC that defaults when no other MCC is specified
RequiredDataBusinessMonthlyCCVolume Boolean
RequiredDataBusinessAverageTicket Boolean
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 116
RequiredDataBusinessHighestTicket Boolean
RequiredDataBusinessWebsiteURL Boolean
RequiredDataBusinessRegistrationNumber Boolean
RequiredDataBusinessAddressFields Boolean
RequiredDataBusinessAddressFieldsEnhanc Boolean UK specific fields (shire or borough or whatever other weird stuff they have over there...see boarding API
ed spec for details)
RequiredDataBusinessTimeAtAddress Boolean
RequiredDataBusinessLegalAddressFields Boolean When 1, go to MSAPI and refer to X as required
RequiredDataBusinessLegalAddressFieldsEn Boolean UK specific fields (shire or borough or whatever other weird stuff they have over there...see boarding API
hanced spec for details)
RequiredDataBusinessPreviousAddressField Boolean
s
RequiredDataBusinessPreviousAddressField Boolean UK specific fields (shire or borough or whatever other weird stuff they have over there...see boarding API
sEnhanced spec for details)
RequiredDataPersonalSSN Boolean MSAP TT01, Personal Data, "ssn"
RequiredDataPersonalName Boolean
RequiredDataPersonalDob Boolean
RequiredDataPersonalDayPhone Boolean
RequiredDataPersonalEvenPhone Boolean
RequiredDataPersonalNationality Boolean
RequiredDataPersonalAddressFields Boolean
RequiredDataPersonalAddressFieldsEnhanc Boolean UK specific fields (shire or borough or whatever other weird stuff they have over there...see boarding API
ed spec for details)
RequiredDataPersonalTimeAtAddress Boolean
RequiredDataBeneficialOwnerCount Boolean
RequiredDataBeneficialOwnerFields Boolean
RequiredDataBeneficialOwnerAuthorizedSi Boolean
gner
RequiredDataBusinessOwnerThreatMetrix Boolean
RequiredDataBusinessUSCitizen Boolean
RequiredDataBusinessBenificialOwnerAttest Boolean
ation
RequiredDataBusinessTermsIP Boolean
RequiredDataBusinessTermsDate Boolean
RequiredDataBusinessTermsVersion Boolean
TierName String
TierEnabled Boolean API will return even Tiers that are no longer valid. Integrator should only make available those that
remain active.
TierExpirationMethod Enum
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 117
TierIncludesPPMC Boolean
TierServiceFeeUpfront Integer
TierAllowedMCCRequirement Boolean
TierAllowedMCC Boolean Works with TierAllowedMCCRequirement
TiersCCPDAcceptsInterac Boolean
TierCCLimitPerTran Integer
TierCCLimitMonthly Integer
TierCCLimitSoftLimitsEnabled Boolean
TierCCRateCNPPerTranVisa Integer
TierCCRateCNPPercentVisa Integer
TierCCRateCNPPerTranMC Integer
TierCCRateCNPPercentMC Integer
TierCCRateCNPPerTranAmex Integer
TierCCRateCNPPercentAmex Integer
TierCCRateCNPPerTranDisc Integer
TierCCRateCNPPercentDisc Integer
TierCCRateCPPerTranVisa Integer
TierCCRateCPPercentVisa Integer
TierCCRateCPPerTranMC Integer
TierCCRateCPPercentMC Integer
TierCCRateCPPerTranAmex Integer
TierCCRateCPPercentAmex Integer
TierCCRateCPPerTranDisc Integer
TierCCRateCPPercentDisc Integer
TierCCRatePDPerTranVisa Integer
TierCCRatePDPercentVisa Integer
TierCCRatePDPerTranMC Integer
TierCCRatePDPercentMC Integer
TierCCRatePDPerTranAmex Integer
TierCCRatePDPercentAmex Integer
TierCCRatePDPerTranDisc Integer
TierCCRatePDPercentDisc Integer
TierCCRatePDPerTranInterac Integer
TierCCRatePDPercentInterac Integer
TierFeeChargeback Integer
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 118
TierEFTEnabled Boolean
TierEFTLimitPerTran Integer
TierEFTLimitMonthly Integer
TierEFTLimitSoftLimitsEnabled Integer
TierDepositFee Integer
TierEFTRatePerTrans Integer
TierEFTRatePercent Integer
TierFeeEFTReject Integer
TierFeeEFTNOC Integer
TierFlashFundsEnabled Boolean
TierFlashFundsLimitDaily Integer
TierFlashFundsRatePercent Integer
TierSoftwarePackageName String
TierSoftwareFeeUpFront Integer For total price, add service fee, additional software fee, and selected device price multiplied by number
of devices ordered
TierSoftwareFeeMonthly Integer For total price, add service fee, additional software fee, and selected device price multiplied by number
of devices ordered
TierAvailableDeviceName String
TierAvailableDeviceFeeUpFront Integer
TierAvailableDeviceFeeMonthly Integer For total price, add service fee, additional software fee, and selected device price multiplied by number
of devices ordered

Sample XML Request Response


<XMLRequest> <XMLResponse>
<certStr>e04bd2b5cafa4df1af562a189521d3</certStr> <XMLTrans>
<termid>12420fc0a5</termid> <AffiliateName>7ef73088-8053-4adb-a04a-787909</AffiliateName>
<class>partner</class> <Tiers>
<XMLTrans> <Tier>
<transType>130</transType> <TierName>b2165263-c3de-4b77-9</TierName>
</XMLTrans> <TierEnabled>False</TierEnabled>
</XMLRequest> <ProcessorRegion>US</ProcessorRegion>
<TierIncludesPPMC>False</TierIncludesPPMC>
<TierCCRatePDPerTranAmex>25</TierCCRatePDPerTranAmex>
<TierCCRateCPPerTranAmex>25</TierCCRateCPPerTranAmex>
<TierCCRateCNPPerTranAmex>25</TierCCRateCNPPerTranAmex>
<TierCCRatePDPercentAmex>2.10</TierCCRatePDPercentAmex>
<TierCCRateCPPercentAmex>3.00</TierCCRateCPPercentAmex>
<TierCCRateCNPPercentAmex>3.00</TierCCRateCNPPercentAmex>
<TierCCRatePDPerTranDisc>25</TierCCRatePDPerTranDisc>
<TierCCRateCPPerTranDisc>25</TierCCRateCPPerTranDisc>
<TierCCRateCNPPerTranDisc>25</TierCCRateCNPPerTranDisc>
<TierCCRatePDPercentDisc>2.10</TierCCRatePDPercentDisc>
<TierCCRateCPPercentDisc>2.10</TierCCRateCPPercentDisc>
<TierCCRateCNPPercentDisc>3.00</TierCCRateCNPPercentDisc>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 119
<TierCCRatePDPerTranMC>25</TierCCRatePDPerTranMC>
<TierCCRateCPPerTranMC>25</TierCCRateCPPerTranMC>
<TierCCRateCNPPerTranMC>25</TierCCRateCNPPerTranMC>
<TierCCRateCNPPercentMC>3.00</TierCCRateCNPPercentMC>
<TierCCRateCPPercentMC>2.10</TierCCRateCPPercentMC>
<TierCCRatePDPercentMC>2.10</TierCCRatePDPercentMC>
<TierCCRateCNPPerTranVisa>25</TierCCRateCNPPerTranVisa>
<TierCCRateCPPerTranVisa>25</TierCCRateCPPerTranVisa>
<TierCCRatePDPercentVisa>2</TierCCRatePDPercentVisa>
<TierCCRatePDPerTranVisa>25</TierCCRatePDPerTranVisa>
<TierCCRateCPPercentVisa>2.10</TierCCRateCPPercentVisa>
<TierCCRateCNPPercentVisa>3.00</TierCCRateCNPPercentVisa>
<TierCCLimitMonthly>300000</TierCCLimitMonthly>
<TierCCLimitPerTran>50000</TierCCLimitPerTran>
<TierCCLimitSoftLimitsEnabled>False</TierCCLimitSoftLimitsEnabled>
<TierDepositFee>30</TierDepositFee>
<TierEFTEnabled>False</TierEFTEnabled>
<TierEFTLimitMonthly>0</TierEFTLimitMonthly>
<TierEFTLimitSoftLimitsEnabled>0</TierEFTLimitSoftLimitsEnabled>
<TierFeeChargeback>1500</TierFeeChargeback>
<TierFlashFundsEnabled>False</TierFlashFundsEnabled>
<TierFlashFundsLimitDaily>1000000</TierFlashFundsLimitDaily>
<TiersCCPDAcceptsInterac>False</TiersCCPDAcceptsInterac>
<TierSoftwareFeeMonthly>0</TierSoftwareFeeMonthly>
<TierSoftwareFeeUpFront>0</TierSoftwareFeeUpFront>
<TierServiceFeeUpfront>0</TierServiceFeeUpfront>
<TierCCRatePDPerTranInterac>115</TierCCRatePDPerTranInterac>
<TierEFTLimitPerTran>0</TierEFTLimitPerTran>
<TierFeeEFTNOC>0</TierFeeEFTNOC>
<TierFeeEFTReject>1000</TierFeeEFTReject>
<TierEFTRatePerTrans>0</TierEFTRatePerTrans>
<TierFlashFundsRatePercent>1</TierFlashFundsRatePercent>
<TierCCRatePDPercentInterac>2.75</TierCCRatePDPercentInterac>
<TierEFTRatePercent>0.00</TierEFTRatePercent>
<RequiredDataBeneficialOwnerCount>false</RequiredDataBeneficialOwnerCount>
<RequiredDataBeneficialOwnerFields>false</RequiredDataBeneficialOwnerFields>
<RequiredDataBeneficialOwnerAuthorizedSigner>false</RequiredDataBeneficialOwnerAuthorizedSigner>
<RequiredDataBusinessAddressFields>false</RequiredDataBusinessAddressFields>

<RequiredDataBusinessAddressFieldsEnhanced>false</RequiredDataBusinessAddressFieldsEnhanced>
<RequiredDataBusinessAverageTicket>false</RequiredDataBusinessAverageTicket>
<RequiredDataBusinessBenificialOwnerAttestation>false</RequiredDataBusinessBenificialOwnerAttestation>
<RequiredDataBusinessDescription>false</RequiredDataBusinessDescription>
<RequiredDataBusinessLegalAddressFields>false</RequiredDataBusinessLegalAddressFields>
<RequiredDataBusinessLegalAddressFieldsEnhanced>false</RequiredDataBusinessLegalAddressFieldsEnhanced>
<RequiredDataBusinessLegalName>false</RequiredDataBusinessLegalName>
<RequiredDataBusinessMCC>false</RequiredDataBusinessMCC>
<RequiredDataBusinessMonthlyCCVolume>false</RequiredDataBusinessMonthlyCCVolume>
<RequiredDataBusinessOwnerThreatMetrix>false</RequiredDataBusinessOwnerThreatMetrix>
<RequiredDataBusinessPhoneNumber>false</RequiredDataBusinessPhoneNumber>

<RequiredDataBusinessPreviousAddressFields>false</RequiredDataBusinessPreviousAddressFields>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 120
<RequiredDataBusinessPreviousAddressFieldsEnhanced>false</RequiredDataBusinessPreviousAddressFieldsEnhanced>
<RequiredDataBusinessRegistrationNumber>false</RequiredDataBusinessRegistrationNumber>
<RequiredDataBusinessTermsDate>false</RequiredDataBusinessTermsDate>
<RequiredDataBusinessTermsIP>false</RequiredDataBusinessTermsIP>
<RequiredDataBusinessTermsVersion>false</RequiredDataBusinessTermsVersion>
<RequiredDataBusinessTimeAtAddress>false</RequiredDataBusinessTimeAtAddress>
<RequiredDataBusinessType>false</RequiredDataBusinessType>
<RequiredDataBusinessUSCitizen>false</RequiredDataBusinessUSCitizen>
<RequiredDataBusinessWebsiteURL>false</RequiredDataBusinessWebsiteURL>
<RequiredDataBusinessHighestTicket>false</RequiredDataBusinessHighestTicket>
<RequiredDataDBA>false</RequiredDataDBA>
<RequiredDataDDA>false</RequiredDataDDA>
<RequiredDataEIN>false</RequiredDataEIN>
<RequiredDataIPAddress>false</RequiredDataIPAddress>
<RequiredDataMeetInTheCloudData>false</RequiredDataMeetInTheCloudData>
<RequiredDataPersonalAddressFields>true</RequiredDataPersonalAddressFields>

<RequiredDataPersonalAddressFieldsEnhanced>false</RequiredDataPersonalAddressFieldsEnhanced>
<RequiredDataPersonalDayPhone>true</RequiredDataPersonalDayPhone>
<RequiredDataPersonalDob>true</RequiredDataPersonalDob>
<RequiredDataPersonalEvenPhone>true</RequiredDataPersonalEvenPhone>
<RequiredDataPersonalName>true</RequiredDataPersonalName>
<RequiredDataPersonalNationality>false</RequiredDataPersonalNationality>
<RequiredDataPersonalSSN>false</RequiredDataPersonalSSN>
<RequiredDataPersonalTimeAtAddress>false</RequiredDataPersonalTimeAtAddress>

<RequiredDataSeparateSignificantOwnerData>false</RequiredDataSeparateSignificantOwnerData>
<RequiredDataSourceEmail>true</RequiredDataSourceEmail>
<RequiredDataTimeZone>false</RequiredDataTimeZone>
<TierAllowedMCCRequirement>False</TierAllowedMCCRequirement>
<TierAllowedMCC>
<code>5812</code>
<code>5999</code>
</TierAllowedMCC>
<Devices>
<Device>
<TierAvailableDeviceName>d12a611c</TierAvailableDeviceName>
<TierAvailableDeviceFeeUpFront>45000</TierAvailableDeviceFeeUpFront>
<TierAvailableDeviceFeeMonthly>0</TierAvailableDeviceFeeMonthly>

<TierAvailableDeviceCurrencyCode>USD</TierAvailableDeviceCurrencyCode>
</Device>
<Device>
<TierAvailableDeviceName>bb1e9b3d</TierAvailableDeviceName>
<TierAvailableDeviceFeeUpFront>45000</TierAvailableDeviceFeeUpFront>
<TierAvailableDeviceFeeMonthly>0</TierAvailableDeviceFeeMonthly>

<TierAvailableDeviceCurrencyCode>USD</TierAvailableDeviceCurrencyCode>
</Device>
</Devices>
</Tier>
</Tiers>
<transType>130</transType>
©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 121
<status>00</status>
</XMLTrans>
</XMLResponse>

©2023 – ProPay® Inc. A Global Payments company. All rights reserved. Reproduction, adaptation, or translation of this document without ProPay® Inc.’s prior written permission is prohibited except as
allowed under copyright laws. Page 122

You might also like