Skip to content

MVMNT API (1.0.0)

The MVMNT API enables you to automate freight brokerage workflows by integrating directly with our Transportation Management System.

Authentication

OAuth 2.0 client credentials flow. See Authentication Guide for details.

Token Endpoint

POST https://api.mvmnt.io/oauth2/token

Request

Headers:

Content-Type: application/x-www-form-urlencoded

Body Parameters:

grant_type=client_credentials
client_id=YOUR_CLIENT_ID
client_secret=YOUR_CLIENT_SECRET

Example Request

curl -X POST https://api.mvmnt.io/oauth2/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "client_secret=YOUR_CLIENT_SECRET"

Success Response

Status: 200 OK

{
  "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
  "token_type": "Bearer",
  "expires_in": 3600
}

Response Fields:

  • access_token: JWT Bearer token to use for API requests
  • token_type: Always Bearer
  • expires_in: Token lifetime in seconds (3600 = 1 hour)
Download OpenAPI description
Overview
Languages
Servers
Mock server
https://docs.mvmnt.io/_mock/apis/openapi
Production
https://api.mvmnt.io/v1

Carriers

Carrier management operations

Operations

Carrier Contacts

Carrier contact management operations

Operations

Carrier Factors

Carrier factor (factoring company) management operations

Operations

Carrier Payment Methods

Carrier payment method management operations

Operations

Companies

Company management operations

Operations

Credit Memos

AR credit memo management operations. Credit memos represent customer credits that can be applied to invoices.

Operations

Bills

AP bill management operations. Bills represent carrier and vendor invoices to be paid.

Operations

Filter bills

Request

Search for AP bills using filter criteria.

Common Filters

  • By carrier: { "filter": { "carrierId": { "equalTo": "uuid" } } }
  • By vendor: { "filter": { "vendorId": { "equalTo": "uuid" } } }
  • Awaiting approval: { "filter": { "status": { "equalTo": "IN_REVIEW" } } }
  • By shipment: { "filter": { "shipmentId": { "equalTo": "uuid" } } }
  • Overdue: { "filter": { "overdue": true } }
Security
BearerAuth
Bodyapplication/jsonrequired
filterobject(BillFilter)
pageSizeinteger[ 1 .. 100 ]
Default 50
cursorstring
curl -i -X POST \
  https://docs.mvmnt.io/_mock/apis/openapi/bills/filter \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "filter": {
      "status": {
        "equalTo": "IN_REVIEW"
      }
    }
  }'

Responses

Bills matching filter criteria

Bodyapplication/json
dataArray of objects(Bill)required
data[].​idstring(uuid)required
Example: "550e8400-e29b-41d4-a716-446655440000"
data[].​friendlyIdstringrequired

Human-readable bill ID

Example: "BILL-00001"
data[].​keystring or null

Client-defined key

data[].​entityTypestring(BillEntityType)required

Type of entity the bill is for.

  • CARRIER: Bill for a carrier (LoadCarrier)
  • VENDOR: Bill for a vendor service (VendedService)
Enum"CARRIER""VENDOR"
data[].​loadCarrierIdstring or null(uuid)

Associated load carrier ID (if carrier bill)

data[].​vendedServiceIdstring or null(uuid)

Associated vended service ID (if vendor bill)

data[].​carrierobject(CarrierReference)

Enhanced reference to a carrier resource (returned in responses). Includes full carrier details in addition to id/key.

Note: Does NOT include nested references (contacts, etc.) to prevent recursion. Maximum nesting depth: 1 level.

data[].​vendorobject(VendorReference)

Enhanced reference to a vendor profile. Includes full vendor details in addition to id/key.

data[].​loadIdstring or null(uuid)
data[].​loadKeystring or null
data[].​shipmentIdstring or null(uuid)
data[].​shipmentKeystring or null
data[].​statusstring(BillStatus)required

Current status of the bill (AP invoice).

  • AWAITING_INVOICE: Waiting for carrier/vendor to submit invoice
  • IN_REVIEW: Invoice received, under review
  • APPROVED_TO_PAY: Approved and ready for payment
  • PAID: Fully paid
Enum"AWAITING_INVOICE""IN_REVIEW""APPROVED_TO_PAY""PAID"
data[].​invoiceDatestring or null(date)

Date of carrier/vendor invoice

data[].​dueDatestring or null(date)

Payment due date

data[].​amountnumberrequired

Bill amount

data[].​currencystring or null

Currency code

Example: "USD"
data[].​referencestring or null

Carrier/vendor invoice reference number

data[].​amountPaidnumber

Total payments received

data[].​amountOwednumber

Outstanding balance

data[].​paymentsArray of objects(BillPaymentApplied)

Payments applied to this bill

data[].​paymentTermobject(PaymentTermReference)

Enhanced reference to a payment term resource (returned in responses). Includes full payment term details in addition to id/key.

