Add Payment

This method adds a payment to the system. The parameters and the values returned vary based on the specific payment type. The Checkissuing API currently supports digital and printed checks, as well as ACH transfers (if enabled on your account). Pass the payment parameter as an array in your post with the field names listed as the array's keys for their respective values. Once you successfully call this endpoint, you must confirm the payment using the payments/confirm endpoint and the id returned in the result from this one. A payment will not show in the panel or get processed/sent until it is confirmed.

Digital Checks
To send a digital check pass payment[method_id] set to 2, the payee's name as payment[payee], the payee's email address as payment[payee_address] and the amount as payment[amount]. The payee will receive an email with a link to the digital check. You can optionally set a password that is required to claim a digital check. If you specify payment[mobile_number] without specifying a password, one will be generated and texted to the mobile number provided. If you specify payment[mobile_number] and payment[digital_check_pass] the password provided will be texted. If you provide payment[digital_check_pass] but not payment[mobile_number] you will need to inform the payee of the password specified.

Printed Checks
To send a printed check pass payment[method_id] set to 2, the payee's name as payment[payee], the payee's street address as payment[payee_address] and the amount as payment[amount]. You can pass information to include on the remittence area as payment[memo] and information for the bottom left of the check as payment[reference]. To see where each field maps to on the printed check click here

ACH transfers
To send an ACH transfer pass payment[method_id] set to 1, the payee's name as payment[payee]. If you have the payee's account information, you can pass it as payment[account_type], payment[account_num], payment[routing_num]. If you'd like the payee to provide it, pass their email address as payment[payee_address] or their cellphone number as payment[mobile_number] and they will be sent a link they can use to securely enter their account information. Much like digital checks, if email address and mobile number is provided a text with a generated password will be sent to the payee, this password will be required to enter their account information. You can specify this password using the payment[onboard_pass] parameter.

* For payments to a payee you've already sent a payment too, Checkissuing will automatically try to load their account information from previous ACH transfers sent within the last 3 months. This behavior can be modified using the ach_info_threshold parameter


Parameters

For a full list of fields and they're purpose, see the table below.

