Get Payable BILL Status
GET/api/billcom/push/:payableType/:payableId
Check whether a SKU.io bill or purchase invoice can be pushed to BILL.com, and return the BILL bill it is already linked to, if any. Read-only — nothing is sent to BILL.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Authentication: Requires Bearer token.
Path: payableType is bill or purchase-invoice; payableId is the document ID. Query: integration_instance_id (required) selects the BILL.com instance.
Response: pushable is true when Push Payable To BILL would create a bill. Otherwise reason says why: already_pushed (the payable is already linked to a BILL bill, returned in bill), fully_paid (SKU.io already has payments covering the whole total, so there is nothing to pay), not_approved (a purchase invoice that is not yet approved for payment) or supplier_unmatched (the supplier has not been matched to a BILL vendor). reason is null when pushable is true; bill is null unless the payable is already linked. vendor is the BILL vendor the payable's supplier is matched to (null when unmatched).
in_flight lists BILL payments of this payable that are still moving (scheduled, processing or sent) and are not yet recorded as a payment in SKU.io, with amount, status, status_label, status_color and process_date; in_flight_amount is their total. Use it to avoid recording or scheduling a second payment while BILL is already paying. Voided and failed BILL payments are not included.
Returns 404 when the instance or the payable does not exist.
Request
Responses
- 200
- 401
- 403
- 404
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.