data[].​carrierFactorobject(CarrierFactorReference)

Enhanced reference to a carrier factor (factoring company). Includes full carrier factor details in addition to id/key.

data[].​factorJobIdstring or null

External factoring job ID

data[].​factorStatusstring or null

Current factoring status

data[].​qboIdstring or null

QuickBooks Online bill ID

data[].​createdAtstring(date-time)required
data[].​updatedAtstring or null(date-time)
paginationobject(PaginationInfo)required
pagination.​pageSizeintegerrequired

Number of items per page

Example: 50
pagination.​hasNextPagebooleanrequired

Whether there are more pages

Example: true
pagination.​hasPreviousPageboolean

Whether there are previous pages

Example: false
pagination.​endCursorstring or null

Cursor for the next page (null if no next page)

Example: "eyJpZCI6IjU1MGU4NDAwLWUyOWItNDFkNC1hNzE2LTQ0NjY1NTQ0MDAwMCJ9"
Response
application/json
{ "data": [ {} ], "pagination": { "pageSize": 50, "hasNextPage": true, "hasPreviousPage": false, "endCursor": "eyJpZCI6IjU1MGU4NDAwLWUyOWItNDFkNC1hNzE2LTQ0NjY1NTQ0MDAwMCJ9" } }

Record a bill

Request

Record a carrier or vendor bill (invoice).

What happens

  • Bill record is created for the load carrier or vended service
  • Entity status updates to IN_REVIEW
  • Due date calculated from payment term if not provided

Prerequisites

  • LoadCarrier or VendedService must exist
  • Entity must be in AWAITING_INVOICE status
Security
BearerAuth
Bodyapplication/jsonrequired
entityTypestring(BillEntityType)required

Type of entity the bill is for.

  • CARRIER: Bill for a carrier (LoadCarrier)
  • VENDOR: Bill for a vendor service (VendedService)
Enum"CARRIER""VENDOR"
entityIdstring(uuid)required

LoadCarrier ID or VendedService ID

invoiceDatestring(date)required

Invoice date from carrier/vendor

dueDatestring(date)

Payment due date

amountnumberrequired

Invoice amount

referencestring<= 500 characters

Carrier/vendor invoice reference number

currencystring

Currency code (defaults to carrier/vendor currency)

paymentTermIdstring(uuid)

Payment term

curl -i -X POST \
  https://docs.mvmnt.io/_mock/apis/openapi/bills \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "entityType": "CARRIER",
    "entityId": "550e8400-e29b-41d4-a716-446655440000",
    "invoiceDate": "2025-01-15",
    "dueDate": "2025-02-14",
    "amount": 2500,
    "reference": "INV-CARRIER-123",
    "currency": "USD"
  }'

Responses

Bill created successfully

Bodyapplication/json
idstring(uuid)required
Example: "550e8400-e29b-41d4-a716-446655440000"
friendlyIdstringrequired

Human-readable bill ID

Example: "BILL-00001"
keystring or null

Client-defined key

entityTypestring(BillEntityType)required

Type of entity the bill is for.

  • CARRIER: Bill for a carrier (LoadCarrier)
  • VENDOR: Bill for a vendor service (VendedService)
Enum"CARRIER""VENDOR"
loadCarrierIdstring or null(uuid)

Associated load carrier ID (if carrier bill)

vendedServiceIdstring or null(uuid)

Associated vended service ID (if vendor bill)

carrierobject(CarrierReference)

Enhanced reference to a carrier resource (returned in responses). Includes full carrier details in addition to id/key.

Note: Does NOT include nested references (contacts, etc.) to prevent recursion. Maximum nesting depth: 1 level.

vendorobject(VendorReference)

Enhanced reference to a vendor profile. Includes full vendor details in addition to id/key.

loadIdstring or null(uuid)
loadKeystring or null
shipmentIdstring or null(uuid)
shipmentKeystring or null
statusstring(BillStatus)required

Current status of the bill (AP invoice).

  • AWAITING_INVOICE: Waiting for carrier/vendor to submit invoice
  • IN_REVIEW: Invoice received, under review
  • APPROVED_TO_PAY: Approved and ready for payment
  • PAID: Fully paid
Enum"AWAITING_INVOICE""IN_REVIEW""APPROVED_TO_PAY""PAID"
invoiceDatestring or null(date)

Date of carrier/vendor invoice

dueDatestring or null(date)

Payment due date

amountnumberrequired

Bill amount

currencystring or null

Currency code

Example: "USD"
referencestring or null

Carrier/vendor invoice reference number

amountPaidnumber

Total payments received

amountOwednumber

Outstanding balance

paymentsArray of objects(BillPaymentApplied)

Payments applied to this bill

paymentTermobject(PaymentTermReference)

Enhanced reference to a payment term resource (returned in responses). Includes full payment term details in addition to id/key.

