Your First Payable

It's time to move some money!

Fantastic! Your Company is invited, accepted, and ready to be paid! Great job!

Determining Payment Type

The first thing to consider in a Payment is how you'd like to pay the Vendor. Routable has a variety of payment options, each with their own requirements. Each of these types includes type-specific configuration options, some of which may alter the fees you pay to Routable.

πŸ“˜

International Payments

Note that the below payment types are available for domestic (US to US) payments. Payments from US clients to vendors outside the US must use the International Payments types and workflows.

ACH (type=ach)*

Create this payable when you explicitly want to pay your vendor via automated clearing house (ACH).
Your vendor must have an existing Payment Method where type = bank, which they will configure as part of the Collecting Payment Information step.

Learn more about ACH transfer options at Routable

Check (type=check)

Create this payable when you explicitly want to pay your vendor via a physically-mailed check.
Your vendor must have an existing Payment Method where type = address, which they will configure as part of the Collecting Payment Information step.

Learn more about check delivery options at Routable

Vendor Choice (type=vendor_choice)

Create this payable when you want your vendor to be able to choose their preferred payment method.
You may use this payment type even when your vendor has no existing payment methods; they will be prompted to submit a payment method via our onboarding flow.

External (type=external)

Create this payable type when you have made a payment to the vendor outside of Routable and wish to submit it to your Routable payment history and/or your accounting software ledger. Note that no payment will be sent as a result of creating this payable type.

Payment Send Date

Okay! So we know :white-check-mark: who to pay (as defined in our Onboarding Your Vendors section), :white-check-mark: where they will receive the payment (as defined by Collecting Payment Information) and now, :white-check-mark:
how we'd like to pay them. We'll now need to determine when to send the payment.

The send_on field in a Payable is used to determine when you would like the payable to begin processing (more on what that entails below.) You have a few options for this field:

  • If you want to send the payment today, set the send_on field to today's date.

  • If you want to send the payment on a specific date in the future, set the send_on field to that date.

  • You can also specify a send_on of null. Doing so means the payment will not be sent at all until you trigger it via a subsequent API call or action on the Routable Dashboard.

Note that any dates you set in the send_on field should be supplied in the Pacific time zone.

Line Items

That's who, when, where, and how defined, so all that's left is why we're sending the payment -- or, more directly, what we're paying for -- and those are our Line Items. You must add at least one Line Item to a Payable to indicate what the payment is for, but you may add as many as you choose. Line items contain very basic information: a quantity, unit_price, amount (a subtotal for the line item), and a text description. There's also a style field, which is used by some accounting software integrations. Because this Payable is for a Routable client with no accounting software integrated, we'll use the default item in our example.

Creating the Payable

Alright! We've got all the information we need to Create a Payable, so let's do it! We'll use a vendor_choice Payable here, as it's the easiest example to follow. Remember, this will be a US to US transaction; international transactions sometimes require a bit of additional configuration.

πŸ“˜

Accounting Software Integrations

If you have integrated your accounting software with Routable, additional fields may be required to submit a Payable. See Create a Payable for details for your specific accounting application. The example below is for a Routable client that does not have an integrated accounting application.

We'll define a type of vendor_choice. Like all Payable types, it has a type_details object that defines configuration specific to vendor choice Payables. In this case, all we need is to tell the system which delivery method choices we want to make available to the vendor.

As with most Routable API calls, we'll need an acting_team_member ID, which you should have cached. We'll include a withdraw_from_account that corresponds to an Account in your Routable account settings (these can be added via the Routable Dashboard and listed via the List Accounts endpoint, if you need to.) We'll need our line_items we defined in the previous step, and we add the ID of the Company we want to pay in the pay_to_company field. Finally, we'll include the send_on date we talked about above. Send the request, and away we go!

{
	"type": "vendor_choice",
	"type_details": {
		"delivery_method_choices": ["ach", "check"]
	},
	"acting_team_member": "03b7dc7b-f2c5-45cc-9ba3-3884be267c56",
	"amount": "49.98",
	"withdraw_from_account": "80093ba8-8997-4537-9764-b2452a03b0e0",
	"line_items": [{
		"amount": "49.98",
		"description": "Refrigerator Hose",
		"quantity": "2",
		"style": "item",
		"unit_price": "24.99"
	}],
	"pay_to_company": "ec60d364-9100-4728-a3cb-0f200a8a0f5d",
	"send_on": "2022-01-12"
}

πŸ“˜

Protect your transaction with Idempotency Keys

Routable supports Idempotency Keys for Payables. You can provide an ID - either stored by your system or randomly generated, for your Payable. Subsequent requests with the same Idempotency Key will be rejected as duplicate by our system, preventing payments from accidentally or maliciously being sent multiple times. Routable strongly recommends use of the Idempotency-Key header when submitting Payables.

Payment Processing

Once a payment is created and the send_on date is reached, the following steps will occur:

Approvals
If your Payable requires approvals per your approval settings, we will automatically notify the appropriate team members. We do this by finding all applicable levels of approval and requesting approvals from all team members. Payment processing will be paused until sufficient approvals have been given for a payable.

Payment Acceptance
The Contacts on the Company that are defined as default_contact_for_payable_and_receivable will receive an email notifying them that a payment is pending. If you did not specify a [Payment Method] as part of the Payable request, they will need to accept the payment and select a Payment Method for the funds to begin transferring.

That's it! You've just sent your first payment with Routable! Congratulations! :rocket:

πŸ“˜

Know When to Scale Up

As you begin to automate hundreds to thousands of items per month, we recommend that you and your product team explore fully embedding Routable into your product by managing the full vendor interaction, including collection of payment information and viewing of payment history. At a large enough scale, we've found that embedding banking information collection forms and payment history inside your product can result in a better overall experience for your vendors and a reduced support burden for your business.