API Documentation

Getting Started

The SmartPayables API was developed to assist you with integrating your back-office systems with the SmartPayables system. It allows you to submit bank accounts, documents, and payments for processing, and to look up your bank accounts, documents, payments, and general account information. The API is utilized by doing standard HTTP POST requests, and all submitted variables will use the standard HTTP POST variables. It returns XML or JSON formatted results. We do not require XML or JSON for the incoming requests.

Please be aware if you decide to use HTTP GET, please ensure any values in the query string are URL encoded to avoid corrupting the URL (e.g. API Key may contain forward slashes).

Live system requests should be transmitted to https://api.smartpayables.com/

To use our sand box system for integration testing, please use https://apisb.smartpayables.com/

You should obtain a separate Client ID and API Key for live and sandbox requests, but if you have any difficulty at all obtaining access please contact support to ensure you have access granted.

Please note: We require that you use HTTPS, HTTP support has been disabled for security reasons.

Please visit the Authenticating section for details on how to retrieve your API Credentials.

Please visit the IP Access Control section for details on how to setup your account to restrict which IP Addresses are able to access the API.

Before you can begin using the API, you must obtain your user account parameters, Client ID and API Key.

To obtain these values, take these steps:
  • 1. Log into your primary SmartPayables user account within the client panel. Click Here to visit our client panel.
  • 2. Click on API -> API Access -> API Credentials. This option is located toward the bottom of the left menu in the client panel.
  • 3. There you will find your Client ID and API Key, these correspond directly to your client_id and akey parameters for authentication.

Please note: The API Key must be kept secure and confidential. If the primary user account password is changed, the API key will also be changed and will need to be updated within your application to ensure continued access.

Failure to authenticate will produce the following response from the system:

<wmc-response status="0">
	<error>Access Denied, Invalid API Key Provided</error>
</wmc-response>

If you have requested JSON response but fail to authenticate, the system does not recognize which account it is, therefore will respond in our default XML format.

The API system will respond using either standard XML format, or optionally JSON format. If you require JSON formatted responses, please let support know and we can activate this for your account.

In most scenarios dates will be formatted using UNIX stamp format. See example output per method for clarification.

Payments can have the following statuses (status ID - status name):

  • 1 - Pending Release
  • 2 - Released
  • 3 - Processing
  • 4 - Sent Out
  • 5 - Posted / Cashed
  • 6 - Returned
  • 7 - Cancelled
  • 8 - Reissued

Documents can have the following statuses (status ID - status name):

  • 1 - Pending Release
  • 2 - Released
  • 3 - Processing
  • 4 - Sent Out
  • 5 - Returned
  • 6 - Rejected

Postgage Codes can have the following values (code - postage type):

  • 1 - USPS First Class
  • 2 - USPS Priority
  • 3 - USPS Priority + Delivery Confirmation
  • 5 - FedEx Express 2 Day
  • 6 - FedEx Express Overnight
  • 8 - USPS Overnight
  • 9 - USPS Certified Mail
  • 10 - FedEx Priority Overnight

XML format

Our standard XML response format will be contained within a wmc-response parent item, with a status attribute to indicate whether your request was successful, with status 1 being success, and status 0 indicating there was an error during your request under most circumstances. This parent item may also contain a fileid attribute applicable to file uploads.

As an example success response, please see below:

<wmc-response status="1">
	...
</wmc-response>

When the API system responds with a status code of 0, usually you will be given a set of error messages to accompany this.

Error messages will be contained within error elements, as children to the wmc-response parent item. There can be one, or multiple.

As an example error response, please see below:

XML format

<wmc-response status="0">
	<error>You must supply a payee</error>
	<error>Payment Amount must be greater than 0</error>
</wmc-response>

JSON format

{"errors":{"payee":"You must supply a payee","amount":"Payment Amount must be greater than 0"}}

The API system will perform a HTTP GET request against a URL of your choosing if configured to do so.

To set this up and view full instructions, you can go to API -> Webhooks -> Webhook Settings. This option is located toward the bottom of the left menu in the client panel.

Full history of webhooks are also available via API -> Webhooks -> Webhook History, with their respective real time status.

You can setup IP Access Control within your account by going to API -> API Access -> IP Access Control Settings.

Once you have ticked Enable IP Access Control, then click the bottom right button Update IP Access Control Settings.

After the settings have been updated, a list will now be visible to the right, where you can manage a list of IP Addresses you wish to grant access to API on your account.

Please note: While IP Access Control is disabled on your account, the system will automatically aggregate a list of IP addresses that have accessed your account to prepopulate your control list.

Code Examples

We have some introductory code examples available in the PHP programming language currently. These include:

  • Interaction with the API using both Sand Box and Live environments
  • Basic payment add example
  • Payment file upload example
  • Payment IMb Tracking Lookup example
  • Posted/Cashed CSV file upload example
  • Logo file upload example
  • Comprehensive bank account example
  • Check proof system example
  • Document add sample
  • Validate address example
  • Get Payment List example
  • Get Estimated Delivery Date Set Example

These examples include predefined data and sample files which will require mapping to your account to work successfully. These examples instead focus on demonstrating interaction with the API, using these should give you a jump start on integration.

If you have any questions at all, please contact support.

Please Click Here to download the zip file containing the following:

  • api-example.php
  • api-bank-accounts-example.php
  • api-check-file-example.php
  • api-check-proofs-example.php
  • api-file-example.php
  • api-get-estimated-delivery-date-set-example.php
  • api-get-payment-list-example.php
  • api-insert-example.php
  • api-imb-tracking-lookup-example.php
  • api-document-add-example.php
  • api-get-document-list-example.php
  • api-validate-address-example.php
  • api-logo-example.php
  • bank-account-test-file.csv
  • check-test-file.csv
  • document-example.pdf
  • document-mailing-list-example.csv
  • insert-example.pdf
  • logo-example.jpg
  • signature_sample.bmp
  • test-file.csv

Bank Accounts

Description: This method activates a bank account

Class: bank accounts

Method: activate

API Path: /bank-accounts/activate

Parameters: 
  • client_id*
  • akey*
  • bank_account_id* - bank account ID

Sample Return: 

XML format

<wmc-response status="1">
	<bankaccount id='13990'>
		<bankaccount_id>13990</bankaccount_id>
		<submit_ts>1446038027</submit_ts>
		<alias>My API File Test Account A 19 9186</alias>
		<alert_email_address>0</alert_email_address>
		<email_address></email_address>
		<name_on_checks>Name 19</name_on_checks>
		<address_on_checks>Addr 19</address_on_checks>
		<account_address>Addr1</account_address>
		<account_address2>Addr2</account_address2>
		<account_city>City</account_city>
		<account_state>State</account_state>
		<account_zip>12345</account_zip>
		<account_number>12345671425307</account_number>
		<routing_number>43214426</routing_number>
		<bank_name>Bank 19</bank_name>
		<bank_address>Bank Addr One</bank_address>
		<bank_fractional_code>123-45/67</bank_fractional_code>
		<custom_return_address></custom_return_address>
		<micro_deposits_sent>0</micro_deposits_sent>
		<returned>0</returned>
		<return_reason></return_reason>
		<verified>0</verified>
		<active>1</active>
		<signature_assigned>0</signature_assigned>
		<signature2_assigned>0</signature2_assigned>
		<confirmed>1</confirmed>
	</bankaccount>
</wmc-response>

JSON format

