Skip to content

Overview

The Meow API provides comprehensive financial services and billing capabilities for businesses.

Core Features

  • Financial Data Access: Securely access account information, transactions, balances, and payment networks
  • USDC Operations: Create and manage cryptocurrency contacts, initiate USDC transfers across multiple blockchain networks

Billing API

The Billing API enables businesses to streamline their invoicing and payment collection:

  • Product Management: Create and manage products with customizable pricing
  • Customer Management: Maintain invoicing customers with billing addresses
  • Invoice Creation: Generate invoices with line items, discounts, and custom notes
  • Flexible Payment Options: Accept payments via bank transfer, ACH, cards, international wires, and USDC
  • Collection Accounts: Configure accounts for automated payment collection

Getting Started

Authenticate using your API key in the request header: x-api-key: your-api-key

For multi-entity access, you can optionally include the x-entity-id header to scope API requests to a specific entity. Use the /api-keys/accessible-entities endpoint to list all entities accessible by your API key.

Error Responses

Errors return JSON with code, message, and debug_message. The code aligns with FDX where possible; debug_message is for troubleshooting only.

Common error codes:

  • 500: Internal server error
  • 501: Subsystem unavailable
  • 503: Scheduled maintenance
  • 601: Data not found
  • 602: Customer not authorized
  • 701: Account not found
  • 703: Invalid input (including invalid date ranges)
  • 704: Account type not supported
  • 705: Account is closed
  • 801: Transaction not found
Download OpenAPI description
Languages
Servers
Mock server
https://docs.meow.com/_mock/meow_api
Meow API Production
https://api.meow.com/v1
Meow API Sandbox
https://api.sandbox.meow.com/v1

API Keys

Retrieve metadata about API keys and their accessible entities

Operations

Contacts

Manage USDC contacts for cryptocurrency transfers

Operations

Accounts

Access and manage financial accounts

Operations

Transactions

View account transaction history and details

Operations

Balances

Check account balances and available funds

Operations

Payment Networks

Manage payment networks and routing information

Operations

Transfers

Initiate and manage USDC transfers

Operations

Request

Returns a list of scheduled ACH transfers for a specified account.

Security
apiKeyAuth
Path
account_idstring(Account Id)required

The ID of the account.

Query
limitinteger(Limit)[ 1 .. 100 ]
Default 10
offsetOffset (string) or Offset (null)(Offset)

Opaque offset identifier for pagination. Use the nextOffset from a previous response.

Any of:

Opaque offset identifier for pagination. Use the nextOffset from a previous response.

<= 100 characters
string(Offset)<= 100 characters
Headers
x-entity-idstring(uuid)

Optional entity ID for scoped access to entity-specific data

curl -i -X GET \
  'https://docs.meow.com/_mock/meow_api/accounts/{account_id}/ach/scheduled?limit=10&offset=string' \
  -H 'x-api-key: YOUR_API_KEY_HERE' \
  -H 'x-entity-id: 497f6eca-6276-4993-bfeb-53cbbbba6f08'

Responses

Successful Response

Bodyapplication/json
pagePageMetadata (object) or null

Metadata for pagination

Any of:

Metadata for pagination

scheduled_ach_transfersArray of objects(Scheduled Ach Transfers)required

A list of scheduled ACH transfers for the account.

scheduled_ach_transfers[].​idstring(uuid)(Id)required

Unique identifier for the scheduled payment.

scheduled_ach_transfers[].​statusstring(TransferStatus)required

Current status of the scheduled payment.

Enum"pending""canceled""processing""error""sent""returned""void"
scheduled_ach_transfers[].​amountstring(Amount)required

The amount to be transferred.

scheduled_ach_transfers[].​descriptionDescription (string) or Description (null)(Description)

A brief description of the transfer.

Any of:

A brief description of the transfer.

string(Description)
scheduled_ach_transfers[].​schedule_descriptionSchedule Description (string) or Schedule Description (null)(Schedule Description)

A human-readable description of the schedule (e.g., 'once at Dec 29, 2025').

Any of:

A human-readable description of the schedule (e.g., 'once at Dec 29, 2025').

string(Schedule Description)
scheduled_ach_transfers[].​counterparty_idstring(uuid)(Counterparty Id)required

The ID of the counterparty.

scheduled_ach_transfers[].​rrulestring(Rrule)[ 1 .. 120 ] charactersrequired

The recurrence rule (RFC 5545) for the schedule.

scheduled_ach_transfers[].​first_occurrencestring(date-time)(Timestamp)required

ISO 8601 date-time in format 'YYYY-MM-DDThh:mm:ss.nnn[Z|[+|-]hh:mm]' according to IETF RFC3339