carrierFactorobject(CarrierFactorReference)

Enhanced reference to a carrier factor (factoring company). Includes full carrier factor details in addition to id/key.

factorJobIdstring or null

External factoring job ID

factorStatusstring or null

Current factoring status

qboIdstring or null

QuickBooks Online bill ID

createdAtstring(date-time)required
updatedAtstring or null(date-time)
Response
application/json
{ "id": "550e8400-e29b-41d4-a716-446655440000", "friendlyId": "BILL-00001", "key": "string", "entityType": "CARRIER", "loadCarrierId": "29f9f87f-f417-4003-80d8-b9d49851fa35", "vendedServiceId": "2fafbdeb-907d-4709-94b0-b27e8bc1f6e9", "carrier": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-CARRIER-SWIFT", "name": "Swift Transportation", "phoneNumber": "+1-555-987-6543", "email": "dispatch@swifttrans.com", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z", "deletedAt": null }, "vendor": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-VENDOR-ABC-001", "friendlyId": "V123456", "name": "ABC Warehouse Services", "email": "billing@abcwarehouse.com", "phone": "+1-555-123-4567", "status": "ACTIVE", "currency": "USD", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }, "loadId": "9fa4c9ea-0db7-4bb2-8f50-086d18a90403", "loadKey": "string", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentKey": "string", "status": "AWAITING_INVOICE", "invoiceDate": "2019-08-24", "dueDate": "2019-08-24", "amount": 0, "currency": "USD", "reference": "string", "amountPaid": 0, "amountOwed": 0, "payments": [ {} ], "paymentTerm": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-PAYTERM-NET30", "name": "Net 30", "description": "Payment due 30 days from invoice date", "days": 30, "quickPayFee": 0.05, "apOnly": false, "doNotUse": false, "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z", "deletedAt": null }, "carrierFactor": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-FACTOR-001", "companyName": "Capital Factoring Services Inc", "email": "accounting@capitalfactoring.com", "phoneNumber": "+1-555-234-5678", "currency": "USD", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }, "factorJobId": "string", "factorStatus": "string", "qboId": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }

Get a bill

Request

Retrieve a bill by ID.

The response includes payments applied and carrier/vendor details.

Security
BearerAuth
Path
idstringrequired

Resource ID (UUID) or client key

Example: 550e8400-e29b-41d4-a716-446655440000
Query
bystring

Specify lookup type for faster retrieval. If omitted, defaults to looking up by ID first, then falls back to client key if not found. Use by=key when you know you're providing a client key for best performance.

Enum"id""key"
Example: by=key
curl -i -X GET \
  'https://docs.mvmnt.io/_mock/apis/openapi/bills/550e8400-e29b-41d4-a716-446655440000?by=key' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Bill retrieved successfully

Bodyapplication/json
idstring(uuid)required
Example: "550e8400-e29b-41d4-a716-446655440000"
friendlyIdstringrequired

Human-readable bill ID

Example: "BILL-00001"
keystring or null

Client-defined key

entityTypestring(BillEntityType)required

Type of entity the bill is for.

  • CARRIER: Bill for a carrier (LoadCarrier)
  • VENDOR: Bill for a vendor service (VendedService)
Enum"CARRIER""VENDOR"
loadCarrierIdstring or null(uuid)

Associated load carrier ID (if carrier bill)

vendedServiceIdstring or null(uuid)

Associated vended service ID (if vendor bill)

carrierobject(CarrierReference)

Enhanced reference to a carrier resource (returned in responses). Includes full carrier details in addition to id/key.

Note: Does NOT include nested references (contacts, etc.) to prevent recursion. Maximum nesting depth: 1 level.

vendorobject(VendorReference)

Enhanced reference to a vendor profile. Includes full vendor details in addition to id/key.

loadIdstring or null(uuid)
loadKeystring or null
shipmentIdstring or null(uuid)
shipmentKeystring or null
statusstring(BillStatus)required

Current status of the bill (AP invoice).

  • AWAITING_INVOICE: Waiting for carrier/vendor to submit invoice
  • IN_REVIEW: Invoice received, under review
  • APPROVED_TO_PAY: Approved and ready for payment
  • PAID: Fully paid
Enum"AWAITING_INVOICE""IN_REVIEW""APPROVED_TO_PAY""PAID"
invoiceDatestring or null(date)

Date of carrier/vendor invoice

dueDatestring or null(date)

Payment due date

amountnumberrequired

Bill amount

currencystring or null

Currency code

Example: "USD"
referencestring or null

Carrier/vendor invoice reference number

amountPaidnumber

Total payments received

amountOwednumber

Outstanding balance

paymentsArray of objects(BillPaymentApplied)

Payments applied to this bill

paymentTermobject(PaymentTermReference)

Enhanced reference to a payment term resource (returned in responses). Includes full payment term details in addition to id/key.

carrierFactorobject(CarrierFactorReference)