{"bank_account":{"id":"22984","date_submitted":1563317784,"signature_assigned":true,"signature2_assigned":false,"alias":"My API Test Account59","alert_email_address":false,"email_address":"","name_on_checks":"Test Name","address_on_checks":"Test Addr|Line 2|Line 3|Line 4","account_address":"Test Addr","account_address2":"Line 2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345678912383","routing_number":"98765432159","bank_name":"My Bank","bank_address":"My Banks|Addr|Lines","bank_fractional_code":"123\/456-78","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"test","ach_company_id":"cid","ach_originating_dfi":"odfi","ach_receiving_dfi":"rdfi","checks_enabled":true,"ach_enabled":true,"confirmed":true,"purchase_order":"","notify_on_payments_sent":true,"notify_sent_email_address":"someone@somewhere.com","proof_approved":false}}

Bank Accounts

Description: This method adds a new bank account, the bank account will need to be confirmed after being added

By adding a bank account through this method, you are agreeing to the following terms: I approve this information, including the signature is correct, and take responsibility for any inaccurate information provided. I also acknowledge that fees may apply if the sub-account requires special printing.

Class: bank accounts

Method: add

API Path: /bank-accounts/add

Parameters: 

  • client_id*
  • akey*
  • name_on_checks - The name to be printed on checks (populating this field will enable Checks for this bank account)
  • address_on_checks - The address to be printed on checks, please replace line breaks with the | character
  • address* - The bank account holders first line of address
  • address2 - The bank account holders second line of address if applicable
  • city* - The bank account holder's city
  • state* - The bank account holder's state
  • zip* - The bank account holder's zip code
  • account_number* - This is your bank account account number
  • routing_number* - This is your bank account routing number
  • bank_name* - This is your bank's name
  • bank_address - This is your bank's address, please replace line breaks with the | character
  • bank_fractional_code - This is your bank's fractional code (only required for Checks)
  • currency - This is defaulted to USD, but may also be set to CAD for Canadian bank accounts (only required for Checks)
  • sig2_threshold - This is used to set a threshold, where if a payment reaches this threshold, a second signature is used only then, otherwise if set a second signature is used all of the time
  • only_use_sig2_threshold - This is set to 1 or 0, indicating enabled or disabled, and enforces the threshold above
  • account_alias* - This is the account alias, used to display the account within the system
  • email_address - Set this if you wish for individual email alerts and verification links to go directly to a user
  • alert_email_address - This is set to 1 or 0, indicating enabled or disabled, and toggles whether or not individual emails with verification links are sent to users directly
  • return_address - This is used to set a custom return address, please replace line breaks with the | character
  • starting_check_number - This can be used to set a starting check number
  • sig_file - This is a file uploaded along with the request, and set as the account signature to be printed on checks. Please note that it is important only the signature is present in this image, and a white background is used (only required for Checks)
  • sig_file2 - This can be set if you require a second signature, and will be used all of the time if you do not set the threshold toggles above
  • name_on_account - Name on bank account. This field will be automatically set to name on checks if not provided.
  • ach_company_id - ACH Company/Tax ID (populating this field will enable ACH for this bank account)
  • ach_originating_dfi - Originating DFI number (required only if enabling ACH)
  • ach_receiving_dfi - Receiving DFI Number (required only if enabling ACH)
  • purchase_order  - This will be included on invoices if it is populated
  • notify_sent_email_address  - Set this to the email address you wish to use for individual payment sent out notifications to go directly to somebody other than your general sent out alert email
  • notify_on_payments_sent  - This is set to 1 or 2, indicating enabled or disabled, and toggles whether or not payment sent out notifications have their own specific email for this bank account
  • logo_file  - You can upload a logo file to be positioned top right of the check stub for any checks sent from this account, this should be uploaded using the same method as signatures, HTTP file upload sent with the request. Please try to use a clear logo image, with a white background. Only Bitmap, JPG or PNG formats are accepted

Sample Return: 

XML format

<wmc-response status="1">
	<bankaccount id='13991'>
		<bankaccount_id>13991</bankaccount_id>
		<submit_ts>1446043376</submit_ts>
		<alias>My API Test Account21</alias>
		<alert_email_address>0</alert_email_address>
		<email_address></email_address>
		<name_on_checks>Test Name</name_on_checks>
		<address_on_checks>Test Addr|Line 2|Line 3|Line 4</address_on_checks>
		<account_address>Test Addr</account_address>
		<account_address2>Line 2</account_address2>
		<account_city>City</account_city>
		<account_state>State</account_state>
		<account_zip>12345</account_zip>
		<account_number>12345678912314</account_number>
		<routing_number>987654321100</routing_number>
		<bank_name>My Bank</bank_name>
		<bank_address>My Banks|Addr|Lines</bank_address>
		<bank_fractional_code>123/456-78</bank_fractional_code>
		<custom_return_address></custom_return_address>
		<micro_deposits_sent>0</micro_deposits_sent>
		<returned>0</returned>
		<return_reason></return_reason>
		<verified>0</verified>
		<active>1</active>
		<signature_assigned>1</signature_assigned>
		<signature2_assigned>0</signature2_assigned>
		<confirmed>1</confirmed>
		<logo_assigned>1</logo_assigned>
	</bankaccount>
</wmc-response>

JSON format

{"bank_account":{"id":"22982","date_submitted":1563317623,"signature_assigned":true,"signature2_assigned":false,"alias":"My API Test Account41","alert_email_address":false,"email_address":"","name_on_checks":"Test Name","address_on_checks":"Test Addr|Line 2|Line 3|Line 4","account_address":"Test Addr","account_address2":"Line 2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345678912334","routing_number":"98765432196","bank_name":"My Bank","bank_address":"My Banks|Addr|Lines","bank_fractional_code":"123\/456-78","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"test","ach_company_id":"cid","ach_originating_dfi":"odfi","ach_receiving_dfi":"rdfi","checks_enabled":true,"ach_enabled":true,"confirmed":false,"purchase_order":"","notify_on_payments_sent":true,"notify_sent_email_address":"someone@somewhere.com","proof_approved":false,"logo_assigned":true}}

Bank Accounts

Description: This method is used to update a bank account's custom return address

Class: bank accounts

Method: update-custom-return-address

API Path: /bank-accounts/update-custom-return-address

Parameters: 

  • client_id*
  • akey*
  • bank_account_id* - Bank Account ID to update
  • return_address - This is used to set a custom return address, please replace line breaks with the | character. Set this to blank if you wish to use SmartPayable's return address

Sample Return: 

XML format

<wmc-response status="1">
	<bankaccount id='1'>
		<bankaccount_id>1</bankaccount_id>
		<submit_ts>1445012572</submit_ts>
		<alias>Default</alias>
		<alert_email_address>0</alert_email_address>
		<email_address></email_address>
		<name_on_checks>Some Name</name_on_checks>
		<address_on_checks>Some Address|Goes Here|12345</address_on_checks>
		<account_address>addr</account_address>
		<account_address2>addr2</account_address2>
		<account_city>city</account_city>
		<account_state>state</account_state>
		<account_zip>12345</account_zip>
		<account_number>123212345</account_number>
		<routing_number>123456789</routing_number>
		<bank_name>Bank Name</bank_name>
		<bank_address>Bank Address</bank_address>
		<bank_fractional_code>123-456/78</bank_fractional_code>
		<currency>USD</currency>
		<custom_return_address>123 Street|Centennial, CO 12345</custom_return_address>
		<micro_deposits_sent>1</micro_deposits_sent>
		<returned>0</returned>
		<return_reason></return_reason>	
		<verified>1</verified>
		<active>1</active>
		<signature_assigned>1</signature_assigned>
		<signature2_assigned>0</signature2_assigned>
		<name_on_account>Some Name</name_on_account>
		<ach_company_id>ABC</ach_company_id>
		<ach_originating_dfi>HIJ</ach_originating_dfi>
		<ach_receiving_dfi>DEF</ach_receiving_dfi>
		<checks_enabled>1</checks_enabled>
		<ach_enabled>1</ach_enabled>
		<confirmed>1</confirmed>
		<purchase_order></purchase_order>
		<notify_on_payments_sent>0</notify_on_payments_sent>
		<notify_sent_email_address></notify_sent_email_address>
		<proof_approved>1</proof_approved>
		<sub_client_id></sub_client_id>
		<sub_client_id2></sub_client_id2>
		<deleted>0</deleted>
	</bankaccount>
</wmc-response>

JSON format

{"bank_account":{"id":"22982","date_submitted":1563317623,"signature_assigned":true,"signature2_assigned":false,"alias":"My API Test Account41","alert_email_address":false,"email_address":"","name_on_checks":"Test Name","address_on_checks":"Test Addr|Line 2|Line 3|Line 4","account_address":"Test Addr","account_address2":"Line 2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345678912334","routing_number":"98765432196","bank_name":"My Bank","bank_address":"My Banks|Addr|Lines","bank_fractional_code":"123\/456-78","currency":"USD","custom_return_address":"123 Street|Centennial, CO 12345","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"test","ach_company_id":"cid","ach_originating_dfi":"odfi","ach_receiving_dfi":"rdfi","checks_enabled":true,"ach_enabled":true,"confirmed":false,"purchase_order":"","notify_on_payments_sent":true,"notify_sent_email_address":"someone@somewhere.com","proof_approved":false}}

Bank Accounts

Description: This method allows you to assign a signature to a bank account, typically used after file uploads

Class: bank accounts

Method: assign-signature

API Path: /bank-accounts/assign-signature

Parameters: 

  • client_id*
  • akey*
  • bank_account_id* - bank account ID
  • sig_file - This is a file uploaded along with the request, and set as the account signature to be printed on checks. Please note that it is important only the signature is present in this image, and a white background is used
  • sig_file2 - This can be set if you require a second signature, and will be used all of the time if you do not set the threshold toggles

Sample Return: 

XML format

<wmc-response status="1">
	<bankaccount id='13992'>
		<bankaccount_id>13992</bankaccount_id>
		<submit_ts>1446043630</submit_ts>
		<alias>My API File Test Account A 0 9926</alias>
		<alert_email_address>0</alert_email_address>
		<email_address></email_address>
		<name_on_checks>Name 0</name_on_checks>
		<address_on_checks>Addr 0</address_on_checks>
		<account_address>Addr1</account_address>
		<account_address2>Addr2</account_address2>
		<account_city>City</account_city>
		<account_state>State</account_state>
		<account_zip>12345</account_zip>
		<account_number>1234567142937</account_number>
		<routing_number>43213867</routing_number>
		<bank_name>Bank 0</bank_name>
		<bank_address>Bank Addr One</bank_address>
		<bank_fractional_code>123-45/67</bank_fractional_code>
		<custom_return_address></custom_return_address>
		<micro_deposits_sent>0</micro_deposits_sent>
		<returned>0</returned>
		<return_reason></return_reason>
		<verified>0</verified>
		<active>1</active>
		<signature_assigned>1</signature_assigned>
		<signature2_assigned>0</signature2_assigned>
		<confirmed>1</confirmed>
	</bankaccount>
</wmc-response>

JSON format

{"bank_account":{"id":"22984","date_submitted":1563317784,"signature_assigned":true,"signature2_assigned":false,"alias":"My API Test Account59","alert_email_address":false,"email_address":"","name_on_checks":"Test Name","address_on_checks":"Test Addr|Line 2|Line 3|Line 4","account_address":"Test Addr","account_address2":"Line 2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345678912383","routing_number":"98765432159","bank_name":"My Bank","bank_address":"My Banks|Addr|Lines","bank_fractional_code":"123\/456-78","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"test","ach_company_id":"cid","ach_originating_dfi":"odfi","ach_receiving_dfi":"rdfi","checks_enabled":true,"ach_enabled":true,"confirmed":true,"purchase_order":"","notify_on_payments_sent":true,"notify_sent_email_address":"someone@somewhere.com","proof_approved":false}}

Bank Accounts

Description: This method allows you to retrieve details for a specific bank account

Class: bank accounts

Method: by-id

API Path: /bank-accounts/by-id

Parameters: 

  • client_id*
  • akey*
  • bank_account_id* - bank account ID

Sample Return: 

XML format

<wmc-response status="1">
	<bankaccount id='19200'>
		<bankaccount_id>19200</bankaccount_id>
		<submit_ts>1548417559</submit_ts>
		<alias>NPTest2</alias>
		<alert_email_address>0</alert_email_address>
		<email_address></email_address>
		<name_on_checks>Check Name2</name_on_checks>
		<address_on_checks>Check Addr</address_on_checks>
		<account_address>Addr</account_address>
		<account_address2>Addr2</account_address2>
		<account_city>City</account_city>
		<account_state>State</account_state>
		<account_zip>Zip</account_zip>
		<account_number>1234567890</account_number>
		<routing_number>0987654321</routing_number>
		<bank_name>Bank Name</bank_name>
		<bank_address>Bank Addr</bank_address>
		<bank_fractional_code>123-45/67</bank_fractional_code>
		<currency>USD</currency>
		<custom_return_address>Ret</custom_return_address>
		<micro_deposits_sent>0</micro_deposits_sent>
		<returned>0</returned>
		<return_reason></return_reason>
		<verified>1</verified>
		<active>1</active>
		<signature_assigned>1</signature_assigned>
		<signature2_assigned>0</signature2_assigned>
		<name_on_account>Check Name2</name_on_account>
		<ach_company_id></ach_company_id>
		<ach_originating_dfi></ach_originating_dfi>
		<ach_receiving_dfi></ach_receiving_dfi>
		<checks_enabled>1</checks_enabled>
		<ach_enabled>0</ach_enabled>
		<confirmed>1</confirmed>
		<purchase_order></purchase_order>
		<notify_on_payments_sent>0</notify_on_payments_sent>
		<notify_sent_email_address></notify_sent_email_address>
		<proof_approved>1</proof_approved>
		<locked>0</locked>
	</bankaccount>
</wmc-response>

JSON format

{"bank_account":{"id":"19200","date_submitted":1548417559,"signature_assigned":true,"signature2_assigned":false,"locked":false,"alias":"NPTest2","alert_email_address":false,"email_address":"","name_on_checks":"Check Name2","address_on_checks":"Check Addr","account_address":"Addr","account_address2":"Addr2","account_city":"City","account_state":"State","account_zip":"Zip","account_number":"1234567890","routing_number":"0987654321","bank_name":"Bank Name","bank_address":"Bank Addr","bank_fractional_code":"123-45/67","currency":"USD","custom_return_address":"Ret","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"Check Name2","ach_company_id":"","ach_originating_dfi":"","ach_receiving_dfi":"","checks_enabled":true,"ach_enabled":false,"confirmed":true,"purchase_order":"","notify_on_payments_sent":false,"notify_sent_email_address":"","proof_approved":true}}

Bank Accounts

Description: This method is used to confirm a bank account, either an individually added bank account, or an entire uploaded bank account file (multiple)

Class: bank accounts

Method: confirm

API Path: /bank-accounts/confirm

Parameters: 

  • client_id*
  • akey*
  • item* - One or multiple unique item identifiers (for multiples, use standard form posting rules for data arrays and pass each item as item[]. Item must include bank account confirmation type. To confirm a single bank account with an id of 25, set item to 'single-25.' To confirm a bank account file with an ID of 25, set item to 'file-25.'

Note: The response varies by bank account confirmation type and by how the bank account information is confirmed. The response status is 1 if the transaction was successful.

This example confirms three bank accounts. Each item value was obtained from the bankaccount_id node returned by the respective bank-accounts/add method call:

  • item[0]=10
  • item[1]=11
  • item[2]=12

Sample Return: 

XML format

<wmc-response status="1">
	<bankaccount id='13992'>
		<bankaccount_id>13992</bankaccount_id>
		<submit_ts>1446043630</submit_ts>
		<alias>My API File Test Account A 0 9926</alias>
		<alert_email_address>0</alert_email_address>
		<email_address></email_address>
		<name_on_checks>Name 0</name_on_checks>
		<address_on_checks>Addr 0</address_on_checks>
		<account_address>Addr1</account_address>
		<account_address2>Addr2</account_address2>
		<account_city>City</account_city>
		<account_state>State</account_state>
		<account_zip>12345</account_zip>
		<account_number>1234567142937</account_number>
		<routing_number>43213867</routing_number>
		<bank_name>Bank 0</bank_name>
		<bank_address>Bank Addr One</bank_address>
		<bank_fractional_code>123-45/67</bank_fractional_code>
		<custom_return_address></custom_return_address>
		<micro_deposits_sent>0</micro_deposits_sent>
		<returned>0</returned>
		<return_reason></return_reason>
		<verified>0</verified>
		<active>1</active>
		<signature_assigned>1</signature_assigned>
		<signature2_assigned>0</signature2_assigned>
		<confirmed>1</confirmed>
	</bankaccount>
</wmc-response>

JSON format

{"bank_account":{"id":"22984","date_submitted":1563317784,"signature_assigned":true,"signature2_assigned":false,"alias":"My API Test Account59","alert_email_address":false,"email_address":"","name_on_checks":"Test Name","address_on_checks":"Test Addr|Line 2|Line 3|Line 4","account_address":"Test Addr","account_address2":"Line 2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345678912383","routing_number":"98765432159","bank_name":"My Bank","bank_address":"My Banks|Addr|Lines","bank_fractional_code":"123\/456-78","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"test","ach_company_id":"cid","ach_originating_dfi":"odfi","ach_receiving_dfi":"rdfi","checks_enabled":true,"ach_enabled":true,"confirmed":true,"purchase_order":"","notify_on_payments_sent":true,"notify_sent_email_address":"someone@somewhere.com","proof_approved":false}}

Bank Accounts

Description: This method deactivates a bank account

Class: bank accounts

Method: deactivate

API Path: /bank-accounts/deactivate

Parameters: 

  • client_id*
  • akey*
  • bank_account_id* - bank account ID

Sample Return: 

XML format

<wmc-response status="1">
	<bankaccount id='13990'>
		<bankaccount_id>13990</bankaccount_id>
		<submit_ts>1446038027</submit_ts>
		<alias>My API File Test Account A 19 9186</alias>
		<alert_email_address>0</alert_email_address>
		<email_address></email_address>
		<name_on_checks>Name 19</name_on_checks>
		<address_on_checks>Addr 19</address_on_checks>
		<account_address>Addr1</account_address>
		<account_address2>Addr2</account_address2>
		<account_city>City</account_city>
		<account_state>State</account_state>
		<account_zip>12345</account_zip>
		<account_number>12345671425307</account_number>
		<routing_number>43214426</routing_number>
		<bank_name>Bank 19</bank_name>
		<bank_address>Bank Addr One</bank_address>
		<bank_fractional_code>123-45/67</bank_fractional_code>
		<custom_return_address></custom_return_address>
		<micro_deposits_sent>0</micro_deposits_sent>
		<returned>0</returned>
		<return_reason></return_reason>
		<verified>0</verified>
		<active>0</active>
		<signature_assigned>0</signature_assigned>
		<signature2_assigned>0</signature2_assigned>
		<confirmed>1</confirmed>
	</bankaccount>
</wmc-response>

JSON format

{"bank_account":{"id":"22984","date_submitted":1563317784,"signature_assigned":true,"signature2_assigned":false,"alias":"My API Test Account59","alert_email_address":false,"email_address":"","name_on_checks":"Test Name","address_on_checks":"Test Addr|Line 2|Line 3|Line 4","account_address":"Test Addr","account_address2":"Line 2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345678912383","routing_number":"98765432159","bank_name":"My Bank","bank_address":"My Banks|Addr|Lines","bank_fractional_code":"123\/456-78","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":false,"name_on_account":"test","ach_company_id":"cid","ach_originating_dfi":"odfi","ach_receiving_dfi":"rdfi","checks_enabled":true,"ach_enabled":true,"confirmed":true,"purchase_order":"","notify_on_payments_sent":true,"notify_sent_email_address":"someone@somewhere.com","proof_approved":false}}

Bank Accounts

Description: This method retrieves a list of your bank accounts in the system, you can specify action required to only return bank accounts needing action such as needing a signature, returned, etc

Class: bank accounts

Method: get-list

API Path: /bank-accounts/get-list

Parameters: 

  • client_id*
  • akey*
  • action_required - Set this to 1 or 0, indicating true or false

Sample Return: 

XML format

<wmc-response status="1">
	<bankaccounts>
		<bankaccount id='14009'>
			<bankaccount_id>14009</bankaccount_id>
			<submit_ts>1446043631</submit_ts>
			<alias>My API File Test Account A 17 9595</alias>
			<alert_email_address>0</alert_email_address>
			<email_address></email_address>
			<name_on_checks>Name 17</name_on_checks>
			<address_on_checks>Addr 17</address_on_checks>
			<account_address>Addr1</account_address>
			<account_address2>Addr2</account_address2>
			<account_city>City</account_city>
			<account_state>State</account_state>
			<account_zip>12345</account_zip>
			<account_number>1234567142850</account_number>
			<routing_number>43213310</routing_number>
			<bank_name>Bank 17</bank_name>
			<bank_address>Bank Addr One</bank_address>
			<bank_fractional_code>123-45/67</bank_fractional_code>
			<custom_return_address></custom_return_address>
			<micro_deposits_sent>0</micro_deposits_sent>
			<returned>0</returned>
			<return_reason></return_reason>
			<verified>0</verified>
			<active>1</active>
			<signature_assigned>0</signature_assigned>
			<signature2_assigned>0</signature2_assigned>
			<confirmed>1</confirmed>
		</bankaccount>
		<bankaccount id='14010'>
			<bankaccount_id>14010</bankaccount_id>
			<submit_ts>1446043631</submit_ts>
			<alias>My API File Test Account A 18 4024</alias>
			<alert_email_address>0</alert_email_address>
			<email_address></email_address>
			<name_on_checks>Name 18</name_on_checks>
			<address_on_checks>Addr 18</address_on_checks>
			<account_address>Addr1</account_address>
			<account_address2>Addr2</account_address2>
			<account_city>City</account_city>
			<account_state>State</account_state>
			<account_zip>12345</account_zip>
			<account_number>12345671425210</account_number>
			<routing_number>43214492</routing_number>
			<bank_name>Bank 18</bank_name>
			<bank_address>Bank Addr One</bank_address>
			<bank_fractional_code>123-45/67</bank_fractional_code>
			<custom_return_address></custom_return_address>
			<micro_deposits_sent>0</micro_deposits_sent>
			<returned>0</returned>
			<return_reason></return_reason>
			<verified>0</verified>
			<active>1</active>
			<signature_assigned>0</signature_assigned>
			<signature2_assigned>0</signature2_assigned>
			<confirmed>1</confirmed>
		</bankaccount>
		<bankaccount id='14011'>
			<bankaccount_id>14011</bankaccount_id>
			<submit_ts>1446043631</submit_ts>
			<alias>My API File Test Account A 19 1808</alias>
			<alert_email_address>0</alert_email_address>
			<email_address></email_address>
			<name_on_checks>Name 19</name_on_checks>
			<address_on_checks>Addr 19</address_on_checks>
			<account_address>Addr1</account_address>
			<account_address2>Addr2</account_address2>
			<account_city>City</account_city>
			<account_state>State</account_state>
			<account_zip>12345</account_zip>
			<account_number>1234567142883</account_number>
			<routing_number>43215420</routing_number>
			<bank_name>Bank 19</bank_name>
			<bank_address>Bank Addr One</bank_address>
			<bank_fractional_code>123-45/67</bank_fractional_code>
			<custom_return_address></custom_return_address>
			<micro_deposits_sent>0</micro_deposits_sent>
			<returned>0</returned>
			<return_reason></return_reason>
			<verified>0</verified>
			<active>1</active>
			<signature_assigned>0</signature_assigned>
			<signature2_assigned>0</signature2_assigned>
			<confirmed>1</confirmed>
		</bankaccount>
	</bankaccounts>
</wmc-response>

JSON format

{"bank_accounts":[{"id":"22988","date_submitted":1563318284,"signature_assigned":false,"signature2_assigned":false,"alias":"My API File Test Account A 0 1120","alert_email_address":false,"email_address":"","name_on_checks":"Name 0","address_on_checks":"Addr 0","account_address":"Addr1","account_address2":"Addr2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345671426347","routing_number":"43217842","bank_name":"Bank 0","bank_address":"Bank Addr One","bank_fractional_code":"123-45\/67","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"Name 0","ach_company_id":"","ach_originating_dfi":"","ach_receiving_dfi":"","checks_enabled":true,"ach_enabled":false,"confirmed":false,"purchase_order":"","notify_on_payments_sent":false,"notify_sent_email_address":"","proof_approved":false},{"id":"22989","date_submitted":1563318284,"signature_assigned":false,"signature2_assigned":false,"alias":"My API File Test Account A 1 8879","alert_email_address":false,"email_address":"","name_on_checks":"Name 1","address_on_checks":"Addr 1","account_address":"Addr1","account_address2":"Addr2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345671423538","routing_number":"43219158","bank_name":"Bank 1","bank_address":"Bank Addr One","bank_fractional_code":"123-45\/67","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"Name 1","ach_company_id":"","ach_originating_dfi":"","ach_receiving_dfi":"","checks_enabled":true,"ach_enabled":false,"confirmed":false,"purchase_order":"","notify_on_payments_sent":false,"notify_sent_email_address":"","proof_approved":false},{"id":"22990","date_submitted":1563318284,"signature_assigned":false,"signature2_assigned":false,"alias":"My API File Test Account A 2 2691","alert_email_address":false,"email_address":"","name_on_checks":"Name 2","address_on_checks":"Addr 2","account_address":"Addr1","account_address2":"Addr2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345671424201","routing_number":"43216600","bank_name":"Bank 2","bank_address":"Bank Addr One","bank_fractional_code":"123-45\/67","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"Name 2","ach_company_id":"","ach_originating_dfi":"","ach_receiving_dfi":"","checks_enabled":true,"ach_enabled":false,"confirmed":false,"purchase_order":"","notify_on_payments_sent":false,"notify_sent_email_address":"","proof_approved":false}]}

Bank Accounts

Description: Used to upload bank accounts files, see Bank Accounts -> Upload for formatting details

Class: bank accounts

Method: upload

API Path: /bank-accounts/upload

Parameters: 

  • client_id*
  • akey*
  • userfile - File uploaded via HTTP post, similar to using a file input field on a form

Sample Return: 

XML format

<wmc-response status="1" fileid="58">
	<bankaccounts>
		<bankaccount id='14009'>
			<bankaccount_id>14009</bankaccount_id>
			<submit_ts>1446043631</submit_ts>
			<alias>My API File Test Account A 17 9595</alias>
			<alert_email_address>0</alert_email_address>
			<email_address></email_address>
			<name_on_checks>Name 17</name_on_checks>
			<address_on_checks>Addr 17</address_on_checks>
			<account_address>Addr1</account_address>
			<account_address2>Addr2</account_address2>
			<account_city>City</account_city>
			<account_state>State</account_state>
			<account_zip>12345</account_zip>
			<account_number>1234567142850</account_number>
			<routing_number>43213310</routing_number>
			<bank_name>Bank 17</bank_name>
			<bank_address>Bank Addr One</bank_address>
			<bank_fractional_code>123-45/67</bank_fractional_code>
			<custom_return_address></custom_return_address>
			<micro_deposits_sent>0</micro_deposits_sent>
			<returned>0</returned>
			<return_reason></return_reason>
			<verified>0</verified>
			<active>1</active>
			<signature_assigned>0</signature_assigned>
			<signature2_assigned>0</signature2_assigned>
			<confirmed>0</confirmed>
		</bankaccount>
		<bankaccount id='14010'>
			<bankaccount_id>14010</bankaccount_id>
			<submit_ts>1446043631</submit_ts>
			<alias>My API File Test Account A 18 4024</alias>
			<alert_email_address>0</alert_email_address>
			<email_address></email_address>
			<name_on_checks>Name 18</name_on_checks>
			<address_on_checks>Addr 18</address_on_checks>
			<account_address>Addr1</account_address>
			<account_address2>Addr2</account_address2>
			<account_city>City</account_city>
			<account_state>State</account_state>
			<account_zip>12345</account_zip>
			<account_number>12345671425210</account_number>
			<routing_number>43214492</routing_number>
			<bank_name>Bank 18</bank_name>
			<bank_address>Bank Addr One</bank_address>
			<bank_fractional_code>123-45/67</bank_fractional_code>
			<custom_return_address></custom_return_address>
			<micro_deposits_sent>0</micro_deposits_sent>
			<returned>0</returned>
			<return_reason></return_reason>
			<verified>0</verified>
			<active>1</active>
			<signature_assigned>0</signature_assigned>
			<signature2_assigned>0</signature2_assigned>
			<confirmed>0</confirmed>
		</bankaccount>
		<bankaccount id='14011'>
			<bankaccount_id>14011</bankaccount_id>
			<submit_ts>1446043631</submit_ts>
			<alias>My API File Test Account A 19 1808</alias>
			<alert_email_address>0</alert_email_address>
			<email_address></email_address>
			<name_on_checks>Name 19</name_on_checks>
			<address_on_checks>Addr 19</address_on_checks>
			<account_address>Addr1</account_address>
			<account_address2>Addr2</account_address2>
			<account_city>City</account_city>
			<account_state>State</account_state>
			<account_zip>12345</account_zip>
			<account_number>1234567142883</account_number>
			<routing_number>43215420</routing_number>
			<bank_name>Bank 19</bank_name>
			<bank_address>Bank Addr One</bank_address>
			<bank_fractional_code>123-45/67</bank_fractional_code>
			<custom_return_address></custom_return_address>
			<micro_deposits_sent>0</micro_deposits_sent>
			<returned>0</returned>
			<return_reason></return_reason>
			<verified>0</verified>
			<active>1</active>
			<signature_assigned>0</signature_assigned>
			<signature2_assigned>0</signature2_assigned>
			<confirmed>0</confirmed>
		</bankaccount>
	</bankaccounts>
</wmc-response>

JSON format

{"file_id":298,"bank_accounts":[{"id":"22988","date_submitted":1563318284,"signature_assigned":false,"signature2_assigned":false,"alias":"My API File Test Account A 0 1120","alert_email_address":false,"email_address":"","name_on_checks":"Name 0","address_on_checks":"Addr 0","account_address":"Addr1","account_address2":"Addr2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345671426347","routing_number":"43217842","bank_name":"Bank 0","bank_address":"Bank Addr One","bank_fractional_code":"123-45\/67","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"Name 0","ach_company_id":"","ach_originating_dfi":"","ach_receiving_dfi":"","checks_enabled":true,"ach_enabled":false,"confirmed":false,"purchase_order":"","notify_on_payments_sent":false,"notify_sent_email_address":"","proof_approved":false},{"id":"22989","date_submitted":1563318284,"signature_assigned":false,"signature2_assigned":false,"alias":"My API File Test Account A 1 8879","alert_email_address":false,"email_address":"","name_on_checks":"Name 1","address_on_checks":"Addr 1","account_address":"Addr1","account_address2":"Addr2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345671423538","routing_number":"43219158","bank_name":"Bank 1","bank_address":"Bank Addr One","bank_fractional_code":"123-45\/67","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"Name 1","ach_company_id":"","ach_originating_dfi":"","ach_receiving_dfi":"","checks_enabled":true,"ach_enabled":false,"confirmed":false,"purchase_order":"","notify_on_payments_sent":false,"notify_sent_email_address":"","proof_approved":false},{"id":"22990","date_submitted":1563318284,"signature_assigned":false,"signature2_assigned":false,"alias":"My API File Test Account A 2 2691","alert_email_address":false,"email_address":"","name_on_checks":"Name 2","address_on_checks":"Addr 2","account_address":"Addr1","account_address2":"Addr2","account_city":"City","account_state":"State","account_zip":"12345","account_number":"12345671424201","routing_number":"43216600","bank_name":"Bank 2","bank_address":"Bank Addr One","bank_fractional_code":"123-45\/67","currency":"USD","custom_return_address":"","micro_deposits_sent":false,"returned":false,"return_reason":"","verified":true,"active":true,"name_on_account":"Name 2","ach_company_id":"","ach_originating_dfi":"","ach_receiving_dfi":"","checks_enabled":true,"ach_enabled":false,"confirmed":false,"purchase_order":"","notify_on_payments_sent":false,"notify_sent_email_address":"","proof_approved":false}]}

Bank Accounts

Description: This method is used to verify micro deposits to get an account setup completed. Please note in sandbox, values of $0.01 and $0.01 for both will be accepted as valid to enable you to verify the account and test your implementation

Class: bank accounts

Method: verify-micro-deposits

API Path: /bank-accounts/verify-micro-deposits

Parameters: 

  • client_id*
  • akey*
  • bank_account_id* - Bank account ID
  • amount_one* - Micro Deposit amount one (0.00 formatting - 0.01 will be accepted on sandbox as valid)
  • amount_two* - Micro Deposit amount two (0.00 formatting - 0.01 will be accepted on sandbox as valid)

Sample Return: 

XML format

<wmc-response status="1">
	<verifyresult>
		<bankaccount_id>13990</bankaccount_id>
		<locked>0</locked>
		<attempts>0</attempts>
		<verified>1</verified>
	</verifyresult>
</wmc-response>

JSON format

{"id":"22984","locked":false,"attempts":"0","verified":true}

Documents

Description: This method adds a document to the system. Please Note: Adding document(s) is a two-step process, once you have called this method, you will then need to call the Confirm method, this is for potentially validating that all the fields were set as you intended.

Class: documents

Method: add

API Path: /documents/add

For Single Documents

Parameters: 

  • client_id*
  • akey*
  • document_file* - file uploaded via HTTP post, similar to using a file input field on a form
  • document_type* - set this to a value of "single"
  • print_type* - this is the ink/print type, please send one of the following options:
    • black_white - Print using Black & White
    • black_white_duplex - Print using Black & White Duplex
    • color - Print using Color
    • color_duplex - Print using Color Duplex
  • document_address_type* - please send one of the following options:
    • address_provided_separately - This indicates you want us to include a cover page and you are then required to supply the address in the fields below
    • address_included_in_file - This indicates your document itself already has the address within it
  • mail_to - who the document is addressed to
  • address - address to send to
  • address2 - second address to send to if required
  • city - city to send to
  • state - state to send to
  • zip - zip/postal code to send to
  • country - country to send to
  • trans_id - an optional custom client transaction ID stored for record keeping
  • document_return_address_option* - please send one of the following options:
    • smartpayables - This indicates you wish to use our address in the event of a return
    • custom - This indicates you will provide your own return address in the field below with new lines indicated by the | character
  • document_return_address* - custom return address to be used with new lines indicated by the | character (eg. company name|address|city, state, zip|country)
  • envelope_type_id - This field is used to specify an envelope type ID, which will be issued to you by our setup and support team if you have custom envelope types setup with us. You can also retrieve a list of usable IDs for your account from the Documents -> Get Envelope Types method

Sample Return: 

XML format

<wmc-response status="1">
	<documents>
		<document id='120584'>
			<id>120584</id>
			<confirmed>0</confirmed>
			<document_type>single</document_type>
			<document_address_type>address_included_in_file</document_address_type>
			<print_type>black_white</print_type>
			<mail_to></mail_to>
			<address></address>
			<address2></address2>
			<city></city>
			<state></state>
			<zip></zip>
			<country></country>
			<trans_id>Test Transaction</trans_id>
			<address_position_type>single_top_left</address_position_type>
			<document_return_address_option>custom</document_return_address_option>
			<document_return_address>Sample Custom Return Address</document_return_address>
			<status_id>1</status_id>
		</document>
	</documents>
</wmc-response>

JSON format

{"document":{"id":"120585","confirmed":false,"document_type":"single","document_address_type":"address_included_in_file","print_type":"black_white","mail_to":"","address":"","address2":"","city":"","state":"","zip":"","country":"","trans_id":"Test Transaction","address_position_type":"single_top_left","document_return_address_option":"custom","document_return_address":"Sample Custom Return Address","status":{"id":"1","name":"Pending Release"}}}

For File Bundles

Parameters: 

  • client_id*
  • akey*
  • document_file* - file uploaded via HTTP post, similar to using a file input field on a form
  • document_type* - set this to a value of "bundle"
  • print_type* - this is the ink/print type, please send one of the following options:
    • black_white - Print using Black & White
    • black_white_duplex - Print using Black & White Duplex
    • color - Print using Color
    • color_duplex - Print using Color Duplex
  • bundle_mail_to* - who the document is addressed to
  • bundle_address* - address to send to
  • bundle_address2 - second address to send to if required
  • bundle_city* - city to send to
  • bundle_state* - state to send to
  • bundle_zip* - zip/postal code to send to
  • bundle_country* - country to send to
  • bundle_count* - number of copies to print and send
  • trans_id - an optional custom client transaction ID stored for record keeping

Sample Return: 

XML format

<wmc-response status="1" bundleid="36">
	<documents>
		<document id='120591'>
			<id>120591</id>
			<confirmed>0</confirmed>
			<document_type>bundle</document_type>
			<print_type>black_white</print_type>
			<trans_id>Test Transaction</trans_id>
			<status_id>1</status_id>
		</document>
			<document id='120592'>
			<id>120592</id>
			<confirmed>0</confirmed>
			<document_type>bundle</document_type>
			<print_type>black_white</print_type>
			<trans_id>Test Transaction</trans_id>
			<status_id>1</status_id>
		</document>
			<document id='120593'>
			<id>120593</id>
			<confirmed>0</confirmed>
			<document_type>bundle</document_type>
			<print_type>black_white</print_type>
			<trans_id>Test Transaction</trans_id>
			<status_id>1</status_id>
		</document>
			<document id='120594'>
			<id>120594</id>
			<confirmed>0</confirmed>
			<document_type>bundle</document_type>
			<print_type>black_white</print_type>
			<trans_id>Test Transaction</trans_id>
			<status_id>1</status_id>
		</document>
			<document id='120595'>
			<id>120595</id>
			<confirmed>0</confirmed>
			<document_type>bundle</document_type>
			<print_type>black_white</print_type>
			<trans_id>Test Transaction</trans_id>
			<status_id>1</status_id>
		</document>
	</documents>
</wmc-response>

JSON format

{"bundle_id":"35","documents":[{"id":"120586","confirmed":false,"document_type":"bundle","print_type":"black_white","trans_id":"Test Transaction","status":{"id":"1","name":"Pending Release"}},{"id":"120587","confirmed":false,"document_type":"bundle","print_type":"black_white","trans_id":"Test Transaction","status":{"id":"1","name":"Pending Release"}},{"id":"120588","confirmed":false,"document_type":"bundle","print_type":"black_white","trans_id":"Test Transaction","status":{"id":"1","name":"Pending Release"}},{"id":"120589","confirmed":false,"document_type":"bundle","print_type":"black_white","trans_id":"Test Transaction","status":{"id":"1","name":"Pending Release"}},{"id":"120590","confirmed":false,"document_type":"bundle","print_type":"black_white","trans_id":"Test Transaction","status":{"id":"1","name":"Pending Release"}}]}

For Mailing Lists

Parameters: 

  • client_id*
  • akey*
  • document_file* - file uploaded via HTTP post, similar to using a file input field on a form
  • mailing_list_file* - file uploaded via HTTP post, similar to using a file input field on a form, in CSV format, with the following columns/headers:
    mail to recipient,address,address 2,city,state,zip,country,client transaction id
  • document_type* - set this to a value of "mailing_list"
  • print_type* - this is the ink/print type, please send one of the following options:
    • black_white - Print using Black & White
    • black_white_duplex - Print using Black & White Duplex
    • color - Print using Color
    • color_duplex - Print using Color Duplex
  • trans_id - an optional custom client transaction ID stored for record keeping
  • document_return_address_option* - please send one of the following options:
    • smartpayables - This indicates you wish to use our address in the event of a return
    • custom - This indicates you will provide your own return address in the field below with new lines indicated by the | character
  • document_return_address* - custom return address to be used with new lines indicated by the | character (eg. company name|address|city, state, zip|country)
  • envelope_type_id - This field is used to specify an envelope type ID, which will be issued to you by our setup and support team if you have custom envelope types setup with us. You can also retrieve a list of usable IDs for your account from the Documents -> Get Envelope Types method

Sample Return: 

XML format

<wmc-response status="1" fileid="93">
	<documents>
		<document id='120596'>
			<id>120596</id>
			<confirmed>0</confirmed>
			<document_type>mailing_list</document_type>
			<print_type>black_white</print_type>
			<mail_to>recipient 1</mail_to>
			<address>addr1</address>
			<address2>addr12</address2>
			<city>city1</city>
			<state>state1</state>
			<zip>12345</zip>
			<country>us</country>
			<trans_id>trans id1</trans_id>
			<address_position_type>double_top_left</address_position_type>
			<document_return_address_option>smartpayables</document_return_address_option>
			<document_return_address></document_return_address>
			<status_id>1</status_id>
		</document>
		<document id='120597'>
			<id>120597</id>
			<confirmed>0</confirmed>
			<document_type>mailing_list</document_type>
			<print_type>black_white</print_type>
			<mail_to>recipient 2</mail_to>
			<address>addr2</address>
			<address2>addr22</address2>
			<city>city2</city>
			<state>state2</state>
			<zip>12345</zip>
			<country>us</country>
			<trans_id>trans id2</trans_id>
			<address_position_type>double_top_left</address_position_type>
			<document_return_address_option>smartpayables</document_return_address_option>
			<document_return_address></document_return_address>
			<status_id>1</status_id>
		</document>
		<document id='120598'>
			<id>120598</id>
			<confirmed>0</confirmed>
			<document_type>mailing_list</document_type>
			<print_type>black_white</print_type>
			<mail_to>recipient 3</mail_to>
			<address>addr3</address>
			<address2>addr32</address2>
			<city>city3</city>
			<state>state3</state>
			<zip>12345</zip>
			<country>us</country>
			<trans_id>trans id3</trans_id>
			<address_position_type>double_top_left</address_position_type>
			<document_return_address_option>smartpayables</document_return_address_option>
			<document_return_address></document_return_address>
			<status_id>1</status_id>
		</document>
		<document id='120599'>
			<id>120599</id>
			<confirmed>0</confirmed>
			<document_type>mailing_list</document_type>
			<print_type>black_white</print_type>
			<mail_to>recipient 4</mail_to>
			<address>addr4</address>
			<address2>addr42</address2>
			<city>city4</city>
			<state>state4</state>
			<zip>12345</zip>
			<country>us</country>
			<trans_id>trans id4</trans_id>
			<address_position_type>double_top_left</address_position_type>
			<document_return_address_option>smartpayables</document_return_address_option>
			<document_return_address></document_return_address>
			<status_id>1</status_id>
		</document>
	</documents>
</wmc-response>

JSON format

{"file_id":94,"documents":[{"id":"120600","confirmed":false,"document_type":"mailing_list","print_type":"black_white","mail_to":"recipient 1","address":"addr1","address2":"addr12","city":"city1","state":"state1","zip":"12345","country":"us","trans_id":"trans id1","address_position_type":"double_top_left","document_return_address_option":"smartpayables","document_return_address":"","status":{"id":"1","name":"Pending Release"}},{"id":"120601","confirmed":false,"document_type":"mailing_list","print_type":"black_white","mail_to":"recipient 2","address":"addr2","address2":"addr22","city":"city2","state":"state2","zip":"12345","country":"us","trans_id":"trans id2","address_position_type":"double_top_left","document_return_address_option":"smartpayables","document_return_address":"","status":{"id":"1","name":"Pending Release"}},{"id":"120602","confirmed":false,"document_type":"mailing_list","print_type":"black_white","mail_to":"recipient 3","address":"addr3","address2":"addr32","city":"city3","state":"state3","zip":"12345","country":"us","trans_id":"trans id3","address_position_type":"double_top_left","document_return_address_option":"smartpayables","document_return_address":"","status":{"id":"1","name":"Pending Release"}},{"id":"120603","confirmed":false,"document_type":"mailing_list","print_type":"black_white","mail_to":"recipient 4","address":"addr4","address2":"addr42","city":"city4","state":"state4","zip":"12345","country":"us","trans_id":"trans id4","address_position_type":"double_top_left","document_return_address_option":"smartpayables","document_return_address":"","status":{"id":"1","name":"Pending Release"}}]}

Documents

Description: This method is used to locate a document by a specific ID

Class: documents

Method: by-id

API Path: /documents/by-id

Parameters: 

  • client_id*
  • akey*
  • document_id* - unique document identifier

Sample Return: 

XML format

<?xml version="1.0" encoding="UTF-8"?>
<wmc-response status="1">
	<documents>
		<document id='331270'>
			<id>331270</id>
			<confirmed>1</confirmed>
			<document_type>single</document_type>
			<print_type>black_white</print_type>
			<mail_to>SmartPayables</mail_to>
			<address>12742 E Caley Ave, Suite #2C</address>
			<address2></address2>
			<city>Centennial</city>
			<state>CO</state>
			<zip>80111</zip>
			<country>US</country>
			<trans_id>Sample Transaction</trans_id>
			<address_position_type>double_top_left</address_position_type>
			<document_return_address_option>custom</document_return_address_option>
			<document_return_address>Sample Custom Return Address</document_return_address>
			<status_id>1</status_id>
		</document>
	</documents>
</wmc-response>

JSON format

{"documents":[{"id":"331270","confirmed":true,"document_type":"single","print_type":"black_white","mail_to":"SmartPayables","address":"12742 E Caley Ave, Suite #2C","address2":"","city":"Centennial","state":"CO","zip":"80111","country":"US","trans_id":"Sample Transaction","address_position_type":"double_top_left","document_return_address_option":"custom","document_return_address":"Sample Custom Return Address","status":{"id":"1","name":"Pending Release"}}]}

Documents

Description: This method is used to locate documents by a specific Mailing File ID

Class: documents

Method: by-mailing-file-id

API Path: /documents/by-mailing-file-id

Parameters: 

  • client_id*
  • akey*
  • mailing_file_id* - unique document mailing file identifier

Sample Return: 

XML format

<wmc-response status="1">
	<documents>
		<document id='120605'>
			<id>120605</id>
			<confirmed>0</confirmed>
			<document_type>single</document_type>
			<print_type>black_white</print_type>
			<mail_to></mail_to>
			<address></address>
			<address2></address2>
			<city></city>
			<state></state>
			<zip></zip>
			<country></country>
			<trans_id>Test Transaction</trans_id>
			<address_position_type>single_top_left</address_position_type>
			<document_return_address_option>custom</document_return_address_option>
			<document_return_address>Sample Custom Return Address</document_return_address>
			<status_id>1</status_id>
		</document>
	</documents>
</wmc-response>

JSON format

{"documents":[{"id":"120604","confirmed":false,"document_type":"single","print_type":"black_white","mail_to":"","address":"","address2":"","city":"","state":"","zip":"","country":"","trans_id":"Test Transaction","address_position_type":"single_top_left","document_return_address_option":"custom","document_return_address":"Sample Custom Return Address","status":{"id":"1","name":"Pending Release"}}]}

Documents

Description: This method confirms one or more documents

Class: documents

Method: confirm

API Path: /documents/confirm

Parameters: 

  • client_id*
  • akey*
  • item* - this must be set to single-DOCUMENT_ID_HERE where DOCUMENT_ID_HERE is the document ID returned upon add, or file-FILE_ID_HERE where FILE_ID_HERE is the file ID returned upon file upload, or bundle-BUNDLE_ID_HERE where BUNDLE_ID_HERE is the bundle ID returned upon add

Sample Return: 

XML format

<wmc-response status="1">
	<documents>
		<document id='120605'>
			<id>120605</id>
			<confirmed>0</confirmed>
			<document_type>single</document_type>
			<print_type>black_white</print_type>
			<mail_to></mail_to>
			<address></address>
			<address2></address2>
			<city></city>
			<state></state>
			<zip></zip>
			<country></country>
			<trans_id>Test Transaction</trans_id>
			<address_position_type>single_top_left</address_position_type>
			<document_return_address_option>custom</document_return_address_option>
			<document_return_address>Sample Custom Return Address</document_return_address>
			<status_id>1</status_id>
		</document>
	</documents>
</wmc-response>

JSON format

{"documents":[{"id":"120604","confirmed":false,"document_type":"single","print_type":"black_white","mail_to":"","address":"","address2":"","city":"","state":"","zip":"","country":"","trans_id":"Test Transaction","address_position_type":"single_top_left","document_return_address_option":"custom","document_return_address":"Sample Custom Return Address","status":{"id":"1","name":"Pending Release"}}]}

Documents

Description: This method deletes a document. Note: You can only delete documents that are Pending Release or Released status

Class: documents

Method: delete

API Path: /documents/delete

Parameters: 

  • client_id*
  • akey*
  • document_id* - The Document ID to delete

Sample Return: 

XML format

<?xml version="1.0" encoding="UTF-8"?>
<wmc-response status="1">
<result>
	<document_id>1</document_id>
	<success>1</success>
</result>
</wmc-response>

JSON format

{"document_id":"1","success":true}

Documents

Description: This method should be used to query the system for a list of documents

Class: documents

Method: get-document-list

API Path: /documents/get-document-list

Parameters: 

  • client_id*
  • akey*
  • page - page to retrieve data for, defaulted to page 1, numeric only
  • per_page - the number of results per page of data, this has a maximum value of 50, numeric only
  • date_submitted_from - used in combination with the to field for a Date Submitted range filter (mm/dd/yyyy format)
  • date_submitted_to - used in combination with the from field for a Date Submitted range filter (mm/dd/yyyy format)
  • date_submitted_from - used in combination with the to field for a Date Updated range filter (mm/dd/yyyy format)
  • date_submitted_to - used in combination with the from field for a Date Updated range filter (mm/dd/yyyy format)
  • date_sent_from - used in combination with the to field for a Date Sent range filter (mm/dd/yyyy format)
  • date_sent_to - used in combination with the from field for a Date Sent range filter (mm/dd/yyyy format)
  • id - search by numeric Document ID
  • document_name - search by Document Name string
  • status_id - Status ID to filter by, numeric only
    • 1 - Pending Release
    • 2 - Released
    • 3 - Processing
    • 4 - Sent Out
    • 5 - Returned
    • 6 - Rejected
    • 1 - Pending Release

Sample Return: 

XML format

<?xml version="1.0" encoding="UTF-8"?>
<wmc-response status="1">
	<page_data>
		<page>1</page>
		<page_count>1</page_count>	
		<per_page>50</per_page>
		<document_count>2</document_count>
	</page_data>
	<documents>
		<document id='1' status='4'>
			<id>1</id>
			<date_submitted>1657639626</date_submitted>
			<date_updated>1689316841</date_updated>
			<date_sent>1689316841</date_sent>
			<confirmed>1</confirmed>
			<document_type>single</document_type>
			<print_type>black_white</print_type>
			<mail_to>SmartPayables</mail_to>
			<address>12742 E Caley Ave, Suite #2C</address>
			<address2></address2>
			<city>Centennial</city>
			<state>CO</state>
			<zip>80111</zip>
			<country>US</country>
			<trans_id>Sample</trans_id>
			<address_position_type>double_top_left</address_position_type>
			<document_return_address_option>custom</document_return_address_option>
			<document_return_address>Sample Custom Return Address</document_return_address>
			<status_id>4</status_id>
			<fees>0.15</fees>
			<postage_fees>0.60</postage_fees>
		</document>
		<document id='2' status='4'>
			<id>2</id>
			<date_submitted>1657639626</date_submitted>
			<date_updated>1689316841</date_updated>
			<date_sent>1689316841</date_sent>
			<confirmed>1</confirmed>
			<document_type>single</document_type>
			<print_type>black_white</print_type>
			<mail_to>SmartPayables</mail_to>
			<address>12742 E Caley Ave, Suite #2C</address>
			<address2></address2>
			<city>Centennial</city>
			<state>CO</state>
			<zip>80111</zip>
			<country>US</country>
			<trans_id>Sample 2</trans_id>
			<address_position_type>single_top_left</address_position_type>
			<envelope_type_id>5</envelope_type_id>
			<status_id>4</status_id>
			<fees>0.45</fees>
			<postage_fees>0.67</postage_fees>
		</document>
	</documents>
</wmc-response>

JSON format

{"page_data":{"page":1,"page_count":1,"per_page":50,"document_count":"2"},"documents":[{"id":"1","confirmed":true,"document_type":"single","print_type":"black_white","mail_to":"SmartPayables","address":"12742 E Caley Ave, Suite #2C","address2":"","city":"Centennial","state":"CO","zip":"80111","country":"US","trans_id":"Sample","address_position_type":"double_top_left","document_return_address_option":"custom","document_return_address":"Sample Custom Return Address","fees":"0.15","postage_fees":"0.60","date_submittted":"07\/12\/2022","date_updated":"07\/14\/2023","date_sent":"07\/14\/2023","status":{"id":"4","name":"Sent Out"}},{"id":"2","confirmed":true,"document_type":"single","print_type":"black_white_duplex","mail_to":"SmartPayables","address":"12742 E Caley Ave, Suite #2C","address2":"","city":"Centennial","state":"CO","zip":"80111","country":"US","trans_id":"Sample 2","address_position_type":"single_top_left","document_return_address_option":"smartpayables","document_return_address":"","fees":"1.00","postage_fees":"0.51","date_submittted":"07\/12\/2022","date_updated":"07\/14\/2023","date_sent":"07\/14\/2023","status":{"id":"4","name":"Sent Out"}}]}

Documents

Description: This method returns a list of custom envelope types, these IDs would then be provided when calling Add to specify which to use. If you wish to setup a custom envelope type, please contact support.

Class: documents

Method: get-envelope-types

API Path: /documents/get-envelope-types

Parameters: 

  • client_id*
  • akey*

Sample Return: 

XML format

<?xml version="1.0" encoding="UTF-8"?>
<wmc-response status="1">
<envelope_types>
	<envelope_type envelope_type_id='1'>
		<envelope_type_id>1</envelope_type_id>
		<envelope_alias>Example 1</envelope_alias>
	</envelope_type>
	<envelope_type envelope_type_id='2'>
		<envelope_type_id>2</envelope_type_id>
		<envelope_alias>Example 2</envelope_alias>
	</envelope_type>
</envelope_types>
</wmc-response>

JSON format

{"envelope_types":[{"envelope_type_id":"1","envelope_alias":"Example 1"},{"envelope_type_id":"2","envelope_alias":"Example 2"}]}

Check Proofs

Description: This method is used to approve a check proof

Class: bank-accounts

Method: check-proofs/approve

API Path: /bank-accounts/check-proofs/approve

Parameters: 

  • client_id*
  • akey*
  • check_proof_id* - the ID of the check proof to approve

Sample Return: 

XML format

<wmc-response status="1">
	<checkproofs>
		<checkproof id='1'>
			<checkproof_id>1</checkproof_id>
			<bank_account_id>1</bank_account_id>
			<bank_account_alias>Sample 1</bank_account_alias>
			<checkproof_added_ts>1542206453</checkproof_added_ts>
			<checkproof_reviewed>1</checkproof_reviewed>
			<checkproof_approved>1</checkproof_approved>
			<checkproof_rejected>0</checkproof_rejected>
			<checkproof_rejection_reason></checkproof_rejection_reason>
		</checkproof>
	</checkproofs>
</wmc-response>

JSON format

{"check_proof":{"id":"710","bank_account_id":"22984","bank_account_alias":"My API Test Account59","checkproof_added_ts":"1563318671","checkproof_reviewed":true,"checkproof_approved":true,"checkproof_rejected":false,"checkproof_rejection_reason":""}}

Check Proofs

Description: This method is used to retrieve check proof information by bank account ID

Class: bank-accounts

Method: check-proofs/get-by-bank-account-id

API Path: /bank-accounts/check-proofs/get-by-bank-account-id

Parameters: 

  • client_id*
  • akey*
  • bank_account_id* - the ID of the bank account

Sample Return: 

XML format

<wmc-response status="1">
	<checkproofs>
		<checkproof id='1'>
			<checkproof_id>1</checkproof_id>
			<bank_account_id>1</bank_account_id>
			<bank_account_alias>Sample 1</bank_account_alias>
			<checkproof_added_ts>1542206453</checkproof_added_ts>
			<checkproof_reviewed>0</checkproof_reviewed>
			<checkproof_approved>0</checkproof_approved>
			<checkproof_rejected>0</checkproof_rejected>
			<checkproof_rejection_reason></checkproof_rejection_reason>
		</checkproof>
	</checkproofs>
</wmc-response>

JSON format

{"check_proof":{"id":"710","bank_account_id":"22984","bank_account_alias":"My API Test Account59","checkproof_added_ts":"1563318671","checkproof_reviewed":false,"checkproof_approved":false,"checkproof_rejected":false,"checkproof_rejection_reason":""}}

Check Proofs

Description: This method is used to retrieve a JPG formatted image of the check proof for you to review

Class: bank-accounts

Method: check-proofs/get-proof-image

API Path: /bank-accounts/check-proofs/get-proof-image

Parameters: 

  • client_id*
  • akey*
  • check_proof_id* - the ID of the check proof to retrieve a JPG image of

Check Proofs

Description: This method is used to retrieve a list of check proofs awaiting review

Class: bank-accounts

Method: check-proofs/get-review-list

API Path: /bank-accounts/check-proofs/get-review-list

Parameters: 

  • client_id*
  • akey*

Sample Return: 

XML format

<wmc-response status="1">
	<checkproofs>
		<checkproof id='1'>
			<checkproof_id>1</checkproof_id>
			<bank_account_id>1</bank_account_id>
			<bank_account_alias>Sample 1</bank_account_alias>
			<checkproof_added_ts>1542206427</checkproof_added_ts>
			<checkproof_reviewed>0</checkproof_reviewed>
			<checkproof_approved>0</checkproof_approved>
			<checkproof_rejected>0</checkproof_rejected>
			<checkproof_rejection_reason></checkproof_rejection_reason>
		</checkproof>
		<checkproof id='2'>
			<checkproof_id>2</checkproof_id>
			<bank_account_id>2</bank_account_id>
			<bank_account_alias>Sample 2</bank_account_alias>
			<checkproof_added_ts>1542206440</checkproof_added_ts>
			<checkproof_reviewed>0</checkproof_reviewed>
			<checkproof_approved>0</checkproof_approved>
			<checkproof_rejected>0</checkproof_rejected>
			<checkproof_rejection_reason></checkproof_rejection_reason>
		</checkproof>
	</checkproofs>
</wmc-response>

JSON format

{"check_proofs":[{"id":"710","bank_account_id":"22984","bank_account_alias":"My API Test Account59","checkproof_added_ts":"1563318671","checkproof_reviewed":false,"checkproof_approved":false,"checkproof_rejected":false,"checkproof_rejection_reason":""}]}

Check Proofs

Description: This method is used to reject a check proof

Class: bank-accounts

Method: check-proofs/reject

API Path: /bank-accounts/check-proofs/reject

Parameters: 

  • client_id*
  • akey*
  • check_proof_id* - the ID of the check proof to reject
  • rejection_reason - the reason for the rejection

Sample Return: 

XML format

<wmc-response status="1">
	<checkproofs>
		<checkproof id='1'>
			<checkproof_id>1</checkproof_id>
			<bank_account_id>1</bank_account_id>
			<bank_account_alias>Sample 1</bank_account_alias>
			<checkproof_added_ts>1542206453</checkproof_added_ts>
			<checkproof_reviewed>1</checkproof_reviewed>
			<checkproof_approved>0</checkproof_approved>
			<checkproof_rejected>1</checkproof_rejected>
			<checkproof_rejection_reason>Sample rejection reason</checkproof_rejection_reason>
		</checkproof>
	</checkproofs>
</wmc-response>

JSON format

{"check_proof":{"id":"710","bank_account_id":"22984","bank_account_alias":"My API Test Account59","checkproof_added_ts":"1563318671","checkproof_reviewed":true,"checkproof_approved":false,"checkproof_rejected":true,"checkproof_rejection_reason":"Sample reason"}}

Payments

Description: This method adds a payment to the system. Please Note: Adding a payment is a two-step process, once you have called this method, you will then need to call the Confirm method, this is for potentially validating that all the fields were set as you intended.

Class: payments

Method: add

API Path: /payments/add

For Check (method_id = 2)

Parameters: 

  • client_id*
  • akey*
  • method_id* - numeric id representing a method of payment
  • payee* - name of payee, 48 characters max length
  • amount* - amount of payment (xxx.xx). This is entered with no currency symbols; just numbers and decimals
  • address* - payee street address, 120 characters max length if no address2 is provided, if address2 is provided, there is a 60 character limit on this and address2 fields
  • address2
  • city* - payee city
  • country* - payee country
  • logo_file - name of client's logo file stored on the system
  • memo - information placed on the stub of the check or the memo line of the check depending upon client setup
  • notes - internal notes to pass to the system along with the payment
  • payee_email - payee email (optional)
  • payment_type - indicates the type of payment, e.g. Bill Payment, Commission, etc
  • postage_code (one of the following numeric values)
    • 1 - USPS First Class
    • 2 - USPS Priority
    • 3 - USPS Priority + Delivery Confirmation
    • 5 - FedEx Express 2 Day
    • 6 - FedEx Express Overnight
    • 8 - USPS Overnight
    • 9 - USPS Certified Mail
    • 10 - FedEx Priority Overnight
  • reference* - reference
  • state* - payee state
  • taxid - SSN or tax identification number
  • trans_id* - transaction id assigned by client to identify individual payment that will display in reports, etc
  • zip* - payee zip / postal code, for US zip codes please provide 5 digit or 5-4 digit formatting
  • check_num - this can be used to provide your own check number, numeric only. By default we will generate these so leave blank or do not provide this if you wish for us to do so. This can be up to 10 digits, and must not be a negative number
  • bank_account_id - please provide either the unique bank account ID from the system, or the bank account alias you set to send the check from a different bank account you have added. If no value is provided, your Default bank account will be used
  • mail_to_payee - if you populate this field it will replace the payee name in the address for mailing
  • expedite_request - if it is past our 9 AM cut off time but before 11 AM, set this field to a value of 1 to indicate you wish to place a request in to send this payment past dead line, please note this is not a guaranteed service
  • date_to_send - if your account is enabled for future dated payments, this field can be populated with format MM/DD/YYYY to set up the date a payment is to be sent out. If this is not a working day, it will be sent on the next working day. If you would like to send future dated payments and your account is not yet enabled for this, please contact support

Parameters: 

To add a check with an insert PDF file, please include the following parameters:

  • insert_include* - set this field to a value of 1 to indicate you wish to include an insert PDF file
  • insert_file* - using HTTP file upload, please include your PDF file with the name 'insert_file'
  • insert_print* - please provide how you want this insert to be printed within this field, using one of the following values
    • black_white - Print using Black & White
    • black_white_duplex - Print using Black & White Duplex
    • color - Print using Color
    • color_duplex - Print using Color Duplex

Sample Return: 

XML format

<wmc-response status="1">
	<payment id='1310350' status='0'>
		<payment_id>1310350</payment_id>
		<client_id>1</client_id>
		<client>SmartPayables</client>
		<company_name>SmartPayables</company_name>
		<status_id>0</status_id>
		<method_id>2</method_id>
		<submit_ts>1378508396</submit_ts>
		<date_submitted>1378508396</date_submitted>
		<date_updated></date_updated>
		<date_exported></date_exported>
		<date_sent></date_sent>
		<confirmed>0</confirmed>
		<deleted>0</deleted>
		<payee>Test Payee</payee>
		<amount>69.00</amount>
		<pay>1</pay>
		<id>1310350</id>
		<address>1234 some st</address>
		<address2></address2>
		<insert_file></insert_file>
		<check_num>0</check_num>
		<city>lake worth</city>
		<trans_id>12345</trans_id>
		<country>usa</country>
		<first_name></first_name>
		<insert_color>0</insert_color>
		<last_name></last_name>
		<logo_file></logo_file>
		<memo>Test Ref</memo>
		<memo2></memo2>
		<notes></notes>
		<payee_email></payee_email>
		<payment_type></payment_type>
		<postage_code>1</postage_code>
		<reference>Test Ref</reference>
		<ref>Test Ref</ref>
		<taxid></taxid>
		<state>fl</state>
		<tracking></tracking>
		<zip>33462</zip>
		<fee>0.00</fee>
		<postage_fee>0.00</postage_fee>
		<extra_fee>0.00</extra_fee>
	</payment>
</wmc-response>

JSON format

{"payment":{"date_submitted":1563231463,"date_updated":null,"date_sent":null,"confirmed":false,"deleted":false,"payee":"Test Payee","amount":"69.00","date_to_send":1563231463,"id":5812931,"method":{"id":2,"name":"Check"},"status":{"id":1,"name":"Pending Release"},"fee":"0.00","postage_fee":"0.00","extra_fee":"0.00","address":"1234 some st","check_num":"0","city":"lake worth","trans_id":"12345","country":"usa","memo":"Test Ref","postage_code":{"id":"1","name":"USPS First Class"},"reference":"Test Ref","state":"fl","zip":"33462"}}

For ACH (method_id = 1)

Parameters: 

  • client_id*
  • akey*
  • method_id* - numeric id representing a method of payment
  • payee* - name of payee
  • amount* - amount of payment (xxx.xx). This is entered with no currency symbols; just numbers and decimals
  • acct_class* - Personal / Corporate
  • acct_name - name on account
  • acct_num* - account num
  • acct_route* - the 9-digit routing number of the receiving bank to which the payment is being sent
  • acct_type* - Checking / Savings
  • address* - payee street address
  • address2
  • bank_name* - bank name
  • city* - payee city
  • country* - payee country
  • first_name - payment recipient's first name
  • last_name - payment recipient's last name
  • notes - internal notes to pass to the system along with the payment
  • payee_email - payee email (optional)
  • payment_type - free-form text field to indicate the type of payment, e.g. Bill Payment, Rebate, Commission, etc
  • reference* - reference info printed on check stub or memo line or tagged on wire transfer
  • state* - payee state
  • taxid - SSN or tax identification number
  • trans_id* - transaction id assigned by client to identify individual payment that will display on reports, etc
  • zip* - payee zip / postal code
  • bank_account_id - please provide either the unique bank account ID from the system, or the bank account alias you set to send the ACH from a different bank account you have added. If no value is provided, your Default bank account will be used
  • expedite_request - if it is past our 9 AM cut off time but before 11 AM, set this field to a value of 1 to indicate you wish to place a request in to send this payment past dead line, please note this is not a guaranteed service

Sample Return: 

XML format

<wmc-response status="1">
	<payment id='1309160' status='0'>
		<payment_id>1309160</payment_id>
		<client_id>1</client_id>
		<client>SmartPayables</client>
		<company_name>SmartPayables</company_name>
		<status_id>0</status_id>
		<method_id>1</method_id>
		<submit_ts>1378433857</submit_ts>
		<date_submitted>1378433857</date_submitted>
		<date_updated></date_updated>
		<date_exported></date_exported>
		<date_sent></date_sent>
		<confirmed>0</confirmed>
		<deleted>0</deleted>
		<payee>John Smith</payee>
		<amount>300.00</amount>
		<pay>1</pay>
		<id>1309160</id>
		<acct_class>Personal</acct_class>
		<acct_num>123456789</acct_num>
		<acct_route>036001808</acct_route>
		<acct_type>Checking</acct_type>
		<address>1 Main Street</address>
		<address2></address2>
		<bank_name>TD Bank</bank_name>
		<city>Yardley</city>
		<trans_id>54321</trans_id>
		<country>usa</country>
		<first_name></first_name>
		<last_name></last_name>
		<acct_name></acct_name>
		<notes></notes>
		<payee_email></payee_email>
		<payment_type></payment_type>
		<reference>Testing</reference>
		<ref>Testing</ref>
		<taxid></taxid>
		<state>PA</state>
		<zip>19067</zip>
		<fee>0.00</fee>
		<postage_fee>0.00</postage_fee>
		<extra_fee>0.00</extra_fee>
	</payment>
</wmc-response>

JSON format

{"payment":{"date_submitted":1563231735,"date_updated":null,"date_sent":null,"confirmed":false,"deleted":false,"payee":"Test Payee","amount":"69.00","date_to_send":1563231735,"id":5812978,"method":{"id":1,"name":"ACH"},"status":{"id":1,"name":"Pending Release"},"fee":"0.00","postage_fee":"0.00","extra_fee":"0.00","acct_class":"Personal","acct_num":"123456789","acct_route":"987654321","acct_type":"Checking","address":"1234 some st","bank_name":"Test Bank","city":"lake worth","trans_id":"12345","country":"usa","is_credit":"No","reference":"Test Ref","state":"fl","zip":"33462","bank_account_id":"1"}}

Payments

Description: This method is used to locate a payment by a specific ID

Class: payments

Method: by-id

API Path: /payments/by-id

Parameters: 

  • client_id*
  • akey*
  • payment_id* - unique payment identifier

Note: The response varies by payment type.

Sample Return: 

XML format

<wmc-response status="1">
	<payment id='1791977' status='6'>
		<payment_id>1791977</payment_id>
		<client_id>1</client_id>
		<client>smartpayables.com</client>
		<company_name>SmartPayables</company_name>
		<status_id>7</status_id>
		<status>Cancelled</status>
		<method_id>1</method_id>
		<submit_ts>1413894934</submit_ts>
		<date_submitted>1413894934</date_submitted>
		<date_updated>1413894968</date_updated>
		<date_exported></date_exported>
		<date_sent></date_sent>
		<confirmed>1</confirmed>
		<deleted>0</deleted>
		<payee>test</payee>
		<amount>5.00</amount>
		<pay>1</pay>
		<checked_for_duplicates>0</checked_for_duplicates>
		<id>1791977</id>
		<trans_id>test</trans_id>
		<mail_to_payee>test</mail_to_payee>
		<address>test</address>
		<address2>test</address2>
		<city>test</city>
		<state>test</state>
		<zip>12345</zip>
		<country>test</country>
		<reference>test</reference>
		<ref>test</ref>
		<memo>test</memo>
		<payee>test</payee>
		<amount>5.00</amount>
		<bank_name>tbn</bank_name>
		<acct_num>123</acct_num>
		<acct_route>321</acct_route>
		<fee>2.50</fee>
		<postage_fee>0.00</postage_fee>
		<extra_fee>0.00</extra_fee>
	</payment>
</wmc-response>

JSON format

{"payments":[{"id":"5222041","date_submitted":1553795750,"date_updated":1562890701,"date_sent":false,"confirmed":true,"deleted":false,"payee":"Tester","amount":"202.00","date_to_send":1553795750,"fee":"0.65","postage_fee":"1.20","extra_fee":0,"postage_code":{"id":"1","name":"USPS First Class"},"check_num":"12345","reference":"Payout through February 15 2019","address":"Address Line One","address2":"","city":"Tst","state":"QC","zip":"12345","country":"USA","memo":"Payout through February 15 2019","insert_pdf_filename":false,"taxid":false,"logo_file":"TestLogo.bmp","status":{"id":"7","name":"Cancelled"},"method":{"id":"2","name":"Check"}}]}

Payments

Description: This method is used to cancel one of your checks

Class: payments

Method: cancel-check

API Path: /payments/cancel-check

Parameters: 

  • client_id*
  • akey*
  • id* - the unique identifier for the check you wish to cancel

Note: The response varies by payment type.

Sample Return: 

XML format

<wmc-response status="1">
	<payment id='1791977' status='6'>
		<payment_id>1791977</payment_id>
		<client_id>1</client_id>
		<client>smartpayables.com</client>
		<company_name>SmartPayables</company_name>
		<status_id>7</status_id>
		<status>Cancelled</status>
		<method_id>1</method_id>
		<submit_ts>1413894934</submit_ts>
		<date_submitted>1413894934</date_submitted>
		<date_updated>1413894968</date_updated>
		<date_exported></date_exported>
		<date_sent></date_sent>
		<confirmed>1</confirmed>
		<deleted>0</deleted>
		<payee>test</payee>
		<amount>5.00</amount>
		<pay>1</pay>
		<checked_for_duplicates>0</checked_for_duplicates>
		<id>1791977</id>
		<trans_id>test</trans_id>
		<mail_to_payee>test</mail_to_payee>
		<address>test</address>
		<address2>test</address2>
		<city>test</city>
		<state>test</state>
		<zip>12345</zip>
		<country>test</country>
		<reference>test</reference>
		<ref>test</ref>
		<memo>test</memo>
		<payee>test</payee>
		<amount>5.00</amount>
		<bank_name>tbn</bank_name>
		<acct_num>123</acct_num>
		<acct_route>321</acct_route>
		<fee>2.50</fee>
		<postage_fee>0.00</postage_fee>
		<extra_fee>0.00</extra_fee>
	</payment>
</wmc-response>

JSON format

{"payment":{"date_submitted":1553795750,"date_updated":1563232509,"date_sent":null,"confirmed":true,"deleted":false,"payee":"Test Payee","amount":"202.00","date_to_send":1553795750,"id":5222041,"method":{"id":2,"name":"Check"},"status":{"id":7,"name":"Cancelled"},"fee":"0.65","postage_fee":"1.20","extra_fee":"0.00","postage_code":{"id":"1","name":"USPS First Class"},"check_num":"54321","reference":"Payout through February 15 2019","address":"Test","address2":"","city":"MONTREAL","state":"QC","zip":"12345","country":"USA","memo":"Payout through February 15 2019","insert_pdf_filename":"","taxid":"","logo_file":"TestLogo.bmp"}}

Payments

Description: This method confirms one or more payments

Class: payments

Method: confirm

API Path: /payments/confirm

Parameters: 

  • client_id*
  • akey*
  • item* - To confirm a single payment added via payments/add, please set this value to 'single-PAYMENT ID' (where PAYMENT ID is the unique payment ID returned during the add call). To confirm a file containing multiple payments uploaded via payments/upload, please set this value to 'file-FILE ID' (where FILE ID is the unique file ID returned during the upload call).

Bundling An Uploaded File 

If you wish to bundle a file uploaded via payments/upload into one package, please add the following parameters to your confirm call (please note this is only applicable to checks, and also does not need to be transmitted thru these parameters if you are using file based bundling fields)

  • bundle_opt_in* - please set this field to a value of 1 to indicate you wish to bundle these checks
  • bundle_mail_to*  - recipient field used in postage
  • bundle_address*  - address line 1 field used in postage
  • bundle_address_2*  - address line 2 field used in postage
  • bundle_city*  - city field used in postage
  • bundle_state*  - state field used in postage
  • bundle_zip*  - zip field used in postage
  • bundle_country*  - country field used in postage
  • bundle_check_contents*  - please provide one of the following options
    • envelope - this indicates you wish to have every check in this bundle enveloped
    • loose - this indicates you wish to have every check in this bundle loose
  • bundle_postal_type  - please provide one of the following options if required
    • usps_priority - send via USPS Priority, this is the default postage type if no postage type is provided
    • usps_priority_sig - send via USPS Priority (signature required)
    • usps_overnight - send via USPS Overnight (express)
    • fedex_2day - send via FedEx Express 2 Day
    • fedex_overnight - send via FedEx Express Overnight
    • fedex_priority_overnight - send via FedEx Priority Overnight
  • bundle_custom_account_number  - if you wish to use your own FedEx account number instead of ours, please send your account number in this field
  • bundle_custom_alert_email  - if opting to use your own FedEx account number, you may also send an alert email address in this field

Sample Return: 

XML format

<wmc-response status="1">
	<payments>
		<payment id='1309164' status='0'>
			<payment_id>1309164</payment_id>
			<client_id>1</client_id>
			<client>SmartPayables</client>
			<company_name>SmartPayables</company_name>
			<status_id>0</status_id>
			<method_id>5</method_id>
			<submit_ts>1378436261</submit_ts>
			<date_submitted>1378436261</date_submitted>
			<date_updated></date_updated>
			<date_exported></date_exported>
			<date_sent></date_sent>
			<confirmed>1</confirmed>
			<deleted>0</deleted>
			<payee>John Smith</payee>
			<amount>555.55</amount>
			<pay>1</pay>
			<id>1309164</id>
			<acct_num>123456789</acct_num>
			<acct_route>036001808</acct_route>
			<additional_info></additional_info>
			<address>1 Main Street</address>
			<address2></address2>
			<bank_country>US</bank_country>
			<bank_name>TD Bank</bank_name>
			<bank_route></bank_route>
			<acct_name>Felix Cullen</acct_name>
			<branch_info></branch_info>
			<city>Yardley</city>
			<trans_id>55555</trans_id>
			<corr_bank_acct></corr_bank_acct>
			<corr_bank_city></corr_bank_city>
			<corr_bank_country></corr_bank_country>
			<corr_bank_name></corr_bank_name>
			<corr_bank_swift></corr_bank_swift>
			<country>usa</country>
			<first_name></first_name>
			<iban></iban>
			<last_name></last_name>
			<notes></notes>
			<payee_email></payee_email>
			<payment_type></payment_type>
			<reference>Testing</reference>
			<ref>Testing</ref>
			<sort_code></sort_code>
			<taxid></taxid>
			<state>PA</state>
			<swift_code></swift_code>
			<zip>19067</zip>
			<fee>0.00</fee>
			<postage_fee>0.00</postage_fee>
			<extra_fee>0.00</extra_fee>
		</payment>
		<payment id='1309160' status='0'>
			<payment_id>1309160</payment_id>
			<client_id>1</client_id>
			<client>Quantum Techniques</client>
			<company_name>SmartPayables</company_name>
			<status_id>0</status_id>
			<method_id>1</method_id>
			<submit_ts>1378433857</submit_ts>
			<date_submitted>1378433857</date_submitted>
			<date_updated></date_updated>
			<date_exported></date_exported>
			<date_sent></date_sent>
			<confirmed>1</confirmed>
			<deleted>0</deleted>
			<payee>John Smith</payee>
			<amount>300.00</amount>
			<pay>1</pay>
			<id>1309160</id>
			<acct_class>Personal</acct_class>
			<acct_num>123456789</acct_num>
			<acct_route>036001808</acct_route>
			<acct_type>Checking</acct_type>
			<address>1 Main Street</address>
			<address2></address2>
			<bank_name>TD Bank</bank_name>
			<city>Yardley</city>
			<trans_id>54321</trans_id>
			<country>usa</country>
			<first_name></first_name>
			<last_name></last_name>
			<acct_name></acct_name>
			<notes></notes>
			<payee_email></payee_email>
			<payment_type></payment_type>
			<reference>Testing</reference>
			<ref>Testing</ref>
			<taxid></taxid>
			<state>PA</state>
			<zip>19067</zip>
			<fee>0.00</fee>
			<postage_fee>0.00</postage_fee>
			<extra_fee>0.00</extra_fee>
		</payment>
		<payment id='1309163' status='0'>
			<payment_id>1309163</payment_id>
			<client_id>1</client_id>
			<client>SmartPayables</client>
			<company_name>SmartPayables</company_name>
			<status_id>0</status_id>
			<method_id>3</method_id>
			<submit_ts>1378435790</submit_ts>
			<date_submitted>1378435790</date_submitted>
			<date_updated></date_updated>
			<date_exported></date_exported>
			<date_sent></date_sent>
			<confirmed>1</confirmed>
			<deleted>0</deleted>
			<payee>John Smith</payee>
			<amount>550.00</amount>
			<pay>1</pay>
			<id>1309163</id>
			<trans_id>23498</trans_id>
			<first_name></first_name>
			<last_name></last_name>
			<notes></notes>
			<payee_email></payee_email>
			<payment_type></payment_type>
			<taxid></taxid>
			<fee>0.00</fee>
			<postage_fee>0.00</postage_fee>
			<extra_fee>0.00</extra_fee>
		</payment>
	</payments>
</wmc-response>

JSON format

{"payments":[{"date_submitted":1563234091,"date_updated":null,"date_sent":null,"confirmed":true,"deleted":false,"payee":"BundleFile1","amount":"1.00","date_to_send":1563234091,"id":5813096,"method":{"id":2,"name":"Check"},"status":{"id":1,"name":"Pending Release"},"fee":"0.00","postage_fee":"0.00","extra_fee":"0.00","postage_code":{"id":"1","name":"USPS First Class"},"check_num":"10001","reference":"BundleRef1","address":"Addr","address2":"Addr2","city":"City","state":"State","zip":"12345","country":"USA","memo":""},{"date_submitted":1563234091,"date_updated":null,"date_sent":null,"confirmed":true,"deleted":false,"payee":"BundleFile1","amount":"1.00","date_to_send":1563234091,"id":5813097,"method":{"id":2,"name":"Check"},"status":{"id":1,"name":"Pending Release"},"fee":"0.00","postage_fee":"0.00","extra_fee":"0.00","postage_code":{"id":"1","name":"USPS First Class"},"check_num":"10002","reference":"BundleRef11","address":"Addr","address2":"Addr2","city":"City","state":"State","zip":"12345","country":"USA","memo":""}]}

Payments

Description: This method should be used to query the system for a list of estimated delivery dates for postage type USPS First Class. The return will include the estimated from/to date range based on date submitted (date you would add the payment), date it would actually be printed (which excludes office closure dates), and USPS mailing days. The current date plus 45 days will be included in the result set. A specific PHP example is available to demonstrate usage of this method

Class: payments

Method: get-estimated-delivery-date-set

API Path: /payments/get-estimated-delivery-date-set

Parameters: 

  • client_id*
  • akey*
  • address - payee street address
  • address2
  • city - payee city
  • state*  - payee state (full name or 2-digit state code)
  • zip - payee zip code

Sample Return: 

XML format

<wmc-response status="1">
	<address_data>
		<address>12742 E Caley Ave, Suite 2C</address>
		<address2></address2>
		<city>Centennial</city>
		<state>Colorado</state>
		<state_code>CO</state_code>
		<zip>80111</zip>
	</address_data>
	<estimated_delivery_dates>
		<estimated_delivery_date num="0">
			<date_submitted>05/27/2020</date_submitted>
			<print_date>05/28/2020</print_date>
			<estimated_delivery_date_from>05/30/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/02/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="1">
			<date_submitted>05/28/2020</date_submitted>
			<print_date>05/28/2020</print_date>
			<estimated_delivery_date_from>05/30/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/02/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="2">
			<date_submitted>05/29/2020</date_submitted>
			<print_date>05/29/2020</print_date>
			<estimated_delivery_date_from>06/01/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/03/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="3">
			<date_submitted>05/30/2020</date_submitted>
			<print_date>06/01/2020</print_date>
			<estimated_delivery_date_from>06/03/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/05/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="4">
			<date_submitted>05/31/2020</date_submitted>
			<print_date>06/01/2020</print_date>
			<estimated_delivery_date_from>06/03/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/05/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="5">
			<date_submitted>06/01/2020</date_submitted>
			<print_date>06/01/2020</print_date>
			<estimated_delivery_date_from>06/03/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/05/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="6">
			<date_submitted>06/02/2020</date_submitted>
			<print_date>06/02/2020</print_date>
			<estimated_delivery_date_from>06/04/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/06/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="7">
			<date_submitted>06/03/2020</date_submitted>
			<print_date>06/03/2020</print_date>
			<estimated_delivery_date_from>06/05/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/08/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="8">
			<date_submitted>06/04/2020</date_submitted>
			<print_date>06/04/2020</print_date>
			<estimated_delivery_date_from>06/06/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/09/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="9">
			<date_submitted>06/05/2020</date_submitted>
			<print_date>06/05/2020</print_date>
			<estimated_delivery_date_from>06/08/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/10/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="10">
			<date_submitted>06/06/2020</date_submitted>
			<print_date>06/08/2020</print_date>
			<estimated_delivery_date_from>06/10/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/12/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="11">
			<date_submitted>06/07/2020</date_submitted>
			<print_date>06/08/2020</print_date>
			<estimated_delivery_date_from>06/10/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/12/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="12">
			<date_submitted>06/08/2020</date_submitted>
			<print_date>06/08/2020</print_date>
			<estimated_delivery_date_from>06/10/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/12/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="13">
			<date_submitted>06/09/2020</date_submitted>
			<print_date>06/09/2020</print_date>
			<estimated_delivery_date_from>06/11/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/13/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="14">
			<date_submitted>06/10/2020</date_submitted>
			<print_date>06/10/2020</print_date>
			<estimated_delivery_date_from>06/12/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/15/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="15">
			<date_submitted>06/11/2020</date_submitted>
			<print_date>06/11/2020</print_date>
			<estimated_delivery_date_from>06/13/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/16/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="16">
			<date_submitted>06/12/2020</date_submitted>
			<print_date>06/12/2020</print_date>
			<estimated_delivery_date_from>06/15/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/17/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="17">
			<date_submitted>06/13/2020</date_submitted>
			<print_date>06/15/2020</print_date>
			<estimated_delivery_date_from>06/17/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/19/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="18">
			<date_submitted>06/14/2020</date_submitted>
			<print_date>06/15/2020</print_date>
			<estimated_delivery_date_from>06/17/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/19/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="19">
			<date_submitted>06/15/2020</date_submitted>
			<print_date>06/15/2020</print_date>
			<estimated_delivery_date_from>06/17/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/19/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="20">
			<date_submitted>06/16/2020</date_submitted>
			<print_date>06/16/2020</print_date>
			<estimated_delivery_date_from>06/18/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/20/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="21">
			<date_submitted>06/17/2020</date_submitted>
			<print_date>06/17/2020</print_date>
			<estimated_delivery_date_from>06/19/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/22/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="22">
			<date_submitted>06/18/2020</date_submitted>
			<print_date>06/18/2020</print_date>
			<estimated_delivery_date_from>06/20/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/23/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="23">
			<date_submitted>06/19/2020</date_submitted>
			<print_date>06/19/2020</print_date>
			<estimated_delivery_date_from>06/22/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/24/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="24">
			<date_submitted>06/20/2020</date_submitted>
			<print_date>06/22/2020</print_date>
			<estimated_delivery_date_from>06/24/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/26/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="25">
			<date_submitted>06/21/2020</date_submitted>
			<print_date>06/22/2020</print_date>
			<estimated_delivery_date_from>06/24/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/26/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="26">
			<date_submitted>06/22/2020</date_submitted>
			<print_date>06/22/2020</print_date>
			<estimated_delivery_date_from>06/24/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/26/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="27">
			<date_submitted>06/23/2020</date_submitted>
			<print_date>06/23/2020</print_date>
			<estimated_delivery_date_from>06/25/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/27/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="28">
			<date_submitted>06/24/2020</date_submitted>
			<print_date>06/24/2020</print_date>
			<estimated_delivery_date_from>06/26/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/29/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="29">
			<date_submitted>06/25/2020</date_submitted>
			<print_date>06/25/2020</print_date>
			<estimated_delivery_date_from>06/27/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>06/30/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="30">
			<date_submitted>06/26/2020</date_submitted>
			<print_date>06/26/2020</print_date>
			<estimated_delivery_date_from>06/29/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/01/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="31">
			<date_submitted>06/27/2020</date_submitted>
			<print_date>06/29/2020</print_date>
			<estimated_delivery_date_from>07/01/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/06/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="32">
			<date_submitted>06/28/2020</date_submitted>
			<print_date>06/29/2020</print_date>
			<estimated_delivery_date_from>07/01/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/06/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="33">
			<date_submitted>06/29/2020</date_submitted>
			<print_date>06/29/2020</print_date>
			<estimated_delivery_date_from>07/01/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/06/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="34">
			<date_submitted>06/30/2020</date_submitted>
			<print_date>06/30/2020</print_date>
			<estimated_delivery_date_from>07/02/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/06/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="35">
			<date_submitted>07/01/2020</date_submitted>
			<print_date>07/01/2020</print_date>
			<estimated_delivery_date_from>07/06/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/08/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="36">
			<date_submitted>07/02/2020</date_submitted>
			<print_date>07/02/2020</print_date>
			<estimated_delivery_date_from>07/06/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/08/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="37">
			<date_submitted>07/03/2020</date_submitted>
			<print_date>07/03/2020</print_date>
			<estimated_delivery_date_from>07/06/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/08/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="38">
			<date_submitted>07/04/2020</date_submitted>
			<print_date>07/06/2020</print_date>
			<estimated_delivery_date_from>07/08/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/10/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="39">
			<date_submitted>07/05/2020</date_submitted>
			<print_date>07/06/2020</print_date>
			<estimated_delivery_date_from>07/08/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/10/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="40">
			<date_submitted>07/06/2020</date_submitted>
			<print_date>07/06/2020</print_date>
			<estimated_delivery_date_from>07/08/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/10/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="41">
			<date_submitted>07/07/2020</date_submitted>
			<print_date>07/07/2020</print_date>
			<estimated_delivery_date_from>07/09/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/11/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="42">
			<date_submitted>07/08/2020</date_submitted>
			<print_date>07/08/2020</print_date>
			<estimated_delivery_date_from>07/10/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/13/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="43">
			<date_submitted>07/09/2020</date_submitted>
			<print_date>07/09/2020</print_date>
			<estimated_delivery_date_from>07/11/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/14/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="44">
			<date_submitted>07/10/2020</date_submitted>
			<print_date>07/10/2020</print_date>
			<estimated_delivery_date_from>07/13/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/15/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
		<estimated_delivery_date num="45">
			<date_submitted>07/11/2020</date_submitted>
			<print_date>07/13/2020</print_date>
			<estimated_delivery_date_from>07/15/2020</estimated_delivery_date_from>
			<estimated_delivery_date_to>07/17/2020</estimated_delivery_date_to>
		</estimated_delivery_date>
	</estimated_delivery_dates>
</wmc-response>

JSON format

{"address_data":{"address":"12742 E Caley Ave, Suite 2C","address2":"","city":"Centennial","state":"Colorado","state_code":"CO","zip":"80111"},"estimated_delivery_dates":[{"date_submitted":"05\/27\/2020","print_date":"05\/28\/2020","estimated_delivery_date_from":"05\/30\/2020","estimated_delivery_date_to":"06\/02\/2020"},{"date_submitted":"05\/28\/2020","print_date":"05\/28\/2020","estimated_delivery_date_from":"05\/30\/2020","estimated_delivery_date_to":"06\/02\/2020"},{"date_submitted":"05\/29\/2020","print_date":"05\/29\/2020","estimated_delivery_date_from":"06\/01\/2020","estimated_delivery_date_to":"06\/03\/2020"},{"date_submitted":"05\/30\/2020","print_date":"06\/01\/2020","estimated_delivery_date_from":"06\/03\/2020","estimated_delivery_date_to":"06\/05\/2020"},{"date_submitted":"05\/31\/2020","print_date":"06\/01\/2020","estimated_delivery_date_from":"06\/03\/2020","estimated_delivery_date_to":"06\/05\/2020"},{"date_submitted":"06\/01\/2020","print_date":"06\/01\/2020","estimated_delivery_date_from":"06\/03\/2020","estimated_delivery_date_to":"06\/05\/2020"},{"date_submitted":"06\/02\/2020","print_date":"06\/02\/2020","estimated_delivery_date_from":"06\/04\/2020","estimated_delivery_date_to":"06\/06\/2020"},{"date_submitted":"06\/03\/2020","print_date":"06\/03\/2020","estimated_delivery_date_from":"06\/05\/2020","estimated_delivery_date_to":"06\/08\/2020"},{"date_submitted":"06\/04\/2020","print_date":"06\/04\/2020","estimated_delivery_date_from":"06\/06\/2020","estimated_delivery_date_to":"06\/09\/2020"},{"date_submitted":"06\/05\/2020","print_date":"06\/05\/2020","estimated_delivery_date_from":"06\/08\/2020","estimated_delivery_date_to":"06\/10\/2020"},{"date_submitted":"06\/06\/2020","print_date":"06\/08\/2020","estimated_delivery_date_from":"06\/10\/2020","estimated_delivery_date_to":"06\/12\/2020"},{"date_submitted":"06\/07\/2020","print_date":"06\/08\/2020","estimated_delivery_date_from":"06\/10\/2020","estimated_delivery_date_to":"06\/12\/2020"},{"date_submitted":"06\/08\/2020","print_date":"06\/08\/2020","estimated_delivery_date_from":"06\/10\/2020","estimated_delivery_date_to":"06\/12\/2020"},{"date_submitted":"06\/09\/2020","print_date":"06\/09\/2020","estimated_delivery_date_from":"06\/11\/2020","estimated_delivery_date_to":"06\/13\/2020"},{"date_submitted":"06\/10\/2020","print_date":"06\/10\/2020","estimated_delivery_date_from":"06\/12\/2020","estimated_delivery_date_to":"06\/15\/2020"},{"date_submitted":"06\/11\/2020","print_date":"06\/11\/2020","estimated_delivery_date_from":"06\/13\/2020","estimated_delivery_date_to":"06\/16\/2020"},{"date_submitted":"06\/12\/2020","print_date":"06\/12\/2020","estimated_delivery_date_from":"06\/15\/2020","estimated_delivery_date_to":"06\/17\/2020"},{"date_submitted":"06\/13\/2020","print_date":"06\/15\/2020","estimated_delivery_date_from":"06\/17\/2020","estimated_delivery_date_to":"06\/19\/2020"},{"date_submitted":"06\/14\/2020","print_date":"06\/15\/2020","estimated_delivery_date_from":"06\/17\/2020","estimated_delivery_date_to":"06\/19\/2020"},{"date_submitted":"06\/15\/2020","print_date":"06\/15\/2020","estimated_delivery_date_from":"06\/17\/2020","estimated_delivery_date_to":"06\/19\/2020"},{"date_submitted":"06\/16\/2020","print_date":"06\/16\/2020","estimated_delivery_date_from":"06\/18\/2020","estimated_delivery_date_to":"06\/20\/2020"},{"date_submitted":"06\/17\/2020","print_date":"06\/17\/2020","estimated_delivery_date_from":"06\/19\/2020","estimated_delivery_date_to":"06\/22\/2020"},{"date_submitted":"06\/18\/2020","print_date":"06\/18\/2020","estimated_delivery_date_from":"06\/20\/2020","estimated_delivery_date_to":"06\/23\/2020"},{"date_submitted":"06\/19\/2020","print_date":"06\/19\/2020","estimated_delivery_date_from":"06\/22\/2020","estimated_delivery_date_to":"06\/24\/2020"},{"date_submitted":"06\/20\/2020","print_date":"06\/22\/2020","estimated_delivery_date_from":"06\/24\/2020","estimated_delivery_date_to":"06\/26\/2020"},{"date_submitted":"06\/21\/2020","print_date":"06\/22\/2020","estimated_delivery_date_from":"06\/24\/2020","estimated_delivery_date_to":"06\/26\/2020"},{"date_submitted":"06\/22\/2020","print_date":"06\/22\/2020","estimated_delivery_date_from":"06\/24\/2020","estimated_delivery_date_to":"06\/26\/2020"},{"date_submitted":"06\/23\/2020","print_date":"06\/23\/2020","estimated_delivery_date_from":"06\/25\/2020","estimated_delivery_date_to":"06\/27\/2020"},{"date_submitted":"06\/24\/2020","print_date":"06\/24\/2020","estimated_delivery_date_from":"06\/26\/2020","estimated_delivery_date_to":"06\/29\/2020"},{"date_submitted":"06\/25\/2020","print_date":"06\/25\/2020","estimated_delivery_date_from":"06\/27\/2020","estimated_delivery_date_to":"06\/30\/2020"},{"date_submitted":"06\/26\/2020","print_date":"06\/26\/2020","estimated_delivery_date_from":"06\/29\/2020","estimated_delivery_date_to":"07\/01\/2020"},{"date_submitted":"06\/27\/2020","print_date":"06\/29\/2020","estimated_delivery_date_from":"07\/01\/2020","estimated_delivery_date_to":"07\/06\/2020"},{"date_submitted":"06\/28\/2020","print_date":"06\/29\/2020","estimated_delivery_date_from":"07\/01\/2020","estimated_delivery_date_to":"07\/06\/2020"},{"date_submitted":"06\/29\/2020","print_date":"06\/29\/2020","estimated_delivery_date_from":"07\/01\/2020","estimated_delivery_date_to":"07\/06\/2020"},{"date_submitted":"06\/30\/2020","print_date":"06\/30\/2020","estimated_delivery_date_from":"07\/02\/2020","estimated_delivery_date_to":"07\/06\/2020"},{"date_submitted":"07\/01\/2020","print_date":"07\/01\/2020","estimated_delivery_date_from":"07\/06\/2020","estimated_delivery_date_to":"07\/08\/2020"},{"date_submitted":"07\/02\/2020","print_date":"07\/02\/2020","estimated_delivery_date_from":"07\/06\/2020","estimated_delivery_date_to":"07\/08\/2020"},{"date_submitted":"07\/03\/2020","print_date":"07\/03\/2020","estimated_delivery_date_from":"07\/06\/2020","estimated_delivery_date_to":"07\/08\/2020"},{"date_submitted":"07\/04\/2020","print_date":"07\/06\/2020","estimated_delivery_date_from":"07\/08\/2020","estimated_delivery_date_to":"07\/10\/2020"},{"date_submitted":"07\/05\/2020","print_date":"07\/06\/2020","estimated_delivery_date_from":"07\/08\/2020","estimated_delivery_date_to":"07\/10\/2020"},{"date_submitted":"07\/06\/2020","print_date":"07\/06\/2020","estimated_delivery_date_from":"07\/08\/2020","estimated_delivery_date_to":"07\/10\/2020"},{"date_submitted":"07\/07\/2020","print_date":"07\/07\/2020","estimated_delivery_date_from":"07\/09\/2020","estimated_delivery_date_to":"07\/11\/2020"},{"date_submitted":"07\/08\/2020","print_date":"07\/08\/2020","estimated_delivery_date_from":"07\/10\/2020","estimated_delivery_date_to":"07\/13\/2020"},{"date_submitted":"07\/09\/2020","print_date":"07\/09\/2020","estimated_delivery_date_from":"07\/11\/2020","estimated_delivery_date_to":"07\/14\/2020"},{"date_submitted":"07\/10\/2020","print_date":"07\/10\/2020","estimated_delivery_date_from":"07\/13\/2020","estimated_delivery_date_to":"07\/15\/2020"},{"date_submitted":"07\/11\/2020","print_date":"07\/13\/2020","estimated_delivery_date_from":"07\/15\/2020","estimated_delivery_date_to":"07\/17\/2020"}]}

Payments

Description: This method should be used to query the system for any payment needed, such as searching, retrieving tracking numbers, checking statuses, filtering, etc. A specific PHP example is available to demonstrate usage of this method

Class: payments

Method: get-payment-list

API Path: /payments/get-payment-list

Parameters: 

  • client_id*
  • akey*
  • page - page to retrieve data for, defaulted to page 1, numeric only
  • per_page - the number of results per page of data, this has a maximum value of 50, numeric only
  • address - Address to filter by (likeness search)
  • amount - Amount to filter by, numeric/decimal only
  • bank_account_id - Bank Account ID to filter by, numeric only
  • check_num - Check Number to filter by, numeric only
  • trans_id - Client Transaction ID to filter by (likeness search)
  • date_submitted - used to filter by an exact Date Submitted (singular, mm/dd/yyyy format)
  • date_submitted_from - used in combination with the to field for a Date Submitted range filter (mm/dd/yyyy format)
  • date_submitted_to - used in combination with the from field for a Date Submitted range filter (mm/dd/yyyy format)
  • date_sent - used to filter by an exact Date Sent (singular, mm/dd/yyyy format)
  • date_sent_from - used in combination with the to field for a Date Sent range filter (mm/dd/yyyy format)
  • date_sent_to - used in combination with the from field for a Date Sent range filter (mm/dd/yyyy format)
  • date_updated - used to filter by an exact Date Updated (singular, mm/dd/yyyy format)
  • date_updated_from - used in combination with the to field for a Date Updated range filter (mm/dd/yyyy format)
  • date_updated_to - used in combination with the from field for a Date Updated range filter (mm/dd/yyyy format)
  • method_id - Method ID to filter by, numeric only
    • 1 - ACH
    • 2 - Check
  • notes - Notes to filter by (likeness search)
  • payee - Payee to filter by (likeness search)
  • payment_id / id - Payment ID to filter by, numeric only
  • postage_code - Postage Code to filter by, numeric only
    • 1 - USPS First Class
    • 2 - USPS Priority
    • 3 - USPS Priority + Delivery Confirmation
    • 5 - FedEx Express 2 Day
    • 6 - FedEx Express Overnight
    • 8 - USPS Overnight
    • 9 - USPS Certified Mail
    • 10 - FedEx Priority Overnight
  • reference - Reference to filter by (likeness search)
  • status_id - Status ID to filter by, numeric only
    • 1 - Pending Release
    • 2 - Released
    • 3 - Processing
    • 4 - Sent Out
    • 5 - Posted / Cashed
    • 6 - Returned
    • 7 - Cancelled
    • 8 - Reissued

Multiple combinations of the above parameters can be used simultaneously to filter the payment result data set, and the page data returned can be used to iterate through all pages as needed

Sample Return: 

XML format

<wmc-response status="1">
	<page_data>
		<page>1</page>
		<page_count>1</page_count>
		<per_page>50</per_page>
		<payment_count>2</payment_count>
	</page_data>
	<payments>
		<payment id='1' status='4'>
			<payment_id>1</payment_id>
			<client_id>1</client_id>
			<client>Rainy Day Printing</client>
			<company_name>Rainy Day Printing</company_name>
			<status_id>4</status_id>
			<status>Sent Out</status>
			<method_id>2</method_id>
			<submit_ts>1583336318</submit_ts>
			<date_submitted>1583336318</date_submitted>
			<date_updated>1583336318</date_updated>
			<date_sent>1583339203</date_sent>
			<confirmed>1</confirmed>
			<deleted>0</deleted>
			<payee>SmartPayables</payee>
			<amount>1.00</amount>
			<trans_id>Example One</trans_id>
			<check_num>1</check_num>
			<reference>Example One</reference>
			<address>12345 Street</address>
			<city>Centennial</city>
			<state>CO</state>
			<zip>12345</zip>
			<country>US</country>
			<postage_code>1</postage_code>
			<bank_account_id>1</bank_account_id>
		</payment>
		<payment id='2' status='4'>
			<payment_id>2</payment_id>
			<client_id>1</client_id>
			<client>Rainy Day Printing</client>
			<company_name>Rainy Day Printing</company_name>
			<status_id>4</status_id>
			<status>Sent Out</status>
			<method_id>2</method_id>
			<submit_ts>1583336318</submit_ts>
			<date_submitted>1583336318</date_submitted>
			<date_updated>1583336318</date_updated>
			<date_sent>1583339203</date_sent>
			<confirmed>1</confirmed>
			<deleted>0</deleted>
			<payee>SmartPayables</payee>
			<amount>2.00</amount>
			<trans_id>Example Two</trans_id>
			<check_num>2</check_num>
			<reference>Example Two</reference>
			<address>12345 Street</address>
			<city>Centennial</city>
			<state>CO</state>
			<zip>12345</zip>
			<country>US</country>
			<postage_code>3</postage_code>
			<bank_account_id>1</bank_account_id>
			<tracking>123456789</tracking>
		</payment>
	</payments>
</wmc-response>

JSON format

{"page_data":{"page":"1","page_count":1,"per_page":50,"payment_count":"2"},"payments":[{"id":"1","date_submitted":1583336318,"date_updated":1583339204,"date_sent":1583339203,"confirmed":true,"deleted":false,"payee":"SmartPayables","amount":"1.00","method":{"id":"2","name":"Check"},"status":{"id":"4","name":"Sent Out"},"trans_id":"Sample One","check_num":"1","reference":"Sample One","address":"12345 Street","city":"Centennial","state":"CO","zip":"12345","country":"US","postage_code":{"id":"1","name":"USPS First Class"},"bank_account_id":"1"},{"id":"1","date_submitted":1583336318,"date_updated":1583339204,"date_sent":1583339203,"confirmed":true,"deleted":false,"payee":"SmartPayables","amount":"2.00","method":{"id":"2","name":"Check"},"status":{"id":"4","name":"Sent Out"},"trans_id":"Sample Two","check_num":"2","reference":"Sample Two","address":"12345 Street","city":"Centennial","state":"CO","zip":"12345","country":"US","postage_code":{"id":"3","name":"USPS Priority + Delivery Confirmation"},"bank_account_id":"1","tracking":"123456789"},]}

Payments

Description: This method is used to look up any available IMb tracking data we have

Class: payments

Method: imb-tracking-lookup

API Path: /payments/imb-tracking-lookup

Parameters: 

  • client_id*
  • akey*
  • payment_id* - payment ID to look up

Sample Return: 

XML format

<wmc-response status="1">
<imb_tracking_data>
	<payment_id>1</payment_id>
	<date_entered_mail_stream></date_entered_mail_stream>
	<date_estimated_delivery></date_estimated_delivery>
	<marked_for_return>0</marked_for_return>
</imb_tracking_data>
</wmc-response>

JSON format

{"payment_id":"4821235","date_entered_mail_stream":"11\/29\/2018","date_estimated_delivery":"","marked_for_return":false}

Payments

Description: This method is used to locate a payment by a singular date, or a date range (from, to)

Class: payments

Method: info

API Path: /payments/info

Parameters: 

  • client_id*
  • akey*
  • payment_id* - either one or multiple unique identifiers (for multiples, use standard form posting rules for data arrays and pass each payment_id as payment_id[])

Note: The response varies by payment type.

Sample Return: 

XML format

<wmc-response status="1">
	<payments>
		<payment id='1791977' status='6'>
			<payment_id>1791977</payment_id>
			<client_id>1</client_id>
			<client>smartpayables.com</client>
			<company_name>SmartPayables</company_name>
			<status_id>7</status_id>
			<status>Cancelled</status>
			<method_id>1</method_id>
			<submit_ts>1413894934</submit_ts>
			<date_submitted>1413894934</date_submitted>
			<date_updated>1413894968</date_updated>
			<date_exported></date_exported>
			<date_sent></date_sent>
			<confirmed>1</confirmed>
			<deleted>0</deleted>
			<payee>test</payee>
			<amount>5.00</amount>
			<pay>1</pay>
			<checked_for_duplicates>0</checked_for_duplicates>
			<id>1791977</id>
			<trans_id>test</trans_id>
			<mail_to_payee>test</mail_to_payee>
			<address>test</address>
			<address2>test</address2>
			<city>test</city>
			<state>test</state>
			<zip>12345</zip>
			<country>test</country>
			<reference>test</reference>
			<ref>test</ref>
			<memo>test</memo>
			<payee>test</payee>
			<amount>5.00</amount>
			<bank_name>tbn</bank_name>
			<acct_num>123</acct_num>
			<acct_route>321</acct_route>
			<fee>2.50</fee>
			<postage_fee>0.00</postage_fee>
			<extra_fee>0.00</extra_fee>
		</payment>
	</payments>
</wmc-response>

JSON format

{"payments":[{"date_submitted":1553795750,"date_updated":1563232509,"date_sent":null,"confirmed":true,"deleted":false,"payee":"Test","amount":"202.00","date_to_send":1553795750,"id":5222041,"method":{"id":2,"name":"Check"},"status":{"id":7,"name":"Cancelled"},"fee":"0.65","postage_fee":"1.20","extra_fee":"0.00","postage_code":{"id":"1","name":"USPS First Class"},"check_num":"1900004679","reference":"Payout through February 15 2019","address":"Test","address2":"","city":"MONTREAL","state":"QC","zip":"12345","country":"USA","memo":"Payout through February 15 2019","insert_pdf_filename":"","taxid":"","logo_file":"TestLogo.bmp"},{"date_submitted":1543544734,"date_updated":1557519527,"date_sent":1543544932,"confirmed":true,"deleted":false,"payee":"Test1","amount":"1.00","date_to_send":1543544734,"id":4821235,"method":{"id":2,"name":"Check"},"status":{"id":4,"name":"Sent Out"},"fee":"0.65","postage_fee":"0.50","extra_fee":"0.00","reference":"Test1","address":"Test1","address2":"Test1","city":"Test1","state":"Test1","zip":"12345","country":"US","memo":"Test1","postage_code":{"id":"1","name":"USPS First Class"},"bank_account_id":"1","check_num":"252236"}]}

Payments

Description: This method is used to track a payment

Class: payments

Method: track-payment

API Path: /payments/track-payment

Parameters: 

  • client_id*
  • akey*
  • tracking - tracking number (this is required either by itself or you must provide all of the following parameters: payee, addr, zip)
  • payee - the payee of the payment you wish to track
  • addr - the address line of the payment you wish to track
  • zip - the zip code of the payment you wish to track

The return data will always return a JSON encoded representation of the payment.

Sample Return: 

JSON format

{"payments":[{"date_submitted":1543544734,"date_updated":1557519527,"date_sent":1543544932,"confirmed":true,"deleted":false,"payee":"Test1","amount":"1.00","date_to_send":1543544734,"id":4821235,"method":{"id":2,"name":"Check"},"status":{"id":4,"name":"Sent Out"},"fee":"0.65","postage_fee":"0.50","extra_fee":"0.00","reference":"InnoDBTest1","address":"Test1","address2":"Test1","city":"Test1","state":"Test1","zip":"12345","country":"US","memo":"Test1","postage_code":{"id":"1","name":"USPS First Class"},"bank_account_id":"1","check_num":"252236"}]}

Payments

Description: Used to upload payment files. Please Note: Uploading payment files is a two-step process, once you have called this method, you will then need to call the Confirm method, this is for potentially validating that all the fields were set as you intended.

Class: payments

Method: upload

API Path: /payments/upload

Parameters: 

  • client_id*
  • akey*
  • method_id* - payment method identifier (2 = Check, 1 = ACH)
  • userfile* - file uploaded via http post; similar to using a file input field on a form
  • expedite_request - if it is past our 9 AM cut off time but before 11 AM, set this field to a value of 1 to indicate you wish to place a request in to send this payment past dead line, please note this is not a guaranteed service

Note: The response varies by payment type. In this sample, we are using a file with 2 checks. You can process the response and use the Confirm method by extracting the fileid attribute from the payment tag.

Check Inserts

When uploading check inserts through our file based system, you must tell our system if you are uploading a single blanket insert PDF file to be sent with all checks within the file, or if you are using a file field that has been mapped by a member of our support team to match the PDF filename you upload, please see parameters to include below in these cases:

  • insert_include* - this field should only be set when you wish to include insert PDF files, and can be set to single, to send a single PDF with all checks contained, or "multiple" to use file based mapping to match PDF filename to those you upload
  • insert_file_single - if you wish to upload a single insert PDF file to be sent with your checks, please use this field to upload your PDF via HTTP upload
  • insert_file_multiple - if you wish to upload multiple insert PDF file to be matched against a file column containing PDF filename, please use this field to upload your PDFs via HTTP upload. This field should be sent as an array, for example insert_file_multiple[0]=file1 where 0 = index
  • insert_print* - please provide how you want this insert to be printed within this field, using one of the following values
    • black_white - Print using Black & White
    • black_white_duplex - Print using Black & White Duplex
    • color - Print using Color
    • color_duplex - Print using Color Duplex

Payment files must not contain more than 5,000 payments. Any more than this will be rejected with an error message. Please splice your files into multiple and upload one at a time to upload in excess of 5,000 payments at one time.

Sample Return: 

XML format

<wmc-response status="1" fileid="13840">
	<payments>
		<payment id='1899463' status='0'>
			<payment_id>1899463</payment_id>
			<client_id>1</client_id>
			<client>smartpayables.com</client>
			<company_name>SmartPayables</company_name>
			<status_id>0</status_id>
			<status>Pending Release</status>
			<method_id>2</method_id>
			<submit_ts>1420204037</submit_ts>
			<date_submitted>1420204037</date_submitted>
			<date_updated></date_updated>
			<date_exported></date_exported>
			<date_sent></date_sent>
			<confirmed>0</confirmed>
			<deleted>0</deleted>
			<payee>Payee One</payee>
			<amount>1.50</amount>
			<pay>1</pay>
			<checked_for_duplicates>0</checked_for_duplicates>
			<id>1899463</id>
			<postage_code>1</postage_code>
			<reference>Ref1</reference>
			<ref>Ref1</ref>
			<address>Addr</address>
			<city>City</city>
			<state>AL</state>
			<zip>12345</zip>
			<country>US</country>
			<taxid></taxid>
			<memo>A memo to go with it</memo>
			<trans_id></trans_id>
			<fee>0.00</fee>
			<postage_fee>0.00</postage_fee>
			<extra_fee>0.00</extra_fee>
		</payment>
		<payment id='1899464' status='0'>
			<payment_id>1899464</payment_id>
			<client_id>1</client_id>
			<client>smartpayables.com</client>
			<company_name>SmartPayables</company_name>
			<status_id>0</status_id>
			<status>Pending Release</status>
			<method_id>2</method_id>
			<submit_ts>1420204037</submit_ts>
			<date_submitted>1420204037</date_submitted>
			<date_updated></date_updated>
			<date_exported></date_exported>
			<date_sent></date_sent>
			<confirmed>0</confirmed>
			<deleted>0</deleted>
			<payee>Payee Two</payee>
			<amount>2.00</amount>
			<pay>1</pay>
			<checked_for_duplicates>0</checked_for_duplicates>
			<id>1899464</id>
			<postage_code>1</postage_code>
			<reference>Ref2</reference>
			<ref>Ref2</ref>
			<address>Addr2</address>
			<city>City2</city>
			<state>AL</state>
			<zip>12345</zip>
			<country>US</country>
			<taxid></taxid>
			<memo>A memo to go with it</memo>
			<trans_id></trans_id>
			<fee>0.00</fee>
			<postage_fee>0.00</postage_fee>
			<extra_fee>0.00</extra_fee>
		</payment>
	</payments>
</wmc-response>

JSON format

{"file_id":63899,"payments":[{"date_submitted":1563233940,"date_updated":null,"date_sent":null,"confirmed":false,"deleted":false,"payee":"BundleFile1","amount":"1.00","date_to_send":1563233940,"id":5813088,"method":{"id":2,"name":"Check"},"status":{"id":1,"name":"Pending Release"},"fee":"0.00","postage_fee":"0.00","extra_fee":"0.00","postage_code":{"id":"1","name":"USPS First Class"},"check_num":"10001","reference":"BundleRef1","address":"Addr","address2":"Addr2","city":"City","state":"State","zip":"12345","country":"USA","memo":""},{"date_submitted":1563233940,"date_updated":null,"date_sent":null,"confirmed":false,"deleted":false,"payee":"BundleFile1","amount":"1.00","date_to_send":1563233940,"id":5813089,"method":{"id":2,"name":"Check"},"status":{"id":1,"name":"Pending Release"},"fee":"0.00","postage_fee":"0.00","extra_fee":"0.00","postage_code":{"id":"1","name":"USPS First Class"},"check_num":"10002","reference":"BundleRef11","address":"Addr","address2":"Addr2","city":"City","state":"State","zip":"12345","country":"USA","memo":""}]}

Payments

Description: This method is used to upload a CSV file containing Posted/Cashed checks

Class: payments

Method: upload-checks-csv

API Path: /payments/upload-checks-csv

File Format: Default format is CSV, comma delimited, no headers. Bank account ID can be left blank if not required. See columns:

amount,check number,date,bank account id

Parameters: 

  • client_id*
  • akey*
  • userfile* - file uploaded via http post; similar to using a file input field on a form

Sample Return: 

XML format

<wmc-response status="1">
	<payment id='1791977' status='5'>
		<status_id>5</status_id>
		<status>Posted / Cashed</status>
		<amount>$100.00</amount>
	</payment>
</wmc-response>

JSON format

{"payments":[{"id":4614485,"status":{"id":5,"name":"Posted \/ Cashed"},"amount":"244.00","method":{"id":2,"name":"Check"}},{"id":4614484,"status":{"id":5,"name":"Posted \/ Cashed"},"amount":"243.00","method":{"id":2,"name":"Check"}}]}

Payments

Please Note: This is an optional feature that will need to be enabled on a per account basis. Please contact sales/support if you would like more information about this service.

Description: This method is used to perform address validation, which means we will take the address supplied, and attempt to perform full validation and correction on it. The returned address will contain any corrections, and a corrections description. If errors are returned, the address cannot be validated and corrected

Class: payments

Method: validate-address

API Path: /payments/validate-address

Parameters: 

  • client_id*
  • akey*
  • name - this can be set as business name to potentially append suite data automatically. This field is not required.
  • address - address line of the address to validate.
  • address2 - this line is for potentially useful information during delivery, for example "C/O John Smith".
  • city - the city of the address to validate. The city is not required, but if one is not provided, you must provide a zip code.
  • state - the state of the address to validate. Full or shortened state names are allowed. The state is not required, but if one is not provided, you must provide a zip code.
  • zip - the zip code of the address to validate. The zip code is not required, but if one is not provided, both city and state are required.

Sample Return: 

XML format

<wmc-response status="1">
<result>
	<address>8392 S Continental Divide Rd Ste 105</address>
	<address2></address2>
	<city>Centennial</city>
	<state>CO</state>
	<zip>80111-4250</zip>
	<corrections_desc></corrections_desc>
</result>
</wmc-response>

JSON format

{"result":{"address":"8392 S Continental Divide Rd Ste 105","address2":"","city":"Centennial","state":"CO","zip":"80111-4250","corrections_desc":""}}