scheduled_ach_transfers[].​transfer_typestring(TransferMethod)required

The type of transfer (e.g., 'ach').

Enum"book""usdc""ach""wire"
Response
application/json
{ "page": { "nextOffset": "qwer123454q2f" }, "scheduled_ach_transfers": [ {} ] }

Request

Creates a new wire transfer to an external counterparty.

Security
apiKeyAuth
Path
account_idstring(Account Id)required

The ID of the account.

Headers
x-entity-idstring(uuid)

Optional entity ID for scoped access to entity-specific data

Bodyapplication/jsonrequired
emailEmail (string) or Email (null)(Email)

Email address to notify when the operation completes

Any of:

Email address to notify when the operation completes

string(email)(Email)
amountAmount (number) or Amount (string)(Amount)required
Any of:
[ 1 .. 1000000000 ]
number(Amount)[ 1 .. 1000000000 ]
counterparty_idstring(uuid)(Counterparty Id)required
instructionsInstructions (string) or Instructions (null)(Instructions)
Any of:
[ 1 .. 140 ] characters
string(Instructions)[ 1 .. 140 ] characters
purposePurpose (string) or Purpose (null)(Purpose)
Any of:
[ 1 .. 64 ] characters
string(Purpose)[ 1 .. 64 ] characters
internal_noteInternal Note (string) or Internal Note (null)(Internal Note)
Any of:
[ 5 .. 255 ] characters
string(Internal Note)[ 5 .. 255 ] characters
idempotency_keystring(Idempotency Key)[ 1 .. 50 ] charactersrequired
curl -i -X POST \
  'https://docs.meow.com/_mock/meow_api/accounts/{account_id}/wire' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY_HERE' \
  -H 'x-entity-id: 497f6eca-6276-4993-bfeb-53cbbbba6f08' \
  -d '{
    "email": "user@example.com",
    "amount": 1,
    "counterparty_id": "fd38dae9-b300-4017-a630-101c4279eafd",
    "instructions": "string",
    "purpose": "string",
    "internal_note": "string",
    "idempotency_key": "string"
  }'

Responses

Successful Response

Bodyapplication/json
idstring(Id)required
statusstring(TransferStatus)required
Enum"pending""canceled""processing""error""sent""returned""void"
amountstring(Amount)required
instructionsInstructions (string) or Instructions (null)(Instructions)required
Any of:
string(Instructions)
counterparty_idstring(uuid)(Counterparty Id)required
created_timeinteger(Created Time)required
transfer_typestring(TransferMethod)required
Enum"book""usdc""ach""wire"
Response
application/json
{ "id": "string", "status": "pending", "amount": "string", "instructions": "string", "counterparty_id": "fd38dae9-b300-4017-a630-101c4279eafd", "created_time": 0, "transfer_type": "book" }

Request

Returns details about a USDC transaction from a transaction id.

Security
apiKeyAuth
Path
account_idstring(Account Id)required

The ID of the account.

transaction_idstring(Transaction Id)required

The ID of the usdc transaction

Headers
x-entity-idstring(uuid)

Optional entity ID for scoped access to entity-specific data

curl -i -X GET \
  'https://docs.meow.com/_mock/meow_api/accounts/{account_id}/transactions/{transaction_id}' \
  -H 'x-api-key: YOUR_API_KEY_HERE' \
  -H 'x-entity-id: 497f6eca-6276-4993-bfeb-53cbbbba6f08'

Responses

Successful Response

Bodyapplication/json
idstring(Id)required
amountstring(Amount)required
destination_addressstring(Destination Address)required
destination_payment_railstring(ExtBridgePaymentRail)required
Enum"arbitrum""avalanche_c_chain""base""ethereum""optimism""polygon""solana""stellar""tron""ach"
destination_tx_hashDestination Tx Hash (string) or Destination Tx Hash (null)(Destination Tx Hash)
Any of:
string(Destination Tx Hash)
destination_address_nicknameDestination Address Nickname (string) or Destination Address Nickname (null)(Destination Address Nickname)
Any of:
string(Destination Address Nickname)
Response
application/json
{ "id": "string", "amount": "string", "destination_address": "string", "destination_payment_rail": "arbitrum", "destination_tx_hash": "string", "destination_address_nickname": "string" }

Routing Numbers

Validate routing numbers and get bank information

Operations

Bill

View and manage bills for vendor payments

Operations

Products

Manage products and pricing for invoicing

Operations

Customers

Manage billing customers and their information

Operations

Invoices

Create and manage invoices

Operations

Line Items

Manage invoice line items

Operations

Payment Methods

Configure available payment methods

Operations

Collection Accounts

Manage accounts for payment collection

Operations