{"id":199514,"date":"2026-11-11T12:18:10","date_gmt":"2026-11-11T03:18:10","guid":{"rendered":"https:\/\/support.questetra.com\/?p=199514"},"modified":"2026-11-11T12:18:10","modified_gmt":"2026-11-11T03:18:10","slug":"paypal-invoice-create-draft-2026","status":"publish","type":"post","link":"https:\/\/support.questetra.com\/en\/addons\/paypal-invoice-create-draft-2026\/","title":{"rendered":"PayPal #Invoice: Create Draft"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"68\" data-attachment-id=\"113212\" data-permalink=\"https:\/\/support.questetra.com\/en\/developer-blog\/message-start-event-http-browser\/attachment\/professional-banner-new-en\/\" data-orig-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/12\/professional-banner-new-en.png?fit=1200%2C68&amp;ssl=1\" data-orig-size=\"1200,68\" data-comments-opened=\"0\" data-image-title=\"professional-banner-new-en\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/12\/professional-banner-new-en.png?fit=1024%2C58&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/12\/professional-banner-new-en.png?resize=1200%2C68&#038;ssl=1\" alt=\"\" class=\"wp-image-113212\" srcset=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/12\/professional-banner-new-en.png?w=1200&amp;ssl=1 1200w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/12\/professional-banner-new-en.png?resize=600%2C34&amp;ssl=1 600w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/12\/professional-banner-new-en.png?resize=1024%2C58&amp;ssl=1 1024w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/12\/professional-banner-new-en.png?resize=768%2C44&amp;ssl=1 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><div class=\"su-box su-box-style-default\" id=\"\" style=\"border-color:#003e04;border-radius:0px;max-width:none\"><div class=\"su-box-title\" style=\"background-color:#267137;color:#ffffff;border-top-left-radius:0px;border-top-right-radius:0px\">PayPal: Invoice, Create Draft<\/div><div class=\"su-box-content su-u-clearfix su-u-trim\" style=\"border-bottom-left-radius:0px;border-bottom-right-radius:0px\"> Creates a draft invoice on the payment platform PayPal. To move the invoice from a draft to payable state, the SEND action is required. You can also store the invoice ID, invoice URL and status in the workflow data.<\/div><\/div>\n\n\n<div class=\"su-spoiler su-spoiler-style-modern-light su-spoiler-icon-plus-square-1\" data-anchor=\"configs\" data-scroll-offset=\"0\" data-anchor-in-url=\"no\"><div class=\"su-spoiler-title\" tabindex=\"0\" role=\"button\"><span class=\"su-spoiler-icon\"><\/span>Configs<\/div><div class=\"su-spoiler-content su-u-clearfix su-u-trim\">\n<ul class=\"fa-ul\">\n<li>A1: Select HTTP_Authz (BasicAuthn User:ClientID Passwd:SECRET)<span style=\"color:#990000;\"> *<\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-pen-square fa-lg\"><\/i><\/span> A2: Set Boolean Tax-Inclusive (true: includes, false: DEFAULT)<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-pen-square fa-lg\"><\/i><\/span> A3: Set Currency-Code (&#8220;USD&#8221;)<span style=\"color:#990000;\"> *<\/span><span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-edit fa-lg\"><\/i><\/span> A4: Set Invoice-Num and Due-Date (in 2 lines)<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-pen-square fa-lg\"><\/i><\/span> A5: Set Invoice-Date<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-pen-square fa-lg\"><\/i><\/span> B1: Set INVOICER&#8217;s Registered Email-Address<span style=\"color:#990000;\"> *<\/span><span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-edit fa-lg\"><\/i><\/span> B2: Set INVOICER&#8217;s Bizname\/Name1\/Name2\/AdditionalInfo (4 lines)<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-edit fa-lg\"><\/i><\/span> B3: Set INVOICER&#8217;s LogoUrl\/WebsiteUrl\/TaxId (in 3 lines)<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-pen-square fa-lg\"><\/i><\/span> C1: Set RECIPIENT&#8217;s Email-Address<span style=\"color:#990000;\"> *<\/span><span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-pen-square fa-lg\"><\/i><\/span> C2: Set RECIPIENT&#8217;s Language-Code for email message (eg &#8220;en-US&#8221;)<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-edit fa-lg\"><\/i><\/span> C3: Set RECIPIENT&#8217;s Bizname\/Name1\/Name2 (in 3 lines)<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-edit fa-lg\"><\/i><\/span> D: Set ADDITIONAL_RECIPIENTS Cc-Addresses (up to 10 lns)<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-edit fa-lg\"><\/i><\/span> E: Set Tsv String for Items (ItemName\/Qty\/UnitAmount&#8230;)<span style=\"color:#990000;\"> *<\/span><span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-edit fa-lg\"><\/i><\/span> F: Set Note to Recipient (Also displayed in notification)<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-edit fa-lg\"><\/i><\/span> G: Set Terms and Conditions<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li><span class=\"fa-li\"><i class=\"far fa-edit fa-lg\"><\/i><\/span> H: Set Memo (e.g. &#8220;BPMS pid: #{processInstanceId}&#8221;)<span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/li>\n<li> I: Select STRING DATA for Paypal Invoice ID (update)<\/li>\n<li> J: Select STRING DATA for invoicer_view_url (update)<\/li>\n<li> K: Select STRING DATA for Invoice Status (update)<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n<div class=\"su-spoiler su-spoiler-style-modern-light su-spoiler-icon-plus-square-1 su-spoiler-closed\" data-anchor=\"script\" data-scroll-offset=\"0\" data-anchor-in-url=\"no\"><div class=\"su-spoiler-title\" tabindex=\"0\" role=\"button\"><span class=\"su-spoiler-icon\"><\/span>Script (click to open)<\/div><div class=\"su-spoiler-content su-u-clearfix su-u-trim\">\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code>\/\/ Script for &#39;engine type: 3&#39; (&quot;GraalJS standard mode&quot;)\n\/\/ PayPal Invoicing API v2 - Create a draft invoice (2026-11-06)\n\n\/\/\/\/\/\/\/\/ START &quot;main()&quot; \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\nmain();\nfunction main(){ \n\n\/\/\/\/ == Config Retrieving \/ \u5de5\u7a0b\u30b3\u30f3\u30d5\u30a3\u30b0\u306e\u53c2\u7167 ==\nconst oauth2   = configs.getObject( &quot;AuthzConfA1&quot; ); \/\/ required (Authz by Basic_AuthN)\n  engine.log( &quot; AutomatedTask Config: Authz Setting: &quot; + oauth2.getName() );\nconst strTaxsetting     = configs.get( &quot;StrConfA2&quot; ) + &quot;&quot;;\n  let boolTaxinclusive  = false;\n  if( strTaxsetting   === &quot;true&quot; ){\n      boolTaxinclusive  = true;\n  }\n  engine.log( &quot; AutomatedTask Config: Tax Inclusive: &quot; + boolTaxinclusive );\nconst strCurrencycode   = configs.get( &quot;StrConfA3&quot; ) + &quot;&quot;; \/\/ required\n  if( strCurrencycode === &quot;&quot; ){\n    throw new Error( &quot;\\n AutomatedTask ConfigError:&quot; +\n                     &quot; Config {A3 Currency Code} not specified \\n&quot; );\n  }\nconst strInvnumInvdue   = configs.get( &quot;StrConfA4&quot; ) + &quot;&quot;;\n  let strInvnumber      = &quot;&quot;;\n  let strInvdue         = &quot;&quot;;\n  const arrInvnumInvdue = strInvnumInvdue.split(&quot;\\n&quot;);\n  if( arrInvnumInvdue.length &gt;= 1 ){\n    strInvnumber        = arrInvnumInvdue[0];\n  }\n  if( arrInvnumInvdue.length &gt;= 2 ){\n    strInvdue           = arrInvnumInvdue[1];\n  }\n  engine.log( &quot; AutomatedTask Config: Invoice Number: &quot; + strInvnumber );\n  engine.log( &quot; AutomatedTask Config: Invoice Due: &quot; + strInvdue );\n  const strInvdate        = configs.get( &quot;StrConfA5&quot; ) + &quot;&quot;;\n  engine.log( &quot; AutomatedTask Config: Invoice Date: &quot; + strInvdate );\nconst strInvoicerEmail  = configs.get( &quot;StrConfB1&quot; ) + &quot;&quot;; \/\/ required\nconst strInvoicerinfo   = configs.get( &quot;StrConfB2&quot; ) + &quot;&quot;;\n  let strInvoicerBizname = &quot;&quot;;\n  let strInvoicerName1   = &quot;&quot;;\n  let strInvoicerName2   = &quot;&quot;;\n  let strInvoicerAddit   = &quot;&quot;;\n  const arrInvoicerinfo = strInvoicerinfo.split(&quot;\\n&quot;);\n  if( arrInvoicerinfo.length &gt;= 1 ){\n    strInvoicerBizname  = arrInvoicerinfo[0];\n  }\n  if( arrInvoicerinfo.length &gt;= 2 ){\n    strInvoicerName1    = arrInvoicerinfo[1];\n  }\n  if( arrInvoicerinfo.length &gt;= 3 ){\n    strInvoicerName2    = arrInvoicerinfo[2];\n  }\n  if( arrInvoicerinfo.length &gt;= 4 ){\n    strInvoicerAddit    = arrInvoicerinfo[3];\n  }\nconst strInvoicerProfile = configs.get( &quot;StrConfB3&quot; ) + &quot;&quot;;\n  let strInvoicerLogo   = &quot;&quot;;\n  let strInvoicerWeb    = &quot;&quot;;\n  let strInvoicerTaxid  = &quot;&quot;;\n  const arrInvoicerProfile = strInvoicerProfile.split(&quot;\\n&quot;);\n  if( arrInvoicerProfile.length &gt;= 1 ){\n    strInvoicerLogo     = arrInvoicerProfile[0];\n  }\n  if( arrInvoicerProfile.length &gt;= 2 ){\n    strInvoicerWeb      = arrInvoicerProfile[1];\n  }\n  if( arrInvoicerProfile.length &gt;= 3 ){\n    strInvoicerTaxid    = arrInvoicerProfile[2];\n  }\nconst strRecipientEmail = configs.get( &quot;StrConfC1&quot; ) + &quot;&quot;; \/\/ required\n  if( strRecipientEmail === &quot;&quot; ){\n    throw new Error( &quot;\\n AutomatedTask ConfigError:&quot; +\n                     &quot; Config {C1 Recipient Email} not specified \\n&quot; );\n  }\n  engine.log( &quot; AutomatedTask Config: Recipient Email: &quot; + strRecipientEmail );\nconst strRecipientLang  = configs.get( &quot;StrConfC2&quot; ) + &quot;&quot;;\n  engine.log( &quot; AutomatedTask Config: Recipient Lang: &quot; + strRecipientLang );\nconst strRecipientinfo  = configs.get( &quot;StrConfC3&quot; ) + &quot;&quot;;\n  let strRecipientBizname = &quot;&quot;;\n  let strRecipientName1   = &quot;&quot;;\n  let strRecipientName2   = &quot;&quot;;\n  const arrRecipientinfo  = strRecipientinfo.split(&quot;\\n&quot;);\n  if( arrRecipientinfo.length &gt;= 1 ){\n    strRecipientBizname = arrRecipientinfo[0];\n  }\n  if( arrRecipientinfo.length &gt;= 2 ){\n    strRecipientName1   = arrRecipientinfo[1];\n  }\n  if( arrRecipientinfo.length &gt;= 3 ){\n    strRecipientName2   = arrRecipientinfo[2];\n  }\n  engine.log( &quot; AutomatedTask Config: Recipient BizName: &quot; + strRecipientBizname );\n  engine.log( &quot; AutomatedTask Config: Recipient Name1: &quot; + strRecipientName1 );\n  engine.log( &quot; AutomatedTask Config: Recipient Name2: &quot; + strRecipientName2 );\n  const strAdditionalRecipients = configs.get( &quot;StrConfD&quot; ) + &quot;&quot;;\n  const arrAdditionalRecipients = strAdditionalRecipients.split(\/\\r?\\n\/).map(line =&gt; line.trim()).filter(line =&gt; line !== &quot;&quot;);\n  if( strAdditionalRecipients === &quot;&quot; ){\n    engine.log( &quot; AutomatedTask Config: # of Additional Recipients: 0&quot; );\n  }else{\n    engine.log( &quot; AutomatedTask Config: # of Additional Recipients: &quot; + arrAdditionalRecipients.length );\n  }\nconst strTsvItems             = configs.get( &quot;StrConfE&quot; ) + &quot;&quot;;\n  if( strTsvItems   === &quot;&quot; ){\n    throw new Error( &quot;\\n AutomatedTask ConfigError:&quot; +\n                     &quot; Config {E TSV for Items} not specified \\n&quot; );\n  }\n  const arrTsvItems = strTsvItems.split(\/\\r?\\n\/).filter(line =&gt; line.trim() !== &quot;&quot;);\n  engine.log( &quot; AutomatedTask Config: # of Items: &quot; + arrTsvItems.length );\n  if (arrTsvItems.length === 0) {throw new Error(&quot;\u5546\u54c1\u660e\u7d30\u304c\u3042\u308a\u307e\u305b\u3093&quot;);}\nconst strNoteToRecipient      = configs.get( &quot;StrConfF&quot; ) + &quot;&quot;;\nconst strTermsConditions      = configs.get( &quot;StrConfG&quot; ) + &quot;&quot;;\nconst strMemo                 = configs.get( &quot;StrConfH&quot; ) + &quot;&quot;;\nconst strPocketInvoiceid      = configs.getObject( &quot;SelectConfI&quot; );\nconst strPocketInvoiceurl     = configs.getObject( &quot;SelectConfJ&quot; );\nconst strPocketInvoiceStatus  = configs.getObject( &quot;SelectConfK&quot; );\n\n\n\/\/\/\/ == Data Retrieving \/ \u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30c7\u30fc\u30bf\u306e\u53c2\u7167 ==\n\/\/ (Nothing. Retrieved via Expression Language in Config Retrieving)\n\n\n\/\/\/\/ == Calculating \/ \u6f14\u7b97 ==\n\/\/ prepare request1: Get an Access Token\n\/\/ (PayPal OAuth 2.0 credentials \/ Client Credentials)\n\/\/ https:\/\/developer.paypal.com\/docs\/api\/overview#get-credentials\n\/\/ https:\/\/developer.paypal.com\/docs\/api\/get-an-access-token-curl\/\nlet postUri1 = &quot;https:\/\/api-m.paypal.com\/v1\/oauth2\/token&quot;;\nlet request1 = httpClient.begin(); \/\/ HttpRequestWrapper\n    request1 = request1.authSetting( oauth2 ); \/\/ with &quot;Authorization: Basic &quot;\n    request1 = request1.formParam( &quot;grant_type&quot;, &quot;client_credentials&quot; );\nengine.log( &quot; AutomatedTask ApiRequest1 Prepared&quot; );\n\/\/ RFC 6749 - OAuth 2.0 - Client Credentials Grant\n\/\/ - https:\/\/tools.ietf.org\/html\/rfc6749#section-4.4.2\n\n\/\/ try request1\nconst response1 = request1.post( postUri1 ); \/\/ HttpResponseWrapper\nengine.log( &quot; AutomatedTask ApiRequest1 Start: &quot; + postUri1 );\nconst response1Code = response1.getStatusCode() + &quot;&quot;; \/\/ (primitive string)\nconst response1Body = response1.getResponseAsString() + &quot;&quot;;\nengine.log( &quot; AutomatedTask ApiResponse1 Status: &quot; + response1Code );\nif( response1Code !== &quot;200&quot;){\n  throw new Error( &quot;\\n AutomatedTask UnexpectedResponseError: &quot; +\n                    response1Code + &quot;\\n&quot; + response1Body + &quot;\\n&quot; );\n}\n\n\/\/ parse response1\n\/*** engine.log( response1Body ); \/\/ debug\nresponse sample\n{\n  &quot;scope&quot;:&quot;https:\/\/api.paypal.com\/v1\/payments\/.\u203b https:\/\/uri.paypal.com\/services\/invoicing\n           openid https:\/\/uri.paypal.com\/payments\/payouts ....&quot;,\n  &quot;access_token&quot;:&quot;A21AAO9wpfXXXXXXXXXXL1P96HvZkRXXXXXXXXXXDlSVGSvUjlXXXXX...XXXXX&quot;,\n  &quot;token_type&quot;:&quot;Bearer&quot;,\n  &quot;app_id&quot;:&quot;APP-6BKXXX232XXX3090N&quot;,\n  &quot;expires_in&quot;:32400,\n  &quot;nonce&quot;:&quot;2021-01-14T06:13:03Z1dgXXXCnnXXXgLKXXXgn0XXXcrJXXXoALXXXXBUXXXs&quot;\n}\n***\/\nconst response1Obj = JSON.parse( response1Body );\nconst strBearerToken = response1Obj.access_token;\n\n\n\/\/ prepare request2: Create Invoice Draft in PayPal.com\nlet request2Obj = {};\n    request2Obj.detail = {}; \/\/ &quot;detail&quot; object required in PayPal API\n    if( strInvnumber !== &quot;&quot; ){\n      request2Obj.detail.invoice_number = strInvnumber;\n    }\n    if( strInvdate !== &quot;&quot; ){\n      request2Obj.detail.invoice_date = strInvdate;\n    }\n    request2Obj.detail.currency_code  = strCurrencycode; \/\/ required in PayPal API\n    if( strNoteToRecipient !== &quot;&quot; ){\n      request2Obj.detail.note         = strNoteToRecipient;\n    }\n    if( strTermsConditions !== &quot;&quot; ){\n      request2Obj.detail.terms_and_conditions = strTermsConditions; \/\/\/ API-Doc may be wrong\n    }\n    if( strMemo !== &quot;&quot; ){\n      request2Obj.detail.memo           = strMemo;\n    }\n    if( strInvdue !== &quot;&quot; ){\n      request2Obj.detail.payment_term = {\n      term_type: &quot;DUE_ON_DATE_SPECIFIED&quot;,\n      due_date: strInvdue\n      };\n    }\n    request2Obj.invoicer = {}; \/\/ required in this addon\n    request2Obj.invoicer.email_address   = strInvoicerEmail;\n    if( strInvoicerBizname !== &quot;&quot; ){\n      request2Obj.invoicer.business_name = strInvoicerBizname;     \/\/\/ No info in API-Doc\n    }\n    request2Obj.invoicer.name = {};\n    request2Obj.invoicer.name.given_name = strInvoicerName1;\n    request2Obj.invoicer.name.surname    = strInvoicerName2;\n    if( strInvoicerLogo !== &quot;&quot; ){\n      request2Obj.invoicer.logo_url = strInvoicerLogo;\n    }\n    if( strInvoicerWeb !== &quot;&quot; ){\n      request2Obj.invoicer.website  = strInvoicerWeb;\n    }\n    if( strInvoicerTaxid !== &quot;&quot; ){\n      request2Obj.invoicer.tax_id   = strInvoicerTaxid;\n    }\n    if( strInvoicerAddit !== &quot;&quot; ){\n      request2Obj.invoicer.additional_notes = strInvoicerAddit;\n    }\n    request2Obj.primary_recipients = []; \/\/ required (length must be 1 in this addon)\n    request2Obj.primary_recipients[0] = {};\n    request2Obj.primary_recipients[0].billing_info = {};\n    request2Obj.primary_recipients[0].billing_info.email_address = strRecipientEmail;\n    if( strRecipientLang !== &quot;&quot; ){\n      request2Obj.primary_recipients[0].billing_info.language = strRecipientLang;\n    }\n    if( strRecipientBizname !== &quot;&quot; ){\n      request2Obj.primary_recipients[0].billing_info.business_name = strRecipientBizname;\n    }\n    request2Obj.primary_recipients[0].billing_info.name = {};\n    if( strRecipientName1 !== &quot;&quot; ){\n      request2Obj.primary_recipients[0].billing_info.name.given_name = strRecipientName1;\n    }\n    if( strRecipientName2 !== &quot;&quot; ){\n      request2Obj.primary_recipients[0].billing_info.name.surname = strRecipientName2;\n    }\n    if( arrAdditionalRecipients.length &gt; 0 ){\n      request2Obj.additional_recipients = arrAdditionalRecipients;\n    }\n    request2Obj.items = []; \/\/ &quot;items&quot; array required in PayPal API\n    for( let i = 0; i &lt; arrTsvItems.length; i++ ){\n      let arrColumns = arrTsvItems[i].split(&quot;\\t&quot;);\n      if (\n       arrColumns.length &lt; 3 ||\n       arrColumns[0].trim() === &quot;&quot; ||\n       arrColumns[1].trim() === &quot;&quot; ||\n       arrColumns[2].trim() === &quot;&quot;\n      ) {\n       throw new Error(\n        &quot;TSV &quot; + (i + 1) + &quot;\u884c\u76ee: \u5546\u54c1\u540d\u30fb\u6570\u91cf\u30fb\u5358\u4fa1\u306f\u5fc5\u9808\u3067\u3059&quot;\n       );\n      }\n      request2Obj.items[i] = {};\n      request2Obj.items[i].name = arrColumns[0];     \/\/ required\n      request2Obj.items[i].quantity = arrColumns[1].replace(\/,\/g, &quot;&quot;); \/\/ required\n      request2Obj.items[i].unit_amount = {};\n      request2Obj.items[i].unit_amount.currency_code = strCurrencycode;\n      request2Obj.items[i].unit_amount.value = arrColumns[2].replace(\/,\/g, &quot;&quot;); \/\/ required\n\n      if( arrColumns.length &gt;= 4 ){\n        request2Obj.items[i].description = arrColumns[3];\n      }\n      if( arrColumns.length &gt;= 6 ){\n        if( arrColumns[4] !== &quot;&quot; && arrColumns[5] !== &quot;&quot; ){\n          request2Obj.items[i].tax = {};\n          request2Obj.items[i].tax.name = arrColumns[4];\n          request2Obj.items[i].tax.percent = arrColumns[5];\n        }\n      }\n      if( arrColumns.length &gt;= 7 ){\n        if( arrColumns[6] !== &quot;&quot; ){\n          request2Obj.items[i].discount = {};\n          request2Obj.items[i].discount.amount = {};\n          request2Obj.items[i].discount.amount.currency_code = strCurrencycode;\n          request2Obj.items[i].discount.amount.value = arrColumns[6].replace(\/,\/g, &quot;&quot;);\n        }\n      }\n      if( arrColumns.length &gt;= 8 ){\n        if( arrColumns[6] !== &quot;&quot; && arrColumns[7] !== &quot;&quot; ){\n          throw new Error( &quot;\\n AutomatedTask UnexpectedTsvError:&quot; +\n                           &quot; Cannot discount by both Amount and Percent: &quot; + i + &quot;\\n&quot; );\n        }\n        if( arrColumns[7] !== &quot;&quot; ){\n          request2Obj.items[i].discount = {};\n          request2Obj.items[i].discount.percent = arrColumns[7];\n        }\n      }\n    }\n    request2Obj.configuration = {};\n    request2Obj.configuration.tax_inclusive = boolTaxinclusive;\nlet postUri2 = &quot;https:\/\/api-m.paypal.com\/v2\/invoicing\/invoices&quot;;\nlet request2 = httpClient.begin(); \/\/ HttpRequestWrapper\n    request2 = request2.bearer( strBearerToken );\n    request2 = request2.body( JSON.stringify( request2Obj ), &quot;application\/json&quot; );\nengine.log( &quot; AutomatedTask ApiRequest2 Prepared&quot; );\n\n\/\/ try request2\nconst response2 = request2.post( postUri2 ); \/\/ HttpResponseWrapper\nengine.log( &quot; AutomatedTask ApiRequest2 Start: &quot; + postUri2 );\nconst response2Code = response2.getStatusCode() + &quot;&quot;; \/\/ (primitive string)\nconst response2Body = response2.getResponseAsString() + &quot;&quot;;\nengine.log( &quot; AutomatedTask ApiResponse2 Status: &quot; + response2Code );\nif( response2Code !== &quot;201&quot;){\n  throw new Error( &quot;\\n AutomatedTask UnexpectedResponseError: &quot; +\n                    response2Code + &quot;\\n&quot; + response2Body + &quot;\\n&quot; );\n}\n\/\/ https:\/\/developer.paypal.com\/docs\/api-basics\/HTMLStatusCodes\/\n\n\/\/ parse response2\n\/*** engine.log( response2Body ); \/\/ debug\nresponse sample\n{\n  &quot;rel&quot;:&quot;self&quot;,\n  &quot;href&quot;:&quot;https:\/\/api.paypal.com\/v2\/invoicing\/invoices\/INV2-XXXX-8H2Z-XXXX-YGSU&quot;,\n  &quot;method&quot;:&quot;GET&quot;\n}\n***\/\nconst response2Obj = JSON.parse( response2Body );\n\n\n\/\/ prepare request3: Show invoice details\nconst selfLink = (response2Obj.links || [])\n  .find(link =&gt; link.rel === &quot;self&quot;);\n\nlet getUri3 = response2Obj.href\n  || (selfLink && selfLink.href)\n  || (response2Obj.id\n      ? postUri2 + &quot;\/&quot; + encodeURIComponent(response2Obj.id)\n      : null);\n\nif (!getUri3) {\n  throw new Error(&quot;\u8acb\u6c42\u66f8\u4f5c\u6210\u30ec\u30b9\u30dd\u30f3\u30b9\u304b\u3089\u8a73\u7d30\u53d6\u5f97URL\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093&quot;);\n}\n\nlet request3 = httpClient.begin(); \/\/ HttpRequestWrapper\n    request3 = request3.bearer( strBearerToken );\nengine.log( &quot; AutomatedTask ApiRequest3 Prepared&quot; );\n\n\/\/ try request3\nconst response3 = request3.get( getUri3 ); \/\/ HttpResponseWrapper\nengine.log( &quot; AutomatedTask ApiRequest3 Start: &quot; + getUri3 );\nconst response3Code = response3.getStatusCode() + &quot;&quot;; \/\/ (primitive string)\nconst response3Body = response3.getResponseAsString() + &quot;&quot;;\nengine.log( &quot; AutomatedTask ApiResponse3 Status: &quot; + response3Code );\nif( response3Code !== &quot;200&quot;){\n  throw new Error( &quot;\\n AutomatedTask UnexpectedResponseError: &quot; +\n                    response3Code + &quot;\\n&quot; + response3Body + &quot;\\n&quot; );\n}\n\n\/\/ parse response3\n\/*** engine.log( response3Body ); \/\/ debug\nresponse sample\n{\n  &quot;id&quot;:&quot;INV2-XXXX-ZDDH-XXXX-RAJ4&quot;,\n  &quot;status&quot;:&quot;DRAFT&quot;,\n  &quot;detail&quot;:{\n    &quot;currency_code&quot;:&quot;JPY&quot;,\n    &quot;note&quot;:&quot;\u201cQuestetra BPM Suite\u201d \u306f\u3001....&quot;,\n    &quot;memo&quot;:&quot;BPM 1361963&quot;,\n    &quot;additional_data&quot;:&quot;6000835 \u4eac\u90fd\u5e02\u4e2d\u4eac\u533a\u9ad8\u5bae\u753a204\u5fa1\u6c60\u30d3\u30eb4\u968e&quot;,\n    &quot;category_code&quot;:&quot;SHIPPABLE&quot;,\n    &quot;invoice_number&quot;:&quot;20210118-1361963&quot;,\n    &quot;invoice_date&quot;:&quot;2021-01-17&quot;,\n    &quot;payment_term&quot;:{\n      &quot;term_type&quot;:&quot;DUE_ON_DATE_SPECIFIED&quot;,\n      &quot;due_date&quot;:&quot;2021-04-30&quot;\n    },\n    &quot;viewed_by_recipient&quot;:false,\n    &quot;group_draft&quot;:false,\n    &quot;metadata&quot;:{\n      &quot;create_time&quot;:&quot;2021-01-18T07:00:03Z&quot;,\n      &quot;last_update_time&quot;:&quot;2021-01-18T07:00:03Z&quot;,\n      &quot;created_by_flow&quot;:&quot;REGULAR_SINGLE&quot;,\n      &quot;recipient_view_url&quot;:&quot;https:\/\/www.paypal.com\/invoice\/p\/#XXXXZDDHXXXXRAJ4&quot;,\n      &quot;invoicer_view_url&quot;:&quot;https:\/\/www.paypal.com\/invoice\/details\/INV2-XXXX-ZDDH-XXXX-RAJ4&quot;,\n      &quot;caller_type&quot;:&quot;API_V2_INVOICE&quot;\n    },\n    &quot;archived&quot;:false\n  },\n  &quot;invoicer&quot;:{ \u25c6 },\n  &quot;primary_recipients&quot;:[{ \u25c6 }],\n  &quot;additional_recipients&quot;:[ &quot;example1@example.net&quot;, &quot;example2@example.com&quot; ],\n  &quot;items&quot;:[{ \u25c6 },{ \u25c6 },{ \u25c6 }],\n  &quot;configuration&quot;:{\n    &quot;tax_calculated_after_discount&quot;:false,\n    &quot;tax_inclusive&quot;:false,\n    &quot;allow_tip&quot;:false,\n    &quot;template_id&quot;:&quot;TEMP-137273103M373943N&quot;\n  },\n  &quot;amount&quot;:{ \u25c6 },\n  &quot;due_amount&quot;:{ \u25c6 },\n}\n***\/\nconst response3Obj   = JSON.parse( response3Body );\nlet strInvoiceid     = response3Obj.id;\nlet strInvoiceurl    = response3Obj.detail?.metadata?.invoicer_view_url ?? &quot;&quot;;\nlet strInvoiceStatus = response3Obj.status;\n\n\n\/\/\/\/ == Data Updating \/ \u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30c7\u30fc\u30bf\u3078\u306e\u4ee3\u5165 ==\nif( strPocketInvoiceid !== null ){\n  engine.setData( strPocketInvoiceid,     strInvoiceid );\n}\nif( strPocketInvoiceurl !== null ){\n  engine.setData( strPocketInvoiceurl,    strInvoiceurl );\n}\nif( strPocketInvoiceStatus !== null ){\n  engine.setData( strPocketInvoiceStatus, strInvoiceStatus );\n}\n\n} \/\/\/\/\/\/\/\/ END &quot;main()&quot; \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/<\/code><\/pre><\/div>\n\n\n<\/div><\/div>\n\n\n\n<figure class=\"wp-block-image alignright\"><a href=\"#\"><img decoding=\"async\" src=\"data:image;base64,\niVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAELElEQVRYR8VXa0xTZxh+PqCtFmQC\nw4CiM8BYBbME0Glc1KGhRONlcVvmGolGE2LdEqqbwT86Y2KUeaHEC8Sh0aCYhegPnUGqji1b1DEB\nowOWTIU5EBiK0VKgpe1nvlN7Cj3na0\/Nkp5\/7Xkvz3t73vcQhPkhiv0XXdZiomYNCMkDpdkAnQlC\n4gR9Sp8DpBOEtIDSBgzbL+LEyiEltoMD2N6QhFFHCQjZDIoJSoyCYASUVkKlLsWBvN5AOoEBbLUw\npwcBRCtyLBWygeAblOkrefp8AKZrxwFqfEPHfmqkAub8LXK25AGYLDUAvvh\/nItWzsOsN\/jblALg\nRH70Ex0MOUmIipTHbHdSdDwbxoV7fTj+WxesdqcMfmkmxlvz1LxCLvKmr+chJyU2aFIoBe71WGGo\nvo+2XptUnsA4tid8AIRuH30g13AZiVpcKcpG+tvaoACYgJtSnLjVDWNtu5y8DSpVunc6fABM9WUA\nMclprMxKRNXaTEyJUSsCwISau14i99DvHHlqhrlgK3vpAcBIJlrzjDfnXy2cjv0r3kW0OlIxgPs9\ng3j\/u1vy8ownbPYERlYeAMWWdSCo5lk\/uDoDxYtmICoiOG95bVz6sx+rT97lA6YoRLn+rMei6dpJ\ngG7kSZ82ZGH93KmKox91URz++R9Me0uDmuZe1LU\/lZuIUzDnb\/JmoBkE2TwPP32Zi7z0eMUA2Dju\nu9GBnfpUVN3uxp76R1JdihaU63NeA6gfEBeLn+gkTRQat30A3RRlbDzidAvRs4lZNTsR+653cADQ\n5ygviH9dAgvlhZf\/XgLOGLKQHKsJmoEXI04c\/fVfEAJs++gdDDlc2Fzbjtq7ffK6Zj0TZT3AB1A4\nJxnHPtWBZcL72J1uOFxu4eeQw43OgWE0Pn6J041PYPwwBevmJGNCVARauq1YfOQOhxUBiACK+SXY\nsywNJUtnQh0ZITi0OVzY8ePfQqTsmTsjFrkpsdDrErA4LQ7xWpXwPytF6Y1O7L76UD56dkOIJSi2\ncJuw6vNMbJo\/TTTy36AD39Y9xK6CVG5ZnG6Kc0092FDTGmgMxzRhgDG8bszF0gzfBLB0l\/3yGHuX\npyNG4yMm5tQ64kR7nw2VN7tQfacnSM+QcWPIJaLWkgXITPJNAKPYK21PxbL0Wh0o+qENl1v7gzbp\nOIFxRMSh4oWpcagpnI2Uyb5LjDFc\/6BDLAvbeFmlN0NzLqFiYRKky2htdhIqPpuFyRM9E8BW7fe3\nu5CWoBXL0vBgAEuONYUGAP7LiKkHWMf+1seW5cwfTwI3mxQaZx0zwQAHCXvNMnL44wwkxqiFxcS4\ngI3arjrOqMnlhXuQeIUDHKOMjPS6eGhVnu4fGnXB8tcAn2gkAIKdZCKIcB6lCjIRYsexuyfEs9zr\nIawfJl4QYf00G5vrsH2chl7wkDReAWd8uTDVR7SJAAAAAElFTkSuQmCC\n\" alt=\"\"\/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-cloud-download-alt\"><\/i> Download<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/drive.google.com\/file\/d\/1hcO8xfcgdtpdnQbY8xJqgTQx7J5IgAq7\/view?usp=drivesdk\" target=\"_blank\" rel=\"noreferrer noopener\">PayPal-Invoice-Create-Draft-2026.xml<\/a>\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/drive.google.com\/file\/d\/1KBOzLnnm_xzFRnQ9so_709NpxBKxtXGO\/view?usp=sharing\" target=\"_blank\" rel=\"noreferrer noopener\">PayPal-Invoice-Create-Draft-2026-for-sandbox.xml<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"has-text-align-right has-small-font-size wp-block-paragraph\">2026-11-06 (C) Questetra, Inc. (MIT License)<br><a href=\"https:\/\/support.questetra.com\/en\/addons\/paypal-invoice-create-draft-2026\/\">https:\/\/support.questetra.com\/en\/addons\/paypal-invoice-create-draft-2026\/<\/a><br> The Addon-import feature is available with <span style=\"color:#4a86e8\" class=\"has-inline-color\"><strong>Professional<\/strong><\/span> edition.<\/p>\n\n\n<div class=\"su-divider su-divider-style-dashed\" style=\"margin:30px 0;border-width:8px;border-color:#009900\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-lightbulb-exclamation\"><\/i> Notes<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>When the Case reaches this automated step in the workflow, a draft invoice is automatically created in PayPal\n<ul class=\"wp-block-list\">\n<li>For details about the invoicing tool, see:\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.paypal.com\/us\/business\/accept-payments\/invoice\">https:\/\/www.paypal.com\/us\/business\/accept-payments\/invoice<\/a><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The invoicer does not need to log in to &#8220;PayPal Invoicing&#8221;<\/li>\n\n\n\n<li>A &#8220;PayPal Invoice&#8221; is handled via API using a 24-character ID\n<ul class=\"wp-block-list\">\n<li>e.g. &#8220;INV2-Z56S-5LLA-Q52L-CPZ5&#8221;<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Configuring this Add-on (automated step) requires a CLIENT-ID and SECRET (obtained from the Dashboard)\n<ul class=\"wp-block-list\">\n<li>PayPal Developer Dashboard -&gt; Switch to Live mode -&gt; Apps &amp; Credentials -&gt; REST API apps<\/li>\n\n\n\n<li><a href=\"https:\/\/developer.paypal.com\/dashboard\/applications\/\">https:\/\/developer.paypal.com\/dashboard\/applications\/<\/a><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>This automated step uses the PayPal <a href=\"https:\/\/developer.paypal.com\/api\/invoicing\/v2\/invoices-create\/\">Invoicing API v2<\/a> to create a draft invoice\n<ul class=\"wp-block-list\">\n<li>The status at creation is DRAFT<\/li>\n\n\n\n<li>The invoice is not sent<\/li>\n\n\n\n<li>A separate &#8220;Send&#8221; action is required to deliver it to the recipient<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>An &#8220;Invoice Draft&#8221; generally becomes payable when it is sent (or notified) to the recipient by PayPal via email\n<ul class=\"wp-block-list\">\n<li>After processing by this Add-on, the <code>Invoice Status<\/code> will be <code>DRAFT<\/code><\/li>\n\n\n\n<li>Other <code>Invoice Status<\/code> values: <code>DRAFT<\/code>, <code>SCHEDULED<\/code>, <code>SENT<\/code>, <code>PAID<\/code>, etc.\n<ul class=\"wp-block-list\">\n<li>For details and a full list of statuses, see the <code>status<\/code> field in <a href=\"https:\/\/developer.paypal.com\/api\/invoicing\/v2\/definitions\/invoice\/\">PayPal Invoicing API v2 \u2013 invoice<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-images\"><\/i> Capture<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-capture-en.png?ssl=1\" target=\"_blank\" rel=\"noopener\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"675\" data-attachment-id=\"100626\" data-permalink=\"https:\/\/support.questetra.com\/en\/addons\/paypal-invoice-create-draft\/attachment\/paypal-invoice-create-draft-capture-en\/\" data-orig-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-capture-en.png?fit=1200%2C675&amp;ssl=1\" data-orig-size=\"1200,675\" data-comments-opened=\"0\" data-image-title=\"PayPal-Invoice-Create-Draft-capture-en\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-capture-en.png?fit=1024%2C576&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-capture-en.png?resize=1200%2C675&#038;ssl=1\" alt=\"Creates a draft invoice on the payment platform PayPal. To move the invoice from a draft to payable state, the SEND action is required. Billing automation and paperless operations are realized.\" class=\"wp-image-100626\" srcset=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-capture-en.png?w=1200&amp;ssl=1 1200w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-capture-en.png?resize=560%2C315&amp;ssl=1 560w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-capture-en.png?resize=1024%2C576&amp;ssl=1 1024w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-capture-en.png?resize=768%2C432&amp;ssl=1 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><a href=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-billing-process-en.png?ssl=1\" target=\"_blank\" rel=\"noopener\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"675\" data-attachment-id=\"100634\" data-permalink=\"https:\/\/support.questetra.com\/en\/addons\/paypal-invoice-create-draft\/attachment\/paypal-invoice-create-draft-billing-process-en\/\" data-orig-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-billing-process-en.png?fit=1200%2C675&amp;ssl=1\" data-orig-size=\"1200,675\" data-comments-opened=\"0\" data-image-title=\"PayPal-Invoice-Create-Draft-billing-process-en\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-billing-process-en.png?fit=1024%2C576&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-billing-process-en.png?resize=1200%2C675&#038;ssl=1\" alt=\"An invoice will be automatically generated when a process reaches this step in the workflow.\" class=\"wp-image-100634\" srcset=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-billing-process-en.png?w=1200&amp;ssl=1 1200w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-billing-process-en.png?resize=560%2C315&amp;ssl=1 560w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-billing-process-en.png?resize=1024%2C576&amp;ssl=1 1024w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/PayPal-Invoice-Create-Draft-billing-process-en.png?resize=768%2C432&amp;ssl=1 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-book\"><\/i> Appendix<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Set the &#8220;Invoice Number&#8221; so that it does not duplicate past numbers\n<ul class=\"wp-block-list\">\n<li>e.g. <code>#{processInstanceId}<\/code><\/li>\n\n\n\n<li>e.g. <code>#{#format(processInstanceStartDatetime, 'yyyyMMdd')}-#{processInstanceId}<\/code><\/li>\n\n\n\n<li>e.g. <code>#{#sformat('%06d', processInstanceSequenceNumber)}<\/code><\/li>\n\n\n\n<li>If left blank, the numeric portion of the most recent invoice number is automatically incremented<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Use a locale code when specifying the language for the PayPal notification email\n<ul class=\"wp-block-list\">\n<li>e.g. &#8220;en-US&#8221;, &#8220;ja-JP&#8221;, &#8220;fr-FR&#8221;, &#8220;de-DE&#8221;, &#8220;zh-CN&#8221;<\/li>\n\n\n\n<li><a href=\"https:\/\/developer.paypal.com\/docs\/api\/reference\/locale-codes\/\">https:\/\/developer.paypal.com\/docs\/api\/reference\/locale-codes\/<\/a><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Use a currency code when specifying the currency\n<ul class=\"wp-block-list\">\n<li>e.g. &#8220;USD&#8221;, &#8220;EUR&#8221;, &#8220;GBP&#8221;, &#8220;JPY&#8221;, &#8220;CNY&#8221;<\/li>\n\n\n\n<li><a href=\"https:\/\/developer.paypal.com\/docs\/api\/reference\/currency-codes\/\">https:\/\/developer.paypal.com\/docs\/api\/reference\/currency-codes\/<\/a><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Item information is specified as TSV (tab-separated values) text\n<ul class=\"wp-block-list\">\n<li>Up to 8 columns per TSV row can be configured:\n<ul class=\"wp-block-list\">\n<li>ItemName \/ Qty \/ UnitAmount \/ Description \/ TaxName \/ TaxPercent \/ DiscountAmount \/ DiscountPercent<\/li>\n\n\n\n<li>The first 3 columns (ItemName \/ Qty \/ UnitAmount) are required<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Qty, UnitAmount, and DiscountAmount can also be specified with comma-separated digit formatting<\/li>\n\n\n\n<li>Different tax rates must have different tax names (e.g. 10%: &#8220;Sales Tax&#8221;, 5%: &#8220;Reduced Tax&#8221;)<\/li>\n\n\n\n<li>In cases with mixed tax rates, enter the applicable tax rate information in &#8220;ItemName&#8221; or &#8220;Description&#8221; so that it can be identified<\/li>\n\n\n\n<li>DiscountAmount (column 7) and DiscountPercent (column 8) cannot be specified simultaneously\n<ul class=\"wp-block-list\">\n<li>When specifying one, leave the other blank<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Date-type Data Items can also be referenced for date settings\n<ul class=\"wp-block-list\">\n<li>Format: &#8220;YYYY-MM-DD&#8221;<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Up to 100 CC notification addresses other than the recipient can be specified (additional_recipients)<\/li>\n\n\n\n<li>The invoicer&#8217;s logo image (specified by URL) must be 250x90px maximum<\/li>\n\n\n\n<li>Tax ID is an optional field to specify the invoicer&#8217;s tax identification number\n<ul class=\"wp-block-list\">\n<li>You can specify a tax registration number or equivalent<\/li>\n\n\n\n<li>However, its display on the invoice depends on PayPal&#8217;s settings<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>This Add-on does not support generating multiple invoices simultaneously<\/li>\n\n\n\n<li>Settings configured in the &#8220;Templates&#8221; within the invoicing tool are not applied<\/li>\n\n\n\n<li>Specifying a &#8220;Shipping address&#8221; is not supported<\/li>\n\n\n\n<li>The invoicer&#8217;s &#8220;Address,&#8221; &#8220;Phone number,&#8221; &#8220;Fax,&#8221; etc. are not supported\n<ul class=\"wp-block-list\">\n<li>To include address information on the invoice, use &#8220;INVOICER&#8217;s AdditionalInfo&#8221; (B2) [max 400 characters]<\/li>\n\n\n\n<li>Alternatively, use &#8220;Note to Recipient&#8221; (F) [max 4,000 characters] at the bottom of the invoice (also displayed in the notification email)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>To perform API communication in Sandbox mode (instead of Live mode) for testing:\n<ul class=\"wp-block-list\">\n<li>Replace the access URLs in the script with &#8220;api-m.sandbox.paypal.com&#8221; (&#8216;postUri1&#8217; and &#8216;postUri2&#8217;)\n<ul class=\"wp-block-list\">\n<li>The service task definition file &#8220;PayPal-Invoice-Create-Draft-2026-for-sandbox.xml&#8221; listed in the Download section has already been rewritten<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>In the automated step settings, set A1 with the Sandbox CLIENT-ID and SECRET\n<ul class=\"wp-block-list\">\n<li>Obtain the Sandbox CLIENT-ID and SECRET by creating an App in Sandbox mode in the PayPal Developer Dashboard<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>PayPal API Reference \/v2\/invoicing\/invoices\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/developer.paypal.com\/api\/invoicing#step-2-create-a-draft-invoice\">https:\/\/developer.paypal.com\/api\/invoicing#step-2-create-a-draft-invoice<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/developer.paypal.com\/docs\/api\/invoicing\/v2\/#invoices_create\">https:\/\/developer.paypal.com\/docs\/api\/invoicing\/v2\/#invoices_create<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>TSV configuration example for item information (columns are tab-separated)<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-border-background-color has-background\">Service A\t2\t1200\tBasic fee\tSales Tax\t10\t10\t<br>Product B\t1\t800\tReduced rate\tReduced Tax\t5\t\t5<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><i class=\"fal fa-balance-scale\"><\/i> See also<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/support.questetra.com\/en\/addons\/paypal-invoice-send\/\">PayPal #Invoice: Send<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/support.questetra.com\/en\/addons\/paypal-invoice-check-detail\/\">PayPal #Invoice: Check Detail<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/developer.paypal.com\/api\/invoicing\/v2\/invoices-create\/\">PayPal Invoicing API v2 \u2014 Create draft invoice<\/a><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Download 2026-11-06 (C) Questetra, Inc. (MIT License)https:\/\/support.questetra.com\/en\/addons\/paypal-invoice-create-draft-2026\/ The Addon-import feature is available with Professional edition. Notes Capture Appendix TSV configuration example for item information (columns are tab-separated) Service A 2 1200 Basic fee Sales Tax 10 10 Product B 1 800 Reduced rate Reduced Tax 5 5 See also<\/p>\n","protected":false},"author":28,"featured_media":100624,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","_uag_custom_page_level_css":"","advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_seo_schema_type":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_wpcom_ai_launchpad_first_post":false,"_jetpack_hide_featured_image":false,"_jetpack_featured_image_duplicate_dismissed":0,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"{title}\n\n{excerpt}\n\n{url}","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpas_customize_per_network":false,"jetpack_post_was_ever_published":false},"categories":[168],"tags":[443],"faq_section":[],"class_list":["post-199514","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-addons","tag-paypal-invoicing-api"],"jetpack_publicize_connections":[],"uagb_featured_image_src":{"full":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?fit=1200%2C675&ssl=1",1200,675,false],"thumbnail":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=440%2C440&ssl=1",440,440,true],"medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?fit=560%2C315&ssl=1",560,315,true],"medium_large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?fit=768%2C432&ssl=1",768,432,true],"large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?fit=1024%2C576&ssl=1",1024,576,true],"1536x1536":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?fit=1200%2C675&ssl=1",1200,675,true],"2048x2048":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?fit=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-landscape-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-portrait-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=900%2C675&ssl=1",900,675,true],"newspack-article-block-square-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-landscape-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=800%2C600&ssl=1",800,600,true],"newspack-article-block-portrait-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=600%2C675&ssl=1",600,675,true],"newspack-article-block-square-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=800%2C675&ssl=1",800,675,true],"newspack-article-block-landscape-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=600%2C450&ssl=1",600,450,true],"newspack-article-block-portrait-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=450%2C600&ssl=1",450,600,true],"newspack-article-block-square-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=600%2C600&ssl=1",600,600,true],"newspack-article-block-landscape-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=400%2C300&ssl=1",400,300,true],"newspack-article-block-portrait-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=300%2C400&ssl=1",300,400,true],"newspack-article-block-square-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=400%2C400&ssl=1",400,400,true],"newspack-article-block-landscape-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=200%2C150&ssl=1",200,150,true],"newspack-article-block-portrait-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=150%2C200&ssl=1",150,200,true],"newspack-article-block-square-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?resize=200%2C200&ssl=1",200,200,true],"newspack-article-block-uncropped":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?fit=1200%2C675&ssl=1",1200,675,true]},"uagb_author_info":{"display_name":"kobayashi","author_link":"https:\/\/support.questetra.com\/en\/author\/kobayashi\/"},"uagb_comment_info":0,"uagb_excerpt":"Download 2026-11-06 (C) Questetra, Inc. (MIT License)https:\/\/support.questetra.com\/en\/addons\/paypal-invoice-create-draft-2026\/ The Addon-import feature is available with Professional edition. Notes Capture Appendix TSV configuration example for item information (columns are tab-separated) Service A 2 1200 Basic fee Sales Tax 10 10 Product B 1 800 Reduced rate Reduced Tax 5 5 See also","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9DiIh-PTY","jetpack-related-posts":[{"id":67465,"url":"https:\/\/support.questetra.com\/en\/addons\/paypal-status\/","url_meta":{"origin":199514,"position":0},"title":"PayPal Invoicing Status","author":"Hirotaka NISHI","date":"2017-06-03","format":false,"excerpt":"Download Paypal-status.xmlSince Rhino (deprecated) is specified as the script engine, a setting error will occur even if you install this in a workflow AppTo use this Add-on, you need to change the script engine and modify the script accordinglyPlease refer to Notice Concerning Deprecation of Rhino for the method for\u2026","rel":"","context":"In &quot;Add-ons&quot;","block_context":{"text":"Add-ons","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-invoicing-status-header.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-invoicing-status-header.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-invoicing-status-header.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-invoicing-status-header.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-invoicing-status-header.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":75362,"url":"https:\/\/support.questetra.com\/en\/templates\/paypal-billing-process-20211227\/","url_meta":{"origin":199514,"position":1},"title":"PayPal Billing Process","author":"Hirotaka NISHI","date":"2021-12-28","format":false,"excerpt":"An independent subprocess to be invoked by various business flows. Through \"PayPal Invoicing API\", 1) let PayPal generate \"PayPal Invoice\", 2) let PayPal send \"PayPal Invoice\", 3) confirm payment status of \"PayPal Invoice\" to PayPal. Also generates \"Transfer slip CSV\" for accounting system automatically.","rel":"","context":"In &quot;Workflow Apps&quot;","block_context":{"text":"Workflow Apps","link":"https:\/\/support.questetra.com\/en\/category\/templates\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-paypal-billing-process-20210428-en.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-paypal-billing-process-20210428-en.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-paypal-billing-process-20210428-en.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-paypal-billing-process-20210428-en.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-paypal-billing-process-20210428-en.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":67459,"url":"https:\/\/support.questetra.com\/en\/addons\/paypal-send\/","url_meta":{"origin":199514,"position":2},"title":"PayPal Invoicing Send","author":"Hirotaka NISHI","date":"2017-06-02","format":false,"excerpt":"Download Paypal-send.xmlSince Rhino (deprecated) is specified as the script engine, a setting error will occur even if you install this in a workflow AppTo use this Add-on, you need to change the script engine and modify the script accordinglyPlease refer to Notice Concerning Deprecation of Rhino for the method for\u2026","rel":"","context":"In &quot;Add-ons&quot;","block_context":{"text":"Add-ons","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-invoice-send-header.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-invoice-send-header.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-invoice-send-header.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-invoice-send-header.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-invoice-send-header.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":67455,"url":"https:\/\/support.questetra.com\/en\/addons\/paypal-createjpy\/","url_meta":{"origin":199514,"position":3},"title":"PayPal Invoicing Create (JPY)","author":"Hirotaka NISHI","date":"2018-01-29","format":false,"excerpt":"Download Paypal-createJpy.xmlSince Rhino (deprecated) is specified as the script engine, a setting error will occur even if you install this in a workflow AppTo use this Add-on, you need to change the script engine and modify the script accordinglyPlease refer to Notice Concerning Deprecation of Rhino for the method for\u2026","rel":"","context":"In &quot;Add-ons&quot;","block_context":{"text":"Add-ons","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/01\/paypal-invoicing-create-header.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/01\/paypal-invoicing-create-header.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/01\/paypal-invoicing-create-header.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/01\/paypal-invoicing-create-header.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/01\/paypal-invoicing-create-header.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":67449,"url":"https:\/\/support.questetra.com\/en\/addons\/paypal-createusd\/","url_meta":{"origin":199514,"position":4},"title":"PayPal Invoicing Create (USD)","author":"Hirotaka NISHI","date":"2018-01-29","format":false,"excerpt":"Download paypal-createUsd.xmlSince Rhino (deprecated) is specified as the script engine, a setting error will occur even if you install this in a workflow AppTo use this Add-on, you need to change the script engine and modify the script accordinglyPlease refer to Notice Concerning Deprecation of Rhino for the method for\u2026","rel":"","context":"In &quot;Add-ons&quot;","block_context":{"text":"Add-ons","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/01\/paypal-invoicing-create-header.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/01\/paypal-invoicing-create-header.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/01\/paypal-invoicing-create-header.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/01\/paypal-invoicing-create-header.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2018\/01\/paypal-invoicing-create-header.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":67468,"url":"https:\/\/support.questetra.com\/ja\/addons\/paypal-status\/","url_meta":{"origin":199514,"position":5},"title":"PayPal \u8acb\u6c42\u66f8 \u30b9\u30c6\u30fc\u30bf\u30b9\u78ba\u8a8d","author":"Hirotaka NISHI","date":"2017-06-03","format":false,"excerpt":"2017 \u00a9 Questetra, Inc. (MIT License)https:\/\/support.questetra.com\/ja\/addons\/paypal-status\/ Download Paypal-status.xml\u30b9\u30af\u30ea\u30d7\u30c8\u30a8\u30f3\u30b8\u30f3\u3068\u3057\u3066\u300cRhino\uff08\u5ec3\u6b62\u4e88\u5b9a\uff09\u300d\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u305f\u3081\u3001\u30a2\u30d7\u30ea\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u3082\u8a2d\u5b9a\u30a8\u30e9\u30fc\u3068\u306a\u308a\u307e\u3059\u5229\u7528\u3059\u308b\u306b\u306f\u3001\u30b9\u30af\u30ea\u30d7\u30c8\u30a8\u30f3\u30b8\u30f3\u306e\u5909\u66f4\u3001\u304a\u3088\u3073\u305d\u308c\u306b\u4f34\u3046\u30b9\u30af\u30ea\u30d7\u30c8\u4fee\u6b63\u304c\u5fc5\u8981\u3067\u3059\u5bfe\u5fdc\u65b9\u6cd5\u306f\u3001\u300c\u30b9\u30af\u30ea\u30d7\u30c8\u30a8\u30f3\u30b8\u30f3 Rhino \u5ec3\u6b62\u306e\u304a\u77e5\u3089\u305b\u300d\u3092\u53c2\u8003\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u4fee\u6b63\u7248\u306f\u6e96\u5099\u4e2d\u3067\u3059 Capture Notes \u4e8b\u524d\u306b Paypal Dashboard \u306b\u3066 App \u3092\u751f\u6210\u3057\u3001Client ID\/Secret \u3092\u53d6\u5f97\u3057\u3066\u304a\u304f\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059 See also 2017-07-03 \u7b2c542\u8a71\uff1aPayPal Invoice \u9023\u643a\u3067\u3001\u30e9\u30af\u30e9\u30af\u8acb\u6c42\u696d\u52d9(3)2017-06-26 \u7b2c541\u8a71\uff1aPayPal Invoice \u9023\u643a\u3067\u3001\u30e9\u30af\u30e9\u30af\u8acb\u6c42\u696d\u52d9(2)2017-06-19 \u7b2c540\u8a71\uff1aPayPal Invoice \u9023\u643a\u3067\u3001\u30e9\u30af\u30e9\u30af\u8acb\u6c42\u696d\u52d9(1)","rel":"","context":"In &quot;\u30a2\u30c9\u30aa\u30f3&quot;","block_context":{"text":"\u30a2\u30c9\u30aa\u30f3","link":"https:\/\/support.questetra.com\/en\/category\/addons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-status-ja.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-status-ja.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-status-ja.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-status-ja.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2017\/06\/paypal-status-ja.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/01\/Paypal-Invoice-Create-Draft-en.png?fit=1200%2C675&ssl=1","_links":{"self":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/199514","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/users\/28"}],"replies":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/comments?post=199514"}],"version-history":[{"count":28,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/199514\/revisions"}],"predecessor-version":[{"id":199633,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/199514\/revisions\/199633"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/media\/100624"}],"wp:attachment":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/media?parent=199514"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/categories?post=199514"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/tags?post=199514"},{"taxonomy":"faq_section","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/faq_section?post=199514"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}