Enhanced reference to a carrier factor (factoring company). Includes full carrier factor details in addition to id/key.

factorJobIdstring or null

External factoring job ID

factorStatusstring or null

Current factoring status

qboIdstring or null

QuickBooks Online bill ID

createdAtstring(date-time)required
updatedAtstring or null(date-time)
Response
application/json
{ "id": "550e8400-e29b-41d4-a716-446655440000", "friendlyId": "BILL-00001", "key": "string", "entityType": "CARRIER", "loadCarrierId": "29f9f87f-f417-4003-80d8-b9d49851fa35", "vendedServiceId": "2fafbdeb-907d-4709-94b0-b27e8bc1f6e9", "carrier": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-CARRIER-SWIFT", "name": "Swift Transportation", "phoneNumber": "+1-555-987-6543", "email": "dispatch@swifttrans.com", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z", "deletedAt": null }, "vendor": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-VENDOR-ABC-001", "friendlyId": "V123456", "name": "ABC Warehouse Services", "email": "billing@abcwarehouse.com", "phone": "+1-555-123-4567", "status": "ACTIVE", "currency": "USD", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }, "loadId": "9fa4c9ea-0db7-4bb2-8f50-086d18a90403", "loadKey": "string", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentKey": "string", "status": "AWAITING_INVOICE", "invoiceDate": "2019-08-24", "dueDate": "2019-08-24", "amount": 0, "currency": "USD", "reference": "string", "amountPaid": 0, "amountOwed": 0, "payments": [ {} ], "paymentTerm": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-PAYTERM-NET30", "name": "Net 30", "description": "Payment due 30 days from invoice date", "days": 30, "quickPayFee": 0.05, "apOnly": false, "doNotUse": false, "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z", "deletedAt": null }, "carrierFactor": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-FACTOR-001", "companyName": "Capital Factoring Services Inc", "email": "accounting@capitalfactoring.com", "phoneNumber": "+1-555-234-5678", "currency": "USD", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }, "factorJobId": "string", "factorStatus": "string", "qboId": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }

Update a bill

Request

Update bill fields.

Constraints

  • Cannot change amount if payments have been applied
  • Status changes use action endpoints
Security
BearerAuth
Path
idstringrequired

Resource ID (UUID) or client key

Example: 550e8400-e29b-41d4-a716-446655440000
Query
bystring

Specify lookup type for faster retrieval. If omitted, defaults to looking up by ID first, then falls back to client key if not found. Use by=key when you know you're providing a client key for best performance.

Enum"id""key"
Example: by=key
Bodyapplication/jsonrequired
invoiceDatestring or null(date)
dueDatestring or null(date)
amountnumber
referencestring or null
paymentTermIdstring(uuid)
curl -i -X PATCH \
  'https://docs.mvmnt.io/_mock/apis/openapi/bills/550e8400-e29b-41d4-a716-446655440000?by=key' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "dueDate": "2025-02-28"
  }'

Responses

Bill updated successfully

Bodyapplication/json
idstring(uuid)required
Example: "550e8400-e29b-41d4-a716-446655440000"
friendlyIdstringrequired

Human-readable bill ID

Example: "BILL-00001"
keystring or null

Client-defined key

entityTypestring(BillEntityType)required

Type of entity the bill is for.

  • CARRIER: Bill for a carrier (LoadCarrier)
  • VENDOR: Bill for a vendor service (VendedService)
Enum"CARRIER""VENDOR"
loadCarrierIdstring or null(uuid)

Associated load carrier ID (if carrier bill)

vendedServiceIdstring or null(uuid)

Associated vended service ID (if vendor bill)

carrierobject(CarrierReference)

Enhanced reference to a carrier resource (returned in responses). Includes full carrier details in addition to id/key.

Note: Does NOT include nested references (contacts, etc.) to prevent recursion. Maximum nesting depth: 1 level.

vendorobject(VendorReference)

Enhanced reference to a vendor profile. Includes full vendor details in addition to id/key.

loadIdstring or null(uuid)
loadKeystring or null
shipmentIdstring or null(uuid)
shipmentKeystring or null
statusstring(BillStatus)required

Current status of the bill (AP invoice).

  • AWAITING_INVOICE: Waiting for carrier/vendor to submit invoice
  • IN_REVIEW: Invoice received, under review
  • APPROVED_TO_PAY: Approved and ready for payment
  • PAID: Fully paid
Enum"AWAITING_INVOICE""IN_REVIEW""APPROVED_TO_PAY""PAID"
invoiceDatestring or null(date)

Date of carrier/vendor invoice

dueDatestring or null(date)

Payment due date

amountnumberrequired

Bill amount

currencystring or null

Currency code

Example: "USD"
referencestring or null

Carrier/vendor invoice reference number

amountPaidnumber

Total payments received

amountOwednumber

Outstanding balance

