[{"data":1,"prerenderedAt":1222},["ShallowReactive",2],{"navigation_docs":3,"-docs-wallet-adapter-debit":352,"-docs-wallet-adapter-debit-surround":1217},[4,22,35,60,81,137,223,254,282,306,327],{"title":5,"path":6,"stem":7,"children":8,"page":21},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started",[9,13,17],{"title":10,"path":11,"stem":12},"Overview","\u002Fdocs\u002Fgetting-started\u002Foverview","docs\u002F1.getting-started\u002F1.overview",{"title":14,"path":15,"stem":16},"Integration checklist","\u002Fdocs\u002Fgetting-started\u002Fintegration-checklist","docs\u002F1.getting-started\u002F2.integration-checklist",{"title":18,"path":19,"stem":20},"Environments and base URLs","\u002Fdocs\u002Fgetting-started\u002Fenvironments-and-base-urls","docs\u002F1.getting-started\u002F3.environments-and-base-urls",false,{"title":23,"path":24,"stem":25,"children":26,"page":21},"Troubleshooting","\u002Fdocs\u002Ftroubleshooting","docs\u002F10.troubleshooting",[27,31],{"title":28,"path":29,"stem":30},"Common errors","\u002Fdocs\u002Ftroubleshooting\u002Fcommon-errors","docs\u002F10.troubleshooting\u002F1.common-errors",{"title":32,"path":33,"stem":34},"Support escalation","\u002Fdocs\u002Ftroubleshooting\u002Fsupport-escalation","docs\u002F10.troubleshooting\u002F2.support-escalation",{"title":36,"path":37,"stem":38,"children":39,"page":21},"Polyflight","\u002Fdocs\u002Fpolyflight","docs\u002F11.polyflight",[40,44,48,52,56],{"title":41,"path":42,"stem":43},"Polyflight overview and launch","\u002Fdocs\u002Fpolyflight\u002Foverview-and-launch","docs\u002F11.polyflight\u002F1.overview-and-launch",{"title":45,"path":46,"stem":47},"Native wallet contract","\u002Fdocs\u002Fpolyflight\u002Fnative-wallet-contract","docs\u002F11.polyflight\u002F2.native-wallet-contract",{"title":49,"path":50,"stem":51},"API, events, and proof","\u002Fdocs\u002Fpolyflight\u002Fapi-events-and-proof","docs\u002F11.polyflight\u002F3.api-events-and-proof",{"title":53,"path":54,"stem":55},"Terms, statements, and settlement","\u002Fdocs\u002Fpolyflight\u002Fterms-statements-and-settlement","docs\u002F11.polyflight\u002F4.terms-statements-and-settlement",{"title":57,"path":58,"stem":59},"Operations, reconciliation, and rollback","\u002Fdocs\u002Fpolyflight\u002Foperations-reconciliation-and-rollback","docs\u002F11.polyflight\u002F5.operations-reconciliation-and-rollback",{"title":61,"path":62,"stem":63,"children":64,"page":21},"Integration Flow","\u002Fdocs\u002Fintegration-flow","docs\u002F2.integration-flow",[65,69,73,77],{"title":66,"path":67,"stem":68},"Architecture","\u002Fdocs\u002Fintegration-flow\u002Farchitecture","docs\u002F2.integration-flow\u002F1.architecture",{"title":70,"path":71,"stem":72},"Launch session model","\u002Fdocs\u002Fintegration-flow\u002Flaunch-session-model","docs\u002F2.integration-flow\u002F2.launch-session-model",{"title":74,"path":75,"stem":76},"Order and wallet saga","\u002Fdocs\u002Fintegration-flow\u002Forder-and-wallet-saga","docs\u002F2.integration-flow\u002F3.order-and-wallet-saga",{"title":78,"path":79,"stem":80},"FX fees and rounding","\u002Fdocs\u002Fintegration-flow\u002Ffx-fees-and-rounding","docs\u002F2.integration-flow\u002F4.fx-fees-and-rounding",{"title":82,"path":83,"stem":84,"children":85,"page":21},"Dashboard","\u002Fdocs\u002Fdashboard","docs\u002F3.dashboard",[86,89,93,97,101,105,109,113,117,121,125,129,133],{"title":10,"path":87,"stem":88},"\u002Fdocs\u002Fdashboard\u002Foverview","docs\u002F3.dashboard\u002F1.overview",{"title":90,"path":91,"stem":92},"Webhook Deliveries","\u002Fdocs\u002Fdashboard\u002Fwebhook-deliveries","docs\u002F3.dashboard\u002F10.webhook-deliveries",{"title":94,"path":95,"stem":96},"Staffs","\u002Fdocs\u002Fdashboard\u002Fstaffs","docs\u002F3.dashboard\u002F11.staffs",{"title":98,"path":99,"stem":100},"Simulator","\u002Fdocs\u002Fdashboard\u002Fsimulator","docs\u002F3.dashboard\u002F12.simulator",{"title":102,"path":103,"stem":104},"API Playground","\u002Fdocs\u002Fdashboard\u002Fapi-playground","docs\u002F3.dashboard\u002F13.api-playground",{"title":106,"path":107,"stem":108},"API keys","\u002Fdocs\u002Fdashboard\u002Fapi-keys","docs\u002F3.dashboard\u002F2.api-keys",{"title":110,"path":111,"stem":112},"Wallet adapter settings","\u002Fdocs\u002Fdashboard\u002Fwallet-adapter-settings","docs\u002F3.dashboard\u002F3.wallet-adapter-settings",{"title":114,"path":115,"stem":116},"Webhook endpoints","\u002Fdocs\u002Fdashboard\u002Fwebhook-endpoints","docs\u002F3.dashboard\u002F4.webhook-endpoints",{"title":118,"path":119,"stem":120},"Markets and visibility","\u002Fdocs\u002Fdashboard\u002Fmarket-visibility","docs\u002F3.dashboard\u002F5.market-visibility",{"title":122,"path":123,"stem":124},"Users","\u002Fdocs\u002Fdashboard\u002Fusers","docs\u002F3.dashboard\u002F6.users",{"title":126,"path":127,"stem":128},"Trades","\u002Fdocs\u002Fdashboard\u002Ftrades","docs\u002F3.dashboard\u002F7.trades",{"title":130,"path":131,"stem":132},"Resolutions","\u002Fdocs\u002Fdashboard\u002Fresolutions","docs\u002F3.dashboard\u002F8.resolutions",{"title":134,"path":135,"stem":136},"Balance Operations","\u002Fdocs\u002Fdashboard\u002Fbalance-operations","docs\u002F3.dashboard\u002F9.balance-operations",{"title":138,"path":139,"stem":140,"children":141,"page":21},"Operator Api","\u002Fdocs\u002Foperator-api","docs\u002F4.operator-api",[142,146,149,153,156,160,163,167,171,175,179,183,186,190,194,198,202,206,209,213,216,219],{"title":143,"path":144,"stem":145},"Authentication","\u002Fdocs\u002Foperator-api\u002Fauthentication","docs\u002F4.operator-api\u002F1.authentication",{"title":114,"path":147,"stem":148},"\u002Fdocs\u002Foperator-api\u002Fwebhook-endpoints","docs\u002F4.operator-api\u002F10.webhook-endpoints",{"title":150,"path":151,"stem":152},"Webhook deliveries","\u002Fdocs\u002Foperator-api\u002Fwebhook-deliveries","docs\u002F4.operator-api\u002F11.webhook-deliveries",{"title":98,"path":154,"stem":155},"\u002Fdocs\u002Foperator-api\u002Fsimulator","docs\u002F4.operator-api\u002F12.simulator",{"title":157,"path":158,"stem":159},"Wallet adapter","\u002Fdocs\u002Foperator-api\u002Fwallet-adapter","docs\u002F4.operator-api\u002F13.wallet-adapter",{"title":94,"path":161,"stem":162},"\u002Fdocs\u002Foperator-api\u002Fstaffs","docs\u002F4.operator-api\u002F14.staffs",{"title":164,"path":165,"stem":166},"Error codes","\u002Fdocs\u002Foperator-api\u002Ferror-codes","docs\u002F4.operator-api\u002F15.error-codes",{"title":168,"path":169,"stem":170},"Redemptions","\u002Fdocs\u002Foperator-api\u002Fredemptions","docs\u002F4.operator-api\u002F16.redemptions",{"title":172,"path":173,"stem":174},"Polyflight overview","\u002Fdocs\u002Foperator-api\u002Fpolyflight","docs\u002F4.operator-api\u002F17.polyflight",{"title":176,"path":177,"stem":178},"Polyflight flights","\u002Fdocs\u002Foperator-api\u002Fpolyflight-flights","docs\u002F4.operator-api\u002F18.polyflight-flights",{"title":180,"path":181,"stem":182},"Polyflight tickets","\u002Fdocs\u002Foperator-api\u002Fpolyflight-tickets","docs\u002F4.operator-api\u002F19.polyflight-tickets",{"title":106,"path":184,"stem":185},"\u002Fdocs\u002Foperator-api\u002Fapi-keys","docs\u002F4.operator-api\u002F2.api-keys",{"title":187,"path":188,"stem":189},"Polyflight balance operations","\u002Fdocs\u002Foperator-api\u002Fpolyflight-balance-operations","docs\u002F4.operator-api\u002F20.polyflight-balance-operations",{"title":191,"path":192,"stem":193},"Polyflight terms","\u002Fdocs\u002Foperator-api\u002Fpolyflight-terms","docs\u002F4.operator-api\u002F21.polyflight-terms",{"title":195,"path":196,"stem":197},"Polyflight settlement reports","\u002Fdocs\u002Foperator-api\u002Fpolyflight-settlement-reports","docs\u002F4.operator-api\u002F22.polyflight-settlement-reports",{"title":199,"path":200,"stem":201},"Session","\u002Fdocs\u002Foperator-api\u002Fsession","docs\u002F4.operator-api\u002F3.session",{"title":203,"path":204,"stem":205},"Launch","\u002Fdocs\u002Foperator-api\u002Flaunch","docs\u002F4.operator-api\u002F4.launch",{"title":122,"path":207,"stem":208},"\u002Fdocs\u002Foperator-api\u002Fusers","docs\u002F4.operator-api\u002F5.users",{"title":210,"path":211,"stem":212},"Markets","\u002Fdocs\u002Foperator-api\u002Fmarkets","docs\u002F4.operator-api\u002F6.markets",{"title":126,"path":214,"stem":215},"\u002Fdocs\u002Foperator-api\u002Ftrades","docs\u002F4.operator-api\u002F7.trades",{"title":130,"path":217,"stem":218},"\u002Fdocs\u002Foperator-api\u002Fresolutions","docs\u002F4.operator-api\u002F8.resolutions",{"title":220,"path":221,"stem":222},"Balance operations","\u002Fdocs\u002Foperator-api\u002Fbalance-operations","docs\u002F4.operator-api\u002F9.balance-operations",{"title":224,"path":225,"stem":226,"children":227,"page":21},"Wallet Adapter","\u002Fdocs\u002Fwallet-adapter","docs\u002F5.wallet-adapter",[228,231,234,238,242,246,250],{"title":10,"path":229,"stem":230},"\u002Fdocs\u002Fwallet-adapter\u002Foverview","docs\u002F5.wallet-adapter\u002F1.overview",{"title":143,"path":232,"stem":233},"\u002Fdocs\u002Fwallet-adapter\u002Fauthentication","docs\u002F5.wallet-adapter\u002F2.authentication",{"title":235,"path":236,"stem":237},"Balance","\u002Fdocs\u002Fwallet-adapter\u002Fbalance","docs\u002F5.wallet-adapter\u002F3.balance",{"title":239,"path":240,"stem":241},"Debit","\u002Fdocs\u002Fwallet-adapter\u002Fdebit","docs\u002F5.wallet-adapter\u002F4.debit",{"title":243,"path":244,"stem":245},"Credit","\u002Fdocs\u002Fwallet-adapter\u002Fcredit","docs\u002F5.wallet-adapter\u002F5.credit",{"title":247,"path":248,"stem":249},"Debit reversal","\u002Fdocs\u002Fwallet-adapter\u002Fdebit-reversal","docs\u002F5.wallet-adapter\u002F6.debit-reversal",{"title":251,"path":252,"stem":253},"Idempotency","\u002Fdocs\u002Fwallet-adapter\u002Fidempotency","docs\u002F5.wallet-adapter\u002F7.idempotency",{"title":255,"path":256,"stem":257,"children":258,"page":21},"Webhooks","\u002Fdocs\u002Fwebhooks","docs\u002F6.webhooks",[259,262,266,270,274,278],{"title":10,"path":260,"stem":261},"\u002Fdocs\u002Fwebhooks\u002Foverview","docs\u002F6.webhooks\u002F1.overview",{"title":263,"path":264,"stem":265},"Signatures","\u002Fdocs\u002Fwebhooks\u002Fsignatures","docs\u002F6.webhooks\u002F2.signatures",{"title":267,"path":268,"stem":269},"Event envelope","\u002Fdocs\u002Fwebhooks\u002Fevent-envelope","docs\u002F6.webhooks\u002F3.event-envelope",{"title":271,"path":272,"stem":273},"Event types","\u002Fdocs\u002Fwebhooks\u002Fevent-types","docs\u002F6.webhooks\u002F4.event-types",{"title":275,"path":276,"stem":277},"Retry and replay","\u002Fdocs\u002Fwebhooks\u002Fretry-and-replay","docs\u002F6.webhooks\u002F5.retry-and-replay",{"title":279,"path":280,"stem":281},"Receiver examples","\u002Fdocs\u002Fwebhooks\u002Freceiver-examples","docs\u002F6.webhooks\u002F6.receiver-examples",{"title":283,"path":284,"stem":285,"children":286,"page":21},"Testing And Staging","\u002Fdocs\u002Ftesting-and-staging","docs\u002F7.testing-and-staging",[287,291,294,298,302],{"title":288,"path":289,"stem":290},"Staging overview","\u002Fdocs\u002Ftesting-and-staging\u002Fstaging-overview","docs\u002F7.testing-and-staging\u002F1.staging-overview",{"title":98,"path":292,"stem":293},"\u002Fdocs\u002Ftesting-and-staging\u002Fsimulator","docs\u002F7.testing-and-staging\u002F2.simulator",{"title":295,"path":296,"stem":297},"Wallet failure drills","\u002Fdocs\u002Ftesting-and-staging\u002Fwallet-failure-drills","docs\u002F7.testing-and-staging\u002F3.wallet-failure-drills",{"title":299,"path":300,"stem":301},"Webhook drills","\u002Fdocs\u002Ftesting-and-staging\u002Fwebhook-drills","docs\u002F7.testing-and-staging\u002F4.webhook-drills",{"title":303,"path":304,"stem":305},"Production cutover rehearsal","\u002Fdocs\u002Ftesting-and-staging\u002Fproduction-cutover-rehearsal","docs\u002F7.testing-and-staging\u002F5.production-cutover-rehearsal",{"title":307,"path":308,"stem":309,"children":310,"page":21},"Production Readiness","\u002Fdocs\u002Fproduction-readiness","docs\u002F8.production-readiness",[311,315,319,323],{"title":312,"path":313,"stem":314},"Checklist","\u002Fdocs\u002Fproduction-readiness\u002Fchecklist","docs\u002F8.production-readiness\u002F1.checklist",{"title":316,"path":317,"stem":318},"Operational runbook","\u002Fdocs\u002Fproduction-readiness\u002Foperational-runbook","docs\u002F8.production-readiness\u002F2.operational-runbook",{"title":320,"path":321,"stem":322},"Security","\u002Fdocs\u002Fproduction-readiness\u002Fsecurity","docs\u002F8.production-readiness\u002F3.security",{"title":324,"path":325,"stem":326},"Rollback","\u002Fdocs\u002Fproduction-readiness\u002Frollback","docs\u002F8.production-readiness\u002F4.rollback",{"title":328,"path":329,"stem":330,"children":331,"page":21},"Reference","\u002Fdocs\u002Freference","docs\u002F9.reference",[332,336,340,344,348],{"title":333,"path":334,"stem":335},"Statuses","\u002Fdocs\u002Freference\u002Fstatuses","docs\u002F9.reference\u002F1.statuses",{"title":337,"path":338,"stem":339},"Scopes","\u002Fdocs\u002Freference\u002Fscopes","docs\u002F9.reference\u002F2.scopes",{"title":341,"path":342,"stem":343},"Units and money","\u002Fdocs\u002Freference\u002Funits-and-money","docs\u002F9.reference\u002F3.units-and-money",{"title":345,"path":346,"stem":347},"Changelog","\u002Fdocs\u002Freference\u002Fchangelog","docs\u002F9.reference\u002F4.changelog",{"title":349,"path":350,"stem":351},"Virtual AMM","\u002Fdocs\u002Freference\u002Fvirtual-amm","docs\u002F9.reference\u002F5.virtual-amm",{"id":353,"title":239,"body":354,"description":1210,"extension":1211,"links":1212,"meta":1213,"navigation":1214,"path":240,"seo":1215,"stem":241,"__hash__":1216},"docs\u002Fdocs\u002F5.wallet-adapter\u002F4.debit.md",{"type":355,"value":356,"toc":1201},"minimark",[357,361,365,370,376,380,611,621,751,754,809,824,829,856,860,995,999,1002,1131,1147,1157,1161,1197],[358,359,239],"h1",{"id":360},"debit",[362,363,364],"p",{},"Debit a user wallet for an Opinion buy or Polyflight ticket purchase.",[366,367,369],"h2",{"id":368},"path","Path",[362,371,372],{},[373,374,375],"code",{},"POST \u002Fdebit",[366,377,379],{"id":378},"request-body","Request body",[381,382,387],"pre",{"className":383,"code":384,"language":385,"meta":386,"style":386},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"external_user_id\": \"operator-user-123\",\n  \"amount_minor\": 10000,\n  \"currency_code\": \"IDR\",\n  \"idempotency_key\": \"mini_app_order:1:debit\",\n  \"reason\": \"mini_app_buy_order\",\n  \"metadata\": {\n    \"orderId\": 1,\n    \"marketId\": 51,\n    \"outcome\": \"yes\",\n    \"resolveDeadlineTs\": \"2026-06-30T12:00:00.000Z\"\n  }\n}\n","json","",[373,388,389,398,426,444,465,486,507,522,541,558,579,599,605],{"__ignoreMap":386},[390,391,394],"span",{"class":392,"line":393},"line",1,[390,395,397],{"class":396},"sMK4o","{\n",[390,399,401,404,408,411,414,417,421,423],{"class":392,"line":400},2,[390,402,403],{"class":396},"  \"",[390,405,407],{"class":406},"spNyl","external_user_id",[390,409,410],{"class":396},"\"",[390,412,413],{"class":396},":",[390,415,416],{"class":396}," \"",[390,418,420],{"class":419},"sfazB","operator-user-123",[390,422,410],{"class":396},[390,424,425],{"class":396},",\n",[390,427,429,431,434,436,438,442],{"class":392,"line":428},3,[390,430,403],{"class":396},[390,432,433],{"class":406},"amount_minor",[390,435,410],{"class":396},[390,437,413],{"class":396},[390,439,441],{"class":440},"sbssI"," 10000",[390,443,425],{"class":396},[390,445,447,449,452,454,456,458,461,463],{"class":392,"line":446},4,[390,448,403],{"class":396},[390,450,451],{"class":406},"currency_code",[390,453,410],{"class":396},[390,455,413],{"class":396},[390,457,416],{"class":396},[390,459,460],{"class":419},"IDR",[390,462,410],{"class":396},[390,464,425],{"class":396},[390,466,468,470,473,475,477,479,482,484],{"class":392,"line":467},5,[390,469,403],{"class":396},[390,471,472],{"class":406},"idempotency_key",[390,474,410],{"class":396},[390,476,413],{"class":396},[390,478,416],{"class":396},[390,480,481],{"class":419},"mini_app_order:1:debit",[390,483,410],{"class":396},[390,485,425],{"class":396},[390,487,489,491,494,496,498,500,503,505],{"class":392,"line":488},6,[390,490,403],{"class":396},[390,492,493],{"class":406},"reason",[390,495,410],{"class":396},[390,497,413],{"class":396},[390,499,416],{"class":396},[390,501,502],{"class":419},"mini_app_buy_order",[390,504,410],{"class":396},[390,506,425],{"class":396},[390,508,510,512,515,517,519],{"class":392,"line":509},7,[390,511,403],{"class":396},[390,513,514],{"class":406},"metadata",[390,516,410],{"class":396},[390,518,413],{"class":396},[390,520,521],{"class":396}," {\n",[390,523,525,528,532,534,536,539],{"class":392,"line":524},8,[390,526,527],{"class":396},"    \"",[390,529,531],{"class":530},"sBMFI","orderId",[390,533,410],{"class":396},[390,535,413],{"class":396},[390,537,538],{"class":440}," 1",[390,540,425],{"class":396},[390,542,544,546,549,551,553,556],{"class":392,"line":543},9,[390,545,527],{"class":396},[390,547,548],{"class":530},"marketId",[390,550,410],{"class":396},[390,552,413],{"class":396},[390,554,555],{"class":440}," 51",[390,557,425],{"class":396},[390,559,561,563,566,568,570,572,575,577],{"class":392,"line":560},10,[390,562,527],{"class":396},[390,564,565],{"class":530},"outcome",[390,567,410],{"class":396},[390,569,413],{"class":396},[390,571,416],{"class":396},[390,573,574],{"class":419},"yes",[390,576,410],{"class":396},[390,578,425],{"class":396},[390,580,582,584,587,589,591,593,596],{"class":392,"line":581},11,[390,583,527],{"class":396},[390,585,586],{"class":530},"resolveDeadlineTs",[390,588,410],{"class":396},[390,590,413],{"class":396},[390,592,416],{"class":396},[390,594,595],{"class":419},"2026-06-30T12:00:00.000Z",[390,597,598],{"class":396},"\"\n",[390,600,602],{"class":392,"line":601},12,[390,603,604],{"class":396},"  }\n",[390,606,608],{"class":392,"line":607},13,[390,609,610],{"class":396},"}\n",[362,612,613,614,617,618,620],{},"There is no ",[373,615,616],{},"direction"," field in the REST v1 JSON body. The path ",[373,619,375],{}," is the direction.",[622,623,624,643],"table",{},[625,626,627],"thead",{},[628,629,630,634,637,640],"tr",{},[631,632,633],"th",{},"Request field",[631,635,636],{},"Type",[631,638,639],{},"Requirement",[631,641,642],{},"Notes",[644,645,646,665,681,699,714,735],"tbody",{},[628,647,648,653,656,662],{},[649,650,651],"td",{},[373,652,407],{},[649,654,655],{},"string",[649,657,658],{},[659,660,661],"strong",{},"Required",[649,663,664],{},"Stable operator-side user ID.",[628,666,667,671,674,678],{},[649,668,669],{},[373,670,433],{},[649,672,673],{},"integer",[649,675,676],{},[659,677,661],{},[649,679,680],{},"Exact debit amount in minor units.",[628,682,683,687,689,693],{},[649,684,685],{},[373,686,451],{},[649,688,655],{},[649,690,691],{},[659,692,661],{},[649,694,695,696,698],{},"Current REST v1 value: ",[373,697,460],{},".",[628,700,701,705,707,711],{},[649,702,703],{},[373,704,472],{},[649,706,655],{},[649,708,709],{},[659,710,661],{},[649,712,713],{},"Debit operation key.",[628,715,716,720,722,726],{},[649,717,718],{},[373,719,493],{},[649,721,655],{},[649,723,724],{},[659,725,661],{},[649,727,728,730,731,734],{},[373,729,502],{}," for Opinion or ",[373,732,733],{},"mini_app_polyflight_purchase"," for Polyflight.",[628,736,737,741,744,748],{},[649,738,739],{},[373,740,514],{},[649,742,743],{},"object",[649,745,746],{},[659,747,661],{},[649,749,750],{},"Always present, possibly empty; fields are additive.",[362,752,753],{},"Required buy-debit metadata:",[622,755,756,767],{},[625,757,758],{},[628,759,760,763,765],{},[631,761,762],{},"Metadata field",[631,764,636],{},[631,766,639],{},[644,768,769,782,794],{},[628,770,771,775,778],{},[649,772,773],{},[373,774,531],{},[649,776,777],{},"positive integer",[649,779,780],{},[659,781,661],{},[628,783,784,788,790],{},[649,785,786],{},[373,787,548],{},[649,789,777],{},[649,791,792],{},[659,793,661],{},[628,795,796,800,806],{},[649,797,798],{},[373,799,586],{},[649,801,802,803],{},"ISO-8601 string or ",[373,804,805],{},"null",[649,807,808],{},"Optional",[362,810,811,812,814,815,817,818,820,821,823],{},"Current buy requests also include ",[373,813,565],{}," and ",[373,816,586],{}," as additive context. ",[373,819,586],{}," is the related market's resolution deadline when configured, otherwise ",[373,822,805],{},". Do not reject unknown metadata fields.",[825,826,828],"h3",{"id":827},"polyflight-purchase-debit","Polyflight purchase debit",[362,830,831,832,835,836,839,840,843,844,847,848,843,850,852,853,698],{},"Polyflight sends the same top-level body with ",[373,833,834],{},"reason = \"mini_app_polyflight_purchase\"",", amount equal to the native IDR ticket stake, and key ",[373,837,838],{},"mini_app_polyflight_purchase:{purchaseRequestId}:debit",". Its metadata contains ",[373,841,842],{},"product",", ",[373,845,846],{},"operation",", purchase\u002Fflight\u002Fchoice identifiers, and the immutable native quote and flight times. It does not include an Opinion ",[373,849,548],{},[373,851,531],{},", or FX snapshot. See ",[854,855,45],"a",{"href":46},[366,857,859],{"id":858},"response-body","Response body",[381,861,863],{"className":383,"code":862,"language":385,"meta":386,"style":386},"{\n  \"external_user_id\": \"operator-user-123\",\n  \"status\": \"succeeded\",\n  \"currency_code\": \"IDR\",\n  \"amount_minor\": 10000,\n  \"idempotency_key\": \"mini_app_order:1:debit\",\n  \"remote_reference\": \"wallet-op-123\",\n  \"balance_minor\": 90000\n}\n",[373,864,865,869,887,907,925,939,957,977,991],{"__ignoreMap":386},[390,866,867],{"class":392,"line":393},[390,868,397],{"class":396},[390,870,871,873,875,877,879,881,883,885],{"class":392,"line":400},[390,872,403],{"class":396},[390,874,407],{"class":406},[390,876,410],{"class":396},[390,878,413],{"class":396},[390,880,416],{"class":396},[390,882,420],{"class":419},[390,884,410],{"class":396},[390,886,425],{"class":396},[390,888,889,891,894,896,898,900,903,905],{"class":392,"line":428},[390,890,403],{"class":396},[390,892,893],{"class":406},"status",[390,895,410],{"class":396},[390,897,413],{"class":396},[390,899,416],{"class":396},[390,901,902],{"class":419},"succeeded",[390,904,410],{"class":396},[390,906,425],{"class":396},[390,908,909,911,913,915,917,919,921,923],{"class":392,"line":446},[390,910,403],{"class":396},[390,912,451],{"class":406},[390,914,410],{"class":396},[390,916,413],{"class":396},[390,918,416],{"class":396},[390,920,460],{"class":419},[390,922,410],{"class":396},[390,924,425],{"class":396},[390,926,927,929,931,933,935,937],{"class":392,"line":467},[390,928,403],{"class":396},[390,930,433],{"class":406},[390,932,410],{"class":396},[390,934,413],{"class":396},[390,936,441],{"class":440},[390,938,425],{"class":396},[390,940,941,943,945,947,949,951,953,955],{"class":392,"line":488},[390,942,403],{"class":396},[390,944,472],{"class":406},[390,946,410],{"class":396},[390,948,413],{"class":396},[390,950,416],{"class":396},[390,952,481],{"class":419},[390,954,410],{"class":396},[390,956,425],{"class":396},[390,958,959,961,964,966,968,970,973,975],{"class":392,"line":509},[390,960,403],{"class":396},[390,962,963],{"class":406},"remote_reference",[390,965,410],{"class":396},[390,967,413],{"class":396},[390,969,416],{"class":396},[390,971,972],{"class":419},"wallet-op-123",[390,974,410],{"class":396},[390,976,425],{"class":396},[390,978,979,981,984,986,988],{"class":392,"line":524},[390,980,403],{"class":396},[390,982,983],{"class":406},"balance_minor",[390,985,410],{"class":396},[390,987,413],{"class":396},[390,989,990],{"class":440}," 90000\n",[390,992,993],{"class":392,"line":543},[390,994,610],{"class":396},[366,996,998],{"id":997},"status-values","Status values",[362,1000,1001],{},"Response field requirements:",[622,1003,1004,1018],{},[625,1005,1006],{},[628,1007,1008,1011,1013,1015],{},[631,1009,1010],{},"Response field",[631,1012,636],{},[631,1014,639],{},[631,1016,1017],{},"OpenPoly behavior",[644,1019,1020,1045,1058,1071,1084,1097,1114],{},[628,1021,1022,1026,1028,1032],{},[649,1023,1024],{},[373,1025,893],{},[649,1027,655],{},[649,1029,1030],{},[659,1031,661],{},[649,1033,1034,1035,843,1037,1040,1041,1044],{},"Must be ",[373,1036,902],{},[373,1038,1039],{},"failed",", or ",[373,1042,1043],{},"pending",". Any other\u002Fmissing value is an invalid response.",[628,1046,1047,1051,1053,1055],{},[649,1048,1049],{},[373,1050,407],{},[649,1052,655],{},[649,1054,808],{},[649,1056,1057],{},"Falls back to the request value. Full-contract tests reject a mismatch.",[628,1059,1060,1064,1066,1068],{},[649,1061,1062],{},[373,1063,472],{},[649,1065,655],{},[649,1067,808],{},[649,1069,1070],{},"Falls back to the request key.",[628,1072,1073,1077,1079,1081],{},[649,1074,1075],{},[373,1076,963],{},[649,1078,655],{},[649,1080,808],{},[649,1082,1083],{},"Preserved when non-empty.",[628,1085,1086,1090,1092,1094],{},[649,1087,1088],{},[373,1089,983],{},[649,1091,673],{},[649,1093,808],{},[649,1095,1096],{},"Post-operation balance, preserved for reconciliation.",[628,1098,1099,1104,1106,1108],{},[649,1100,1101],{},[373,1102,1103],{},"failure_reason",[649,1105,655],{},[649,1107,808],{},[649,1109,1110,1111,698],{},"Recommended when ",[373,1112,1113],{},"status = failed",[628,1115,1116,1122,1125,1128],{},[649,1117,1118,843,1120],{},[373,1119,433],{},[373,1121,451],{},[649,1123,1124],{},"mixed",[649,1126,1127],{},"Optional echoes",[649,1129,1130],{},"Not consumed from the response; OpenPoly keeps the request values.",[1132,1133,1134,1139,1143],"ul",{},[1135,1136,1137],"li",{},[373,1138,902],{},[1135,1140,1141],{},[373,1142,1039],{},[1135,1144,1145],{},[373,1146,1043],{},[362,1148,1149,1150,1153,1154,1156],{},"Direct mutation responses must not return ",[373,1151,1152],{},"unknown",". A ",[373,1155,1043],{}," response is treated as ambiguous and sent to manual review; OpenPoly does not automatically replay the primary debit.",[366,1158,1160],{"id":1159},"rules","Rules",[1132,1162,1163,1166,1172,1175,1180],{},[1135,1164,1165],{},"same idempotency key must return same effective result",[1135,1167,1168,1169,1171],{},"response should echo ",[373,1170,407],{}," when available",[1135,1173,1174],{},"do not silently convert failure into success",[1135,1176,1177,1178],{},"do not debit the same user twice for the same ",[373,1179,472],{},[1135,1181,1182,1183,1185,1186,1185,1189,1192,1193,1196],{},"timeout, network failure, ",[373,1184,1043],{},", HTTP ",[373,1187,1188],{},"408",[373,1190,1191],{},"429",", and HTTP ",[373,1194,1195],{},"5xx"," are ambiguous; investigate the original idempotency key manually",[1198,1199,1200],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":386,"searchDepth":400,"depth":400,"links":1202},[1203,1204,1207,1208,1209],{"id":368,"depth":400,"text":369},{"id":378,"depth":400,"text":379,"children":1205},[1206],{"id":827,"depth":428,"text":828},{"id":858,"depth":400,"text":859},{"id":997,"depth":400,"text":998},{"id":1159,"depth":400,"text":1160},"Debit contract for buy-side wallet mutations.","md",null,{},true,{"title":239,"description":1210},"uo47W9n51Wvsr1gM2A97yL97bJM5wic1i4zEUchcl-U",[1218,1220],{"title":235,"path":236,"stem":237,"description":1219,"children":-1},"Balance lookup contract for the operator wallet adapter.",{"title":243,"path":244,"stem":245,"description":1221,"children":-1},"Credit contract for Opinion sell\u002Fredemption payouts and Polyflight wins\u002Frefunds.",1789570133307]