PayPal Billing Process 20211227
An independent sub-process that can be invoked by various business flows. Through the PayPal Invoicing API; 1) PayPal generates PayPal Invoices, 2) PayPal sends PayPal Invoices, and 3) confirms the payment status of PayPal Invoices to PayPal. The Process also automatically generates a CSV of the Transfer slip for the accounting system.
Worker (#of Swimlane: 2)
- Accounting
- Accounting Leader
Business Flow (Complexity of Workflow: 27)
- 1 1. Input Draft
- The person in charge confirms the order details.
- 43 1x. Error handling
- The person in charge corrects the cause of the error and regenerates.
- 5 2a. Check/Cancel
- The department leader confirms the invoice generation and approves its submission, or cancels the invoicing. If left unattended, it will be automatically approved after 30 minutes.
- 33 2b. Check/Cancel
- The department leader confirms the invoice generation and approves its submission, or cancels the invoicing.
- 46 3a. Check/Cancel (initial)
- The person in charge will stop billing if necessary. Leave it alone unless it needs to be canceled.
- 8 3bx. Check/Cancel (daily)
- The person in charge will stop billing if necessary. Leave it alone unless it needs to be canceled.
- 58 x1. Table into TSV
- The system converts the input contents of the Table-type Data Item into TSV format data and sets it in the specified Data Item.
- 59 x2. Remove Amount column
- The system removes the Subtotal column from the TSV data so that Subtotal is not sent at the “x3. Generate Invoice” Step.
- 55 x3. Generate Invoice
- The system sends TSV data to PayPal. PayPal will generate an invoice based on the data and save it as a draft.
- 56 x4. Send Invoice
- The system directs PayPal to send the generated invoice to the customer.
- 54 x5. Get Status
- The system retrieves the Invoice status at Paypal to see whether it is paid.
Workflow Diagram (click to open)
Business Process Variables (#of Data Item: 36)
- = Billing_info =
0
- Billing Business Name q_Billing_Business_Name
5
- Billing Email q_Billing_Email
2
* - Billing Name1 q_Billing_Name1
3
- Billing Name2 q_Billing_Name2
4
- Additional Recipients q_additionalRecipients
37
- Billing_info Language q_Billing_Language
39
- = Items_info =
6
- Items (ItemName/Qty/UnitPrice…) q_Items
1
* - Items TSV q_ItemsTSV
22
- Automatically set at x1 and overwritten at x2
- Currency Code q_SelectCurrencyCode
7
* - Tax inclusive q_TaxInclusive
8
* - Total Amount q_TotalAmount
38
- = Invoice Info =
14
- Invoice Number q_DetailInvoiceNumber
36
*- INVOICE-#{#sformat(‘%06d’, processInstanceId)}
- Invoice Date q_Invoice_Date
15
*- processInstanceStartDatetime
- Invoice Payment Due Date q_PaymentTermDate
16
*- processInstanceStartDatetime.addMonths(2).getFirstTimeInMonth()
- Invoicer Business name q_InvoicerBusiness_name
9
- Invoicer Sales Tax ID q_InvoicerTax_id
12
- Invoicer Website q_InvoicerWebsite
10
- Invoicer Logo URL q_InvoicerLogo_url
13
- Invoicer Given Name q_InvoicerNameGiven_name
23
- Invoicer Surname q_InvoicerNameSurname
34
- Invoicer Email Address q_InvoicerEmail_address
11
* - Invoicer Additional Notes q_InvoicerAdditional_notes
35
- Invoice Note q_Invoice_Note
17
- If you have any questions, please feel free to contact me (Email: jackbrown@example.com / Phone: 03-0000-0001).
- Invoice Terms q_Invoice_Terms
18
- AGREEMENT TO TERMS
These Terms of Use constitute a legally binding agreement made between you, whether
personally or on behalf of an entity (“you”) and [business entity name] (“we,” “us” or
“our”), concerning your access to and use of the [website name.com] website as well as
any other media form, media channel, mobile website or mobile application related,
linked, or otherwise connected thereto (collectively, the “Site”).
– Omitted below –
- Invoice Memo q_Memo
26
*- App/Process that created the Bill: #{processModelInfoName} -p#{processInstanceId}
Date Bill created : #{processInstanceStartDatetime}
Bill created by: #{processInstanceInitQuserName}
- = PayPal Logs =
19
- paypalInvoiceId q_Paypal
20
- paypalInvoiceViewUrl q_invoicer_view_url
25
- paypalInvoiceStatus q_InvoiceStatus
27
- Automatically set at x3, overwritten at x5
- Payment Date q_PaymentDate
28
- Payment Amount q_PaymentAmount
29
- Payment Currency Code q_PaymentCurrencyCode
30
- (Response JSON) q_ResponseJson
31
Field Name, num
, Initial Value
Download
This archive contains the BPMN icons that are not available in the Basic edition.
Notes
- You need to associate the Swimlane settings according to your organizational structure upon import
- For practical use, please change the fixed values that have been set
- The Initial Value in the Data Item “Invoicer Business name”,”Invoicer Sales Tax ID”, “Invoicer Website”, “Invoicer Logo URL”, “Invoicer Email Address”, “Invoice Note”, “Invoice Terms”
- Set up the connection with the PayPal
- This App works in PayPal’s “Live” environment
- Does not work with “Sandbox”
- The invoice will actually be sent, so be careful when running the test, such as using your own address
- You need to add app then confirm the Client ID and Client secret in My Apps & Credentials of the PayPal Developers beforehand
- Add a Basic Authentication setting with a name you like in the HTTP Authorization settings of [Apps] and set the following
- Username: Client ID
- Password: Client secret
- In the Service Task (Add-on): x3. Generate Invoice, x4. Send Invoice, x5. Get Status;
- Set the HTTP setting name by select in A1: Select HTTP_Authz
See also
Like this:
Like Loading...
Related