Create Product
neuron_create_productCreate a digital product/service with a public checkout link. Amount in kobo (minor units): ₦1 = 100. Minimum ₦500 = 50000. For 'file' delivery, upload the file first (neuron_upload_media) and pass its URL as deliveryFileUrl. On payment, Neuron confirms it and delivers the product to the buyer's WhatsApp automatically.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Short label e.g. 'E-book', 'Presets', 'Service' | |
| codes | No | For codeMode 'pool': the unique codes/keys to add (one gets sent per buyer). Appended to any existing pool. | |
| theme | No | Per-product theme: { bg, accent, text (hex), mode: 'light'|'dark', layout: 'hero'|'side', coverAspect: '16/10'|'3/2'|'1/1'|'4/5', cta: buy-button label e.g. 'Reserve your hour' } | |
| title | Yes | Product title shown to buyers | |
| content | No | Rich product-page content blocks. Ordered array of {type, ...}: heading {text,level}, text {markdown}, image {url,caption}, video {url}, callout {emoji,text}, collapsible {title,blocks[]}, divider {}, button {label,url}, embed {url}, spacer {} | |
| enabled | No | Whether the product is live | |
| category | No | Category label e.g. 'Productivity' | |
| codeMode | No | For deliveryType 'code': 'shared' (same text to every buyer), 'pool' (a unique code per sale from codes you upload — sells out when empty), or 'generated' (auto-mint a unique license key per sale) | |
| currency | No | ISO currency (default NGN) | |
| feePayer | No | 'buyer' (fee added on top, seller gets full price — default) or 'seller' (fee deducted) | |
| channelId | No | WhatsApp session UUID used to deliver the product (defaults to the org default channel) | |
| coverType | No | How the cover renders | |
| emailBody | No | Custom message for the buyer's delivery email: plain text (no HTML), blank line = new paragraph, **bold**, links auto-linked, same variables as emailSubject. The download button / link / code is always added below it automatically. Null = the default message. | |
| coverColor | No | Cover colour (hex) for 'color'/'gradient' cover types | |
| coverEmoji | No | Emoji used as a cover fallback (e.g. 📓) | |
| membership | No | Make this a recurring subscription/membership: it tracks a paid period per buyer, renews from their Neuron wallet when possible (else emails a reminder — no card auto-charge), and marks them lapsed when the period + grace passes. React to membership.started/renewed/lapsed in Flows to deliver whatever the membership grants. | |
| priceMinor | Yes | Current price (charged). Amount in kobo (minor units): ₦1 = 100. Minimum ₦500 = 50000. Set 0 for a free product (no payment). | |
| coverColor2 | No | Second colour (hex) for 'gradient' cover | |
| description | No | Rich description / what the buyer gets | |
| deliveryText | No | For 'link'/'code': the link or code the buyer receives. Optional note for 'file'. | |
| deliveryType | Yes | How the product is delivered: 'file' (uploaded file), 'link' (URL), or 'code' (text/code) | |
| emailSubject | No | Custom subject for the buyer's delivery email. Variables: {{buyer_first_name}}, {{buyer_name}}, {{product_title}}, {{store_name}}, {{access_link}}, {{code}}, {{order_ref}}. Null = default ('Your {{product_title}} is ready'). | |
| coverImageUrl | No | Cover image URL | |
| checkoutFields | No | Custom checkout questions the buyer answers (name, address, specs/customisations…). Their answers are attached to the order and sent to the seller. | |
| deliveryChannel | No | How buyers receive it. 'email' (default for new products): a branded email from your store only, with no WhatsApp needed and no ban risk on big launches. 'both': also sends from your connected WhatsApp, within the number's daily new-contact cap (buyers past the cap still get the email). | |
| deliveryFileUrl | No | For deliveryType 'file': the uploaded file URL (upload first with neuron_upload_media) | |
| deliveryFileName | No | Filename shown on the download button and in the WhatsApp document | |
| membershipInterval | No | Billing period. Required when membership is true. | |
| originalPriceMinor | No | Optional compare-at / 'was' price (kobo), shown struck through. Must be ≥ current price. | |
| membershipGraceDays | No | Days after the period ends before an unpaid member lapses (and, if a group is attached, is removed from it). Default 1. | |
| membershipGroupName | No | Group subject used when the attached group is auto-created (defaults to the product title). Only relevant with membershipGroupSlug. | |
| membershipGroupSlug | No | OPTIONAL: attach a WhatsApp group as a membership perk. Org-unique handle (lowercase letters, numbers, hyphens); the group is created on the first sale, buyers are added on renewal and removed on lapse. Your connected number must be a group admin. Omit for a membership that isn't group-based. |