About VoidAPPayment
This API attempts to void a bill payment in Bill.com that has already started processing. This can be used with offline and online payments.
Offline payments
These payments are not processed and issued by Bill.com and are immediately marked as void once the call is made . Offline payments have "Online" = false
when getting the details of the payment made via the SentPay API. Only the payment ID is needed to void the payments.
Online payments
These payments are processed and issued by Bill.com. Online payments have "Online" = true
when getting the details of the payment made via the SentPay API. When an online payment is voided, other factors must be considered:
- Provide SentPay ID, void request type, and void reason.
Note: Type and reason are not specified as required, but, if it is not provided for an online payment, you run into an error.
- VoidAPPayment may succeed but does not immediately void the payment. If this occurs, send a request to Bill.com's Customer Support to manually process the void. Voids requested before 4 PM PT are processed that day, and the voids requested after 4PM PT are processed the next business day. A pending void can be confirmed with a check in the SentPay VoidRequest section from response data.
Void types
Two types of voids can be requested for online payments:
Void and credit
If initial payment is by check, it is voided. SentPay object status changes to Void. Funds are remitted back to bank account that initially sent the funds. the remit funds process does not occur until initial funding is completed (fund transfer from paying bank account to Bill.com). Remittance begins earlier than three days from payment’s Process Date. If initial funding fails due to any reason, such as non-sufficient funds, no funds are remitted, since no funds were successfully transferred.
Void and reissue
If initial payment is by check, that check is voided. A new check is issued on next valid process date. The same SentPay object is used for reissue. The primary attributes that change when reissuing are:
- Check Number *
- Check Date *
- Remittance Information †
VoidAPPayment for an online payment will error if any of the following apply:
- It before 6 PM PT, business day prior to "processDate" on SentPay **
- If payment made by check, and check has cleared *
- If payment made by ePayment, and has not failed *
* Cannot currently be retrieved by API.
** An online payment starts processing at 6 PM PT the business day before the "processDate" of the SentPay. To cancel a payment before it processes, you must use the CancelAPPayment API.
† Remittance Information includes payment method and payment destination. For checks: destination is Vendor’s payment address. For ePayments: destination is bank account that receives payment (linked through Bil.com network or manually entered). If any part of Remittance Information changes, reissued payment uses new Remittance Information.
Example
Request
<API_URL_EndPoint>/VoidAPPayment.json
data = {
"sentPayId" : "stp01FWVZFXERSXCfa2o",
"voidRequestType" : "0",
"reason" : "This was a duplicate payment."
}
Response
{
"response_status" : 0,
"response_message" : "Success",
"response_data" : {
"entity" : "SentPay",
"id" : "stp01FWVZFXERSXCfa2o",
"processDate" : "2016-11-13",
"amount" : 11.00,
"status" : "2",
"description" : "test 2",
"txnNumber" : "QNGPIACQPCOROCGOLBYE",
"name" : "P13061901 - 0840029",
"vendorId" : "00901FCUDTUVOHUFg7jr",
"isOnline" : true,
"paymentType" : "0",
"chartOfAccountId" : "0ca01DDWAORSGOYX5hr5",
"syncReference" : null,
"toPrintCheck" : false,
"createdTime" : "2016-11-19T22:46:44.693+0000",
"updatedTime" : "2016-11-19T22:46:45.614+0000",
"bankAccountId" : "bac01BFJWRRGGATS9lyk",
"billPays" : [ {
"entity" : "BillPay",
"id" : "blp01SCVBEJJIUBSi066",
"billId" : "00n01DYCNSZKWCZWfxbe",
"name" : "P13061901 - 0840029",
"paymentStatus" : "2",
"amount" : 11.00,
"description" : "test 2",
"processDate" : "2016-11-13",
"createdTime" : "2016-1-19T22:46:55.000+0000",
"updatedTime" : "2016-11-19T22:46:55.000+0000",
"paymentType" : "1",
"syncReference" : null,
"toPrintCheck" : false,
"chartOfAccountId" : "0ca01DDWAORSGOYX5hr5"
} ],
"billCredits" : [ {
"entity" : "BillCredit",
"id" : "bcr01FUAGSBMFVCONgo2",
"billId" : "00n01DYCNSZKWCZWfxbe",
"sentPayId" : "stp01FWVZFXERSXCfa2o",
"vendorCreditId" : "vcr01HESIVFKLJBD2oou",
"amount" : 13.00,
"createdTime" : "2016-11-19T22:46:54.000+0000",
"updatedTime" : "2016-11-19T22:46:55.000+0000"
} ]
"voidRequest" : {
"requestedBy" : "00601ANZISORZPERFc7f",
"voidRequestType" : "1",
"reason" : "This was a duplicate payment.",
"createdTime" : "2016-11-19T22:46:54.000+0000",
"updatedTime" : "2016-11-19T22:46:54.000+0000"
}
}
}
Resources
Parameters
Field Name | Description | Required? |
---|---|---|
sentPayId | The system generated ID of SentPay to void. | Yes |
voidRequestType | See above for additional information. (Required when sentPayId refers to online SentPay.) 0 Void & Credit, 1 Void & Reissue | No |
reason | Reason for void request. Note: Required when sentPayId refers to an online payment. |
No |