paymentsArray of objects(BillPaymentApplied)

Payments applied to this bill

paymentTermobject(PaymentTermReference)

Enhanced reference to a payment term resource (returned in responses). Includes full payment term details in addition to id/key.

carrierFactorobject(CarrierFactorReference)

Enhanced reference to a carrier factor (factoring company). Includes full carrier factor details in addition to id/key.

factorJobIdstring or null

External factoring job ID

factorStatusstring or null

Current factoring status

qboIdstring or null

QuickBooks Online bill ID

createdAtstring(date-time)required
updatedAtstring or null(date-time)
Response
application/json
{ "id": "550e8400-e29b-41d4-a716-446655440000", "friendlyId": "BILL-00001", "key": "string", "entityType": "CARRIER", "loadCarrierId": "29f9f87f-f417-4003-80d8-b9d49851fa35", "vendedServiceId": "2fafbdeb-907d-4709-94b0-b27e8bc1f6e9", "carrier": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-CARRIER-SWIFT", "name": "Swift Transportation", "phoneNumber": "+1-555-987-6543", "email": "dispatch@swifttrans.com", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z", "deletedAt": null }, "vendor": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-VENDOR-ABC-001", "friendlyId": "V123456", "name": "ABC Warehouse Services", "email": "billing@abcwarehouse.com", "phone": "+1-555-123-4567", "status": "ACTIVE", "currency": "USD", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }, "loadId": "9fa4c9ea-0db7-4bb2-8f50-086d18a90403", "loadKey": "string", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentKey": "string", "status": "AWAITING_INVOICE", "invoiceDate": "2019-08-24", "dueDate": "2019-08-24", "amount": 0, "currency": "USD", "reference": "string", "amountPaid": 0, "amountOwed": 0, "payments": [ {} ], "paymentTerm": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-PAYTERM-NET30", "name": "Net 30", "description": "Payment due 30 days from invoice date", "days": 30, "quickPayFee": 0.05, "apOnly": false, "doNotUse": false, "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z", "deletedAt": null }, "carrierFactor": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-FACTOR-001", "companyName": "Capital Factoring Services Inc", "email": "accounting@capitalfactoring.com", "phoneNumber": "+1-555-234-5678", "currency": "USD", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }, "factorJobId": "string", "factorStatus": "string", "qboId": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }

Delete a bill

Request

Delete a bill.

Prerequisites

  • Bill must not have any payments applied

What happens

  • Bill record is deleted
  • Entity status reverts to AWAITING_INVOICE
Security
BearerAuth
Path
idstringrequired

Resource ID (UUID) or client key

Example: 550e8400-e29b-41d4-a716-446655440000
Query
bystring

Specify lookup type for faster retrieval. If omitted, defaults to looking up by ID first, then falls back to client key if not found. Use by=key when you know you're providing a client key for best performance.

Enum"id""key"
Example: by=key
curl -i -X DELETE \
  'https://docs.mvmnt.io/_mock/apis/openapi/bills/550e8400-e29b-41d4-a716-446655440000?by=key' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Bill deleted successfully

Response
No content

Approve bill for payment

Request

Approve a bill for payment.

What happens

  • Bill status changes to APPROVED_TO_PAY
  • Bill is now ready for payment

Prerequisites

  • Bill must be in IN_REVIEW status
Security
BearerAuth
Path
idstringrequired

Resource ID (UUID) or client key

Example: 550e8400-e29b-41d4-a716-446655440000
Query
bystring

Specify lookup type for faster retrieval. If omitted, defaults to looking up by ID first, then falls back to client key if not found. Use by=key when you know you're providing a client key for best performance.

Enum"id""key"
Example: by=key
curl -i -X POST \
  'https://docs.mvmnt.io/_mock/apis/openapi/bills/550e8400-e29b-41d4-a716-446655440000/approve?by=key' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Bill approved successfully

Bodyapplication/json
idstring(uuid)required
Example: "550e8400-e29b-41d4-a716-446655440000"
friendlyIdstringrequired

Human-readable bill ID

Example: "BILL-00001"
keystring or null

Client-defined key

entityTypestring(BillEntityType)required

Type of entity the bill is for.

  • CARRIER: Bill for a carrier (LoadCarrier)
  • VENDOR: Bill for a vendor service (VendedService)
Enum"CARRIER""VENDOR"
loadCarrierIdstring or null(uuid)

Associated load carrier ID (if carrier bill)

vendedServiceIdstring or null(uuid)

Associated vended service ID (if vendor bill)

carrierobject(CarrierReference)

Enhanced reference to a carrier resource (returned in responses). Includes full carrier details in addition to id/key.

Note: Does NOT include nested references (contacts, etc.) to prevent recursion. Maximum nesting depth: 1 level.

vendorobject(VendorReference)

Enhanced reference to a vendor profile. Includes full vendor details in addition to id/key.

