This article will cover the following:
Use the Billing & Payments API to build automated reconciliation workflows, export billing data into external accounting systems, and audit payment records without navigating the CAKE UI.
api_key parameter. Find yours under Setup → System Access → API Keys.
Overview
CAKE's Billing & Payments features give network operators centralized control over all financial records and payment infrastructure. From generating invoices for affiliate payouts to configuring how advertisers are billed for conversions, this area is the financial backbone of your network. Navigate to Billing → Invoices, Billing → Payment Methods, or Admin → Billing Cycles to manage through the UI.
Key Concepts
- Invoice — A financial document summarizing amounts owed to an affiliate (payout invoice) or by an advertiser (revenue invoice) for a billing period.
- Billing Cycle — Recurring time interval determining when invoices are generated and payments are due (Net 7, Net 15, Net 30, weekly, bi-weekly).
- Invoice Status —
Pending(not yet approved),Approved(authorized for payment),Paid(payment issued),Void(cancelled). - Payment Method — Stored remittance details for an affiliate or advertiser (PayPal email, ACH account, wire details).
- Payment Type — Classification of payment mechanism: PayPal, Check, ACH, Wire Transfer, Prepaid.
- Currency — Monetary denomination for transactions. CAKE supports multi-currency networks.
Available Actions
Get Invoices
Retrieves invoice records based on filter criteria. Use for reconciliation, exporting to external accounting systems, auditing payment history, or monitoring pending/approved invoices.
GET /api/2/invoices.json| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| invoice_id | integer | No | Filter to a specific invoice. |
| affiliate_id | integer | No | Filter by affiliate. |
| advertiser_id | integer | No | Filter by advertiser. |
| invoice_status | string | No | Pending | Approved | Paid | Void |
| start_date | date | No | Start of date range (YYYY-MM-DD). |
| end_date | date | No | End of date range (YYYY-MM-DD). |
| start_at_row | integer | No | Pagination offset. Default 1. |
| row_limit | integer | No | Max records. Default 100, max 10000. |
Sample request
GET https://yourdomain.cakemarketing.com/api/2/invoices.json?api_key=YOUR_API_KEY&affiliate_id=67890&invoice_status=Approved&start_date=2026-01-01&end_date=2026-01-31&start_at_row=1&row_limit=50Sample response
{
"request_status": "Success",
"response": {
"invoices": [
{
"invoice_id": 10042,
"invoice_date": "2026-01-31",
"invoice_status": "Approved",
"affiliate_id": 67890,
"affiliate_name": "MediaBridge Partners",
"billing_cycle_name": "Net 30",
"currency_symbol": "USD",
"total_payout": "4825.50",
"payment_type": "PayPal",
"date_approved": "2026-02-05"
}
],
"total_rows": 1
}
}Get Billing Cycles
Retrieves billing cycle configurations available in your network. Use to enumerate valid billing_cycle_id values when onboarding affiliates or advertisers.
GET /api/2/billing_cycles.json| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| billing_cycle_id | integer | No | Filter to a specific billing cycle. |
Sample request
GET https://yourdomain.cakemarketing.com/api/2/billing_cycles.json?api_key=YOUR_API_KEYSample response
{
"request_status": "Success",
"billing_cycles": [
{ "billing_cycle_id": 1, "billing_cycle_name": "Net 7" },
{ "billing_cycle_id": 2, "billing_cycle_name": "Net 15" },
{ "billing_cycle_id": 3, "billing_cycle_name": "Net 30" },
{ "billing_cycle_id": 4, "billing_cycle_name": "Weekly" },
{ "billing_cycle_id": 5, "billing_cycle_name": "Bi-Weekly" }
]
}Get Payment Methods
Retrieves stored payment method records. Use to enumerate payment methods before assigning to affiliates or auditing payment configurations.
GET /api/2/payment_methods.json| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| payment_method_id | integer | No | Filter to a specific payment method. |
Sample request
GET https://yourdomain.cakemarketing.com/api/2/payment_methods.json?api_key=YOUR_API_KEYSample response
{
"request_status": "Success",
"payment_methods": [
{ "payment_method_id": 1, "payment_method_name": "Check", "payment_type_id": 1 },
{ "payment_method_id": 2, "payment_method_name": "Wire Transfer", "payment_type_id": 4 },
{ "payment_method_id": 7, "payment_method_name": "PayPal - network@example.com", "payment_type_id": 2 }
]
}Get Payment Types
Retrieves payment type classifications available in your network (e.g. PayPal, Check, ACH, Wire Transfer).
GET /api/2/payment_types.json| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| payment_type_id | integer | No | Filter to a specific payment type. |
Sample request
GET https://yourdomain.cakemarketing.com/api/2/payment_types.json?api_key=YOUR_API_KEYSample response
{
"request_status": "Success",
"payment_types": [
{ "payment_type_id": 1, "payment_type_name": "Check" },
{ "payment_type_id": 2, "payment_type_name": "PayPal" },
{ "payment_type_id": 3, "payment_type_name": "ACH" },
{ "payment_type_id": 4, "payment_type_name": "Wire Transfer" },
{ "payment_type_id": 5, "payment_type_name": "Prepaid" }
]
}Get Currencies
Retrieves currencies configured in your CAKE network. Use to look up valid currency_id values when creating offers or configuring multi-currency affiliate accounts.
GET /api/2/currencies.json| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your CAKE API key. |
| currency_id | integer | No | Filter to a specific currency. |
| currency_symbol | string | No | Filter by currency symbol (e.g. USD, EUR, GBP). |
Sample request
GET https://yourdomain.cakemarketing.com/api/2/currencies.json?api_key=YOUR_API_KEYSample response
{
"request_status": "Success",
"currencies": [
{ "currency_id": 1, "currency_name": "US Dollar", "currency_symbol": "USD" },
{ "currency_id": 2, "currency_name": "Euro", "currency_symbol": "EUR" },
{ "currency_id": 3, "currency_name": "British Pound", "currency_symbol": "GBP" }
]
}You may also be interested in:
If you have any questions, please reach out to your dedicated CAKE Client Success Manager/Account Manager or contact the CAKE Support Team at support@getCAKE.com.