Monitor API availability and service status. Use these endpoints to verify connectivity and check if the API is operational.
- Queue checks for later printing
DualEntry Public API (1.0.0)
Request
Create and immediately print a paper check for a transaction.
This endpoint creates a paper check record and generates the PDF in a single operation. The check is immediately marked as PRINTED.
When to use:
- When you need to print a single check right away
- For on-demand check printing workflows
Alternative: Use POST /print-later/ to queue checks for batch printing.
Supported transaction types:
- Direct expenses
- Vendor payments
- Vendor prepayments
- Customer refunds
Returns: The created paper check details along with the PDF content encoded in base64.
ID of the transaction to print a check for. Must be a printable transaction type (direct expense, vendor payment, vendor prepayment, or customer refund).
- Production environmenthttps://api.dualentry.io/public/v1/paper-checks/print-now/
- Development environment (for testing)https://api-dev.dualentry.io/public/v1/paper-checks/print-now/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://api.dualentry.io/public/v1/paper-checks/print-now/ \
-H 'Content-Type: application/json' \
-d '{
"transaction_id": 12345,
"template_id": 1
}'OK
The created paper check details
Date when the paper check was created (returned as date only)
Date of the underlying transaction
Type of the source record (e.g., 'direct_expense', 'vendor_payment', 'customer_refund')
ID of the source record (e.g., the VendorPayment ID)
Number of the source record (e.g., vendor payment number)
The check number printed on the physical check
Name of the company issuing the check
Memo or description for the check
Amount of the check
Amount of the check
ISO 4217 currency code for the check amount
Number of the bank account the check is drawn from
Name of the bank account the check is drawn from
Name of the payee (vendor or customer receiving the check)
ID of the customer if this is a customer refund check
Name of the customer if this is a customer refund check
ID of the vendor if this is a vendor payment check
Name of the vendor if this is a vendor payment check
{ "paper_check": { "id": 12345, "created_at": "2024-01-15", "transaction_date": "2024-01-15", "source_record_type": "direct_expense", "source_record_id": 789, "source_record_number": 1001, "check_number": "10542", "company_id": 456, "company_name": "Acme Corporation", "memo": "Payment for Invoice #1234", "amount": "1500.00", "currency_iso_4217_code": "AED", "account_number": 321, "account_name": "Operating Account", "payee_name": "ABC Suppliers Inc.", "customer_id": 567, "customer_name": "John Smith", "vendor_id": 890, "vendor_name": "ABC Suppliers Inc.", "record_status": "printed" }, "pdf_content": "string" }
Request
Create paper checks for transactions that will be printed later in a batch.
This endpoint creates paper check records with status NOT_PRINTED. These checks can then be printed together using the PUT /print-batch/ endpoint.
When to use:
- When you want to accumulate checks before printing
- For batch check printing workflows
- When check numbers need to be assigned in sequence
Alternative: Use POST /print-now/ to print a single check immediately.
Workflow:
- Queue checks:
POST /print-later/with transaction IDs - Review queued checks:
GET /paper-checks/?record_status=not_printed - Print batch:
PUT /print-batch/with paper check IDs
Returns: List of created paper checks with status 'not_printed'.
- Production environmenthttps://api.dualentry.io/public/v1/paper-checks/print-later/
- Development environment (for testing)https://api-dev.dualentry.io/public/v1/paper-checks/print-later/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://api.dualentry.io/public/v1/paper-checks/print-later/ \
-H 'Content-Type: application/json' \
-d '{
"transaction_ids": [
12345,
12346,
12347
]
}'OK
Date when the paper check was created (returned as date only)
Date of the underlying transaction
Type of the source record (e.g., 'direct_expense', 'vendor_payment', 'customer_refund')
ID of the source record (e.g., the VendorPayment ID)
Number of the source record (e.g., vendor payment number)
The check number printed on the physical check
Name of the company issuing the check
Amount of the check
Amount of the check
ISO 4217 currency code for the check amount
Number of the bank account the check is drawn from
Name of the bank account the check is drawn from
Name of the payee (vendor or customer receiving the check)
ID of the customer if this is a customer refund check
Name of the customer if this is a customer refund check
Name of the vendor if this is a vendor payment check
Status of the paper check: 'not_printed' (queued), 'printed', or 'archived'
[ { "id": 12345, "created_at": "2024-01-15", "transaction_date": "2024-01-15", "source_record_type": "direct_expense", "source_record_id": 789, "source_record_number": 1001, "check_number": "10542", "company_id": 456, "company_name": "Acme Corporation", "memo": "Payment for Invoice #1234", "amount": "1500.00", "currency_iso_4217_code": "AED", "account_number": 321, "account_name": "Operating Account", "payee_name": "ABC Suppliers Inc.", "customer_id": 567, "customer_name": "John Smith", "vendor_id": 890, "vendor_name": "ABC Suppliers Inc.", "record_status": "printed" } ]
Request
Print multiple queued paper checks in a batch.
This endpoint prints all specified checks, assigns sequential check numbers, and returns a merged PDF containing all checks.
Prerequisites:
- All specified checks must have status 'not_printed'
- Use
POST /print-later/to queue checks first
Check number assignment: Check numbers are assigned sequentially starting from first_check_number. The order of paper_check_ids in the request determines:
- The order of checks in the PDF
- The order of check number assignment
Example: If first_check_number=1001 and you print 3 checks, they will be numbered 1001, 1002, 1003.
Returns:
pdf_content: Base64-encoded PDF with all checksprinted_checks: List showing each check ID and its assigned check numbertotal_printed: Count of checks printed
List of paper check IDs to print. Checks must have status 'not_printed'. The order of IDs determines the order of checks in the PDF and check number assignment.
Starting check number for this batch. Subsequent checks will be numbered sequentially.
- Production environmenthttps://api.dualentry.io/public/v1/paper-checks/print-batch/
- Development environment (for testing)https://api-dev.dualentry.io/public/v1/paper-checks/print-batch/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
https://api.dualentry.io/public/v1/paper-checks/print-batch/ \
-H 'Content-Type: application/json' \
-d '{
"paper_check_ids": [
101,
102,
103
],
"first_check_number": 10001,
"template_id": 1
}'{ "pdf_content": "string", "printed_checks": [ { … } ], "total_printed": 5 }