[{"data":1,"prerenderedAt":1896},["ShallowReactive",2],{"navigation_docs":3,"-guides-customers":132,"-guides-customers-surround":1891},[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":53,"body":134,"description":1885,"extension":1886,"links":1887,"meta":1888,"navigation":523,"path":54,"seo":1889,"stem":55,"__hash__":1890},"docs\u002F3.guides\u002F1.customers.md",{"type":135,"value":136,"toc":1872},"minimark",[137,141,146,149,331,335,338,865,873,877,880,1171,1178,1182,1185,1190,1206,1210,1391,1395,1600,1604,1718,1722,1725,1824,1828,1832,1868],[138,139,140],"p",{},"Customers are the core entity in PimaBill. Every subscription, invoice, and payment is associated with a customer. This guide covers all customer operations in detail.",[142,143,145],"h2",{"id":144},"customer-object","Customer Object",[138,147,148],{},"A customer record contains the following fields:",[150,151,152,168],"table",{},[153,154,155],"thead",{},[156,157,158,162,165],"tr",{},[159,160,161],"th",{},"Field",[159,163,164],{},"Type",[159,166,167],{},"Description",[169,170,171,190,202,214,226,238,250,269,282,295,307,319],"tbody",{},[156,172,173,180,183],{},[174,175,176],"td",{},[177,178,179],"code",{},"id",[174,181,182],{},"string",[174,184,185,186,189],{},"Unique identifier (e.g., ",[177,187,188],{},"cust_x1y2z3",")",[156,191,192,197,199],{},[174,193,194],{},[177,195,196],{},"externalId",[174,198,182],{},[174,200,201],{},"Your application's user ID for cross-referencing",[156,203,204,209,211],{},[174,205,206],{},[177,207,208],{},"email",[174,210,182],{},[174,212,213],{},"Customer's email address (unique per tenant)",[156,215,216,221,223],{},[174,217,218],{},[177,219,220],{},"name",[174,222,182],{},[174,224,225],{},"Customer's full name",[156,227,228,233,235],{},[174,229,230],{},[177,231,232],{},"country",[174,234,182],{},[174,236,237],{},"ISO 3166-1 alpha-2 country code",[156,239,240,245,247],{},[174,241,242],{},[177,243,244],{},"currency",[174,246,182],{},[174,248,249],{},"Preferred currency (ISO 4217)",[156,251,252,257,259],{},[174,253,254],{},[177,255,256],{},"status",[174,258,182],{},[174,260,261,262,265,266],{},"Customer status: ",[177,263,264],{},"active"," or ",[177,267,268],{},"inactive",[156,270,271,276,279],{},[174,272,273],{},[177,274,275],{},"metadata",[174,277,278],{},"object",[174,280,281],{},"Custom key-value pairs for your application data",[156,283,284,289,292],{},[174,285,286],{},[177,287,288],{},"totalSpent",[174,290,291],{},"number",[174,293,294],{},"Lifetime total amount paid",[156,296,297,302,304],{},[174,298,299],{},[177,300,301],{},"activeSubscriptions",[174,303,291],{},[174,305,306],{},"Count of active subscriptions",[156,308,309,314,316],{},[174,310,311],{},[177,312,313],{},"createdAt",[174,315,182],{},[174,317,318],{},"ISO 8601 creation timestamp",[156,320,321,326,328],{},[174,322,323],{},[177,324,325],{},"updatedAt",[174,327,182],{},[174,329,330],{},"ISO 8601 last update timestamp",[142,332,334],{"id":333},"creating-customers","Creating Customers",[138,336,337],{},"Create a customer with at minimum an email address and name.",[339,340,342,482,776],"code-group",{"sync":341},"lang",[343,344,350],"pre",{"className":345,"code":346,"filename":347,"language":348,"meta":349,"style":349},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl -X POST http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fcustomers \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\" \\\n  -d '{\n    \"externalId\": \"usr_98765\",\n    \"email\": \"sarah@kampaltech.ug\",\n    \"name\": \"Nakato Sarah\",\n    \"country\": \"UG\",\n    \"currency\": \"UGX\",\n    \"metadata\": {\n      \"userId\": \"usr_98765\",\n      \"accountType\": \"business\"\n    }\n  }'\n","cURL","bash","",[177,351,352,375,393,407,419,425,431,437,443,449,455,461,467,473],{"__ignoreMap":349},[353,354,357,361,365,368,371],"span",{"class":355,"line":356},"line",1,[353,358,360],{"class":359},"sBMFI","curl",[353,362,364],{"class":363},"sfazB"," -X",[353,366,367],{"class":363}," POST",[353,369,370],{"class":363}," http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fcustomers",[353,372,374],{"class":373},"sTEyZ"," \\\n",[353,376,378,381,385,388,391],{"class":355,"line":377},2,[353,379,380],{"class":363},"  -H",[353,382,384],{"class":383},"sMK4o"," \"",[353,386,387],{"class":363},"Content-Type: application\u002Fjson",[353,389,390],{"class":383},"\"",[353,392,374],{"class":373},[353,394,396,398,400,403,405],{"class":355,"line":395},3,[353,397,380],{"class":363},[353,399,384],{"class":383},[353,401,402],{"class":363},"Authorization: Bearer sk_live_a1b2c3d4...",[353,404,390],{"class":383},[353,406,374],{"class":373},[353,408,410,413,416],{"class":355,"line":409},4,[353,411,412],{"class":363},"  -d",[353,414,415],{"class":383}," '",[353,417,418],{"class":363},"{\n",[353,420,422],{"class":355,"line":421},5,[353,423,424],{"class":363},"    \"externalId\": \"usr_98765\",\n",[353,426,428],{"class":355,"line":427},6,[353,429,430],{"class":363},"    \"email\": \"sarah@kampaltech.ug\",\n",[353,432,434],{"class":355,"line":433},7,[353,435,436],{"class":363},"    \"name\": \"Nakato Sarah\",\n",[353,438,440],{"class":355,"line":439},8,[353,441,442],{"class":363},"    \"country\": \"UG\",\n",[353,444,446],{"class":355,"line":445},9,[353,447,448],{"class":363},"    \"currency\": \"UGX\",\n",[353,450,452],{"class":355,"line":451},10,[353,453,454],{"class":363},"    \"metadata\": {\n",[353,456,458],{"class":355,"line":457},11,[353,459,460],{"class":363},"      \"userId\": \"usr_98765\",\n",[353,462,464],{"class":355,"line":463},12,[353,465,466],{"class":363},"      \"accountType\": \"business\"\n",[353,468,470],{"class":355,"line":469},13,[353,471,472],{"class":363},"    }\n",[353,474,476,479],{"class":355,"line":475},14,[353,477,478],{"class":363},"  }",[353,480,481],{"class":383},"'\n",[343,483,488],{"className":484,"code":485,"filename":486,"language":487,"meta":349,"style":349},"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 customer = await client.customers.create({\n  externalId: 'usr_98765',\n  email: 'sarah@kampaltech.ug',\n  name: 'Nakato Sarah',\n  country: 'UG',\n  currency: 'UGX',\n  metadata: {\n    userId: 'usr_98765',\n    accountType: 'business'\n  }\n});\n\nconsole.log('Customer created:', customer.id);\n","TypeScript","typescript",[177,489,490,519,525,569,573,603,620,636,652,668,684,694,709,723,728,738,743],{"__ignoreMap":349},[353,491,492,496,499,502,505,508,510,513,516],{"class":355,"line":356},[353,493,495],{"class":494},"s7zQu","import",[353,497,498],{"class":383}," {",[353,500,501],{"class":373}," PimaBillClient",[353,503,504],{"class":383}," }",[353,506,507],{"class":494}," from",[353,509,415],{"class":383},[353,511,512],{"class":363},"pimabill",[353,514,515],{"class":383},"'",[353,517,518],{"class":383},";\n",[353,520,521],{"class":355,"line":377},[353,522,524],{"emptyLinePlaceholder":523},true,"\n",[353,526,527,531,534,537,540,543,546,549,553,556,558,561,563,565,567],{"class":355,"line":395},[353,528,530],{"class":529},"spNyl","const",[353,532,533],{"class":373}," client ",[353,535,536],{"class":383},"=",[353,538,539],{"class":383}," new",[353,541,501],{"class":542},"s2Zo4",[353,544,545],{"class":373},"(",[353,547,548],{"class":383},"{",[353,550,552],{"class":551},"swJcz"," token",[353,554,555],{"class":383},":",[353,557,415],{"class":383},[353,559,560],{"class":363},"sk_live_a1b2c3d4...",[353,562,515],{"class":383},[353,564,504],{"class":383},[353,566,189],{"class":373},[353,568,518],{"class":383},[353,570,571],{"class":355,"line":409},[353,572,524],{"emptyLinePlaceholder":523},[353,574,575,577,580,582,585,588,591,594,596,599,601],{"class":355,"line":421},[353,576,530],{"class":529},[353,578,579],{"class":373}," customer ",[353,581,536],{"class":383},[353,583,584],{"class":494}," await",[353,586,587],{"class":373}," client",[353,589,590],{"class":383},".",[353,592,593],{"class":373},"customers",[353,595,590],{"class":383},[353,597,598],{"class":542},"create",[353,600,545],{"class":373},[353,602,418],{"class":383},[353,604,605,608,610,612,615,617],{"class":355,"line":427},[353,606,607],{"class":551},"  externalId",[353,609,555],{"class":383},[353,611,415],{"class":383},[353,613,614],{"class":363},"usr_98765",[353,616,515],{"class":383},[353,618,619],{"class":383},",\n",[353,621,622,625,627,629,632,634],{"class":355,"line":433},[353,623,624],{"class":551},"  email",[353,626,555],{"class":383},[353,628,415],{"class":383},[353,630,631],{"class":363},"sarah@kampaltech.ug",[353,633,515],{"class":383},[353,635,619],{"class":383},[353,637,638,641,643,645,648,650],{"class":355,"line":439},[353,639,640],{"class":551},"  name",[353,642,555],{"class":383},[353,644,415],{"class":383},[353,646,647],{"class":363},"Nakato Sarah",[353,649,515],{"class":383},[353,651,619],{"class":383},[353,653,654,657,659,661,664,666],{"class":355,"line":445},[353,655,656],{"class":551},"  country",[353,658,555],{"class":383},[353,660,415],{"class":383},[353,662,663],{"class":363},"UG",[353,665,515],{"class":383},[353,667,619],{"class":383},[353,669,670,673,675,677,680,682],{"class":355,"line":451},[353,671,672],{"class":551},"  currency",[353,674,555],{"class":383},[353,676,415],{"class":383},[353,678,679],{"class":363},"UGX",[353,681,515],{"class":383},[353,683,619],{"class":383},[353,685,686,689,691],{"class":355,"line":457},[353,687,688],{"class":551},"  metadata",[353,690,555],{"class":383},[353,692,693],{"class":383}," {\n",[353,695,696,699,701,703,705,707],{"class":355,"line":463},[353,697,698],{"class":551},"    userId",[353,700,555],{"class":383},[353,702,415],{"class":383},[353,704,614],{"class":363},[353,706,515],{"class":383},[353,708,619],{"class":383},[353,710,711,714,716,718,721],{"class":355,"line":469},[353,712,713],{"class":551},"    accountType",[353,715,555],{"class":383},[353,717,415],{"class":383},[353,719,720],{"class":363},"business",[353,722,481],{"class":383},[353,724,725],{"class":355,"line":475},[353,726,727],{"class":383},"  }\n",[353,729,731,734,736],{"class":355,"line":730},15,[353,732,733],{"class":383},"}",[353,735,189],{"class":373},[353,737,518],{"class":383},[353,739,741],{"class":355,"line":740},16,[353,742,524],{"emptyLinePlaceholder":523},[353,744,746,749,751,754,756,758,761,763,766,769,771,774],{"class":355,"line":745},17,[353,747,748],{"class":373},"console",[353,750,590],{"class":383},[353,752,753],{"class":542},"log",[353,755,545],{"class":373},[353,757,515],{"class":383},[353,759,760],{"class":363},"Customer created:",[353,762,515],{"class":383},[353,764,765],{"class":383},",",[353,767,768],{"class":373}," customer",[353,770,590],{"class":383},[353,772,773],{"class":373},"id)",[353,775,518],{"class":383},[343,777,782],{"className":778,"code":779,"filename":780,"language":781,"meta":349,"style":349},"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\ncustomer = client.customers.create(\n    external_id=\"usr_98765\",\n    email=\"sarah@kampaltech.ug\",\n    name=\"Nakato Sarah\",\n    country=\"UG\",\n    currency=\"UGX\",\n    metadata={\n        \"user_id\": \"usr_98765\",\n        \"account_type\": \"business\"\n    }\n)\n\nprint(f\"Customer created: {customer.id}\")\n","Python","python",[177,783,784,789,793,798,802,807,812,817,822,827,832,837,842,847,851,856,860],{"__ignoreMap":349},[353,785,786],{"class":355,"line":356},[353,787,788],{},"from pimabill import PimaBillClient\n",[353,790,791],{"class":355,"line":377},[353,792,524],{"emptyLinePlaceholder":523},[353,794,795],{"class":355,"line":395},[353,796,797],{},"client = PimaBillClient(token=\"sk_live_a1b2c3d4...\")\n",[353,799,800],{"class":355,"line":409},[353,801,524],{"emptyLinePlaceholder":523},[353,803,804],{"class":355,"line":421},[353,805,806],{},"customer = client.customers.create(\n",[353,808,809],{"class":355,"line":427},[353,810,811],{},"    external_id=\"usr_98765\",\n",[353,813,814],{"class":355,"line":433},[353,815,816],{},"    email=\"sarah@kampaltech.ug\",\n",[353,818,819],{"class":355,"line":439},[353,820,821],{},"    name=\"Nakato Sarah\",\n",[353,823,824],{"class":355,"line":445},[353,825,826],{},"    country=\"UG\",\n",[353,828,829],{"class":355,"line":451},[353,830,831],{},"    currency=\"UGX\",\n",[353,833,834],{"class":355,"line":457},[353,835,836],{},"    metadata={\n",[353,838,839],{"class":355,"line":463},[353,840,841],{},"        \"user_id\": \"usr_98765\",\n",[353,843,844],{"class":355,"line":469},[353,845,846],{},"        \"account_type\": \"business\"\n",[353,848,849],{"class":355,"line":475},[353,850,472],{},[353,852,853],{"class":355,"line":730},[353,854,855],{},")\n",[353,857,858],{"class":355,"line":740},[353,859,524],{"emptyLinePlaceholder":523},[353,861,862],{"class":355,"line":745},[353,863,864],{},"print(f\"Customer created: {customer.id}\")\n",[866,867,868,869,872],"note",{},"Customer email addresses must be unique within your tenant. Attempting to create a customer with an existing email will return a ",[177,870,871],{},"409 Conflict"," error.",[142,874,876],{"id":875},"updating-customers","Updating Customers",[138,878,879],{},"Update any customer field. Only the fields you provide will be updated; omitted fields remain unchanged.",[339,881,882,966,1116],{"sync":341},[343,883,885],{"className":345,"code":884,"filename":347,"language":348,"meta":349,"style":349},"curl -X PATCH http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fcustomers\u002Fcust_x1y2z3 \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\" \\\n  -d '{\n    \"name\": \"Nakato Sarah Williams\",\n    \"metadata\": {\n      \"userId\": \"usr_98765\",\n      \"accountType\": \"enterprise\",\n      \"upgradeDate\": \"2025-03-01\"\n    }\n  }'\n",[177,886,887,901,913,925,933,938,942,946,951,956,960],{"__ignoreMap":349},[353,888,889,891,893,896,899],{"class":355,"line":356},[353,890,360],{"class":359},[353,892,364],{"class":363},[353,894,895],{"class":363}," PATCH",[353,897,898],{"class":363}," http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fcustomers\u002Fcust_x1y2z3",[353,900,374],{"class":373},[353,902,903,905,907,909,911],{"class":355,"line":377},[353,904,380],{"class":363},[353,906,384],{"class":383},[353,908,387],{"class":363},[353,910,390],{"class":383},[353,912,374],{"class":373},[353,914,915,917,919,921,923],{"class":355,"line":395},[353,916,380],{"class":363},[353,918,384],{"class":383},[353,920,402],{"class":363},[353,922,390],{"class":383},[353,924,374],{"class":373},[353,926,927,929,931],{"class":355,"line":409},[353,928,412],{"class":363},[353,930,415],{"class":383},[353,932,418],{"class":363},[353,934,935],{"class":355,"line":421},[353,936,937],{"class":363},"    \"name\": \"Nakato Sarah Williams\",\n",[353,939,940],{"class":355,"line":427},[353,941,454],{"class":363},[353,943,944],{"class":355,"line":433},[353,945,460],{"class":363},[353,947,948],{"class":355,"line":439},[353,949,950],{"class":363},"      \"accountType\": \"enterprise\",\n",[353,952,953],{"class":355,"line":445},[353,954,955],{"class":363},"      \"upgradeDate\": \"2025-03-01\"\n",[353,957,958],{"class":355,"line":451},[353,959,472],{"class":363},[353,961,962,964],{"class":355,"line":457},[353,963,478],{"class":363},[353,965,481],{"class":383},[343,967,969],{"className":484,"code":968,"filename":486,"language":487,"meta":349,"style":349},"const updated = await client.customers.update('cust_x1y2z3', {\n  name: 'Nakato Sarah Williams',\n  metadata: {\n    userId: 'usr_98765',\n    accountType: 'enterprise',\n    upgradeDate: '2025-03-01'\n  }\n});\n\nconsole.log('Updated:', updated.name);\n",[177,970,971,1005,1020,1028,1042,1057,1071,1075,1083,1087],{"__ignoreMap":349},[353,972,973,975,978,980,982,984,986,988,990,993,995,997,999,1001,1003],{"class":355,"line":356},[353,974,530],{"class":529},[353,976,977],{"class":373}," updated ",[353,979,536],{"class":383},[353,981,584],{"class":494},[353,983,587],{"class":373},[353,985,590],{"class":383},[353,987,593],{"class":373},[353,989,590],{"class":383},[353,991,992],{"class":542},"update",[353,994,545],{"class":373},[353,996,515],{"class":383},[353,998,188],{"class":363},[353,1000,515],{"class":383},[353,1002,765],{"class":383},[353,1004,693],{"class":383},[353,1006,1007,1009,1011,1013,1016,1018],{"class":355,"line":377},[353,1008,640],{"class":551},[353,1010,555],{"class":383},[353,1012,415],{"class":383},[353,1014,1015],{"class":363},"Nakato Sarah Williams",[353,1017,515],{"class":383},[353,1019,619],{"class":383},[353,1021,1022,1024,1026],{"class":355,"line":395},[353,1023,688],{"class":551},[353,1025,555],{"class":383},[353,1027,693],{"class":383},[353,1029,1030,1032,1034,1036,1038,1040],{"class":355,"line":409},[353,1031,698],{"class":551},[353,1033,555],{"class":383},[353,1035,415],{"class":383},[353,1037,614],{"class":363},[353,1039,515],{"class":383},[353,1041,619],{"class":383},[353,1043,1044,1046,1048,1050,1053,1055],{"class":355,"line":421},[353,1045,713],{"class":551},[353,1047,555],{"class":383},[353,1049,415],{"class":383},[353,1051,1052],{"class":363},"enterprise",[353,1054,515],{"class":383},[353,1056,619],{"class":383},[353,1058,1059,1062,1064,1066,1069],{"class":355,"line":427},[353,1060,1061],{"class":551},"    upgradeDate",[353,1063,555],{"class":383},[353,1065,415],{"class":383},[353,1067,1068],{"class":363},"2025-03-01",[353,1070,481],{"class":383},[353,1072,1073],{"class":355,"line":433},[353,1074,727],{"class":383},[353,1076,1077,1079,1081],{"class":355,"line":439},[353,1078,733],{"class":383},[353,1080,189],{"class":373},[353,1082,518],{"class":383},[353,1084,1085],{"class":355,"line":445},[353,1086,524],{"emptyLinePlaceholder":523},[353,1088,1089,1091,1093,1095,1097,1099,1102,1104,1106,1109,1111,1114],{"class":355,"line":451},[353,1090,748],{"class":373},[353,1092,590],{"class":383},[353,1094,753],{"class":542},[353,1096,545],{"class":373},[353,1098,515],{"class":383},[353,1100,1101],{"class":363},"Updated:",[353,1103,515],{"class":383},[353,1105,765],{"class":383},[353,1107,1108],{"class":373}," updated",[353,1110,590],{"class":383},[353,1112,1113],{"class":373},"name)",[353,1115,518],{"class":383},[343,1117,1119],{"className":778,"code":1118,"filename":780,"language":781,"meta":349,"style":349},"updated = client.customers.update(\n    \"cust_x1y2z3\",\n    name=\"Nakato Sarah Williams\",\n    metadata={\n        \"user_id\": \"usr_98765\",\n        \"account_type\": \"enterprise\",\n        \"upgrade_date\": \"2025-03-01\"\n    }\n)\n\nprint(f\"Updated: {updated.name}\")\n",[177,1120,1121,1126,1131,1136,1140,1144,1149,1154,1158,1162,1166],{"__ignoreMap":349},[353,1122,1123],{"class":355,"line":356},[353,1124,1125],{},"updated = client.customers.update(\n",[353,1127,1128],{"class":355,"line":377},[353,1129,1130],{},"    \"cust_x1y2z3\",\n",[353,1132,1133],{"class":355,"line":395},[353,1134,1135],{},"    name=\"Nakato Sarah Williams\",\n",[353,1137,1138],{"class":355,"line":409},[353,1139,836],{},[353,1141,1142],{"class":355,"line":421},[353,1143,841],{},[353,1145,1146],{"class":355,"line":427},[353,1147,1148],{},"        \"account_type\": \"enterprise\",\n",[353,1150,1151],{"class":355,"line":433},[353,1152,1153],{},"        \"upgrade_date\": \"2025-03-01\"\n",[353,1155,1156],{"class":355,"line":439},[353,1157,472],{},[353,1159,1160],{"class":355,"line":445},[353,1161,855],{},[353,1163,1164],{"class":355,"line":451},[353,1165,524],{"emptyLinePlaceholder":523},[353,1167,1168],{"class":355,"line":457},[353,1169,1170],{},"print(f\"Updated: {updated.name}\")\n",[1172,1173,1174,1175,1177],"warning",{},"The ",[177,1176,275],{}," field is replaced entirely on update. If you want to add a new key while preserving existing ones, include all existing metadata keys in the update request.",[142,1179,1181],{"id":1180},"listing-and-filtering-customers","Listing and Filtering Customers",[138,1183,1184],{},"Retrieve customers with pagination, search, and sorting.",[1186,1187,1189],"h3",{"id":1188},"find-a-customer-by-your-own-id","Find a customer by your own ID",[138,1191,1192,1195,1196,1198,1199,1202,1203,1205],{},[177,1193,1194],{},"GET \u002Fapi\u002Fcustomers?externalId=usr_98765"," returns the customer created with that ",[177,1197,196],{}," (an empty ",[177,1200,1201],{},"data"," list if there is none). IDs differ between live and the sandbox, but your ",[177,1204,196],{}," is the same in both, so use this rather than storing PimaBill IDs.",[1186,1207,1209],{"id":1208},"basic-listing","Basic Listing",[339,1211,1212,1246,1372],{"sync":341},[343,1213,1215],{"className":345,"code":1214,"filename":347,"language":348,"meta":349,"style":349},"curl -X GET \"http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fcustomers?page=1&limit=20\" \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\"\n",[177,1216,1217,1235],{"__ignoreMap":349},[353,1218,1219,1221,1223,1226,1228,1231,1233],{"class":355,"line":356},[353,1220,360],{"class":359},[353,1222,364],{"class":363},[353,1224,1225],{"class":363}," GET",[353,1227,384],{"class":383},[353,1229,1230],{"class":363},"http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fcustomers?page=1&limit=20",[353,1232,390],{"class":383},[353,1234,374],{"class":373},[353,1236,1237,1239,1241,1243],{"class":355,"line":377},[353,1238,380],{"class":363},[353,1240,384],{"class":383},[353,1242,402],{"class":363},[353,1244,1245],{"class":383},"\"\n",[343,1247,1249],{"className":484,"code":1248,"filename":486,"language":487,"meta":349,"style":349},"const customers = await client.customers.list({\n  page: 1,\n  limit: 20\n});\n\nconsole.log(`Showing ${customers.data.length} of ${customers.meta.total} customers`);\n",[177,1250,1251,1277,1290,1300,1308,1312],{"__ignoreMap":349},[353,1252,1253,1255,1258,1260,1262,1264,1266,1268,1270,1273,1275],{"class":355,"line":356},[353,1254,530],{"class":529},[353,1256,1257],{"class":373}," customers ",[353,1259,536],{"class":383},[353,1261,584],{"class":494},[353,1263,587],{"class":373},[353,1265,590],{"class":383},[353,1267,593],{"class":373},[353,1269,590],{"class":383},[353,1271,1272],{"class":542},"list",[353,1274,545],{"class":373},[353,1276,418],{"class":383},[353,1278,1279,1282,1284,1288],{"class":355,"line":377},[353,1280,1281],{"class":551},"  page",[353,1283,555],{"class":383},[353,1285,1287],{"class":1286},"sbssI"," 1",[353,1289,619],{"class":383},[353,1291,1292,1295,1297],{"class":355,"line":395},[353,1293,1294],{"class":551},"  limit",[353,1296,555],{"class":383},[353,1298,1299],{"class":1286}," 20\n",[353,1301,1302,1304,1306],{"class":355,"line":409},[353,1303,733],{"class":383},[353,1305,189],{"class":373},[353,1307,518],{"class":383},[353,1309,1310],{"class":355,"line":421},[353,1311,524],{"emptyLinePlaceholder":523},[353,1313,1314,1316,1318,1320,1322,1325,1328,1331,1333,1335,1337,1339,1342,1344,1347,1349,1351,1353,1356,1358,1361,1363,1366,1368,1370],{"class":355,"line":427},[353,1315,748],{"class":373},[353,1317,590],{"class":383},[353,1319,753],{"class":542},[353,1321,545],{"class":373},[353,1323,1324],{"class":383},"`",[353,1326,1327],{"class":363},"Showing ",[353,1329,1330],{"class":383},"${",[353,1332,593],{"class":373},[353,1334,590],{"class":383},[353,1336,1201],{"class":373},[353,1338,590],{"class":383},[353,1340,1341],{"class":373},"length",[353,1343,733],{"class":383},[353,1345,1346],{"class":363}," of ",[353,1348,1330],{"class":383},[353,1350,593],{"class":373},[353,1352,590],{"class":383},[353,1354,1355],{"class":373},"meta",[353,1357,590],{"class":383},[353,1359,1360],{"class":373},"total",[353,1362,733],{"class":383},[353,1364,1365],{"class":363}," customers",[353,1367,1324],{"class":383},[353,1369,189],{"class":373},[353,1371,518],{"class":383},[343,1373,1375],{"className":778,"code":1374,"filename":780,"language":781,"meta":349,"style":349},"customers = client.customers.list(page=1, limit=20)\n\nprint(f\"Showing {len(customers.data)} of {customers.meta.total} customers\")\n",[177,1376,1377,1382,1386],{"__ignoreMap":349},[353,1378,1379],{"class":355,"line":356},[353,1380,1381],{},"customers = client.customers.list(page=1, limit=20)\n",[353,1383,1384],{"class":355,"line":377},[353,1385,524],{"emptyLinePlaceholder":523},[353,1387,1388],{"class":355,"line":395},[353,1389,1390],{},"print(f\"Showing {len(customers.data)} of {customers.meta.total} customers\")\n",[1186,1392,1394],{"id":1393},"search-by-name-or-email","Search by Name or Email",[339,1396,1397,1429,1576],{"sync":341},[343,1398,1400],{"className":345,"code":1399,"filename":347,"language":348,"meta":349,"style":349},"curl -X GET \"http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fcustomers?search=sarah&page=1&limit=20\" \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\"\n",[177,1401,1402,1419],{"__ignoreMap":349},[353,1403,1404,1406,1408,1410,1412,1415,1417],{"class":355,"line":356},[353,1405,360],{"class":359},[353,1407,364],{"class":363},[353,1409,1225],{"class":363},[353,1411,384],{"class":383},[353,1413,1414],{"class":363},"http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fcustomers?search=sarah&page=1&limit=20",[353,1416,390],{"class":383},[353,1418,374],{"class":373},[353,1420,1421,1423,1425,1427],{"class":355,"line":377},[353,1422,380],{"class":363},[353,1424,384],{"class":383},[353,1426,402],{"class":363},[353,1428,1245],{"class":383},[343,1430,1432],{"className":484,"code":1431,"filename":486,"language":487,"meta":349,"style":349},"const results = await client.customers.list({\n  search: 'sarah',\n  page: 1,\n  limit: 20\n});\n\nfor (const customer of results.data) {\n  console.log(`${customer.name} - ${customer.email}`);\n}\n",[177,1433,1434,1459,1475,1485,1493,1501,1505,1530,1571],{"__ignoreMap":349},[353,1435,1436,1438,1441,1443,1445,1447,1449,1451,1453,1455,1457],{"class":355,"line":356},[353,1437,530],{"class":529},[353,1439,1440],{"class":373}," results ",[353,1442,536],{"class":383},[353,1444,584],{"class":494},[353,1446,587],{"class":373},[353,1448,590],{"class":383},[353,1450,593],{"class":373},[353,1452,590],{"class":383},[353,1454,1272],{"class":542},[353,1456,545],{"class":373},[353,1458,418],{"class":383},[353,1460,1461,1464,1466,1468,1471,1473],{"class":355,"line":377},[353,1462,1463],{"class":551},"  search",[353,1465,555],{"class":383},[353,1467,415],{"class":383},[353,1469,1470],{"class":363},"sarah",[353,1472,515],{"class":383},[353,1474,619],{"class":383},[353,1476,1477,1479,1481,1483],{"class":355,"line":395},[353,1478,1281],{"class":551},[353,1480,555],{"class":383},[353,1482,1287],{"class":1286},[353,1484,619],{"class":383},[353,1486,1487,1489,1491],{"class":355,"line":409},[353,1488,1294],{"class":551},[353,1490,555],{"class":383},[353,1492,1299],{"class":1286},[353,1494,1495,1497,1499],{"class":355,"line":421},[353,1496,733],{"class":383},[353,1498,189],{"class":373},[353,1500,518],{"class":383},[353,1502,1503],{"class":355,"line":427},[353,1504,524],{"emptyLinePlaceholder":523},[353,1506,1507,1510,1513,1515,1517,1520,1523,1525,1528],{"class":355,"line":433},[353,1508,1509],{"class":494},"for",[353,1511,1512],{"class":373}," (",[353,1514,530],{"class":529},[353,1516,579],{"class":373},[353,1518,1519],{"class":383},"of",[353,1521,1522],{"class":373}," results",[353,1524,590],{"class":383},[353,1526,1527],{"class":373},"data) ",[353,1529,418],{"class":383},[353,1531,1532,1535,1537,1539,1541,1544,1547,1549,1551,1553,1556,1558,1560,1562,1564,1567,1569],{"class":355,"line":439},[353,1533,1534],{"class":373},"  console",[353,1536,590],{"class":383},[353,1538,753],{"class":542},[353,1540,545],{"class":551},[353,1542,1543],{"class":383},"`${",[353,1545,1546],{"class":373},"customer",[353,1548,590],{"class":383},[353,1550,220],{"class":373},[353,1552,733],{"class":383},[353,1554,1555],{"class":363}," - ",[353,1557,1330],{"class":383},[353,1559,1546],{"class":373},[353,1561,590],{"class":383},[353,1563,208],{"class":373},[353,1565,1566],{"class":383},"}`",[353,1568,189],{"class":551},[353,1570,518],{"class":383},[353,1572,1573],{"class":355,"line":445},[353,1574,1575],{"class":383},"}\n",[343,1577,1579],{"className":778,"code":1578,"filename":780,"language":781,"meta":349,"style":349},"results = client.customers.list(search=\"sarah\", page=1, limit=20)\n\nfor customer in results.data:\n    print(f\"{customer.name} - {customer.email}\")\n",[177,1580,1581,1586,1590,1595],{"__ignoreMap":349},[353,1582,1583],{"class":355,"line":356},[353,1584,1585],{},"results = client.customers.list(search=\"sarah\", page=1, limit=20)\n",[353,1587,1588],{"class":355,"line":377},[353,1589,524],{"emptyLinePlaceholder":523},[353,1591,1592],{"class":355,"line":395},[353,1593,1594],{},"for customer in results.data:\n",[353,1596,1597],{"class":355,"line":409},[353,1598,1599],{},"    print(f\"{customer.name} - {customer.email}\")\n",[142,1601,1603],{"id":1602},"getting-customer-details","Getting Customer Details",[339,1605,1606,1633,1703],{"sync":341},[343,1607,1609],{"className":345,"code":1608,"filename":347,"language":348,"meta":349,"style":349},"curl -X GET http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fcustomers\u002Fcust_x1y2z3 \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\"\n",[177,1610,1611,1623],{"__ignoreMap":349},[353,1612,1613,1615,1617,1619,1621],{"class":355,"line":356},[353,1614,360],{"class":359},[353,1616,364],{"class":363},[353,1618,1225],{"class":363},[353,1620,898],{"class":363},[353,1622,374],{"class":373},[353,1624,1625,1627,1629,1631],{"class":355,"line":377},[353,1626,380],{"class":363},[353,1628,384],{"class":383},[353,1630,402],{"class":363},[353,1632,1245],{"class":383},[343,1634,1636],{"className":484,"code":1635,"filename":486,"language":487,"meta":349,"style":349},"const customer = await client.customers.get('cust_x1y2z3');\nconsole.log(JSON.stringify(customer, null, 2));\n",[177,1637,1638,1671],{"__ignoreMap":349},[353,1639,1640,1642,1644,1646,1648,1650,1652,1654,1656,1659,1661,1663,1665,1667,1669],{"class":355,"line":356},[353,1641,530],{"class":529},[353,1643,579],{"class":373},[353,1645,536],{"class":383},[353,1647,584],{"class":494},[353,1649,587],{"class":373},[353,1651,590],{"class":383},[353,1653,593],{"class":373},[353,1655,590],{"class":383},[353,1657,1658],{"class":542},"get",[353,1660,545],{"class":373},[353,1662,515],{"class":383},[353,1664,188],{"class":363},[353,1666,515],{"class":383},[353,1668,189],{"class":373},[353,1670,518],{"class":383},[353,1672,1673,1675,1677,1679,1682,1684,1687,1690,1692,1695,1698,1701],{"class":355,"line":377},[353,1674,748],{"class":373},[353,1676,590],{"class":383},[353,1678,753],{"class":542},[353,1680,1681],{"class":373},"(JSON",[353,1683,590],{"class":383},[353,1685,1686],{"class":542},"stringify",[353,1688,1689],{"class":373},"(customer",[353,1691,765],{"class":383},[353,1693,1694],{"class":383}," null,",[353,1696,1697],{"class":1286}," 2",[353,1699,1700],{"class":373},"))",[353,1702,518],{"class":383},[343,1704,1706],{"className":778,"code":1705,"filename":780,"language":781,"meta":349,"style":349},"customer = client.customers.get(\"cust_x1y2z3\")\nprint(customer)\n",[177,1707,1708,1713],{"__ignoreMap":349},[353,1709,1710],{"class":355,"line":356},[353,1711,1712],{},"customer = client.customers.get(\"cust_x1y2z3\")\n",[353,1714,1715],{"class":355,"line":377},[353,1716,1717],{},"print(customer)\n",[142,1719,1721],{"id":1720},"deleting-customers","Deleting Customers",[138,1723,1724],{},"Delete a customer and all their associated data. This action is irreversible.",[339,1726,1727,1755,1809],{"sync":341},[343,1728,1730],{"className":345,"code":1729,"filename":347,"language":348,"meta":349,"style":349},"curl -X DELETE http:\u002F\u002Flocalhost:4000\u002Fapi\u002Fcustomers\u002Fcust_x1y2z3 \\\n  -H \"Authorization: Bearer sk_live_a1b2c3d4...\"\n",[177,1731,1732,1745],{"__ignoreMap":349},[353,1733,1734,1736,1738,1741,1743],{"class":355,"line":356},[353,1735,360],{"class":359},[353,1737,364],{"class":363},[353,1739,1740],{"class":363}," DELETE",[353,1742,898],{"class":363},[353,1744,374],{"class":373},[353,1746,1747,1749,1751,1753],{"class":355,"line":377},[353,1748,380],{"class":363},[353,1750,384],{"class":383},[353,1752,402],{"class":363},[353,1754,1245],{"class":383},[343,1756,1758],{"className":484,"code":1757,"filename":486,"language":487,"meta":349,"style":349},"await client.customers.delete('cust_x1y2z3');\nconsole.log('Customer deleted');\n",[177,1759,1760,1788],{"__ignoreMap":349},[353,1761,1762,1765,1767,1769,1771,1773,1776,1778,1780,1782,1784,1786],{"class":355,"line":356},[353,1763,1764],{"class":494},"await",[353,1766,587],{"class":373},[353,1768,590],{"class":383},[353,1770,593],{"class":373},[353,1772,590],{"class":383},[353,1774,1775],{"class":542},"delete",[353,1777,545],{"class":373},[353,1779,515],{"class":383},[353,1781,188],{"class":363},[353,1783,515],{"class":383},[353,1785,189],{"class":373},[353,1787,518],{"class":383},[353,1789,1790,1792,1794,1796,1798,1800,1803,1805,1807],{"class":355,"line":377},[353,1791,748],{"class":373},[353,1793,590],{"class":383},[353,1795,753],{"class":542},[353,1797,545],{"class":373},[353,1799,515],{"class":383},[353,1801,1802],{"class":363},"Customer deleted",[353,1804,515],{"class":383},[353,1806,189],{"class":373},[353,1808,518],{"class":383},[343,1810,1812],{"className":778,"code":1811,"filename":780,"language":781,"meta":349,"style":349},"client.customers.delete(\"cust_x1y2z3\")\nprint(\"Customer deleted\")\n",[177,1813,1814,1819],{"__ignoreMap":349},[353,1815,1816],{"class":355,"line":356},[353,1817,1818],{},"client.customers.delete(\"cust_x1y2z3\")\n",[353,1820,1821],{"class":355,"line":377},[353,1822,1823],{},"print(\"Customer deleted\")\n",[1825,1826,1827],"caution",{},"Deleting a customer will cancel all active subscriptions and void all unpaid invoices. This action cannot be undone. Make sure to cancel subscriptions gracefully before deleting a customer if you need to process final invoices.",[142,1829,1831],{"id":1830},"best-practices","Best Practices",[1833,1834,1835,1843,1853,1862],"ol",{},[1836,1837,1838,1842],"li",{},[1839,1840,1841],"strong",{},"Use metadata for application data"," -- Store your application's user IDs, account types, and other relevant data in the metadata field. This makes it easy to correlate PimaBill customers with your application records.",[1836,1844,1845,1848,1849,1852],{},[1839,1846,1847],{},"Store customer IDs"," -- Save the PimaBill customer ID (",[177,1850,1851],{},"cust_...",") in your application's user record for easy lookups.",[1836,1854,1855,1858,1859,1861],{},[1839,1856,1857],{},"Validate email uniqueness"," -- The API enforces email uniqueness per tenant. Handle ",[177,1860,871],{}," errors gracefully in your integration.",[1836,1863,1864,1867],{},[1839,1865,1866],{},"Set country and currency"," -- Always provide the customer's country and preferred currency for accurate billing and payment routing.",[1869,1870,1871],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}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 pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}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}",{"title":349,"searchDepth":377,"depth":377,"links":1873},[1874,1875,1876,1877,1882,1883,1884],{"id":144,"depth":377,"text":145},{"id":333,"depth":377,"text":334},{"id":875,"depth":377,"text":876},{"id":1180,"depth":377,"text":1181,"children":1878},[1879,1880,1881],{"id":1188,"depth":395,"text":1189},{"id":1208,"depth":395,"text":1209},{"id":1393,"depth":395,"text":1394},{"id":1602,"depth":377,"text":1603},{"id":1720,"depth":377,"text":1721},{"id":1830,"depth":377,"text":1831},"Learn how to create, manage, and query customers in PimaBill.","md",null,{},{"title":53,"description":1885},"8IjPAmuldq_iDOn1lDAJNDq_UzIRESy-OizMQeZtQ6Q",[1892,1894],{"title":44,"path":45,"stem":46,"description":1893,"children":-1},"Use the PimaBill API from PHP 8.1 or later.",{"title":57,"path":58,"stem":59,"description":1895,"children":-1},"Meter what customers use, price it on their plan, and bill it automatically.",1793401244865]