[{"data":1,"prerenderedAt":2152},["ShallowReactive",2],{"navigation-en":3,"en:\u002Fdeposits\u002Fcreate":193,"en:\u002Fdeposits\u002Fcreate:surround":2147},[4,20,51,77,95,110,133,158,172],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Getting Started",false,"\u002Fgetting-started","1.getting-started",[10,15],{"title":11,"path":12,"stem":13,"icon":14},"Portal Preparation","\u002Fgetting-started\u002Fportal-setup","1.getting-started\u002F1.portal-setup","i-lucide-rocket",{"title":16,"path":17,"stem":18,"icon":19},"Quickstart","\u002Fgetting-started\u002Fquickstart","1.getting-started\u002F2.quickstart","i-lucide-zap",{"title":21,"icon":22,"path":23,"stem":24,"children":25,"page":6},"Core Concepts","i-lucide-key-round","\u002Fconcepts","2.concepts",[26,31,36,41,46],{"title":27,"path":28,"stem":29,"icon":30},"Authentication","\u002Fconcepts\u002Fauthentication","2.concepts\u002F1.authentication","i-lucide-fingerprint",{"title":32,"path":33,"stem":34,"icon":35},"IP Allowlist","\u002Fconcepts\u002Fip-allowlist","2.concepts\u002F2.ip-allowlist","i-lucide-shield-check",{"title":37,"path":38,"stem":39,"icon":40},"Money Format","\u002Fconcepts\u002Fmoney","2.concepts\u002F3.money","i-lucide-banknote",{"title":42,"path":43,"stem":44,"icon":45},"Idempotency","\u002Fconcepts\u002Fidempotency","2.concepts\u002F4.idempotency","i-lucide-repeat",{"title":47,"path":48,"stem":49,"icon":50},"Error envelope & codes","\u002Fconcepts\u002Ferrors","2.concepts\u002F5.errors","i-lucide-octagon-alert",{"title":52,"icon":53,"path":54,"stem":55,"children":56,"page":6},"Deposits","i-lucide-arrow-down-to-line","\u002Fdeposits","3.deposits",[57,62,67,72],{"title":58,"path":59,"stem":60,"icon":61},"Deposit Overview & State Machine","\u002Fdeposits\u002Foverview","3.deposits\u002F1.overview","i-lucide-info",{"title":63,"path":64,"stem":65,"icon":66},"Create a Deposit","\u002Fdeposits\u002Fcreate","3.deposits\u002F2.create","i-lucide-plus",{"title":68,"path":69,"stem":70,"icon":71},"Get a Deposit","\u002Fdeposits\u002Fretrieve","3.deposits\u002F3.retrieve","i-lucide-search",{"title":73,"path":74,"stem":75,"icon":76},"Cancel a Deposit","\u002Fdeposits\u002Fcancel","3.deposits\u002F4.cancel","i-lucide-x",{"title":78,"icon":79,"path":80,"stem":81,"children":82,"page":6},"Withdrawals","i-lucide-arrow-up-from-line","\u002Fwithdrawals","4.withdrawals",[83,87,91],{"title":84,"path":85,"stem":86,"icon":61},"Withdrawal Overview","\u002Fwithdrawals\u002Foverview","4.withdrawals\u002F1.overview",{"title":88,"path":89,"stem":90,"icon":66},"Create a Withdrawal","\u002Fwithdrawals\u002Fcreate","4.withdrawals\u002F2.create",{"title":92,"path":93,"stem":94,"icon":71},"Get & List Withdrawals","\u002Fwithdrawals\u002Fretrieve","4.withdrawals\u002F3.retrieve",{"title":96,"icon":97,"path":98,"stem":99,"children":100,"page":6},"Balance & Banks","i-lucide-wallet","\u002Fbalance","5.balance",[101,105],{"title":102,"path":103,"stem":104,"icon":97},"Get Balance","\u002Fbalance\u002Fget-balance","5.balance\u002F1.get-balance",{"title":106,"path":107,"stem":108,"icon":109},"Bank List","\u002Fbalance\u002Fbanks","5.balance\u002F2.banks","i-lucide-landmark",{"title":111,"icon":112,"path":113,"stem":114,"children":115,"page":6},"Webhooks","i-lucide-webhook","\u002Fwebhooks","6.webhooks",[116,120,125,129],{"title":117,"path":118,"stem":119,"icon":61},"Webhook Overview","\u002Fwebhooks\u002Foverview","6.webhooks\u002F1.overview",{"title":121,"path":122,"stem":123,"icon":124},"Event Catalog & Payloads","\u002Fwebhooks\u002Fevents","6.webhooks\u002F2.events","i-lucide-list",{"title":126,"path":127,"stem":128,"icon":35},"Signature Verification","\u002Fwebhooks\u002Fsignature-verification","6.webhooks\u002F3.signature-verification",{"title":130,"path":131,"stem":132,"icon":45},"Endpoint Requirements, Retries & SSRF","\u002Fwebhooks\u002Fdelivery-and-retries","6.webhooks\u002F4.delivery-and-retries",{"title":134,"icon":135,"path":136,"stem":137,"children":138,"page":6},"Sandbox","i-lucide-flask-conical","\u002Fsandbox","7.sandbox",[139,143,148,153],{"title":140,"path":141,"stem":142,"icon":61},"Test Mode Overview","\u002Fsandbox\u002Foverview","7.sandbox\u002F1.overview",{"title":144,"path":145,"stem":146,"icon":147},"Simulate Transfer","\u002Fsandbox\u002Fsimulate-transfer","7.sandbox\u002F2.simulate-transfer","i-lucide-banknote-arrow-down",{"title":149,"path":150,"stem":151,"icon":152},"Top-up & Reset","\u002Fsandbox\u002Ftop-up-and-reset","7.sandbox\u002F3.top-up-and-reset","i-lucide-rotate-ccw",{"title":154,"path":155,"stem":156,"icon":157},"End-to-End Test Flow","\u002Fsandbox\u002Fe2e-test-flow","7.sandbox\u002F4.e2e-test-flow","i-lucide-list-checks",{"title":159,"icon":14,"path":160,"stem":161,"children":162,"page":6},"Go-live","\u002Fgo-live","8.go-live",[163,167],{"title":164,"path":165,"stem":166,"icon":157},"Go-live Checklist","\u002Fgo-live\u002Fchecklist","8.go-live\u002F1.checklist",{"title":168,"path":169,"stem":170,"icon":171},"Contact & Support","\u002Fgo-live\u002Fsupport","8.go-live\u002F2.support","i-lucide-life-buoy",{"title":173,"icon":174,"path":175,"stem":176,"children":177,"page":6},"Reference","i-lucide-book-marked","\u002Freference","9.reference",[178,183,188],{"title":179,"path":180,"stem":181,"icon":182},"Endpoint Catalog","\u002Freference\u002Fendpoints","9.reference\u002F1.endpoints","i-lucide-table",{"title":184,"path":185,"stem":186,"icon":187},"Code Samples (Node.js & PHP)","\u002Freference\u002Fcode-samples","9.reference\u002F2.code-samples","i-lucide-code",{"title":189,"path":190,"stem":191,"icon":192},"Status Values & Glossary","\u002Freference\u002Fglossary-states","9.reference\u002F3.glossary-states","i-lucide-book-a",{"id":194,"title":63,"badge":195,"body":196,"description":2140,"extension":2141,"links":2142,"meta":2143,"method":2142,"navigation":2144,"path":64,"seo":2145,"stem":65,"__hash__":2146},"docs_en\u002F3.deposits\u002F2.create.md","POST",{"type":197,"value":198,"toc":2129},"minimark",[199,206,238,259,264,285,324,340,344,564,588,605,609,614,787,794,868,902,906,913,923,940,980,984,995,1089,1101,1105,1117,1280,1284,1462,1466,1473,1785,1794,2088,2121,2125],[200,201,202],"p",{},[203,204,205],"code",{},"POST \u002Fv1\u002Fdeposits",[200,207,208,209,212,213,216,217,220,221,224,225,228,229,233,234,237],{},"Create a deposit so a customer can transfer money in. The response returns an ",[203,210,211],{},"expected_amount"," (the exact amount the customer must transfer) plus a ",[203,214,215],{},"pay_to"," destination \u002F ",[203,218,219],{},"qr_payload",", with status ",[203,222,223],{},"PENDING",". This call must be HMAC-signed (see ",[226,227,27],"a",{"href":28},") and ",[230,231,232],"strong",{},"requires"," an ",[203,235,236],{},"Idempotency-Key"," header.",[239,240,241],"warning",{},[200,242,243,244,247,248,251,252,255,256,258],{},"Every money field on the wire is a ",[230,245,246],{},"baht string with 2 decimals",", e.g. ",[203,249,250],{},"\"500.00\""," — never a number, never satang. Sending ",[203,253,254],{},"50000"," for ",[203,257,250],{}," is the 100× bug.",[260,261,263],"h2",{"id":262},"idempotency-key-mandatory-when-creating","Idempotency-Key (mandatory when creating)",[200,265,266,268,269,271,272,274,275,268,278,281,282,284],{},[203,267,205],{}," ",[230,270,232],{}," the ",[203,273,236],{}," header (if omitted → ",[203,276,277],{},"400",[203,279,280],{},"IDEMPOTENCY_KEY_REQUIRED","). See the mechanism and replay behavior under ",[226,283,42],{"href":43},".",[286,287,288,306,321],"ul",{},[289,290,291,294,295,298,299,247,302,305],"li",{},[230,292,293],{},"Any unique value"," — the system ",[230,296,297],{},"does not enforce a format\u002Flength",", only that it is non-empty. ",[230,300,301],{},"UUID v4 recommended",[203,303,304],{},"9f1c2e7a-3b4d-4f8a-9c10-2b6d5e7f8a90"," (or map it to your order id, as long as it is unique per record).",[289,307,308,309,312,313,316,317,320],{},"The system caches the key's result for ",[230,310,311],{},"24 hours"," — retrying with the ",[230,314,315],{},"same key + same body"," returns the ",[230,318,319],{},"same deposit"," (no duplicate, no double amount-slot reservation).",[289,322,323],{},"The idempotency namespace is separated by mode (live\u002Ftest) — the same key in live and test do not collide.",[325,326,327],"caution",{},[200,328,329,330,333,334,268,337,284],{},"On a network-timeout retry you must use the ",[230,331,332],{},"exact same key + same body"," to prevent a duplicate deposit (which wastes an amount slot). Same key but a different body → ",[203,335,336],{},"422",[203,338,339],{},"IDEMPOTENCY_KEY_MISMATCH",[260,341,343],{"id":342},"request-body","Request body",[345,346,347,366],"table",{},[348,349,350],"thead",{},[351,352,353,357,360,363],"tr",{},[354,355,356],"th",{},"Field",[354,358,359],{},"Type",[354,361,362],{},"Required",[354,364,365],{},"Meaning",[367,368,369,396,425,455,484,500,516,535,549],"tbody",{},[351,370,371,377,380,385],{},[372,373,374],"td",{},[203,375,376],{},"amount",[372,378,379],{},"string (baht)",[372,381,382],{},[230,383,384],{},"required",[372,386,387,388,390,391,268,393,284],{},"The amount you want the customer to pay, e.g. ",[203,389,250],{}," (baht string, max 2 decimals). Too small\u002Flarge vs the limit is rejected with ",[203,392,336],{},[203,394,395],{},"INVALID_AMOUNT",[351,397,398,403,406,409],{},[372,399,400],{},[203,401,402],{},"currency",[372,404,405],{},"string",[372,407,408],{},"optional",[372,410,411,412,415,416,419,420,268,422,284],{},"Currency — only ",[203,413,414],{},"\"THB\""," is supported; empty = default ",[203,417,418],{},"THB","; any other value → ",[203,421,336],{},[203,423,424],{},"INVALID_CURRENCY",[351,426,427,432,434,436],{},[372,428,429],{},[203,430,431],{},"payment_method_type",[372,433,405],{},[372,435,408],{},[372,437,438,439,442,443,446,447,419,450,268,452,284],{},"Channel: ",[203,440,441],{},"\"PROMPTPAY_QR\""," or ",[203,444,445],{},"\"BANK_TRANSFER\"","; empty = default ",[203,448,449],{},"PROMPTPAY_QR",[203,451,336],{},[203,453,454],{},"INVALID_PAYMENT_METHOD",[351,456,457,462,464,468],{},[372,458,459],{},[203,460,461],{},"payer_bank_provider",[372,463,405],{},[372,465,466],{},[230,467,384],{},[372,469,470,471,474,475,478,479,268,481,284],{},"The customer's source bank (bank code\u002Falias, e.g. ",[203,472,473],{},"\"KBANK\"",", ",[203,476,477],{},"\"SCB\"",") — used by the matcher for anti-fraud checks; an unknown code → ",[203,480,336],{},[203,482,483],{},"INVALID_BANK",[351,485,486,491,493,497],{},[372,487,488],{},[203,489,490],{},"payer_bank_account_name",[372,492,405],{},[372,494,495],{},[230,496,384],{},[372,498,499],{},"The paying customer's account name (declared by the merchant).",[351,501,502,507,509,513],{},[372,503,504],{},[203,505,506],{},"payer_bank_account_number",[372,508,405],{},[372,510,511],{},[230,512,384],{},[372,514,515],{},"The paying customer's account number.",[351,517,518,523,526,528],{},[372,519,520],{},[203,521,522],{},"additional_data",[372,524,525],{},"object",[372,527,408],{},[372,529,530,531,534],{},"Extra metadata with one field: ",[203,532,533],{},"description"," (string), e.g. an invoice number.",[351,536,537,542,544,546],{},[372,538,539],{},[203,540,541],{},"user_ref",[372,543,405],{},[372,545,408],{},[372,547,548],{},"Merchant-side reference (e.g. order id \u002F customer id) — usable to search later.",[351,550,551,556,559,561],{},[372,552,553],{},[203,554,555],{},"callback_meta",[372,557,558],{},"object (JSON)",[372,560,408],{},[372,562,563],{},"JSON data you want attached to the record (stored with the deposit).",[325,565,566],{},[200,567,568,268,571,474,573,474,575,577,578,581,582,268,584,587],{},[230,569,570],{},"payer is required for both methods:",[203,572,461],{},[203,574,490],{},[203,576,506],{}," must all be sent for ",[230,579,580],{},"both PROMPTPAY_QR and BANK_TRANSFER",". If any is missing → ",[203,583,336],{},[203,585,586],{},"PAYER_REQUIRED",". The system uses this to verify that \"whoever actually transferred the money\" matches the customer the merchant declared (anti-fraud) — the same for both methods.",[589,590,591],"note",{},[200,592,593,596,597,600,601,604],{},[230,594,595],{},"Where mode (live\u002Ftest) comes from:"," you don't send it in the body — the system derives it from the signing API key (",[203,598,599],{},"unk_live_..."," = live, ",[203,602,603],{},"unk_test_..."," = sandbox).",[260,606,608],{"id":607},"response-body","Response body",[200,610,611,612,284],{},"After creation the status is always ",[203,613,223],{},[345,615,616,626],{},[348,617,618],{},[351,619,620,622,624],{},[354,621,356],{},[354,623,359],{},[354,625,365],{},[367,627,628,644,655,672,688,700,715,729,740,762,775],{},[351,629,630,635,638],{},[372,631,632],{},[203,633,634],{},"id",[372,636,637],{},"string (uuid)",[372,639,640,643],{},[230,641,642],{},"deposit id"," — keep it to check status \u002F cancel.",[351,645,646,650,652],{},[372,647,648],{},[203,649,376],{},[372,651,379],{},[372,653,654],{},"The amount the merchant requested (echoed back).",[351,656,657,661,663],{},[372,658,659],{},[203,660,211],{},[372,662,379],{},[372,664,665,668,669,671],{},[230,666,667],{},"The exact amount the customer must transfer"," (see below) — usually differs from ",[203,670,376],{}," by a small satang remainder.",[351,673,674,679,681],{},[372,675,676],{},[203,677,678],{},"matched_amount",[372,680,379],{},[372,682,683,684,687],{},"The amount actually received — null\u002Fabsent until ",[203,685,686],{},"CREDITED"," (not present at creation).",[351,689,690,694,696],{},[372,691,692],{},[203,693,402],{},[372,695,405],{},[372,697,698,284],{},[203,699,414],{},[351,701,702,707,709],{},[372,703,704],{},[203,705,706],{},"status",[372,708,405],{},[372,710,711,712,284],{},"Status — at creation, ",[203,713,714],{},"\"PENDING\"",[351,716,717,721,723],{},[372,718,719],{},[203,720,431],{},[372,722,405],{},[372,724,725,442,727,284],{},[203,726,441],{},[203,728,445],{},[351,730,731,735,737],{},[372,732,733],{},[203,734,215],{},[372,736,525],{},[372,738,739],{},"The destination account\u002Fchannel the customer transfers into (see sub-table).",[351,741,742,747,749],{},[372,743,744],{},[203,745,746],{},"payer",[372,748,525],{},[372,750,751,752,474,755,474,758,761],{},"Echo of the payer the merchant declared (full: ",[203,753,754],{},"bank",[203,756,757],{},"account_no",[203,759,760],{},"name",").",[351,763,764,769,772],{},[372,765,766],{},[203,767,768],{},"display_expires_at",[372,770,771],{},"string (RFC3339 timestamp)",[372,773,774],{},"When the QR \u002F payment page display expires.",[351,776,777,782,784],{},[372,778,779],{},[203,780,781],{},"match_window_until",[372,783,771],{},[372,785,786],{},"The last moment the system will still match the amount (grace included).",[200,788,789],{},[230,790,791,793],{},[203,792,215],{}," (object):",[345,795,796,807],{},[348,797,798],{},[351,799,800,802,805],{},[354,801,356],{},[354,803,804],{},"Condition",[354,806,365],{},[367,808,809,821,833,847],{},[351,810,811,815,818],{},[372,812,813],{},[203,814,754],{},[372,816,817],{},"always",[372,819,820],{},"Destination bank.",[351,822,823,828,830],{},[372,824,825],{},[203,826,827],{},"account_holder",[372,829,817],{},[372,831,832],{},"Destination account name.",[351,834,835,839,844],{},[372,836,837],{},[203,838,757],{},[372,840,841],{},[230,842,843],{},"BANK_TRANSFER only",[372,845,846],{},"The full destination account number to transfer into (PROMPTPAY_QR does not include this field).",[351,848,849,853,858],{},[372,850,851],{},[203,852,219],{},[372,854,855],{},[230,856,857],{},"PROMPTPAY_QR only",[372,859,860,861,864,865,867],{},"The EMVCo string used to render the PromptPay QR with a ",[230,862,863],{},"fixed amount"," = ",[203,866,211],{}," (scanning fills the exact amount automatically).",[589,869,870],{},[200,871,872,875,876,878,879,881,882,885,886,889,890,889,893,896,897,284],{},[230,873,874],{},"PROMPTPAY_QR:"," use ",[203,877,219],{}," to render the QR for the customer to scan — it pays into the system's PromptPay proxy (not a raw account number) and already embeds ",[203,880,211],{},", so the customer transfers the correct amount automatically.\n",[230,883,884],{},"BANK_TRANSFER:"," no QR — show ",[203,887,888],{},"pay_to.bank"," + ",[203,891,892],{},"pay_to.account_no",[203,894,895],{},"pay_to.account_holder"," for the customer to transfer manually, and ",[230,898,899,900],{},"remind them to enter exactly ",[203,901,211],{},[903,904],"placeholder-image",{"subject":905},"example payment page showing a PromptPay QR + the expected_amount for the customer to scan",[260,907,909,910,912],{"id":908},"why-expected_amount-has-a-satang-remainder","Why ",[203,911,211],{}," has a satang remainder",[200,914,915,916,922],{},"The system matches inbound money by ",[230,917,918,919,921],{},"comparing the amount arriving in the account to ",[203,920,211],{}," exactly",", so it can tell which inbound payment belongs to which deposit (many customers may transfer into the same pool account at nearly the same time).",[200,924,925,926,864,928,930,931,247,934,864,936,939],{},"So when a merchant requests ",[203,927,376],{},[203,929,250],{},", the system ",[230,932,933],{},"adds a small satang remainder to make a value unique among other outstanding deposits",[203,935,211],{},[203,937,938],{},"\"500.37\""," (a remainder of 1–99 satang, and if truly necessary the system may nudge it up by a small whole baht). This value is the deposit's \"signature amount\".",[325,941,942,954,968],{},[200,943,944,945,950,951,953],{},"The customer ",[230,946,947,948],{},"must transfer the exact ",[203,949,211],{}," (not ",[203,952,376],{},") for the system to match and credit it.",[286,955,956,962],{},[289,957,958,959,961],{},"PROMPTPAY_QR: with ",[203,960,219],{}," the amount is embedded automatically — the customer doesn't type it (recommended).",[289,963,964,965,967],{},"BANK_TRANSFER: show ",[203,966,211],{}," clearly and remind the customer to enter it down to the satang.",[200,969,970,971,973,974,976,977,284],{},"If the customer transfers the wrong amount (e.g. ",[203,972,250],{}," instead of ",[203,975,938],{},"), the system may fail to match and the deposit will expire as ",[203,978,979],{},"EXPIRED",[260,981,983],{"id":982},"one-customer-one-active-deposit-rule","\"One customer, one active deposit\" rule",[200,985,986,987,889,989,991,992,994],{},"The same customer (identified by ",[203,988,461],{},[203,990,506],{},") can have only one ",[203,993,223],{}," deposit at a time. Creating another while one is still outstanding returns:",[996,997,1002],"pre",{"className":998,"code":999,"language":1000,"meta":1001,"style":1001},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{ \"code\": \"DEPOSIT_ALREADY_ACTIVE\", \"message\": \"this customer already has an active deposit — cancel it or wait for it to expire\", \"details\": { \"deposit_id\": \"\u003Cexisting id>\" } }\n","json","",[203,1003,1004],{"__ignoreMap":1001},[1005,1006,1009,1013,1016,1019,1022,1025,1027,1031,1033,1036,1038,1041,1043,1045,1047,1050,1052,1054,1056,1059,1061,1063,1066,1068,1072,1074,1076,1078,1081,1083,1086],"span",{"class":1007,"line":1008},"line",1,[1005,1010,1012],{"class":1011},"sMK4o","{",[1005,1014,1015],{"class":1011}," \"",[1005,1017,203],{"class":1018},"spNyl",[1005,1020,1021],{"class":1011},"\"",[1005,1023,1024],{"class":1011},":",[1005,1026,1015],{"class":1011},[1005,1028,1030],{"class":1029},"sfazB","DEPOSIT_ALREADY_ACTIVE",[1005,1032,1021],{"class":1011},[1005,1034,1035],{"class":1011},",",[1005,1037,1015],{"class":1011},[1005,1039,1040],{"class":1018},"message",[1005,1042,1021],{"class":1011},[1005,1044,1024],{"class":1011},[1005,1046,1015],{"class":1011},[1005,1048,1049],{"class":1029},"this customer already has an active deposit — cancel it or wait for it to expire",[1005,1051,1021],{"class":1011},[1005,1053,1035],{"class":1011},[1005,1055,1015],{"class":1011},[1005,1057,1058],{"class":1018},"details",[1005,1060,1021],{"class":1011},[1005,1062,1024],{"class":1011},[1005,1064,1065],{"class":1011}," {",[1005,1067,1015],{"class":1011},[1005,1069,1071],{"class":1070},"sBMFI","deposit_id",[1005,1073,1021],{"class":1011},[1005,1075,1024],{"class":1011},[1005,1077,1015],{"class":1011},[1005,1079,1080],{"class":1029},"\u003Cexisting id>",[1005,1082,1021],{"class":1011},[1005,1084,1085],{"class":1011}," }",[1005,1087,1088],{"class":1011}," }\n",[200,1090,1091,1092,1094,1095,1100],{},"Use the returned ",[203,1093,1071],{}," with ",[226,1096,1097],{"href":69},[203,1098,1099],{},"GET \u002Fv1\u002Fdeposits\u002F:id"," to re-fetch the existing payment instructions, or cancel the existing one first.",[260,1102,1104],{"id":1103},"error-codes","Error codes",[200,1106,1107,1108,1110,1111,1113,1114,284],{},"Common errors for ",[203,1109,205],{},". Branch on the stable ",[203,1112,203],{}," — see the full envelope under ",[226,1115,1116],{"href":48},"Error Envelope & Codes",[345,1118,1119,1131],{},[348,1120,1121],{},[351,1122,1123,1126,1128],{},[354,1124,1125],{},"HTTP",[354,1127,203],{},[354,1129,1130],{},"Cause",[367,1132,1133,1147,1158,1169,1180,1191,1204,1218,1231,1243,1255,1268],{},[351,1134,1135,1137,1141],{},[372,1136,277],{},[372,1138,1139],{},[203,1140,280],{},[372,1142,1143,1144,1146],{},"The ",[203,1145,236],{}," header was not sent.",[351,1148,1149,1151,1155],{},[372,1150,336],{},[372,1152,1153],{},[203,1154,395],{},[372,1156,1157],{},"Malformed amount \u002F more than 2 decimals \u002F out of the min–max range.",[351,1159,1160,1162,1166],{},[372,1161,336],{},[372,1163,1164],{},[203,1165,424],{},[372,1167,1168],{},"currency is not THB.",[351,1170,1171,1173,1177],{},[372,1172,336],{},[372,1174,1175],{},[203,1176,454],{},[372,1178,1179],{},"method is not PROMPTPAY_QR\u002FBANK_TRANSFER.",[351,1181,1182,1184,1188],{},[372,1183,336],{},[372,1185,1186],{},[203,1187,586],{},[372,1189,1190],{},"payer data was incomplete.",[351,1192,1193,1195,1199],{},[372,1194,336],{},[372,1196,1197],{},[203,1198,483],{},[372,1200,1201,1203],{},[203,1202,461],{}," is unknown.",[351,1205,1206,1208,1212],{},[372,1207,336],{},[372,1209,1210],{},[203,1211,339],{},[372,1213,1214,1215,1217],{},"Same ",[203,1216,236],{}," reused with a different body.",[351,1219,1220,1223,1228],{},[372,1221,1222],{},"403",[372,1224,1225],{},[203,1226,1227],{},"MERCHANT_SUSPENDED",[372,1229,1230],{},"The merchant (or parent entity) is suspended.",[351,1232,1233,1236,1240],{},[372,1234,1235],{},"409",[372,1237,1238],{},[203,1239,1030],{},[372,1241,1242],{},"This customer already has an outstanding deposit.",[351,1244,1245,1247,1252],{},[372,1246,1235],{},[372,1248,1249],{},[203,1250,1251],{},"DEPOSIT_AMOUNT_POOL_EXHAUSTED",[372,1253,1254],{},"The amount slot pool is temporarily full (retry).",[351,1256,1257,1260,1265],{},[372,1258,1259],{},"503",[372,1261,1262],{},[203,1263,1264],{},"NO_QR_ACCOUNT",[372,1266,1267],{},"No account supports PromptPay QR (try BANK_TRANSFER).",[351,1269,1270,1272,1277],{},[372,1271,1259],{},[372,1273,1274],{},[203,1275,1276],{},"NO_ALLOWED_ACCOUNT",[372,1278,1279],{},"No usable destination account.",[260,1281,1283],{"id":1282},"example-request","Example request",[996,1285,1290],{"className":1286,"code":1287,"filename":1288,"language":1289,"meta":1001,"style":1001},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# X-Signature = hex( HMAC-SHA256( secret, \"POST\\n\u002Fv1\u002Fdeposits\\n{TS}\\n{SHA256_HEX(body)}\" ) )\ncurl -X POST 'https:\u002F\u002Fapi.unkpay.co\u002Fv1\u002Fdeposits' \\\n  -H 'X-Api-Key: unk_live_xxxxxxxxxxxx' \\\n  -H 'X-Timestamp: 1718790000' \\\n  -H 'X-Signature: \u003Chex hmac-sha256>' \\\n  -H 'Idempotency-Key: order-2026-0001' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\n    \"amount\": \"500.00\",\n    \"currency\": \"THB\",\n    \"payment_method_type\": \"PROMPTPAY_QR\",\n    \"payer_bank_provider\": \"KBANK\",\n    \"payer_bank_account_name\": \"Somchai Jaidee\",\n    \"payer_bank_account_number\": \"9876543210\",\n    \"additional_data\": { \"description\": \"inv #42\" },\n    \"user_ref\": \"ord-1\"\n  }'\n","cURL","bash",[203,1291,1292,1298,1323,1338,1352,1366,1380,1394,1405,1411,1417,1423,1429,1435,1441,1447,1453],{"__ignoreMap":1001},[1005,1293,1294],{"class":1007,"line":1008},[1005,1295,1297],{"class":1296},"sHwdD","# X-Signature = hex( HMAC-SHA256( secret, \"POST\\n\u002Fv1\u002Fdeposits\\n{TS}\\n{SHA256_HEX(body)}\" ) )\n",[1005,1299,1301,1304,1307,1310,1313,1316,1319],{"class":1007,"line":1300},2,[1005,1302,1303],{"class":1070},"curl",[1005,1305,1306],{"class":1029}," -X",[1005,1308,1309],{"class":1029}," POST",[1005,1311,1312],{"class":1011}," '",[1005,1314,1315],{"class":1029},"https:\u002F\u002Fapi.unkpay.co\u002Fv1\u002Fdeposits",[1005,1317,1318],{"class":1011},"'",[1005,1320,1322],{"class":1321},"sTEyZ"," \\\n",[1005,1324,1326,1329,1331,1334,1336],{"class":1007,"line":1325},3,[1005,1327,1328],{"class":1029},"  -H",[1005,1330,1312],{"class":1011},[1005,1332,1333],{"class":1029},"X-Api-Key: unk_live_xxxxxxxxxxxx",[1005,1335,1318],{"class":1011},[1005,1337,1322],{"class":1321},[1005,1339,1341,1343,1345,1348,1350],{"class":1007,"line":1340},4,[1005,1342,1328],{"class":1029},[1005,1344,1312],{"class":1011},[1005,1346,1347],{"class":1029},"X-Timestamp: 1718790000",[1005,1349,1318],{"class":1011},[1005,1351,1322],{"class":1321},[1005,1353,1355,1357,1359,1362,1364],{"class":1007,"line":1354},5,[1005,1356,1328],{"class":1029},[1005,1358,1312],{"class":1011},[1005,1360,1361],{"class":1029},"X-Signature: \u003Chex hmac-sha256>",[1005,1363,1318],{"class":1011},[1005,1365,1322],{"class":1321},[1005,1367,1369,1371,1373,1376,1378],{"class":1007,"line":1368},6,[1005,1370,1328],{"class":1029},[1005,1372,1312],{"class":1011},[1005,1374,1375],{"class":1029},"Idempotency-Key: order-2026-0001",[1005,1377,1318],{"class":1011},[1005,1379,1322],{"class":1321},[1005,1381,1383,1385,1387,1390,1392],{"class":1007,"line":1382},7,[1005,1384,1328],{"class":1029},[1005,1386,1312],{"class":1011},[1005,1388,1389],{"class":1029},"Content-Type: application\u002Fjson",[1005,1391,1318],{"class":1011},[1005,1393,1322],{"class":1321},[1005,1395,1397,1400,1402],{"class":1007,"line":1396},8,[1005,1398,1399],{"class":1029},"  -d",[1005,1401,1312],{"class":1011},[1005,1403,1404],{"class":1029},"{\n",[1005,1406,1408],{"class":1007,"line":1407},9,[1005,1409,1410],{"class":1029},"    \"amount\": \"500.00\",\n",[1005,1412,1414],{"class":1007,"line":1413},10,[1005,1415,1416],{"class":1029},"    \"currency\": \"THB\",\n",[1005,1418,1420],{"class":1007,"line":1419},11,[1005,1421,1422],{"class":1029},"    \"payment_method_type\": \"PROMPTPAY_QR\",\n",[1005,1424,1426],{"class":1007,"line":1425},12,[1005,1427,1428],{"class":1029},"    \"payer_bank_provider\": \"KBANK\",\n",[1005,1430,1432],{"class":1007,"line":1431},13,[1005,1433,1434],{"class":1029},"    \"payer_bank_account_name\": \"Somchai Jaidee\",\n",[1005,1436,1438],{"class":1007,"line":1437},14,[1005,1439,1440],{"class":1029},"    \"payer_bank_account_number\": \"9876543210\",\n",[1005,1442,1444],{"class":1007,"line":1443},15,[1005,1445,1446],{"class":1029},"    \"additional_data\": { \"description\": \"inv #42\" },\n",[1005,1448,1450],{"class":1007,"line":1449},16,[1005,1451,1452],{"class":1029},"    \"user_ref\": \"ord-1\"\n",[1005,1454,1456,1459],{"class":1007,"line":1455},17,[1005,1457,1458],{"class":1029},"  }",[1005,1460,1461],{"class":1011},"'\n",[260,1463,1465],{"id":1464},"example-response","Example response",[200,1467,1468,1469,1472],{},"Example response (",[203,1470,1471],{},"201 Created",") for PROMPTPAY_QR:",[996,1474,1476],{"className":998,"code":1475,"language":1000,"meta":1001,"style":1001},"{\n  \"id\": \"8f2b1c4e-7a90-4d2f-9b3a-1c2d3e4f5a6b\",\n  \"amount\": \"500.00\",\n  \"expected_amount\": \"500.37\",\n  \"currency\": \"THB\",\n  \"status\": \"PENDING\",\n  \"payment_method_type\": \"PROMPTPAY_QR\",\n  \"pay_to\": {\n    \"bank\": \"SCB\",\n    \"account_holder\": \"ACME Holder\",\n    \"qr_payload\": \"00020101021229370016A0000006770101110213...\"\n  },\n  \"payer\": {\n    \"bank\": \"KBANK\",\n    \"account_no\": \"9876543210\",\n    \"name\": \"Somchai Jaidee\"\n  },\n  \"display_expires_at\": \"2026-06-19T10:05:00Z\",\n  \"match_window_until\": \"2026-06-19T10:07:00Z\"\n}\n",[203,1477,1478,1482,1503,1522,1541,1559,1577,1595,1608,1628,1647,1665,1670,1682,1701,1720,1737,1741,1761,1779],{"__ignoreMap":1001},[1005,1479,1480],{"class":1007,"line":1008},[1005,1481,1404],{"class":1011},[1005,1483,1484,1487,1489,1491,1493,1495,1498,1500],{"class":1007,"line":1300},[1005,1485,1486],{"class":1011},"  \"",[1005,1488,634],{"class":1018},[1005,1490,1021],{"class":1011},[1005,1492,1024],{"class":1011},[1005,1494,1015],{"class":1011},[1005,1496,1497],{"class":1029},"8f2b1c4e-7a90-4d2f-9b3a-1c2d3e4f5a6b",[1005,1499,1021],{"class":1011},[1005,1501,1502],{"class":1011},",\n",[1005,1504,1505,1507,1509,1511,1513,1515,1518,1520],{"class":1007,"line":1325},[1005,1506,1486],{"class":1011},[1005,1508,376],{"class":1018},[1005,1510,1021],{"class":1011},[1005,1512,1024],{"class":1011},[1005,1514,1015],{"class":1011},[1005,1516,1517],{"class":1029},"500.00",[1005,1519,1021],{"class":1011},[1005,1521,1502],{"class":1011},[1005,1523,1524,1526,1528,1530,1532,1534,1537,1539],{"class":1007,"line":1340},[1005,1525,1486],{"class":1011},[1005,1527,211],{"class":1018},[1005,1529,1021],{"class":1011},[1005,1531,1024],{"class":1011},[1005,1533,1015],{"class":1011},[1005,1535,1536],{"class":1029},"500.37",[1005,1538,1021],{"class":1011},[1005,1540,1502],{"class":1011},[1005,1542,1543,1545,1547,1549,1551,1553,1555,1557],{"class":1007,"line":1354},[1005,1544,1486],{"class":1011},[1005,1546,402],{"class":1018},[1005,1548,1021],{"class":1011},[1005,1550,1024],{"class":1011},[1005,1552,1015],{"class":1011},[1005,1554,418],{"class":1029},[1005,1556,1021],{"class":1011},[1005,1558,1502],{"class":1011},[1005,1560,1561,1563,1565,1567,1569,1571,1573,1575],{"class":1007,"line":1368},[1005,1562,1486],{"class":1011},[1005,1564,706],{"class":1018},[1005,1566,1021],{"class":1011},[1005,1568,1024],{"class":1011},[1005,1570,1015],{"class":1011},[1005,1572,223],{"class":1029},[1005,1574,1021],{"class":1011},[1005,1576,1502],{"class":1011},[1005,1578,1579,1581,1583,1585,1587,1589,1591,1593],{"class":1007,"line":1382},[1005,1580,1486],{"class":1011},[1005,1582,431],{"class":1018},[1005,1584,1021],{"class":1011},[1005,1586,1024],{"class":1011},[1005,1588,1015],{"class":1011},[1005,1590,449],{"class":1029},[1005,1592,1021],{"class":1011},[1005,1594,1502],{"class":1011},[1005,1596,1597,1599,1601,1603,1605],{"class":1007,"line":1396},[1005,1598,1486],{"class":1011},[1005,1600,215],{"class":1018},[1005,1602,1021],{"class":1011},[1005,1604,1024],{"class":1011},[1005,1606,1607],{"class":1011}," {\n",[1005,1609,1610,1613,1615,1617,1619,1621,1624,1626],{"class":1007,"line":1407},[1005,1611,1612],{"class":1011},"    \"",[1005,1614,754],{"class":1070},[1005,1616,1021],{"class":1011},[1005,1618,1024],{"class":1011},[1005,1620,1015],{"class":1011},[1005,1622,1623],{"class":1029},"SCB",[1005,1625,1021],{"class":1011},[1005,1627,1502],{"class":1011},[1005,1629,1630,1632,1634,1636,1638,1640,1643,1645],{"class":1007,"line":1413},[1005,1631,1612],{"class":1011},[1005,1633,827],{"class":1070},[1005,1635,1021],{"class":1011},[1005,1637,1024],{"class":1011},[1005,1639,1015],{"class":1011},[1005,1641,1642],{"class":1029},"ACME Holder",[1005,1644,1021],{"class":1011},[1005,1646,1502],{"class":1011},[1005,1648,1649,1651,1653,1655,1657,1659,1662],{"class":1007,"line":1419},[1005,1650,1612],{"class":1011},[1005,1652,219],{"class":1070},[1005,1654,1021],{"class":1011},[1005,1656,1024],{"class":1011},[1005,1658,1015],{"class":1011},[1005,1660,1661],{"class":1029},"00020101021229370016A0000006770101110213...",[1005,1663,1664],{"class":1011},"\"\n",[1005,1666,1667],{"class":1007,"line":1425},[1005,1668,1669],{"class":1011},"  },\n",[1005,1671,1672,1674,1676,1678,1680],{"class":1007,"line":1431},[1005,1673,1486],{"class":1011},[1005,1675,746],{"class":1018},[1005,1677,1021],{"class":1011},[1005,1679,1024],{"class":1011},[1005,1681,1607],{"class":1011},[1005,1683,1684,1686,1688,1690,1692,1694,1697,1699],{"class":1007,"line":1437},[1005,1685,1612],{"class":1011},[1005,1687,754],{"class":1070},[1005,1689,1021],{"class":1011},[1005,1691,1024],{"class":1011},[1005,1693,1015],{"class":1011},[1005,1695,1696],{"class":1029},"KBANK",[1005,1698,1021],{"class":1011},[1005,1700,1502],{"class":1011},[1005,1702,1703,1705,1707,1709,1711,1713,1716,1718],{"class":1007,"line":1443},[1005,1704,1612],{"class":1011},[1005,1706,757],{"class":1070},[1005,1708,1021],{"class":1011},[1005,1710,1024],{"class":1011},[1005,1712,1015],{"class":1011},[1005,1714,1715],{"class":1029},"9876543210",[1005,1717,1021],{"class":1011},[1005,1719,1502],{"class":1011},[1005,1721,1722,1724,1726,1728,1730,1732,1735],{"class":1007,"line":1449},[1005,1723,1612],{"class":1011},[1005,1725,760],{"class":1070},[1005,1727,1021],{"class":1011},[1005,1729,1024],{"class":1011},[1005,1731,1015],{"class":1011},[1005,1733,1734],{"class":1029},"Somchai Jaidee",[1005,1736,1664],{"class":1011},[1005,1738,1739],{"class":1007,"line":1455},[1005,1740,1669],{"class":1011},[1005,1742,1744,1746,1748,1750,1752,1754,1757,1759],{"class":1007,"line":1743},18,[1005,1745,1486],{"class":1011},[1005,1747,768],{"class":1018},[1005,1749,1021],{"class":1011},[1005,1751,1024],{"class":1011},[1005,1753,1015],{"class":1011},[1005,1755,1756],{"class":1029},"2026-06-19T10:05:00Z",[1005,1758,1021],{"class":1011},[1005,1760,1502],{"class":1011},[1005,1762,1764,1766,1768,1770,1772,1774,1777],{"class":1007,"line":1763},19,[1005,1765,1486],{"class":1011},[1005,1767,781],{"class":1018},[1005,1769,1021],{"class":1011},[1005,1771,1024],{"class":1011},[1005,1773,1015],{"class":1011},[1005,1775,1776],{"class":1029},"2026-06-19T10:07:00Z",[1005,1778,1664],{"class":1011},[1005,1780,1782],{"class":1007,"line":1781},20,[1005,1783,1784],{"class":1011},"}\n",[200,1786,1787,1788,1790,1791,1793],{},"Example response for BANK_TRANSFER (has ",[203,1789,757],{},", no ",[203,1792,219],{},"):",[996,1795,1797],{"className":998,"code":1796,"language":1000,"meta":1001,"style":1001},"{\n  \"id\": \"1a2b3c4d-...\",\n  \"amount\": \"500.00\",\n  \"expected_amount\": \"500.37\",\n  \"currency\": \"THB\",\n  \"status\": \"PENDING\",\n  \"payment_method_type\": \"BANK_TRANSFER\",\n  \"pay_to\": {\n    \"bank\": \"SCB\",\n    \"account_no\": \"1234567890\",\n    \"account_holder\": \"ACME Holder\"\n  },\n  \"payer\": {\n    \"bank\": \"KBANK\",\n    \"account_no\": \"9876543210\",\n    \"name\": \"Somchai Jaidee\"\n  },\n  \"display_expires_at\": \"2026-06-19T10:05:00Z\",\n  \"match_window_until\": \"2026-06-19T10:07:00Z\"\n}\n",[203,1798,1799,1803,1822,1840,1858,1876,1894,1913,1925,1943,1962,1978,1982,1994,2012,2030,2046,2050,2068,2084],{"__ignoreMap":1001},[1005,1800,1801],{"class":1007,"line":1008},[1005,1802,1404],{"class":1011},[1005,1804,1805,1807,1809,1811,1813,1815,1818,1820],{"class":1007,"line":1300},[1005,1806,1486],{"class":1011},[1005,1808,634],{"class":1018},[1005,1810,1021],{"class":1011},[1005,1812,1024],{"class":1011},[1005,1814,1015],{"class":1011},[1005,1816,1817],{"class":1029},"1a2b3c4d-...",[1005,1819,1021],{"class":1011},[1005,1821,1502],{"class":1011},[1005,1823,1824,1826,1828,1830,1832,1834,1836,1838],{"class":1007,"line":1325},[1005,1825,1486],{"class":1011},[1005,1827,376],{"class":1018},[1005,1829,1021],{"class":1011},[1005,1831,1024],{"class":1011},[1005,1833,1015],{"class":1011},[1005,1835,1517],{"class":1029},[1005,1837,1021],{"class":1011},[1005,1839,1502],{"class":1011},[1005,1841,1842,1844,1846,1848,1850,1852,1854,1856],{"class":1007,"line":1340},[1005,1843,1486],{"class":1011},[1005,1845,211],{"class":1018},[1005,1847,1021],{"class":1011},[1005,1849,1024],{"class":1011},[1005,1851,1015],{"class":1011},[1005,1853,1536],{"class":1029},[1005,1855,1021],{"class":1011},[1005,1857,1502],{"class":1011},[1005,1859,1860,1862,1864,1866,1868,1870,1872,1874],{"class":1007,"line":1354},[1005,1861,1486],{"class":1011},[1005,1863,402],{"class":1018},[1005,1865,1021],{"class":1011},[1005,1867,1024],{"class":1011},[1005,1869,1015],{"class":1011},[1005,1871,418],{"class":1029},[1005,1873,1021],{"class":1011},[1005,1875,1502],{"class":1011},[1005,1877,1878,1880,1882,1884,1886,1888,1890,1892],{"class":1007,"line":1368},[1005,1879,1486],{"class":1011},[1005,1881,706],{"class":1018},[1005,1883,1021],{"class":1011},[1005,1885,1024],{"class":1011},[1005,1887,1015],{"class":1011},[1005,1889,223],{"class":1029},[1005,1891,1021],{"class":1011},[1005,1893,1502],{"class":1011},[1005,1895,1896,1898,1900,1902,1904,1906,1909,1911],{"class":1007,"line":1382},[1005,1897,1486],{"class":1011},[1005,1899,431],{"class":1018},[1005,1901,1021],{"class":1011},[1005,1903,1024],{"class":1011},[1005,1905,1015],{"class":1011},[1005,1907,1908],{"class":1029},"BANK_TRANSFER",[1005,1910,1021],{"class":1011},[1005,1912,1502],{"class":1011},[1005,1914,1915,1917,1919,1921,1923],{"class":1007,"line":1396},[1005,1916,1486],{"class":1011},[1005,1918,215],{"class":1018},[1005,1920,1021],{"class":1011},[1005,1922,1024],{"class":1011},[1005,1924,1607],{"class":1011},[1005,1926,1927,1929,1931,1933,1935,1937,1939,1941],{"class":1007,"line":1407},[1005,1928,1612],{"class":1011},[1005,1930,754],{"class":1070},[1005,1932,1021],{"class":1011},[1005,1934,1024],{"class":1011},[1005,1936,1015],{"class":1011},[1005,1938,1623],{"class":1029},[1005,1940,1021],{"class":1011},[1005,1942,1502],{"class":1011},[1005,1944,1945,1947,1949,1951,1953,1955,1958,1960],{"class":1007,"line":1413},[1005,1946,1612],{"class":1011},[1005,1948,757],{"class":1070},[1005,1950,1021],{"class":1011},[1005,1952,1024],{"class":1011},[1005,1954,1015],{"class":1011},[1005,1956,1957],{"class":1029},"1234567890",[1005,1959,1021],{"class":1011},[1005,1961,1502],{"class":1011},[1005,1963,1964,1966,1968,1970,1972,1974,1976],{"class":1007,"line":1419},[1005,1965,1612],{"class":1011},[1005,1967,827],{"class":1070},[1005,1969,1021],{"class":1011},[1005,1971,1024],{"class":1011},[1005,1973,1015],{"class":1011},[1005,1975,1642],{"class":1029},[1005,1977,1664],{"class":1011},[1005,1979,1980],{"class":1007,"line":1425},[1005,1981,1669],{"class":1011},[1005,1983,1984,1986,1988,1990,1992],{"class":1007,"line":1431},[1005,1985,1486],{"class":1011},[1005,1987,746],{"class":1018},[1005,1989,1021],{"class":1011},[1005,1991,1024],{"class":1011},[1005,1993,1607],{"class":1011},[1005,1995,1996,1998,2000,2002,2004,2006,2008,2010],{"class":1007,"line":1437},[1005,1997,1612],{"class":1011},[1005,1999,754],{"class":1070},[1005,2001,1021],{"class":1011},[1005,2003,1024],{"class":1011},[1005,2005,1015],{"class":1011},[1005,2007,1696],{"class":1029},[1005,2009,1021],{"class":1011},[1005,2011,1502],{"class":1011},[1005,2013,2014,2016,2018,2020,2022,2024,2026,2028],{"class":1007,"line":1443},[1005,2015,1612],{"class":1011},[1005,2017,757],{"class":1070},[1005,2019,1021],{"class":1011},[1005,2021,1024],{"class":1011},[1005,2023,1015],{"class":1011},[1005,2025,1715],{"class":1029},[1005,2027,1021],{"class":1011},[1005,2029,1502],{"class":1011},[1005,2031,2032,2034,2036,2038,2040,2042,2044],{"class":1007,"line":1449},[1005,2033,1612],{"class":1011},[1005,2035,760],{"class":1070},[1005,2037,1021],{"class":1011},[1005,2039,1024],{"class":1011},[1005,2041,1015],{"class":1011},[1005,2043,1734],{"class":1029},[1005,2045,1664],{"class":1011},[1005,2047,2048],{"class":1007,"line":1455},[1005,2049,1669],{"class":1011},[1005,2051,2052,2054,2056,2058,2060,2062,2064,2066],{"class":1007,"line":1743},[1005,2053,1486],{"class":1011},[1005,2055,768],{"class":1018},[1005,2057,1021],{"class":1011},[1005,2059,1024],{"class":1011},[1005,2061,1015],{"class":1011},[1005,2063,1756],{"class":1029},[1005,2065,1021],{"class":1011},[1005,2067,1502],{"class":1011},[1005,2069,2070,2072,2074,2076,2078,2080,2082],{"class":1007,"line":1763},[1005,2071,1486],{"class":1011},[1005,2073,781],{"class":1018},[1005,2075,1021],{"class":1011},[1005,2077,1024],{"class":1011},[1005,2079,1015],{"class":1011},[1005,2081,1776],{"class":1029},[1005,2083,1664],{"class":1011},[1005,2085,2086],{"class":1007,"line":1781},[1005,2087,1784],{"class":1011},[589,2089,2090],{},[200,2091,2092,2095,2096,2098,2099,2101,2102,864,2104,2107,2108,2110,2111,2114,2115,2118,2119,284],{},[230,2093,2094],{},"test mode (sandbox):"," with a ",[203,2097,603],{}," key the system returns a placeholder ",[203,2100,215],{}," (e.g. ",[203,2103,827],{},[203,2105,2106],{},"\"SANDBOX TEST\""," and ",[203,2109,219],{}," starting with ",[203,2112,2113],{},"\"SANDBOX-TEST-QR-\"",", which ",[230,2116,2117],{},"cannot be scanned for real",") so you can test the flow without a real transfer. To simulate an inbound transfer in test mode see ",[226,2120,144],{"href":145},[2122,2123],"placeholder-note",{"value":2124},"reference the sandbox simulate-transfer endpoint for simulating a transfer in test mode",[2126,2127,2128],"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 .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);}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}",{"title":1001,"searchDepth":1008,"depth":1300,"links":2130},[2131,2132,2133,2134,2136,2137,2138,2139],{"id":262,"depth":1300,"text":263},{"id":342,"depth":1300,"text":343},{"id":607,"depth":1300,"text":608},{"id":908,"depth":1300,"text":2135},"Why expected_amount has a satang remainder",{"id":982,"depth":1300,"text":983},{"id":1103,"depth":1300,"text":1104},{"id":1282,"depth":1300,"text":1283},{"id":1464,"depth":1300,"text":1465},"POST \u002Fv1\u002Fdeposits — create a deposit with HMAC + Idempotency-Key; returns expected_amount and pay_to \u002F qr_payload with status PENDING","md",null,{},{"icon":66},{"title":63,"description":2140},"_MJ1sbTJ-kC33DKZ_-iSnbgaHhn-cDRuzu7GddGJd3I",[2148,2150],{"title":58,"path":59,"stem":60,"description":2149,"icon":61,"children":-1},"How a merchant takes money in via UnknownPay S2S — from creating a deposit to exact-amount matching, crediting, and the PENDING → CREDITED \u002F EXPIRED \u002F CANCELLED state machine",{"title":68,"path":69,"stem":70,"description":2151,"icon":71,"children":-1},"GET \u002Fv1\u002Fdeposits\u002F:id — retrieve \u002F poll a deposit; pay_to is present only while PENDING; caller- and mode-scoped",1781891152608]