loadIdstring or null(uuid)
loadKeystring or null
shipmentIdstring or null(uuid)
shipmentKeystring or null
statusstring(BillStatus)required

Current status of the bill (AP invoice).

  • AWAITING_INVOICE: Waiting for carrier/vendor to submit invoice
  • IN_REVIEW: Invoice received, under review
  • APPROVED_TO_PAY: Approved and ready for payment
  • PAID: Fully paid
Enum"AWAITING_INVOICE""IN_REVIEW""APPROVED_TO_PAY""PAID"
invoiceDatestring or null(date)

Date of carrier/vendor invoice

dueDatestring or null(date)

Payment due date

amountnumberrequired

Bill amount

currencystring or null

Currency code

Example: "USD"
referencestring or null

Carrier/vendor invoice reference number

amountPaidnumber

Total payments received

amountOwednumber

Outstanding balance

paymentsArray of objects(BillPaymentApplied)

Payments applied to this bill

paymentTermobject(PaymentTermReference)

Enhanced reference to a payment term resource (returned in responses). Includes full payment term details in addition to id/key.

carrierFactorobject(CarrierFactorReference)

Enhanced reference to a carrier factor (factoring company). Includes full carrier factor details in addition to id/key.

factorJobIdstring or null

External factoring job ID

factorStatusstring or null

Current factoring status

qboIdstring or null

QuickBooks Online bill ID

createdAtstring(date-time)required
updatedAtstring or null(date-time)
Response
application/json
{ "id": "550e8400-e29b-41d4-a716-446655440000", "friendlyId": "BILL-00001", "key": "string", "entityType": "CARRIER", "loadCarrierId": "29f9f87f-f417-4003-80d8-b9d49851fa35", "vendedServiceId": "2fafbdeb-907d-4709-94b0-b27e8bc1f6e9", "carrier": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-CARRIER-SWIFT", "name": "Swift Transportation", "phoneNumber": "+1-555-987-6543", "email": "dispatch@swifttrans.com", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z", "deletedAt": null }, "vendor": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-VENDOR-ABC-001", "friendlyId": "V123456", "name": "ABC Warehouse Services", "email": "billing@abcwarehouse.com", "phone": "+1-555-123-4567", "status": "ACTIVE", "currency": "USD", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }, "loadId": "9fa4c9ea-0db7-4bb2-8f50-086d18a90403", "loadKey": "string", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentKey": "string", "status": "AWAITING_INVOICE", "invoiceDate": "2019-08-24", "dueDate": "2019-08-24", "amount": 0, "currency": "USD", "reference": "string", "amountPaid": 0, "amountOwed": 0, "payments": [ {} ], "paymentTerm": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-PAYTERM-NET30", "name": "Net 30", "description": "Payment due 30 days from invoice date", "days": 30, "quickPayFee": 0.05, "apOnly": false, "doNotUse": false, "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z", "deletedAt": null }, "carrierFactor": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-FACTOR-001", "companyName": "Capital Factoring Services Inc", "email": "accounting@capitalfactoring.com", "phoneNumber": "+1-555-234-5678", "currency": "USD", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }, "factorJobId": "string", "factorStatus": "string", "qboId": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }

Batch approve bills

Request

Approve multiple bills for payment in a single request.

Bills that cannot be approved will be returned in the failed array.

Security
BearerAuth
Bodyapplication/jsonrequired
billIdsArray of strings(uuid)[ 1 .. 100 ] itemsrequired

Bill IDs to approve

curl -i -X POST \
  https://docs.mvmnt.io/_mock/apis/openapi/bills/batch-approve \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "billIds": [
      "550e8400-e29b-41d4-a716-446655440000",
      "550e8400-e29b-41d4-a716-446655440001"
    ]
  }'

Responses

Batch approval completed

Bodyapplication/json
approvedArray of objects
failedArray of objects
Response
application/json
{ "approved": [ {} ], "failed": [ {} ] }

Unapprove bill

Request

Revert bill from approved back to in review.

What happens

  • Bill status changes to IN_REVIEW

Prerequisites

  • Bill must be in APPROVED_TO_PAY status
  • Bill must not have any payments
Security
BearerAuth
Path
idstringrequired

Resource ID (UUID) or client key

Example: 550e8400-e29b-41d4-a716-446655440000
Query
bystring

Specify lookup type for faster retrieval. If omitted, defaults to looking up by ID first, then falls back to client key if not found. Use by=key when you know you're providing a client key for best performance.

Enum"id""key"
Example: by=key
curl -i -X POST \
  'https://docs.mvmnt.io/_mock/apis/openapi/bills/550e8400-e29b-41d4-a716-446655440000/unapprove?by=key' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Bill unapproved successfully

Bodyapplication/json
idstring(uuid)required
Example: "550e8400-e29b-41d4-a716-446655440000"
friendlyIdstringrequired

