- WooCommerce
- Magento
- Shopify Soon
Reconciliation
Compare transactions, balance history, fees, and daily statements with your records.
Overview
Match Reservepay's records against your own: payments and payouts through the API, fees and totals through daily statements, and held funds through balance history. For backfills and month-end reporting, export CSV files.
Payments and payouts
Use filter-payments for ongoing payment reconciliation:
- Status and timestamps: filter by status and
created_at,authorized_at, orcaptured_at. - Payment details: filter by payment method, currency, amount, contact, or fraud finding.
- Search: pass full-text terms when you do not have an exact identifier.
- Dates: pass one day (
YYYY-MM-DD), an ISO8601 datetime, a range (YYYY-MM-DD..YYYY-MM-DD), or a keyword such astoday,yesterday,this_month, orlast_month. - Amounts: pass an exact value, a range (
1000..5000), or an open bound (1000..or..5000). - Pagination: request up to 100 records per page and follow
nextuntil it isnull. See Calling the API.
Use filter-payouts for payouts. It supports status, created_at, paid_at, sent_at, method, currency, amount, bank code, and contact.
For cursor listings without filters, use list-payments or list-payouts.
Recovering missed updates
If your webhook endpoint was down, or you want a safety net for missed events, compare Reservepay's records with yours for the affected period:
- Call
filter-paymentsandfilter-payoutsfor the period and compare each status with your records. - Check every payment and payout you still have open from before the period with
find-paymentorfind-payout. A filter oncreated_atalone misses older payments that were captured, refunded, or disputed during the period. - Check refunds with
list-refunds-by-paymentand disputes withlist-disputes. Neither sends webhooks. See Disputes.
To see whether a specific event reached your endpoint, see Checking delivery history.
CSV exports
- Payments: call
request-payment-exportwithstart_atandend_atas ISO8601 datetimes. The range applies tocaptured_at. - Payouts: call
request-payout-exportwithstart_atandend_at. The range applies topaid_at. - Download: retrieve the result with
find-exportorlist-exports.
Each export can cover up to one month. A user can run one export at a time; another request returns RATE_LIMIT_EXCEEDED until the first finishes.
Exports require a signed-in user context. The download URL is returned only to the requesting user and expires one hour after it is issued. Use filtered API results for a background integration authenticated with a merchant API key.
Balance and holds
get-balance returns your available balance: the amount you can pay out right now, in currency. Pending debits, such as payouts in progress, are already subtracted.
To see money that isn't available yet, read balance-history. Each entry has a direction, a type, an amount, and a status of ON_HOLD, EFFECTIVE, or CANCELED. It also links to the payout, topup, dispute, invoice, or statement it came from.
- Incoming funds on hold: Add up the
ON_HOLDentries withdirectionset toCREDIT. - Pending debits:
ON_HOLDentries withdirectionset toDEBIT. These are already subtracted from your available balance, so don't add them to the held total.
Results run from newest to oldest. Follow every page.
Fees
Payment and payout objects include a fees array in find, list, and filter responses. Fee amounts are in subunits.
| Field | Meaning |
|---|---|
fee_id |
Unique fee identifier. |
kind |
Fee type. |
billing_code |
Billing classification. |
unit_amount |
Fixed fee amount. |
percentage_amount |
Percentage-based fee amount. |
discount_applied |
Discount applied to the fee. |
statement_id |
Statement that assigned the fee. |
- Timing: fees appear after the daily statement runs, usually on T+1 rather than at capture time.
- Total: add
unit_amountandpercentage_amount; the fee object has no total field. - VAT: read VAT from the invoice or statement rather than the fee object.
- CSV: payment exports include calculated fee and net columns.
Statements
Call list-statements with a month (YYYY-MM) to retrieve one statement per day. Statements are generated overnight for the previous day.
Each statement includes:
- Payment, refund, dispute, and payout amounts and counts
- Fees, net volume, and balance change
- Invoice status
- Download URLs for the statement CSV and PDF
- An invoice PDF URL when an invoice has been issued
Dive deeper into these advanced integration topics to unlock Reservepay's full potential with our in-depth guides.
Issue refunds, void transactions before they settle, and reverse authorizations when needed.
Read the guideSeparate authorization from capture to hold funds without charging. Perfect for pre-orders or reservations
Read the guideBuild your own POS, or work with our app by sending commands or using deep links.
Read the guideBuild profiles by attaching customer data. Gain insights, reduce fraud risk, and create experiences that drive loyalty.
Read the guideSend payouts to your primary bank account or to your contacts via bank account, mobile number or national ID.
Read the guideStay informed about payment events with real-time webhooks. Automate your order processing, and more...
Read the guideFilter payments and payouts, export CSVs, read balance holds, and reconcile daily statements.
Read the guideLook up what each Reservepay failure code means when a payment is declined.
Read the guideNo account yet?
Start integrating all these amazing features into your app or website by creating your own merchant account today. It's free to sign up and only takes a few minutes to get started.
