[{"data":1,"prerenderedAt":1998},["ShallowReactive",2],{"navigation_docs":3,"-guides-invoices-and-payments":132,"-guides-invoices-and-payments-surround":1993},[4,30,47,128],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Getting Started","\u002Fgetting-started","1.getting-started",[9,13,17,21,25],{"title":10,"path":11,"stem":12},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction",{"title":14,"path":15,"stem":16},"Quickstart","\u002Fgetting-started\u002Fquickstart","1.getting-started\u002F2.quickstart",{"title":18,"path":19,"stem":20},"Authentication","\u002Fgetting-started\u002Fauthentication","1.getting-started\u002F3.authentication",{"title":22,"path":23,"stem":24},"Self-Hosting","\u002Fgetting-started\u002Fself-hosting","1.getting-started\u002F4.self-hosting",{"title":26,"path":27,"stem":28},"Build an Integration","\u002Fgetting-started\u002Fbuild-an-integration","1.getting-started\u002F5.build-an-integration",false,{"title":31,"path":32,"stem":33,"children":34,"page":29},"Sdks","\u002Fsdks","2.sdks",[35,39,43],{"title":36,"path":37,"stem":38},"TypeScript SDK","\u002Fsdks\u002Ftypescript","2.sdks\u002F1.typescript",{"title":40,"path":41,"stem":42},"Python SDK","\u002Fsdks\u002Fpython","2.sdks\u002F2.python",{"title":44,"path":45,"stem":46},"PHP SDK","\u002Fsdks\u002Fphp","2.sdks\u002F3.php",{"title":48,"path":49,"stem":50,"children":51,"page":29},"Guides","\u002Fguides","3.guides",[52,56,60,64,68,72,76,80,84,88,92,96,100,104,108,112,116,120,124],{"title":53,"path":54,"stem":55},"Customers","\u002Fguides\u002Fcustomers","3.guides\u002F1.customers",{"title":57,"path":58,"stem":59},"Usage-Based Billing","\u002Fguides\u002Fusage-billing","3.guides\u002F10.usage-billing",{"title":61,"path":62,"stem":63},"Wallets","\u002Fguides\u002Fwallets","3.guides\u002F11.wallets",{"title":65,"path":66,"stem":67},"Coupons, Add-ons and Credit Notes","\u002Fguides\u002Fcoupons-add-ons-credit-notes","3.guides\u002F12.coupons-add-ons-credit-notes",{"title":69,"path":70,"stem":71},"Taxes","\u002Fguides\u002Ftaxes","3.guides\u002F13.taxes",{"title":73,"path":74,"stem":75},"Customer Portal","\u002Fguides\u002Fcustomer-portal","3.guides\u002F14.customer-portal",{"title":77,"path":78,"stem":79},"Ledger","\u002Fguides\u002Fledger","3.guides\u002F15.ledger",{"title":81,"path":82,"stem":83},"Plan Limits and Access","\u002Fguides\u002Fplan-limits-and-access","3.guides\u002F16.plan-limits-and-access",{"title":85,"path":86,"stem":87},"Currencies and Exchange Rates","\u002Fguides\u002Fcurrencies","3.guides\u002F17.currencies",{"title":89,"path":90,"stem":91},"Charge a Customer","\u002Fguides\u002Fcharge-a-customer","3.guides\u002F18.charge-a-customer",{"title":93,"path":94,"stem":95},"One-time Products & Partial Payments","\u002Fguides\u002Fone-time-products-and-partial-payments","3.guides\u002F19.one-time-products-and-partial-payments",{"title":97,"path":98,"stem":99},"Plans & Pricing","\u002Fguides\u002Fplans-and-pricing","3.guides\u002F2.plans-and-pricing",{"title":101,"path":102,"stem":103},"Subscriptions","\u002Fguides\u002Fsubscriptions","3.guides\u002F3.subscriptions",{"title":105,"path":106,"stem":107},"Invoices & Payments","\u002Fguides\u002Finvoices-and-payments","3.guides\u002F4.invoices-and-payments",{"title":109,"path":110,"stem":111},"Payment Providers","\u002Fguides\u002Fpayment-providers","3.guides\u002F5.payment-providers",{"title":113,"path":114,"stem":115},"Analytics","\u002Fguides\u002Fanalytics","3.guides\u002F6.analytics",{"title":117,"path":118,"stem":119},"Webhooks","\u002Fguides\u002Fwebhooks","3.guides\u002F7.webhooks",{"title":121,"path":122,"stem":123},"Sandbox","\u002Fguides\u002Fsandbox","3.guides\u002F8.sandbox",{"title":125,"path":126,"stem":127},"Money Movement","\u002Fguides\u002Fmoney-movement","3.guides\u002F9.money-movement",{"title":129,"path":130,"stem":131},"API Reference","\u002Fapi-reference","4.api-reference",{"id":133,"title":105,"body":134,"description":1987,"extension":1988,"links":1989,"meta":1990,"navigation":449,"path":106,"seo":1991,"stem":107,"__hash__":1992},"docs\u002F3.guides\u002F4.invoices-and-payments.md",{"type":135,"value":136,"toc":1973},"minimark",[137,141,146,157,240,253,257,268,326,353,357,739,743,996,1000,1256,1260,1427,1431,1450,1578,1582,1585,1590,1685,1689,1864,1873,1904,1908,1969],[138,139,140],"p",{},"PimaBill automatically generates invoices for subscriptions and processes payments through your configured providers.",[142,143,145],"h2",{"id":144},"invoice-lifecycle","Invoice Lifecycle",[147,148,153],"pre",{"className":149,"code":151,"language":152},[150],"language-text","DRAFT → PENDING → PAID\n                → FAILED → PAID (after retry)\n                → CANCELED (voided)\n","text",[154,155,151],"code",{"__ignoreMap":156},"",[158,159,160,173],"table",{},[161,162,163],"thead",{},[164,165,166,170],"tr",{},[167,168,169],"th",{},"Status",[167,171,172],{},"Meaning",[174,175,176,187,206,220,230],"tbody",{},[164,177,178,184],{},[179,180,181],"td",{},[154,182,183],{},"DRAFT",[179,185,186],{},"Being prepared; can still be changed. Finalize it to send it.",[164,188,189,194],{},[179,190,191],{},[154,192,193],{},"PENDING",[179,195,196,197,200,201,205],{},"Sent and waiting for payment. If ",[154,198,199],{},"amountPaid"," is above zero, it has been ",[202,203,204],"strong",{},"partially paid",".",[164,207,208,213],{},[179,209,210],{},[154,211,212],{},"PAID",[179,214,215,216,219],{},"Payments cover the whole amount. ",[154,217,218],{},"paidAt"," is when that happened.",[164,221,222,227],{},[179,223,224],{},[154,225,226],{},"FAILED",[179,228,229],{},"An automatic charge failed; it is retried, and it can still be paid by link or marked paid.",[164,231,232,237],{},[179,233,234],{},[154,235,236],{},"CANCELED",[179,238,239],{},"Voided; it can no longer be paid.",[138,241,242,243,246,247,249,250,205],{},"Every invoice has ",[154,244,245],{},"amount"," (the total) and ",[154,248,199],{}," (what has been paid so far). What's still due is ",[154,251,252],{},"amount − amountPaid",[142,254,256],{"id":255},"paying-in-parts","Paying in parts",[138,258,259,260,262,263,265,266,205],{},"An invoice can be paid in several payments: a deposit, then instalments. Each payment is added to ",[154,261,199],{},"; the invoice stays ",[154,264,193],{}," until the payments cover it, then becomes ",[154,267,212],{},[269,270,271,289,313],"ul",{},[272,273,274,277,278,281,282,285,286,288],"li",{},[202,275,276],{},"Online:"," ",[154,279,280],{},"POST \u002Fapi\u002Finvoices\u002F{id}\u002Fcheckout"," with ",[154,283,284],{},"{ \"amount\": 50000 }"," charges that much. Without ",[154,287,245],{},", a checkout charges everything still due, so a second link after a deposit asks only for the rest.",[272,290,291,294,295,281,298,301,302,304,305,308,309,312],{},[202,292,293],{},"Offline"," (cash, bank transfer, mobile money to your own number): ",[154,296,297],{},"POST \u002Fapi\u002Finvoices\u002F{id}\u002Fmark-paid",[154,299,300],{},"{ \"paymentMethod\": \"cash\", \"amount\": 50000 }",". Without ",[154,303,245],{},", it records everything still due. In the dashboard, ",[202,306,307],{},"Mark paid"," has an ",[202,310,311],{},"Amount received"," field.",[272,314,315,277,318,321,322,325],{},[202,316,317],{},"At creation:",[154,319,320],{},"checkout.amount"," on ",[154,323,324],{},"POST \u002Fapi\u002Finvoices"," takes a deposit in the same call.",[138,327,328,329,332,333,335,336,339,340,343,344,347,348,352],{},"Each part payment sends ",[154,330,331],{},"invoice.partially_paid"," (with ",[154,334,199],{},", ",[154,337,338],{},"amountDue"," and ",[154,341,342],{},"total","); the last one sends ",[154,345,346],{},"invoice.paid",". See ",[349,350,351],"a",{"href":94},"One-time products & partial payments"," for a full walkthrough.",[142,354,356],{"id":355},"list-invoices","List Invoices",[358,359,361,407,694],"code-group",{"sync":360},"lang",[147,362,367],{"className":363,"code":364,"filename":365,"language":366,"meta":156,"style":156},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl \"http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices?status=PENDING&page=1&limit=20\" \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\"\n","cURL","bash",[154,368,369,393],{"__ignoreMap":156},[370,371,374,378,382,386,389],"span",{"class":372,"line":373},"line",1,[370,375,377],{"class":376},"sBMFI","curl",[370,379,381],{"class":380},"sMK4o"," \"",[370,383,385],{"class":384},"sfazB","http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices?status=PENDING&page=1&limit=20",[370,387,388],{"class":380},"\"",[370,390,392],{"class":391},"sTEyZ"," \\\n",[370,394,396,399,401,404],{"class":372,"line":395},2,[370,397,398],{"class":384},"  -H",[370,400,381],{"class":380},[370,402,403],{"class":384},"Authorization: Bearer sk_live_a1b2c3d4...",[370,405,406],{"class":380},"\"\n",[147,408,413],{"className":409,"code":410,"filename":411,"language":412,"meta":156,"style":156},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { PimaBillClient } from 'pimabill';\n\nconst client = new PimaBillClient({ token: 'sk_live_a1b2c3d4...' });\n\nconst invoices = await client.invoices.list({\n  status: 'PENDING',\n  page: 1,\n  limit: 20\n});\n\nfor (const invoice of invoices.data) {\n  console.log(`${invoice.id}: ${invoice.currency} ${invoice.amount} - ${invoice.status}`);\n}\n","TypeScript","typescript",[154,414,415,445,451,497,502,533,550,564,575,585,590,617,688],{"__ignoreMap":156},[370,416,417,421,424,427,430,433,436,439,442],{"class":372,"line":373},[370,418,420],{"class":419},"s7zQu","import",[370,422,423],{"class":380}," {",[370,425,426],{"class":391}," PimaBillClient",[370,428,429],{"class":380}," }",[370,431,432],{"class":419}," from",[370,434,435],{"class":380}," '",[370,437,438],{"class":384},"pimabill",[370,440,441],{"class":380},"'",[370,443,444],{"class":380},";\n",[370,446,447],{"class":372,"line":395},[370,448,450],{"emptyLinePlaceholder":449},true,"\n",[370,452,454,458,461,464,467,470,473,476,480,483,485,488,490,492,495],{"class":372,"line":453},3,[370,455,457],{"class":456},"spNyl","const",[370,459,460],{"class":391}," client ",[370,462,463],{"class":380},"=",[370,465,466],{"class":380}," new",[370,468,426],{"class":469},"s2Zo4",[370,471,472],{"class":391},"(",[370,474,475],{"class":380},"{",[370,477,479],{"class":478},"swJcz"," token",[370,481,482],{"class":380},":",[370,484,435],{"class":380},[370,486,487],{"class":384},"sk_live_a1b2c3d4...",[370,489,441],{"class":380},[370,491,429],{"class":380},[370,493,494],{"class":391},")",[370,496,444],{"class":380},[370,498,500],{"class":372,"line":499},4,[370,501,450],{"emptyLinePlaceholder":449},[370,503,505,507,510,512,515,518,520,523,525,528,530],{"class":372,"line":504},5,[370,506,457],{"class":456},[370,508,509],{"class":391}," invoices ",[370,511,463],{"class":380},[370,513,514],{"class":419}," await",[370,516,517],{"class":391}," client",[370,519,205],{"class":380},[370,521,522],{"class":391},"invoices",[370,524,205],{"class":380},[370,526,527],{"class":469},"list",[370,529,472],{"class":391},[370,531,532],{"class":380},"{\n",[370,534,536,539,541,543,545,547],{"class":372,"line":535},6,[370,537,538],{"class":478},"  status",[370,540,482],{"class":380},[370,542,435],{"class":380},[370,544,193],{"class":384},[370,546,441],{"class":380},[370,548,549],{"class":380},",\n",[370,551,553,556,558,562],{"class":372,"line":552},7,[370,554,555],{"class":478},"  page",[370,557,482],{"class":380},[370,559,561],{"class":560},"sbssI"," 1",[370,563,549],{"class":380},[370,565,567,570,572],{"class":372,"line":566},8,[370,568,569],{"class":478},"  limit",[370,571,482],{"class":380},[370,573,574],{"class":560}," 20\n",[370,576,578,581,583],{"class":372,"line":577},9,[370,579,580],{"class":380},"}",[370,582,494],{"class":391},[370,584,444],{"class":380},[370,586,588],{"class":372,"line":587},10,[370,589,450],{"emptyLinePlaceholder":449},[370,591,593,596,599,601,604,607,610,612,615],{"class":372,"line":592},11,[370,594,595],{"class":419},"for",[370,597,598],{"class":391}," (",[370,600,457],{"class":456},[370,602,603],{"class":391}," invoice ",[370,605,606],{"class":380},"of",[370,608,609],{"class":391}," invoices",[370,611,205],{"class":380},[370,613,614],{"class":391},"data) ",[370,616,532],{"class":380},[370,618,620,623,625,628,630,633,636,638,641,643,646,649,651,653,656,658,661,663,665,667,669,672,674,676,678,681,684,686],{"class":372,"line":619},12,[370,621,622],{"class":391},"  console",[370,624,205],{"class":380},[370,626,627],{"class":469},"log",[370,629,472],{"class":478},[370,631,632],{"class":380},"`${",[370,634,635],{"class":391},"invoice",[370,637,205],{"class":380},[370,639,640],{"class":391},"id",[370,642,580],{"class":380},[370,644,645],{"class":384},": ",[370,647,648],{"class":380},"${",[370,650,635],{"class":391},[370,652,205],{"class":380},[370,654,655],{"class":391},"currency",[370,657,580],{"class":380},[370,659,660],{"class":380}," ${",[370,662,635],{"class":391},[370,664,205],{"class":380},[370,666,245],{"class":391},[370,668,580],{"class":380},[370,670,671],{"class":384}," - ",[370,673,648],{"class":380},[370,675,635],{"class":391},[370,677,205],{"class":380},[370,679,680],{"class":391},"status",[370,682,683],{"class":380},"}`",[370,685,494],{"class":478},[370,687,444],{"class":380},[370,689,691],{"class":372,"line":690},13,[370,692,693],{"class":380},"}\n",[147,695,700],{"className":696,"code":697,"filename":698,"language":699,"meta":156,"style":156},"language-python shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","from pimabill import PimaBillClient\n\nclient = PimaBillClient(token=\"sk_live_a1b2c3d4...\")\n\ninvoices = client.invoices.list(status=\"PENDING\", page=1, limit=20)\n\nfor invoice in invoices.data:\n    print(f\"{invoice.id}: {invoice.currency} {invoice.amount} - {invoice.status}\")\n","Python","python",[154,701,702,707,711,716,720,725,729,734],{"__ignoreMap":156},[370,703,704],{"class":372,"line":373},[370,705,706],{},"from pimabill import PimaBillClient\n",[370,708,709],{"class":372,"line":395},[370,710,450],{"emptyLinePlaceholder":449},[370,712,713],{"class":372,"line":453},[370,714,715],{},"client = PimaBillClient(token=\"sk_live_a1b2c3d4...\")\n",[370,717,718],{"class":372,"line":499},[370,719,450],{"emptyLinePlaceholder":449},[370,721,722],{"class":372,"line":504},[370,723,724],{},"invoices = client.invoices.list(status=\"PENDING\", page=1, limit=20)\n",[370,726,727],{"class":372,"line":535},[370,728,450],{"emptyLinePlaceholder":449},[370,730,731],{"class":372,"line":552},[370,732,733],{},"for invoice in invoices.data:\n",[370,735,736],{"class":372,"line":566},[370,737,738],{},"    print(f\"{invoice.id}: {invoice.currency} {invoice.amount} - {invoice.status}\")\n",[142,740,742],{"id":741},"create-a-manual-invoice","Create a Manual Invoice",[358,744,745,832,957],{"sync":360},[147,746,748],{"className":363,"code":747,"filename":365,"language":366,"meta":156,"style":156},"curl -X POST http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\" \\\n  -d '{\n    \"customerId\": \"cust_x1y2z3\",\n    \"dueDate\": \"2025-02-28\",\n    \"items\": [\n      {\"description\": \"Pro Plan - Monthly\", \"quantity\": 1, \"unitAmount\": 180000}\n    ]\n  }'\n",[154,749,750,765,778,790,799,804,809,814,819,824],{"__ignoreMap":156},[370,751,752,754,757,760,763],{"class":372,"line":373},[370,753,377],{"class":376},[370,755,756],{"class":384}," -X",[370,758,759],{"class":384}," POST",[370,761,762],{"class":384}," http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices",[370,764,392],{"class":391},[370,766,767,769,771,774,776],{"class":372,"line":395},[370,768,398],{"class":384},[370,770,381],{"class":380},[370,772,773],{"class":384},"Content-Type: application\u002Fjson",[370,775,388],{"class":380},[370,777,392],{"class":391},[370,779,780,782,784,786,788],{"class":372,"line":453},[370,781,398],{"class":384},[370,783,381],{"class":380},[370,785,403],{"class":384},[370,787,388],{"class":380},[370,789,392],{"class":391},[370,791,792,795,797],{"class":372,"line":499},[370,793,794],{"class":384},"  -d",[370,796,435],{"class":380},[370,798,532],{"class":384},[370,800,801],{"class":372,"line":504},[370,802,803],{"class":384},"    \"customerId\": \"cust_x1y2z3\",\n",[370,805,806],{"class":372,"line":535},[370,807,808],{"class":384},"    \"dueDate\": \"2025-02-28\",\n",[370,810,811],{"class":372,"line":552},[370,812,813],{"class":384},"    \"items\": [\n",[370,815,816],{"class":372,"line":566},[370,817,818],{"class":384},"      {\"description\": \"Pro Plan - Monthly\", \"quantity\": 1, \"unitAmount\": 180000}\n",[370,820,821],{"class":372,"line":577},[370,822,823],{"class":384},"    ]\n",[370,825,826,829],{"class":372,"line":587},[370,827,828],{"class":384},"  }",[370,830,831],{"class":380},"'\n",[147,833,835],{"className":409,"code":834,"filename":411,"language":412,"meta":156,"style":156},"const invoice = await client.invoices.create({\n  customerId: 'cust_x1y2z3',\n  dueDate: '2025-02-28',\n  items: [\n    { description: 'Pro Plan - Monthly', quantity: 1, unitAmount: 180000 }\n  ]\n});\n",[154,836,837,862,878,894,904,944,949],{"__ignoreMap":156},[370,838,839,841,843,845,847,849,851,853,855,858,860],{"class":372,"line":373},[370,840,457],{"class":456},[370,842,603],{"class":391},[370,844,463],{"class":380},[370,846,514],{"class":419},[370,848,517],{"class":391},[370,850,205],{"class":380},[370,852,522],{"class":391},[370,854,205],{"class":380},[370,856,857],{"class":469},"create",[370,859,472],{"class":391},[370,861,532],{"class":380},[370,863,864,867,869,871,874,876],{"class":372,"line":395},[370,865,866],{"class":478},"  customerId",[370,868,482],{"class":380},[370,870,435],{"class":380},[370,872,873],{"class":384},"cust_x1y2z3",[370,875,441],{"class":380},[370,877,549],{"class":380},[370,879,880,883,885,887,890,892],{"class":372,"line":453},[370,881,882],{"class":478},"  dueDate",[370,884,482],{"class":380},[370,886,435],{"class":380},[370,888,889],{"class":384},"2025-02-28",[370,891,441],{"class":380},[370,893,549],{"class":380},[370,895,896,899,901],{"class":372,"line":499},[370,897,898],{"class":478},"  items",[370,900,482],{"class":380},[370,902,903],{"class":391}," [\n",[370,905,906,909,912,914,916,919,921,924,927,929,931,933,936,938,941],{"class":372,"line":504},[370,907,908],{"class":380},"    {",[370,910,911],{"class":478}," description",[370,913,482],{"class":380},[370,915,435],{"class":380},[370,917,918],{"class":384},"Pro Plan - Monthly",[370,920,441],{"class":380},[370,922,923],{"class":380},",",[370,925,926],{"class":478}," quantity",[370,928,482],{"class":380},[370,930,561],{"class":560},[370,932,923],{"class":380},[370,934,935],{"class":478}," unitAmount",[370,937,482],{"class":380},[370,939,940],{"class":560}," 180000",[370,942,943],{"class":380}," }\n",[370,945,946],{"class":372,"line":535},[370,947,948],{"class":391},"  ]\n",[370,950,951,953,955],{"class":372,"line":552},[370,952,580],{"class":380},[370,954,494],{"class":391},[370,956,444],{"class":380},[147,958,960],{"className":696,"code":959,"filename":698,"language":699,"meta":156,"style":156},"from pimabill import InvoiceItemDto\n\ninvoice = client.invoices.create(\n    customer_id=\"cust_x1y2z3\",\n    due_date=\"2025-02-28\",\n    items=[InvoiceItemDto(description=\"Pro Plan - Monthly\", quantity=1, unit_amount=180000)],\n)\n",[154,961,962,967,971,976,981,986,991],{"__ignoreMap":156},[370,963,964],{"class":372,"line":373},[370,965,966],{},"from pimabill import InvoiceItemDto\n",[370,968,969],{"class":372,"line":395},[370,970,450],{"emptyLinePlaceholder":449},[370,972,973],{"class":372,"line":453},[370,974,975],{},"invoice = client.invoices.create(\n",[370,977,978],{"class":372,"line":499},[370,979,980],{},"    customer_id=\"cust_x1y2z3\",\n",[370,982,983],{"class":372,"line":504},[370,984,985],{},"    due_date=\"2025-02-28\",\n",[370,987,988],{"class":372,"line":535},[370,989,990],{},"    items=[InvoiceItemDto(description=\"Pro Plan - Monthly\", quantity=1, unit_amount=180000)],\n",[370,992,993],{"class":372,"line":552},[370,994,995],{},")\n",[142,997,999],{"id":998},"finalize-and-pay","Finalize and Pay",[358,1001,1002,1125,1236],{"sync":360},[147,1003,1005],{"className":363,"code":1004,"filename":365,"language":366,"meta":156,"style":156},"# Finalize a draft invoice\ncurl -X POST http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices\u002Finv_abc123\u002Ffinalize \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\"\n\n# Mark as manually paid (add \"amount\" to record only part of it)\ncurl -X POST http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices\u002Finv_abc123\u002Fmark-paid \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"paymentMethod\": \"bank_transfer\"}'\n\n# Void an invoice\ncurl -X POST http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices\u002Finv_abc123\u002Fvoid \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\"\n",[154,1006,1007,1013,1026,1036,1040,1045,1058,1070,1082,1093,1097,1102,1115],{"__ignoreMap":156},[370,1008,1009],{"class":372,"line":373},[370,1010,1012],{"class":1011},"sHwdD","# Finalize a draft invoice\n",[370,1014,1015,1017,1019,1021,1024],{"class":372,"line":395},[370,1016,377],{"class":376},[370,1018,756],{"class":384},[370,1020,759],{"class":384},[370,1022,1023],{"class":384}," http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices\u002Finv_abc123\u002Ffinalize",[370,1025,392],{"class":391},[370,1027,1028,1030,1032,1034],{"class":372,"line":453},[370,1029,398],{"class":384},[370,1031,381],{"class":380},[370,1033,403],{"class":384},[370,1035,406],{"class":380},[370,1037,1038],{"class":372,"line":499},[370,1039,450],{"emptyLinePlaceholder":449},[370,1041,1042],{"class":372,"line":504},[370,1043,1044],{"class":1011},"# Mark as manually paid (add \"amount\" to record only part of it)\n",[370,1046,1047,1049,1051,1053,1056],{"class":372,"line":535},[370,1048,377],{"class":376},[370,1050,756],{"class":384},[370,1052,759],{"class":384},[370,1054,1055],{"class":384}," http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices\u002Finv_abc123\u002Fmark-paid",[370,1057,392],{"class":391},[370,1059,1060,1062,1064,1066,1068],{"class":372,"line":552},[370,1061,398],{"class":384},[370,1063,381],{"class":380},[370,1065,403],{"class":384},[370,1067,388],{"class":380},[370,1069,392],{"class":391},[370,1071,1072,1074,1076,1078,1080],{"class":372,"line":566},[370,1073,398],{"class":384},[370,1075,381],{"class":380},[370,1077,773],{"class":384},[370,1079,388],{"class":380},[370,1081,392],{"class":391},[370,1083,1084,1086,1088,1091],{"class":372,"line":577},[370,1085,794],{"class":384},[370,1087,435],{"class":380},[370,1089,1090],{"class":384},"{\"paymentMethod\": \"bank_transfer\"}",[370,1092,831],{"class":380},[370,1094,1095],{"class":372,"line":587},[370,1096,450],{"emptyLinePlaceholder":449},[370,1098,1099],{"class":372,"line":592},[370,1100,1101],{"class":1011},"# Void an invoice\n",[370,1103,1104,1106,1108,1110,1113],{"class":372,"line":619},[370,1105,377],{"class":376},[370,1107,756],{"class":384},[370,1109,759],{"class":384},[370,1111,1112],{"class":384}," http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices\u002Finv_abc123\u002Fvoid",[370,1114,392],{"class":391},[370,1116,1117,1119,1121,1123],{"class":372,"line":690},[370,1118,398],{"class":384},[370,1120,381],{"class":380},[370,1122,403],{"class":384},[370,1124,406],{"class":380},[147,1126,1128],{"className":409,"code":1127,"filename":411,"language":412,"meta":156,"style":156},"\u002F\u002F Finalize a draft invoice\nawait client.invoices.finalize('inv_abc123');\n\n\u002F\u002F Mark as manually paid\nawait client.invoices.markPaid('inv_abc123');\n\n\u002F\u002F Void an invoice\nawait client.invoices.void('inv_abc123');\n",[154,1129,1130,1135,1164,1168,1173,1200,1204,1209],{"__ignoreMap":156},[370,1131,1132],{"class":372,"line":373},[370,1133,1134],{"class":1011},"\u002F\u002F Finalize a draft invoice\n",[370,1136,1137,1140,1142,1144,1146,1148,1151,1153,1155,1158,1160,1162],{"class":372,"line":395},[370,1138,1139],{"class":419},"await",[370,1141,517],{"class":391},[370,1143,205],{"class":380},[370,1145,522],{"class":391},[370,1147,205],{"class":380},[370,1149,1150],{"class":469},"finalize",[370,1152,472],{"class":391},[370,1154,441],{"class":380},[370,1156,1157],{"class":384},"inv_abc123",[370,1159,441],{"class":380},[370,1161,494],{"class":391},[370,1163,444],{"class":380},[370,1165,1166],{"class":372,"line":453},[370,1167,450],{"emptyLinePlaceholder":449},[370,1169,1170],{"class":372,"line":499},[370,1171,1172],{"class":1011},"\u002F\u002F Mark as manually paid\n",[370,1174,1175,1177,1179,1181,1183,1185,1188,1190,1192,1194,1196,1198],{"class":372,"line":504},[370,1176,1139],{"class":419},[370,1178,517],{"class":391},[370,1180,205],{"class":380},[370,1182,522],{"class":391},[370,1184,205],{"class":380},[370,1186,1187],{"class":469},"markPaid",[370,1189,472],{"class":391},[370,1191,441],{"class":380},[370,1193,1157],{"class":384},[370,1195,441],{"class":380},[370,1197,494],{"class":391},[370,1199,444],{"class":380},[370,1201,1202],{"class":372,"line":535},[370,1203,450],{"emptyLinePlaceholder":449},[370,1205,1206],{"class":372,"line":552},[370,1207,1208],{"class":1011},"\u002F\u002F Void an invoice\n",[370,1210,1211,1213,1215,1217,1219,1221,1224,1226,1228,1230,1232,1234],{"class":372,"line":566},[370,1212,1139],{"class":419},[370,1214,517],{"class":391},[370,1216,205],{"class":380},[370,1218,522],{"class":391},[370,1220,205],{"class":380},[370,1222,1223],{"class":469},"void",[370,1225,472],{"class":391},[370,1227,441],{"class":380},[370,1229,1157],{"class":384},[370,1231,441],{"class":380},[370,1233,494],{"class":391},[370,1235,444],{"class":380},[147,1237,1239],{"className":696,"code":1238,"filename":698,"language":699,"meta":156,"style":156},"client.invoices.finalize(\"inv_abc123\")\nclient.invoices.mark_paid(\"inv_abc123\")\nclient.invoices.void(\"inv_abc123\")\n",[154,1240,1241,1246,1251],{"__ignoreMap":156},[370,1242,1243],{"class":372,"line":373},[370,1244,1245],{},"client.invoices.finalize(\"inv_abc123\")\n",[370,1247,1248],{"class":372,"line":395},[370,1249,1250],{},"client.invoices.mark_paid(\"inv_abc123\")\n",[370,1252,1253],{"class":372,"line":453},[370,1254,1255],{},"client.invoices.void(\"inv_abc123\")\n",[142,1257,1259],{"id":1258},"download-pdf","Download PDF",[358,1261,1262,1300,1407],{"sync":360},[147,1263,1265],{"className":363,"code":1264,"filename":365,"language":366,"meta":156,"style":156},"curl \"http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices\u002Finv_abc123\u002Fpdf\" \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\" \\\n  -o invoice.pdf\n",[154,1266,1267,1280,1292],{"__ignoreMap":156},[370,1268,1269,1271,1273,1276,1278],{"class":372,"line":373},[370,1270,377],{"class":376},[370,1272,381],{"class":380},[370,1274,1275],{"class":384},"http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices\u002Finv_abc123\u002Fpdf",[370,1277,388],{"class":380},[370,1279,392],{"class":391},[370,1281,1282,1284,1286,1288,1290],{"class":372,"line":395},[370,1283,398],{"class":384},[370,1285,381],{"class":380},[370,1287,403],{"class":384},[370,1289,388],{"class":380},[370,1291,392],{"class":391},[370,1293,1294,1297],{"class":372,"line":453},[370,1295,1296],{"class":384},"  -o",[370,1298,1299],{"class":384}," invoice.pdf\n",[147,1301,1303],{"className":409,"code":1302,"filename":411,"language":412,"meta":156,"style":156},"import { writeFile } from 'node:fs\u002Fpromises';\n\nconst pdf = await client.invoices.getPdf('inv_abc123');\nawait writeFile('invoice.pdf', Buffer.from(await pdf.arrayBuffer()));\n",[154,1304,1305,1327,1331,1365],{"__ignoreMap":156},[370,1306,1307,1309,1311,1314,1316,1318,1320,1323,1325],{"class":372,"line":373},[370,1308,420],{"class":419},[370,1310,423],{"class":380},[370,1312,1313],{"class":391}," writeFile",[370,1315,429],{"class":380},[370,1317,432],{"class":419},[370,1319,435],{"class":380},[370,1321,1322],{"class":384},"node:fs\u002Fpromises",[370,1324,441],{"class":380},[370,1326,444],{"class":380},[370,1328,1329],{"class":372,"line":395},[370,1330,450],{"emptyLinePlaceholder":449},[370,1332,1333,1335,1338,1340,1342,1344,1346,1348,1350,1353,1355,1357,1359,1361,1363],{"class":372,"line":453},[370,1334,457],{"class":456},[370,1336,1337],{"class":391}," pdf ",[370,1339,463],{"class":380},[370,1341,514],{"class":419},[370,1343,517],{"class":391},[370,1345,205],{"class":380},[370,1347,522],{"class":391},[370,1349,205],{"class":380},[370,1351,1352],{"class":469},"getPdf",[370,1354,472],{"class":391},[370,1356,441],{"class":380},[370,1358,1157],{"class":384},[370,1360,441],{"class":380},[370,1362,494],{"class":391},[370,1364,444],{"class":380},[370,1366,1367,1369,1371,1373,1375,1378,1380,1382,1385,1387,1390,1392,1394,1397,1399,1402,1405],{"class":372,"line":499},[370,1368,1139],{"class":419},[370,1370,1313],{"class":469},[370,1372,472],{"class":391},[370,1374,441],{"class":380},[370,1376,1377],{"class":384},"invoice.pdf",[370,1379,441],{"class":380},[370,1381,923],{"class":380},[370,1383,1384],{"class":391}," Buffer",[370,1386,205],{"class":380},[370,1388,1389],{"class":469},"from",[370,1391,472],{"class":391},[370,1393,1139],{"class":419},[370,1395,1396],{"class":391}," pdf",[370,1398,205],{"class":380},[370,1400,1401],{"class":469},"arrayBuffer",[370,1403,1404],{"class":391},"()))",[370,1406,444],{"class":380},[147,1408,1410],{"className":696,"code":1409,"filename":698,"language":699,"meta":156,"style":156},"with open(\"invoice.pdf\", \"wb\") as f:\n    for chunk in client.invoices.get_pdf(\"inv_abc123\"):\n        f.write(chunk)\n",[154,1411,1412,1417,1422],{"__ignoreMap":156},[370,1413,1414],{"class":372,"line":373},[370,1415,1416],{},"with open(\"invoice.pdf\", \"wb\") as f:\n",[370,1418,1419],{"class":372,"line":395},[370,1420,1421],{},"    for chunk in client.invoices.get_pdf(\"inv_abc123\"):\n",[370,1423,1424],{"class":372,"line":453},[370,1425,1426],{},"        f.write(chunk)\n",[142,1428,1430],{"id":1429},"checkout","Checkout",[138,1432,1433,1434,1436,1437,1440,1441,1444,1445,1449],{},"Generate a hosted checkout URL for an invoice so customers can pay online. It charges what is still due, or ",[154,1435,245],{}," if you pass one (see ",[349,1438,256],{"href":1439},"#paying-in-parts","). Pass ",[154,1442,1443],{},"providerName"," to choose a provider; otherwise your highest-priority active provider is used, and ",[349,1446,1448],{"href":1447},"\u002Fguides\u002Fmoney-movement#managed-payments","managed payments"," when none of yours can take it:",[358,1451,1452,1505,1563],{"sync":360},[147,1453,1455],{"className":363,"code":1454,"filename":365,"language":366,"meta":156,"style":156},"curl -X POST http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices\u002Finv_abc123\u002Fcheckout \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\" \\\n  -d '{}'\n",[154,1456,1457,1470,1482,1494],{"__ignoreMap":156},[370,1458,1459,1461,1463,1465,1468],{"class":372,"line":373},[370,1460,377],{"class":376},[370,1462,756],{"class":384},[370,1464,759],{"class":384},[370,1466,1467],{"class":384}," http:\u002F\u002Flocalhost:4000\u002Fapi\u002Finvoices\u002Finv_abc123\u002Fcheckout",[370,1469,392],{"class":391},[370,1471,1472,1474,1476,1478,1480],{"class":372,"line":395},[370,1473,398],{"class":384},[370,1475,381],{"class":380},[370,1477,773],{"class":384},[370,1479,388],{"class":380},[370,1481,392],{"class":391},[370,1483,1484,1486,1488,1490,1492],{"class":372,"line":453},[370,1485,398],{"class":384},[370,1487,381],{"class":380},[370,1489,403],{"class":384},[370,1491,388],{"class":380},[370,1493,392],{"class":391},[370,1495,1496,1498,1500,1503],{"class":372,"line":499},[370,1497,794],{"class":384},[370,1499,435],{"class":380},[370,1501,1502],{"class":384},"{}",[370,1504,831],{"class":380},[147,1506,1508],{"className":409,"code":1507,"filename":411,"language":412,"meta":156,"style":156},"const checkout = await client.invoices.createCheckout('inv_abc123');\nconsole.log(checkout.checkoutUrl);\n",[154,1509,1510,1544],{"__ignoreMap":156},[370,1511,1512,1514,1517,1519,1521,1523,1525,1527,1529,1532,1534,1536,1538,1540,1542],{"class":372,"line":373},[370,1513,457],{"class":456},[370,1515,1516],{"class":391}," checkout ",[370,1518,463],{"class":380},[370,1520,514],{"class":419},[370,1522,517],{"class":391},[370,1524,205],{"class":380},[370,1526,522],{"class":391},[370,1528,205],{"class":380},[370,1530,1531],{"class":469},"createCheckout",[370,1533,472],{"class":391},[370,1535,441],{"class":380},[370,1537,1157],{"class":384},[370,1539,441],{"class":380},[370,1541,494],{"class":391},[370,1543,444],{"class":380},[370,1545,1546,1549,1551,1553,1556,1558,1561],{"class":372,"line":395},[370,1547,1548],{"class":391},"console",[370,1550,205],{"class":380},[370,1552,627],{"class":469},[370,1554,1555],{"class":391},"(checkout",[370,1557,205],{"class":380},[370,1559,1560],{"class":391},"checkoutUrl)",[370,1562,444],{"class":380},[147,1564,1566],{"className":696,"code":1565,"filename":698,"language":699,"meta":156,"style":156},"checkout = client.invoices.create_checkout(\"inv_abc123\")\nprint(checkout.checkout_url)\n",[154,1567,1568,1573],{"__ignoreMap":156},[370,1569,1570],{"class":372,"line":373},[370,1571,1572],{},"checkout = client.invoices.create_checkout(\"inv_abc123\")\n",[370,1574,1575],{"class":372,"line":395},[370,1576,1577],{},"print(checkout.checkout_url)\n",[142,1579,1581],{"id":1580},"payments","Payments",[138,1583,1584],{},"Payments are created automatically when invoices are processed. You can list and refund them.",[1586,1587,1589],"h3",{"id":1588},"list-payments","List Payments",[358,1591,1592,1620,1676],{"sync":360},[147,1593,1595],{"className":363,"code":1594,"filename":365,"language":366,"meta":156,"style":156},"curl \"http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fpayments?page=1&limit=20\" \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\"\n",[154,1596,1597,1610],{"__ignoreMap":156},[370,1598,1599,1601,1603,1606,1608],{"class":372,"line":373},[370,1600,377],{"class":376},[370,1602,381],{"class":380},[370,1604,1605],{"class":384},"http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fpayments?page=1&limit=20",[370,1607,388],{"class":380},[370,1609,392],{"class":391},[370,1611,1612,1614,1616,1618],{"class":372,"line":395},[370,1613,398],{"class":384},[370,1615,381],{"class":380},[370,1617,403],{"class":384},[370,1619,406],{"class":380},[147,1621,1623],{"className":409,"code":1622,"filename":411,"language":412,"meta":156,"style":156},"const payments = await client.payments.list({\n  page: 1,\n  limit: 20\n});\n",[154,1624,1625,1650,1660,1668],{"__ignoreMap":156},[370,1626,1627,1629,1632,1634,1636,1638,1640,1642,1644,1646,1648],{"class":372,"line":373},[370,1628,457],{"class":456},[370,1630,1631],{"class":391}," payments ",[370,1633,463],{"class":380},[370,1635,514],{"class":419},[370,1637,517],{"class":391},[370,1639,205],{"class":380},[370,1641,1580],{"class":391},[370,1643,205],{"class":380},[370,1645,527],{"class":469},[370,1647,472],{"class":391},[370,1649,532],{"class":380},[370,1651,1652,1654,1656,1658],{"class":372,"line":395},[370,1653,555],{"class":478},[370,1655,482],{"class":380},[370,1657,561],{"class":560},[370,1659,549],{"class":380},[370,1661,1662,1664,1666],{"class":372,"line":453},[370,1663,569],{"class":478},[370,1665,482],{"class":380},[370,1667,574],{"class":560},[370,1669,1670,1672,1674],{"class":372,"line":499},[370,1671,580],{"class":380},[370,1673,494],{"class":391},[370,1675,444],{"class":380},[147,1677,1679],{"className":696,"code":1678,"filename":698,"language":699,"meta":156,"style":156},"payments = client.payments.list(page=1, limit=20)\n",[154,1680,1681],{"__ignoreMap":156},[370,1682,1683],{"class":372,"line":373},[370,1684,1678],{},[1586,1686,1688],{"id":1687},"refund-a-payment","Refund a Payment",[358,1690,1691,1757,1835],{"sync":360},[147,1692,1694],{"className":363,"code":1693,"filename":365,"language":366,"meta":156,"style":156},"curl -X POST http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fpayments\u002Fpay_abc123\u002Frefund \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\" \\\n  -d '{\n    \"amount\": 50000,\n    \"reason\": \"Customer overcharged\"\n  }'\n",[154,1695,1696,1709,1721,1733,1741,1746,1751],{"__ignoreMap":156},[370,1697,1698,1700,1702,1704,1707],{"class":372,"line":373},[370,1699,377],{"class":376},[370,1701,756],{"class":384},[370,1703,759],{"class":384},[370,1705,1706],{"class":384}," http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fpayments\u002Fpay_abc123\u002Frefund",[370,1708,392],{"class":391},[370,1710,1711,1713,1715,1717,1719],{"class":372,"line":395},[370,1712,398],{"class":384},[370,1714,381],{"class":380},[370,1716,773],{"class":384},[370,1718,388],{"class":380},[370,1720,392],{"class":391},[370,1722,1723,1725,1727,1729,1731],{"class":372,"line":453},[370,1724,398],{"class":384},[370,1726,381],{"class":380},[370,1728,403],{"class":384},[370,1730,388],{"class":380},[370,1732,392],{"class":391},[370,1734,1735,1737,1739],{"class":372,"line":499},[370,1736,794],{"class":384},[370,1738,435],{"class":380},[370,1740,532],{"class":384},[370,1742,1743],{"class":372,"line":504},[370,1744,1745],{"class":384},"    \"amount\": 50000,\n",[370,1747,1748],{"class":372,"line":535},[370,1749,1750],{"class":384},"    \"reason\": \"Customer overcharged\"\n",[370,1752,1753,1755],{"class":372,"line":552},[370,1754,828],{"class":384},[370,1756,831],{"class":380},[147,1758,1760],{"className":409,"code":1759,"filename":411,"language":412,"meta":156,"style":156},"const refund = await client.payments.refund('pay_abc123', {\n  amount: 50000,  \u002F\u002F Partial refund in UGX\n  reason: 'Customer overcharged'\n});\n",[154,1761,1762,1798,1813,1827],{"__ignoreMap":156},[370,1763,1764,1766,1769,1771,1773,1775,1777,1779,1781,1784,1786,1788,1791,1793,1795],{"class":372,"line":373},[370,1765,457],{"class":456},[370,1767,1768],{"class":391}," refund ",[370,1770,463],{"class":380},[370,1772,514],{"class":419},[370,1774,517],{"class":391},[370,1776,205],{"class":380},[370,1778,1580],{"class":391},[370,1780,205],{"class":380},[370,1782,1783],{"class":469},"refund",[370,1785,472],{"class":391},[370,1787,441],{"class":380},[370,1789,1790],{"class":384},"pay_abc123",[370,1792,441],{"class":380},[370,1794,923],{"class":380},[370,1796,1797],{"class":380}," {\n",[370,1799,1800,1803,1805,1808,1810],{"class":372,"line":395},[370,1801,1802],{"class":478},"  amount",[370,1804,482],{"class":380},[370,1806,1807],{"class":560}," 50000",[370,1809,923],{"class":380},[370,1811,1812],{"class":1011},"  \u002F\u002F Partial refund in UGX\n",[370,1814,1815,1818,1820,1822,1825],{"class":372,"line":453},[370,1816,1817],{"class":478},"  reason",[370,1819,482],{"class":380},[370,1821,435],{"class":380},[370,1823,1824],{"class":384},"Customer overcharged",[370,1826,831],{"class":380},[370,1828,1829,1831,1833],{"class":372,"line":499},[370,1830,580],{"class":380},[370,1832,494],{"class":391},[370,1834,444],{"class":380},[147,1836,1838],{"className":696,"code":1837,"filename":698,"language":699,"meta":156,"style":156},"refund = client.payments.refund(\n    \"pay_abc123\",\n    amount=50000,\n    reason=\"Customer overcharged\"\n)\n",[154,1839,1840,1845,1850,1855,1860],{"__ignoreMap":156},[370,1841,1842],{"class":372,"line":373},[370,1843,1844],{},"refund = client.payments.refund(\n",[370,1846,1847],{"class":372,"line":395},[370,1848,1849],{},"    \"pay_abc123\",\n",[370,1851,1852],{"class":372,"line":453},[370,1853,1854],{},"    amount=50000,\n",[370,1856,1857],{"class":372,"line":499},[370,1858,1859],{},"    reason=\"Customer overcharged\"\n",[370,1861,1862],{"class":372,"line":504},[370,1863,995],{},[138,1865,1866,1867,1870,1871,482],{},"The refund goes back through the provider that took the payment (pass ",[154,1868,1869],{},"\"recordOnly\": true"," if you already refunded it elsewhere), and a payment can be refunded once. What was refunded comes off the invoice's ",[154,1872,199],{},[269,1874,1875,1881,1894],{},[272,1876,1877,1880],{},[202,1878,1879],{},"An open invoice"," (a deposit or instalment was refunded) is due that much more again.",[272,1882,1883,1886,1887,1889,1890,1893],{},[202,1884,1885],{},"A paid invoice"," stays ",[154,1888,212],{},"; the refund is recorded on the payment, and ",[154,1891,1892],{},"payment.refunded"," is sent.",[272,1895,1896,1899,1900,1903],{},[202,1897,1898],{},"A duplicate payment"," (money that arrived after the invoice was already paid or voided, flagged by ",[154,1901,1902],{},"payment.duplicate",") never counted toward the invoice, so refunding it leaves the invoice as it is.",[142,1905,1907],{"id":1906},"payment-statuses","Payment Statuses",[158,1909,1910,1919],{},[161,1911,1912],{},[164,1913,1914,1916],{},[167,1915,169],{},[167,1917,1918],{},"Description",[174,1920,1921,1930,1940,1950,1959],{},[164,1922,1923,1927],{},[179,1924,1925],{},[154,1926,193],{},[179,1928,1929],{},"Payment initiated but not yet processed",[164,1931,1932,1937],{},[179,1933,1934],{},[154,1935,1936],{},"PROCESSING",[179,1938,1939],{},"Payment is being processed by the provider",[164,1941,1942,1947],{},[179,1943,1944],{},[154,1945,1946],{},"SUCCEEDED",[179,1948,1949],{},"Payment completed successfully",[164,1951,1952,1956],{},[179,1953,1954],{},[154,1955,226],{},[179,1957,1958],{},"Payment attempt failed",[164,1960,1961,1966],{},[179,1962,1963],{},[154,1964,1965],{},"REFUNDED",[179,1967,1968],{},"Payment has been refunded",[1970,1971,1972],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}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 .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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}",{"title":156,"searchDepth":395,"depth":395,"links":1974},[1975,1976,1977,1978,1979,1980,1981,1982,1986],{"id":144,"depth":395,"text":145},{"id":255,"depth":395,"text":256},{"id":355,"depth":395,"text":356},{"id":741,"depth":395,"text":742},{"id":998,"depth":395,"text":999},{"id":1258,"depth":395,"text":1259},{"id":1429,"depth":395,"text":1430},{"id":1580,"depth":395,"text":1581,"children":1983},[1984,1985],{"id":1588,"depth":453,"text":1589},{"id":1687,"depth":453,"text":1688},{"id":1906,"depth":395,"text":1907},"Manage invoices and process payments through multiple providers.","md",null,{},{"title":105,"description":1987},"oCwKyp0RlaiG8Vqs4uADeNSqhiO0Rc-_0k7VSAvFRH8",[1994,1996],{"title":101,"path":102,"stem":103,"description":1995,"children":-1},"Manage the full subscription lifecycle including creation, pausing, cancellation, and plan changes.",{"title":109,"path":110,"stem":111,"description":1997,"children":-1},"Configure global and African payment providers to process payments for your tenants.",1793401242783]