Human-readable bill ID

Example: "BILL-00001"
keystring or null

Client-defined key

entityTypestring(BillEntityType)required

Type of entity the bill is for.

  • CARRIER: Bill for a carrier (LoadCarrier)
  • VENDOR: Bill for a vendor service (VendedService)
Enum"CARRIER""VENDOR"
loadCarrierIdstring or null(uuid)

Associated load carrier ID (if carrier bill)

vendedServiceIdstring or null(uuid)

Associated vended service ID (if vendor bill)

carrierobject(CarrierReference)

Enhanced reference to a carrier resource (returned in responses). Includes full carrier details in addition to id/key.

Note: Does NOT include nested references (contacts, etc.) to prevent recursion. Maximum nesting depth: 1 level.

vendorobject(VendorReference)

Enhanced reference to a vendor profile. Includes full vendor details in addition to id/key.

loadIdstring or null(uuid)
loadKeystring or null
shipmentIdstring or null(uuid)
shipmentKeystring or null
statusstring(BillStatus)required

Current status of the bill (AP invoice).

  • AWAITING_INVOICE: Waiting for carrier/vendor to submit invoice
  • IN_REVIEW: Invoice received, under review
  • APPROVED_TO_PAY: Approved and ready for payment
  • PAID: Fully paid
Enum"AWAITING_INVOICE""IN_REVIEW""APPROVED_TO_PAY""PAID"
invoiceDatestring or null(date)

Date of carrier/vendor invoice

dueDatestring or null(date)

Payment due date

amountnumberrequired

Bill amount

currencystring or null

Currency code

Example: "USD"
referencestring or null

Carrier/vendor invoice reference number

amountPaidnumber

Total payments received

amountOwednumber

Outstanding balance

paymentsArray of objects(BillPaymentApplied)

Payments applied to this bill

paymentTermobject(PaymentTermReference)

Enhanced reference to a payment term resource (returned in responses). Includes full payment term details in addition to id/key.

carrierFactorobject(CarrierFactorReference)

Enhanced reference to a carrier factor (factoring company). Includes full carrier factor details in addition to id/key.

factorJobIdstring or null

External factoring job ID

factorStatusstring or null

Current factoring status

qboIdstring or null

QuickBooks Online bill ID

createdAtstring(date-time)required
updatedAtstring or null(date-time)
Response
application/json
{ "id": "550e8400-e29b-41d4-a716-446655440000", "friendlyId": "BILL-00001", "key": "string", "entityType": "CARRIER", "loadCarrierId": "29f9f87f-f417-4003-80d8-b9d49851fa35", "vendedServiceId": "2fafbdeb-907d-4709-94b0-b27e8bc1f6e9", "carrier": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-CARRIER-SWIFT", "name": "Swift Transportation", "phoneNumber": "+1-555-987-6543", "email": "dispatch@swifttrans.com", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z", "deletedAt": null }, "vendor": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-VENDOR-ABC-001", "friendlyId": "V123456", "name": "ABC Warehouse Services", "email": "billing@abcwarehouse.com", "phone": "+1-555-123-4567", "status": "ACTIVE", "currency": "USD", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }, "loadId": "9fa4c9ea-0db7-4bb2-8f50-086d18a90403", "loadKey": "string", "shipmentId": "47efd5a2-af91-4417-950a-7f546cd1b5cf", "shipmentKey": "string", "status": "AWAITING_INVOICE", "invoiceDate": "2019-08-24", "dueDate": "2019-08-24", "amount": 0, "currency": "USD", "reference": "string", "amountPaid": 0, "amountOwed": 0, "payments": [ {} ], "paymentTerm": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-PAYTERM-NET30", "name": "Net 30", "description": "Payment due 30 days from invoice date", "days": 30, "quickPayFee": 0.05, "apOnly": false, "doNotUse": false, "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z", "deletedAt": null }, "carrierFactor": { "id": "550e8400-e29b-41d4-a716-446655440000", "key": "ERP-FACTOR-001", "companyName": "Capital Factoring Services Inc", "email": "accounting@capitalfactoring.com", "phoneNumber": "+1-555-234-5678", "currency": "USD", "createdAt": "2025-01-15T10:00:00Z", "updatedAt": "2025-01-15T14:30:00Z" }, "factorJobId": "string", "factorStatus": "string", "qboId": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }

Revert bill to awaiting invoice

Request

Revert bill completely back to awaiting invoice state.

What happens

  • Bill record is deleted
  • Any payments are deleted
  • Entity status reverts to AWAITING_INVOICE

Use case

Use when a bill was recorded incorrectly and needs to start over.

Security
BearerAuth
Path
idstringrequired

Resource ID (UUID) or client key

Example: 550e8400-e29b-41d4-a716-446655440000
Query
bystring

Specify lookup type for faster retrieval. If omitted, defaults to looking up by ID first, then falls back to client key if not found. Use by=key when you know you're providing a client key for best performance.

