What you need before creating
Retrieve these group-specific values before making your firstPOST /v1/transaction_bundles call:
See Reference data for details on each lookup endpoint.
Minimal request: payment only
The only required array istransactions. A bundle with just a transaction records the payment without attaching a membership or donation.
Use thedefault_status_idfromGET /v1/transaction_settings— not a hardcoded1.
With a membership
With a donation
Different payer and beneficiary (third party payer)
contact_id in transactions is the payer. contact_id in memberships or donations is the beneficiary. They can be different people.
123456 paid, but the membership is attributed to contact 789012.
Field notes
external_transaction_id — use this to link the bundle to your own system’s record. Must be a plain integer; strings are not supported.
Dates — all date fields must be valid ISO 8601 timestamps. Invalid calendar dates (e.g. 2025-02-31) are rejected.
amount_initial — always set this to the original price-list amount. When amount differs (discount or partial payment), amount_initial preserves the original value for reporting.
