Table of Contents
Accountable is the smart mobile app for freelancers: it calculates your taxes in real-time, gives you the recommendations you need, and guarantees your peace of mind.
API Overview
Accountable is a cloud-based expense management and reporting platform designed to help businesses streamline their expense tracking and reimbursement processes. It provides a user-friendly interface for employees to submit expenses, attach receipts, and track their approvals. Managers can review and approve expenses, set budgets, and generate detailed reports for analysis and forecasting. Accountable integrates with various accounting systems and payment platforms, enabling seamless data transfer and reconciliation. Its mobile app allows users to capture receipts and submit expenses on the go.
Accountable's API overview provides comprehensive documentation for developers to integrate with its platform. The REST APIs offer a range of endpoints for managing expenses, employees, reports, and other related data. Webhooks allow businesses to receive real-time notifications for events such as expense submissions, approvals, and policy violations. Rate limits are implemented to ensure the stability and performance of the API, with adjustable limits available for high-volume users. The API documentation includes detailed examples, code snippets, and error-handling guidance to facilitate seamless integration and customization.
API Request Limits
SDKs
APIs
Method: Create Account
Description: <em>Requires an existing Legal Entity (Company) or Person. Legal Entity is required in case of Bank Accounts having Mandate</em>.
Endpoint: /account-approval/create-account
Parameters: company_uuid, cif, account_type, iban
Method: Fetch Account Id by Provided Account Number
Description: <em>Returns accountId for the account number provided</em>.
Endpoint: /account/fetch-account-id
Parameters: account_number
Method: Get Account
Description: <em>Details about a specific account</em>.
Endpoint: /account/{accountId}
Parameters: accountId
Method: Get Account Balance
Description: <em>Retrieve account balance by accountId</em>.
Endpoint: /account/balance/{accountId}
Parameters: accountId
Method: Get Account History
Description: <em>Retrieve account transactions by accountId</em>.
Endpoint: /account/history/{accountId}
Parameters: accountId, from_timestamp, to_timestamp
Method: List Accounts
Description: <em>Get account details for a given company</em>.
Endpoint: /account/list-accounts
Parameters: company_uuid
Method: List Accounts by Iban
Description: <em>Get account details for a given iban</em>.
Endpoint: /account/list-account-by-iban
Parameters: iban
Method: List Accounts by User Id
Description: <em>Get account details for a given user id</em>.
Endpoint: /account/list-account-by-user-id
Parameters: user_uuid
Method: Update Account
Description: <em>Update a Specific Account</em>.
Endpoint: /account/update-account
Parameters: {accountId}
Method: Create Account
Description: <em>Requires an existing Legal Entity (Company) or Person. Legal Entity is required in case of Bank Accounts having Mandate</em>.
Endpoint: /account-approval/create-account
Parameters: company_uuid, cif, account_type, iban
Method: Fetch Account Id by Provided Account Number
Description: <em>Returns accountId for the account number provided</em>.
Endpoint: /account/fetch-account-id
Parameters: account_number
Method: Get Account
Description: <em>Details about a specific account</em>.
Endpoint: /account/{accountId}
Parameters: accountId
Method: Get Account Balance
Description: <em>Retrieve account balance by accountId</em>.
Endpoint: /account/balance/{accountId}
Parameters: accountId
Method: Get Account History
Description: <em>Retrieve account transactions by accountId</em>.
Endpoint: /account/history/{accountId}
Parameters: accountId, from_timestamp, to_timestamp
Method: List Accounts
Description: <em>Get account details for a given company</em>.
Endpoint: /account/list-accounts
Parameters: company_uuid
Method: List Accounts by Iban
Description: <em>Get account details for a given iban</em>.
Endpoint: /account/list-account-by-iban
Parameters: iban
Method: List Accounts by User Id
Description: <em>Get account details for a given user id</em>.
Endpoint: /account/list-account-by-user-id
Parameters: user_uuid
Method: Update Account
Description: <em>Update a Specific Account</em>.
Endpoint: /account/update-account
Parameters: {accountId}
Method: Create Account Group
Description: <em>Create account group</em>.
Endpoint: /account-group/create-account-group
Parameters: name
Method: Get Account Group
Description: <em>Get account group</em>.
Endpoint: /account-group/{accountGroupId}
Parameters: accountGroupId
Method: List Account Groups
Description: <em>List account groups</em>.
Endpoint: /account-group/list-account-groups
Parameters:
Method: Update Account Group
Description: <em>Update account group</em>.
Endpoint: /account-group/update-account-group/{accountGroupId}
Parameters: accountGroupId, name
Method: Create Beneficiary
Description: <em>Create Beneficiary</em>.
Endpoint: /beneficiary/create
Parameters: account_uuid, company_uuid, person_uuid, type, account_number, bank_identifier_code, bank_name, country, address, currency, bic, iban, mandate_reference_id, email_receipient_name
Method: Delete Beneficiary
Description: <em>Delete Beneficiary</em>.
Endpoint: /beneficiary/delete
Parameters: {beneficiaryId}
Method: Edit Beneficiary
Description: <em>Edit Beneficiary</em>.
Endpoint: /beneficiary/edit
Parameters: {beneficiaryId}
Method: Get Beneficiary
Description: <em>Get Beneficiary</em>.
Endpoint: /beneficiary/{beneficiaryId}
Parameters: beneficiaryId
Method: List Beneficiaries
Description: <em>List Beneficiaries</em>.
Endpoint: /beneficiary
Parameters:
Method: Search Beneficiary
Description: <em>Search Beneficiary</em>.
Endpoint: /beneficiary/search
Parameters: search_term
Method: Create Card
Description: <em>Create Card</em>.
Endpoint: /card/create
Parameters: account_uuid, corporate_card_product_uuid, card_type, card_holder_name, cvv, otp, billing_address, city, country, postal_code
Method: List Cards
Description: <em>List Cards</em>.
Endpoint: /card/list
Parameters:
Method: Update Card
Description: <em>Update Card</em>.
Endpoint: /card/update
Parameters: card_uuid, cvv, otp, billing_address, city, country, postal_code
Method: Create Bulk Transfer
Description: <em>Enable bulk fund transfer from one account to another</em>.
Endpoint: /cash-management/create-bulk-transfer
Parameters: from_account_id, to_account_id, amount, currency, description
Method: Create Currency Exchange
Description: <em>Enable creation of exchange rates</em>.
Endpoint: /cash-management/currency-exchange
Parameters: from_currency, to_currency, rate
Method: Create Payment
Description: <em>Create Payment</em>.
Endpoint: /cash-management/create-payment
Parameters: from_account_id, to_account_id, amount, currency, description, beneficiary_reference_id, reference_number, mode_of_payment
Method: Generate Payment Report
Description: <em>Generate Payment Report</em>.
Endpoint: /cash-management/payment-report
Parameters: company_uuid
Method: Generate Transfer Report
Description: <em>Generate Transfer Report</em>.
Endpoint: /cash-management/transfer-report
Parameters: company_uuid
Method: Get Bulk Transfer Details
Description: <em>Retrieve Bulk Transfer Details</em>.
Endpoint: /cash-management/bulk-transfer/{bulkTransferId}
Parameters: bulkTransferId
Method: Get Currency Exchange Details
Description: <em>Retrieve Currency Exchange Details</em>.
Endpoint: /cash-management/currency-exchange-details/{currencyExchangeId}
Parameters: currencyExchangeId
Method: Get Payment Details
Description: <em>Retrieve Payment Details</em>.
Endpoint: /cash-management/payment-details/{paymentId}
Parameters: paymentId
Method: Get Transfer Details
Description: <em>Retrieve Transfer Details</em>.
Endpoint: /cash-management/transfer-details/{transferId}
Parameters: transferId
Method: List Bulk Transfers
Description: <em>List Bulk Transfers</em>.
Endpoint: /cash-management/bulk-transfer/list
Parameters:
Method: List Currency Exchanges
Description: <em>List Currency Exchanges</em>.
Endpoint: /cash-management/currency-exchange/list
Parameters:
Method: List Payments
Description: <em>List Payments</em>.
Endpoint: /cash-management/payment/list
Parameters:
Method: List Transfers
Description: <em>List Transfers</em>.
Endpoint: /cash-management/transfer/list
Parameters:
Method: Update Bulk Transfer Status
Description: <em>Update Bulk Transfer Status</em>.
Endpoint: /cash-management/update-bulk-transfer-status/{bulkTransferId}
Parameters: bulkTransferId, status
Method: Update Currency Exchange Status
Description: <em>Update Currency Exchange Status</em>.
Endpoint: /cash-management/update-currency-exchange-status/{currencyExchangeId}
Parameters: currencyExchangeId, status
Method: Update Payment Status
Description: <em>Update Payment Status</em>.
Endpoint: /cash-management/update-payment-status/{paymentId}
Parameters: paymentId, status
Method: Update Transfer Status
Description: <em>Update Transfer Status</em>.
Endpoint: /cash-management/update-transfer-status/{transferId}
Parameters: transferId, status
Method: Create Company
Description: <em>Create Company</em>.
Endpoint: /company/create
Parameters: name, address_line_1, address_line_2, city, state, country, postal_code, primary_contact, primary_contact_mobile_number, primary_contact_email, secondary_contact, secondary_contact_mobile_number, secondary_contact_email, website, registration_number, legal_entity_type, registration_date, tax_id, vat_id, tax_registration_number, incorporation_certificate_number, url_of_incorporation_certificate, url_of_tax_registration_certificate, url_of_vat_registration_certificate, url_of_certificate_of_good_standing, url_of_regulatory_compliance_certificate, authorized_signatory_name, authorized_signatory_position, authorized_signatory_mobile_number, authorized_signatory_email, authorized_signatory_nid, url_of_authorized_signatory_nid, profile_image
Method: Delete Company
Description: <em>Delete Company</em>.
Endpoint: /company/delete
Parameters: {companyId}
Method: Edit Company
Description: <em>Edit Company</em>.
Endpoint: /company/edit
Parameters: {companyId}
Method: Get Company
Description: Get Company.
Endpoint: /company/{companyId}
Parameters: companyId
Method: List Companies
Description: List Companies.
Endpoint: /company/list
Parameters:
Method: Search Company
Description: Search Company.
Endpoint: /company/search
Parameters: search_term
Method: Create Corporate Card
Description: Create Corporate Card.
Endpoint: /corporate-card/create
Parameters: company</em>
FAQ
How do I authenticate to the Accountable APIs?
To authenticate, you'll need to use an API key. You can generate one from your Accountable dashboard.
What are the rate limits for Accountable APIs?
The rate limits vary depending on the API endpoint. You can find the specific limits documented for each endpoint.
How do I create a sandbox account?
You can create a sandbox account from your Accountable dashboard. A sandbox account allows you to test the APIs without affecting real data.
How do I get access to a developer account?
To request a developer account, please contact the Accountable support team with your use case and technical details.
How do I handle errors returned by the Accountable APIs?
All errors are returned in JSON format with a status code and an error message. You can handle these errors by checking the status code and parsing the error message.