Enum"id""key"
Example: by=key
Bodyapplication/json
reasonstring<= 1000 characters

Reason for reverting

curl -i -X POST \
  'https://docs.mvmnt.io/_mock/apis/openapi/bills/550e8400-e29b-41d4-a716-446655440000/revert?by=key' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "reason": "Invoice amount was incorrect"
  }'

Responses

Bill reverted successfully

Bodyapplication/json
successboolean
entityStatusstring

New status of the load carrier or vended service

Response
application/json
{ "success": true, "entityStatus": "string" }

Get bill payments

Request

List all payments applied to a specific bill.

Security
BearerAuth
Path
idstringrequired

Resource ID (UUID) or client key

Example: 550e8400-e29b-41d4-a716-446655440000
Query
bystring

Specify lookup type for faster retrieval. If omitted, defaults to looking up by ID first, then falls back to client key if not found. Use by=key when you know you're providing a client key for best performance.

Enum"id""key"
Example: by=key
curl -i -X GET \
  'https://docs.mvmnt.io/_mock/apis/openapi/bills/550e8400-e29b-41d4-a716-446655440000/payments?by=key' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Payments retrieved successfully

Bodyapplication/json
dataArray of objects(BillPaymentApplied)
totalPaidnumber
openBalancenumber
Response
application/json
{ "data": [ {} ], "totalPaid": 0, "openBalance": 0 }

Get AP aging report

Request

Generate accounts payable aging report.

Report buckets

By default: Current, 1-30, 31-60, 61-90, 90+ days

Export formats

  • JSON (default)
  • CSV (set Accept header to text/csv)
Security
BearerAuth
Query
carrierIdstring(uuid)

Filter by specific carrier

vendorIdstring(uuid)

Filter by specific vendor

entityTypestring(BillEntityType)

Filter by entity type

Enum"CARRIER""VENDOR"
daysPerBucketinteger

Days per aging bucket

Default 30
maxDaysinteger

Maximum days to track

Default 120
curl -i -X GET \
  'https://docs.mvmnt.io/_mock/apis/openapi/bills/aging-report?carrierId=497f6eca-6276-4993-bfeb-53cbbbba6f08&vendorId=497f6eca-6276-4993-bfeb-53cbbbba6f08&entityType=CARRIER&daysPerBucket=30&maxDays=120' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

AP aging report generated

Body
asOfDatestring(date)required
bucketsArray of stringsrequired
Example: ["Current","1-30","31-60","61-90","90+"]
payeesArray of objectsrequired
payees[].​idstring(uuid)
payees[].​namestring
payees[].​friendlyIdstring or null
payees[].​entityTypestring(BillEntityType)

Type of entity the bill is for.

  • CARRIER: Bill for a carrier (LoadCarrier)
  • VENDOR: Bill for a vendor service (VendedService)
Enum"CARRIER""VENDOR"
payees[].​currentnumber
payees[].​days1to30number
payees[].​days31to60number
payees[].​days61to90number
payees[].​over90number
payees[].​totalnumber
totalsobjectrequired
totals.​currentnumber
totals.​days1to30number
totals.​days31to60number
totals.​days61to90number
totals.​over90number
totals.​totalnumber
Response
{ "asOfDate": "2019-08-24", "buckets": [ "Current", "1-30", "31-60", "61-90", "90+" ], "payees": [ {} ], "totals": { "current": 0, "days1to30": 0, "days31to60": 0, "days61to90": 0, "over90": 0, "total": 0 } }

Bill Payments

AP bill payment management operations. Bill payments record payments made to carriers and vendors.

Operations

Customers

Customer management operations

Operations

Customer Contacts

Customer contact management operations

Operations

Documents

Document management operations. Documents are files (PDFs, images) that can be attached to orders, loads, or services.

Operations

Invoices

AR invoice management operations. Invoices represent customer billing for shipment services.

Operations

Loads

Load management operations. Loads represent carrier execution - which carrier is moving the freight.

Operations

Locations

Location management operations

Operations

Location Contacts

Location contact management operations

Operations

Payment Terms

Payment term management operations

Operations

Payments

AR payment management operations. Payments represent received customer payments applied to invoices.

Operations

Quotes

Quote management operations. Quotes are pricing requests/responses that can be converted to shipments.

Operations

Saved Searches

Saved search management operations

Operations

Services

Service (vended service) management operations. Services represent non-carrier vendor work (drayage, customs, warehousing).

Operations

Shipments

Shipment tracking and management operations. Shipments contain orders, loads, and services.

Operations

Teams

Team management operations

Operations

Users

User management operations

Operations

Vendors

Vendor management operations

Operations

Vendor Contacts

Vendor contact management operations

Operations

Vendor Payment Methods

Vendor payment method management operations

Operations

Event Notifications

Webhooks