Stripe payment guide
This service is named stripe
and uses the software platform Stripe for online payments.
Note
If you have the permission stripe=*
, you can have access to all the functions mentioned below.
Stripe account¶
First, create a new account on the Stripe dashboard.
Stripe dashboard¶
View the dashboard¶
To access the dashboard, you need to have the permissions stripe=view
and stripe=read
.
Enter the Stripe API keys to register the account on the Portal. You can copy the API keys on your Stripe dashboard.
Note
You will no longer need the API keys again, unless the Stripe account is removed from the Portal.
After you’ve registered, you will see some of your account’s details, the bank accounts added and your customers’ list.
Edit the account¶
To edit your account, you need to have the permissions stripe=*
.
You can delete a customer’s account and remove the Stripe account from the Portal.
Payment workflow¶
Scripts to import¶
You need to import the following scripts:
- MessageInfo: this document contains all the details of the payment to process. The document type has to be an invoice and the status has to be To be paid. Here is an example Message Info.xml
- Routing rule: this script will process the MessageInfo and send it to the Workflow Adapter (Routing Rule Invoice To Be Paid.b2b).
- Workflow step: this script describes the workflow system (Workflow Step Invoice To Be Paid.xml).
- Groovy script: this script will update the MessageInfo, once the payment is done (Update Invoice After Payment.b2b).
Permissions and organisations¶
-
You need to have the permissions:
- to be assigned to a payment work item:
workflow=role('Invoice Payers')
- to be able to pay the invoice:
stripe=pay
- to be assigned to a payment work item:
-
You need to be assigned to the organisation path written in the workflow step (eg:
/dev-v51/Branch A
).
To change the organisation path and the permission assigned, update this line in the workflow step:
<Assignee name="Invoice payers" path="/dev-v51/Branch A" type="UNIT" scope="workflow=role('Invoice Payers')">
Invoice payment¶
Once you have imported all the scripts and given the right permissions, reprocess the invoice. It will create a work item and you will see the payment form on clicking on the button Pay.
You’ll see the invoice’s details and you can choose to pay with a credit card or by ACH.
If there is a Loading error, when you open the form, that means that the Stripe API keys have not been entered in the service’s configuration. You need to fix this on the Stripe dashboard.
Credit card¶
You can create a new credit card: VISA, MasterCard, AMEX, Discover, Diners Club or JCB.
Then you can choose to save it or not. If yes, the card will be added to the saved cards and you will be able to select it next time. If no, you will have to create a new card next time.
You can choose the amount you want to pay, but it has to be under the initial amount.
Automated Clearing House (ACH)¶
Warning
The Automated Clearing House payment method can only be used if the Stripe account’s owner has a US bank account!
You can create a new bank account.
Once you’ve created it, verify the bank account. You can only use it if the verification has succeeded. If it has failed, contact your bank.
You can choose the amount you want to pay, but it has to be under the initial amount.
After the payment¶
Finally, the invoice is updated with the new status Paid.
You can change the invoice updating in the script WF_Update_Invoice_After_Payment
.