Checkout response fields

Use the response fields selected by the operation. Numeric amounts use the integration’s stored or calculated units. These operations do not establish a shared minor-unit scale, currency conversion or timestamp timezone. Common response conventions apply.

Calculation

FieldType / presenceMeaning
total_pricenumberSum of discounted item subtotals plus taxes.
discountnumberSum of applied item discounts; not subtracted again from total_price.
total_taxesnumberSum of item tax totals.
currencystring / nullLast processed item's currency; not a converted mixed-currency total.
purchasesarrayCalculated items below, not saved purchases.
taxesobjectSummed tax projection: total integer; fee_wallkit, fee_payment and vat objects, each with amount integer and is_applied boolean. Aggregate rate fields are omitted; interpret the flag as explained below.

Aggregate is_applied becomes true when an item supplies an is_applied field, even when that item flag is false. It does not prove a nonzero tax was applied. Use the returned amounts when displaying tax.

Calculated item

FieldType / presenceMeaning
item_typestringSelected category; subscription means Pricing.
item_keyinteger / stringSelected numeric record ID, or resolved content key for content.
item_title, item_descriptionstored string / nullableItem's descriptive catalog fields.
item_periodstored period / nullPricing period where present; not a universal duration unit.
promostring / nullCode only when its discount applies to this item.
pricenumber / stored numericEffective price after applicable trial/upgrade selection, before promotion and taxes.
base_pricestored numericOriginal catalog price; falls back to price.
discountnumberApplied promotion deduction. Percentage discount uses ceiling; amount discount uses configured amount.
discounted_pricenumberSubtotal after promotion, floored at zero.
total_taxesintegerAdded tax/fee total; defaults zero if missing.
currencystored stringSelected item's currency.
upgrade_priceobjectis_applied_upgrade_price boolean (default false), price_margin integer (default zero). Conditional configured credit, not a refund.
trialobjectis_applied boolean default false; price, period, iterations configured values or null, currency string/null. Configuration can be returned without application.
taxesobject / nulltotal integer; nullable fee_wallkit, fee_payment, vat objects with amount integer, is_applied boolean, rate_percent numeric/null and rate_sum integer. These are item rates, unlike the aggregate projection.

Trial eligibility and upgrade credit depend on member history/configuration. An allowed higher-priced same-currency upgrade can use remaining days from the current non-trial membership; its credit is floored and effective price cannot fall below zero. This is not a general proration/refund contract. Platform fee, payment fee and VAT calculation use ceiling and configured rates/country; caught missing/invalid base configuration can yield zero/default tax objects. Use the returned values, not a reconstructed client formula.

Payment transactions

Ordinary processed groups use the following fields. transactions is an array; no pagination. More than one currency/item-type group can yield multiple transactions.

FieldType / presenceMeaning
idintegerLocal transaction ID.
statusstored stringsucceeded/free/manual are successful; requires_source_action needs authentication. No complete enum.
user_card_id, payment_method_id, user_idstored numeric / nullableSaved-source/member IDs; no universal cast guarantee for these fields.
pay_systemstored stringSelected provider/operator name.
amount, amount_refunded, feeintegerTransaction amount, recorded refund amount and fee.
connect_feestored numeric / nullableRecorded connection fee.
currencystored stringGroup currency; no conversion.
livemodebooleanRecorded provider mode.
processing_fee_wallkit, processing_fee_payment, processing_vatstored numeric / nullableRecorded fee/VAT amounts.
errorstring / nullRecorded transaction error; successful status alone does not guarantee local relationships.
purchasesarrayBase purchase projection below, possibly empty even after successful status.

Base payment purchase

This differs from expanded account purchase/history projections. It does not add price, discount, currency, created_at or expanded item_title fields.

FieldType / presenceMeaning
id, item_id, transaction_idintegerLocal purchase, purchased record and transaction IDs.
item_typestringRecord category; ticket purchases can use ti_event_ticket_pass.
item_keystringContent key for content; string item_id otherwise.
processing_fee_wallkit, processing_fee_payment, processing_vatstored numeric / nullableRecorded fee/VAT amounts.
relation_model, relation_idstored string / numeric, nullableApplied relationship type/ID, if recorded.
itemobject / nullContent, general Pricing, bundle (id/title/price/currency/created_at stored fields), or event pass. Unrecognized/missing item yields null.
relationobject / nullMembership relationship or sponsored relationship; missing/unrecognized relationship yields null.

Authentication-required transaction

Payment returns the raw transaction model for requires_source_action, without the ordinary purchases projection. The model's public fields below are additional to the ordinary transaction fields. Their presence depends on raw model serialization rather than an explicit selected-field response. No purchases field is added in this branch.

Additional fieldType / presenceMeaning / condition
resource_idinteger after save/fetchHeader resource recorded on this local transaction.
payment_customer_idstored integer / nullSelected provider customer's local Wallkit record ID; not the provider customer string.
transaction_idstored string / nullProvider transaction/intent identifier, distinct from local id.
json_datadecoded JSON / stored value / nullInternal calculated items for this group, not the public calculation projection. Uses the encoding rules below.
datadecoded JSON / stored value / nullProvider answer using the encoding rules below; invalid encoded JSON can decode to null. No provider-neutral property schema.
processing_taxes_json_datadecoded JSON / stored value / nullRecorded grouped taxes keyed by item type/ID, with tax-object arrays. Uses the encoding rules below; not the top-level aggregate tax projection.
customboolean after save/fetchCustom transaction flag, not evidence of payment completion.
created_atstored timestamp string / nullableCreation time; before-create fills current server time unless a custom record supplies it. Timezone unspecified.
updated_attimestamp stringCurrent server time set during save/create; timezone unspecified.
is_externalstored boolean / null (model annotation)External-record flag; no explicit boolean conversion in afterFetch.

For json_data, data and processing_taxes_json_data, object/array values are JSON-encoded before save. Stored strings are decoded after save/fetch only when they are neither empty nor "0". Empty strings and the string "0" remain unchanged; other stored representations can also remain unchanged. Invalid encoded JSON can decode to null. Keep decoded data, stored values and null distinct.

Dynamic provider answers and internal item data are not a portable schema. Treat status and local ID as the decision points and handle provider details through the already configured integration.

Single-Pricing calculation

Returns the calculated item fields at the top level with these differences/additions. The request uses a fresh user object, not member history, and does not create records.

FieldType / presenceMeaning / difference
item_keyintegerPricing ID.
item_is_allowed_autorenewstored boolean-like / nullableConfigured Pricing allowance, no explicit boolean cast here.
item_is_allowed_next_subscriptionbooleanLogical inverse of the configured autorenew allowance; not the member's chosen next Pricing.
total_pricenumberDiscounted subtotal plus calculated taxes.
taxesnullSelected from an absent aggregate key in the helper's returned item list; this is not the item's actual tax object. total_taxes can still be nonzero.

No purchases array or top-level aggregate discount/currency calculation is added. Other item fields keep their meanings above, but trial/upgrade choices do not use this member's history/context. Member eligibility and country-dependent taxes require the member calculation.

Full diagram

Use the arrow keys to scroll. Escape closes this view.

Search documentation

Enter at least 2 characters.

    ↑ ↓ move through results · Enter opens · Escape closes