Parameter Type Required Default Description
payment[payee] String Yes N/A The name of the payee
Will override payee_first and payee_last if given
payment[payee_first] String No N/A The first name of the payee
The first name of the payee if you need to provide first and last name seperately
payment[payee_last] String No N/A The last name of the payee
The last name of the payee if you need to provide first and last name seperately
payment[address] String Yes N/A The email or mailing address to deliver the payment to
If an email is given, payment will be delivered electronically, otherwise it will be mailed.
payment[amount] String Yes N/A The amount of the payment
The amount of the payment
payment[currency] String No N/A The currency of the payment
Currently USD or CAD are supported
payment[send_date] String No N/A The date to send the payment on
This must be a date in the future. Defaults to soonest possible day if not specified.
payment[memo] String No N/A A memo/note for the payment
Prints in the remittence area on the check stub.
Maximum Length: 17 Lines at up to 32 characters each. Used as the addenda on ACH payments.
payment[reference] String No N/A An internal reference for the payment
Printed on the memo line of the check.
Maximum Length: 3 Lines at up to 33 characters each.
payment[check_num] String No N/A Check number
Will default to the next available if not specified.
payment[postage_type] String No N/A The type of postage to use on mailed checks
One of the following or USPS first class if not specified: %postage_codes%
payment[funding_source] String No N/A The funding source to use for this payment
Can be a funding source ID or name as found on the funding sources tab on the settings page
payment[insert] String No N/A The insert to include with the payment
The id or name of an insert already in the system or a url to a pdf that should be printed and mailed along with the payment. If you pass a url in this field, you should pass insert_color, insert_name and insert_desc as well.
payment[address2] String No N/A Secondary part of a mailing address
This is for apartment numbers, suites, etc..
payment[city] String No N/A The city part of the address
Only used to specify city when the address of the payee is specified in individual pieces.
payment[state] String No N/A The state part of the mailing address
Only used to specify state/province when the address of the payee is specified in individual pieces
payment[zip] String No N/A The zip code part of the mailing address
Only used to specify zip/postal code when the address of the payee is specified in individual pieces
payment[country] String No N/A The country part of the mailing address
Only used to specify country when the address of the payee is specified in individual pieces. Defaults to USA
payment[generic_1] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_2] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_3] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_4] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_5] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_6] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_7] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_8] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_9] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_10] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[stub_details_header] String No N/A A delimited list of headers for the stub 'details' table
A | delimited list of headers for the 'details' table on the stub part of mailed/paper checks.
payment[stub_details] String No N/A A doubly delimited list of lines for the stub 'details' table.
A list of delimited line items for the details table on the stub of mailed/paper checks. Each line is | delimited and the columns within the line are delimited with a ;
Example: line1col1;line1col2;line1col3|line2col1;line2col2;line2col3
payment[check_date] String No N/A The date printed on the actual check
The date printed on the actual check. Defaults to the date field from the payment specified in the relevant funding source's settings.
payment[mail_to] String No N/A The name on the mailing address
The name part of the mailing address / who the check is being mailed too.
payment[taxid] String No N/A The payee's ssn or taxid
Provided for end of the year tax documents.
payment[trans_id] String No N/A An internal transaction id
This can be used to pass internal transaction ids, invoice numbers, or other identifiers useful for linking a payment to a specific transaction, user, vendor, etc..
payment[logo] String No N/A Logo to use for this file
The ID of the logo to use on this file.
payment[generic_11] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_12] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_13] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_14] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_15] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[insert_color] String No N/A When a url is passed in the insert field, this field is used to tell the system if the insert being added is black & white or color.
Only used when a url is passed in the insert field. If the pdf being added from the url is black and white this field should be 0. If it is color, set this field to 1.
payment[insert_name] String No N/A When a url is passed in the insert field, this field specifies what to name it when it is added to the system.
Only used when adding an insert by passing a url to a pdf in the insert field. Defaults to the base filename of the pdf if not passed.
payment[insert_desc] String No N/A When a pdf url is passed in the insert field, this field specifies what to set it's description as when adding it to the system.
Only used when an insert is being added by passing a url in the insert field. Defaults to a note about the url the insert was added from with the date if not passed.
payment[mobile_number] String No N/A Payee's mobile phone number
Provide the payees mobile phone number for text alerts and digital check password delivery
payment[digital_check_pass] String No N/A Password required to claim a digital check
Provide a password to require the payee enter it to claim a digital check
payment[method_id] String No N/A The payment method to use
The numeric id specifying what method this payment should be made by. 1 for ACH, 2 for Checks
payment[account_type] String No N/A Account Type for ACH payments
Account type for ACH payments, can be Checking, Savings, or Business
payment[account_num] String No N/A Payee's account number for ACH payments
The Payee's account number used to send ACH payments. When preparing an upload file, you can place a ' at the beginning of the number to keep excel from formatting it using scientific notation or dropping leading zeros. Our system will remove the leading ' upon upload.
payment[routing_num] String No N/A Payee's routing number for ACH payments
The Payee's routing number used to send ACH payments. When preparing an upload file, you can place a ' at the beginning of the number to keep excel from formatting it using scientific notation or dropping leading zeros. Our system will remove the leading ' upon upload.
payment[stub_text] String No N/A Text for the check stub
payment[onboard_pass] String No N/A Password required to specify ACH account information and claim an ACH payment.
Provide a password to require the payee to enter it to specify their information to receive an ACH
payment[ach_info_threshold] String No N/A Specifies when to pull previous ACH info for a payee.
Options are 3mo, always, or never
payment[generic_16] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_17] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_18] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_19] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_20] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[wl_id] String No N/A Override the whitelabel ID from the payments funding source
This can be used to specify a whitelabel different then the one associated with the funding source.
payment[stub_header] String No N/A Stub Header
Text for the stub header
payment[generic_21] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_22] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_23] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_24] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_25] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_26] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_27] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_28] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_29] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[generic_30] String No N/A A generic field for random data
Generic fields can be used for random data that does not fit any other fields
payment[logo_color] String No N/A When a png url is passed in the logo field, or a logo is uploaded, this field is used to tell the system if the logo being added should be printed black & white or color.
Only used when a png url is passed in the logo field or a logo is uploaded. If the logo being added should be printed black and white this field should be 0. If it needs printed in color, set this field to 1.
payment[logo_desc] String No N/A When a png url is passed in the logo field or one is uploaded, this field specifies what to set it's description as when adding it to the system.
Only used when a logo is being added by passing a url in the logo field or a png is being uploaded. Defaults to a note about the url the logo was added from with the date or the uploaded files name if not passed.
payment[logo_name] String No N/A When a url is passed in the logo field or a png is uploaded, this field specifies what to name it when it is added to the system.
Only used when adding a logo by passing a url to a png in the logo field or uploading a png. Defaults to the base filename of the png if not passed.
insert File No N/A PDF uploaded as an HTTP file upload if you wish to upload an insert to use with this payment.
logo File No N/A PNG uploaded as an HTTP file upload if you wish to upload a logo to use with this payment.
Sample Response
{"status":0,"errors":[],"error_message":"","payment":{"id":"1","payee_id":null,"account_id":null,"client_invoice_id":null,"file_id":null,"batch_id":null, "status_id":"2","postage_id":null,"guid":"c4ca4238a0b923820dcc509a6f75849b","created_ts":"2019-09-22 05:46:05","updated_ts":null,"deleted_ts":null,"issue_ts":null, "sent_ts":null,"cancelled_ts":null,"returned_ts":null,"cleared_ts":null,"claimed_ts":null,"payee_name":"A Payee","payee_address":"123 Some St. City, ST 33434", "memo":null,"amount":"100.00","fees":"0.00","flagged":"0","confirmed":"1","claimed":"0","is_digital":"0","deleted":"0"}}