Archived - Release Notes
Version 4.146
Upgrade Instructions
- Install the latest payments package from our AppExchange listing at the top of this page.
- Visit the Payments Setup Wizard to install the latest Paylink.
- Visit the Webhook event object to include the field "Disputes" on the Page Layout.
Enhancements
- New lookup field created for disputes on the Webhook Event object.
- New validation for ACH payment method.
- Contact (Bill To) will be used for populating the email and phone instead of Prepared for field on the Sales Document.
- When a Payment Gateway customer is created, it will fetch all lookup information set on the related Payment Method.
Bug Fixes
- When there is a refund transaction created in salesforce, all the lookups to Account/Contact/Payment Gateway Customer are set from the original transaction.
Known Issues
- If you skip the “Connect to Gateway” step in the Payments Setup Wizard, and revisit the configurations, it will halt you at the configuration step. Please connect to a test gateway and proceed.
Version 4.145
Upgrade Instructions
Go top the Payments Admin tab and click on "Add Payments fields to Page Layouts".
New Features
-
If the data is pushed to Stripe as metadata, we can accept them in Salesforce and store in our custom
metadata
fields on the core payment objects. Click here to know more! -
When Lead lookup is set on the Payment Gateway Customer, the Email, Phone and Address fields will be automatically picked from the associated Lead record.
-
New
Send Invoice On Date
field added in Sales document and the page layout of Stripe Invoice record type. This will run a batch every day to send the invoice to the customer whenSend Invoice On Date
= TODAY.
Enhancements
-
Users can now access the Subscription revenue data from the fields on the subscription object similar to the Account revenue rollups.
-
Set up lookup field to the Sales document in the Webhook Events.
-
Set up
coupon name
in salesforce to coupon name in stripe.
Stripe Billing
Upgrade Instructions
- Layouts
Stripe Invoice Layout auto-set for Stripe Invoice record type.
- Custom Permission Sets (Fields)
Send Invoice On Date on the Sales document.
Metadata fields on Transaction, Payment Gateway Customer, Payment Method, and subscription.(If necessary)
Sales document (lookup field) on the webhook event.
Last Finalized ARR, Last Finalized MRR, Last Finalized QRR, Last Finalized Sum of All as ARR, Upcoming ARR, Upcoming MRR, Upcoming QRR, Upcoming Sum of All as ARR on the subscription object.
- Schedules Jobs
Included Blackthorn | Payments Send Stripe Invoices in the scheduled jobs.
Bug Fixes
-
When there is a refund on the completed/paid transaction, the
balance due
field on the associated Sales Document (Invoice) will be set to null to indicate there is no due amount for that Invoice. -
When a Transaction is synced from Stripe the Stripe Fee information will be stored on that transaction record.
-
The last finalized rollups on Account logic updated to show only the last paid invoices.
-
When the subscription amount is updated, this amount is reflected in the
Upcoming Invoice Amount
causing the rollups on Account to show accurate data.
Known Issues
-
Dispute transaction not linked to the original transaction when processed through webhooks.
-
Contact Email and Phone not linked on the Sales document.
-
Customer billing to Address and Phone not updating from Stripe to Payment gateway Customer (PGC) record.
Version 4.143
New Features
-
Users will now be able to allocate funds from one transaction to the multiple line items.
-
Users can now authorize, capture, and partially refund transactions within the Blackthorn | Mobile Pay app.
-
The Virtual Terminal lightning component has been removed from the Lightning App Builder. Please use the Visualforce lightning component.
Enhancements
-
We relabeled a few fields on the Sales Document and Line Item objects.
-
Created a new field (Memo) on the Subscription and Sales Document objects.
-
Adding a Contact on the transaction will now automatically set the Account lookup.
-
When a Stripe Customer is added/updated with no gateway defined, the default Payment Gateway will now be automatically set on the record.
Bug Fixes
-
Non-Gateway refund transactions roll up to the related opportunity.
-
When creating a Subscription, the default payment method from the related payment gateway customer will be used if the
Payment Method
field is blank. -
Fixed the failing
invoice.created
(orpayment_succeeded
) webhook. These webhook events now successfully create an invoice in Salesforce. -
Fixed the calendar UI on the Virtual Terminal object.
-
Users can now use valid ACH type Payment Methods in the Virtual Terminal to process transactions.
-
Updated the broken Contact Support Link in the Payments Admin tab.
-
When capturing a transaction using our Virtual Terminal object, the description is now mapped to Stripe and Authorize.net.
-
Relabeled the 'Amount to Pay' field to "Amount Refunded" on the Line Item object.
-
Updated the broken Contact Support Link in the Payments Admin tab.
-
Virtual Terminal now honors the custom setting for prioritizing the
Related To
field.
Stripe Billing
-
ENHANCEMENT: View all active plans related to an account.
-
ENHANCEMENT: The Sales Document
Name
field is updated with the Stripe generated Invoice number. -
ENHANCEMENT: New Sales Document Record Type Stripe Invoice.
-
ENHANCEMENT: Added new fields (Trial Period Days, Trial End Date, Default Tax, Coupon, and Memo) on the Opportunity object.
-
ENHANCEMENT: Added new validations for Stripe Billing opportunity subscriptions, subscriptions and invoices.
-
ENHANCEMENT: There is a new field on the Sales Document object for the Stripe Hosted Invoice Link.
-
ENHANCEMENT: Adding a Subscription Item with a plan will now automatically set the
Product
lookup. -
ENHANCEMENT: Opportunity lookup will be set on 'Transactions' and 'Sales Documents' when they are created by processing webhooks.
-
FIXED BUG: No subscription will be generated for opportunities where opportunity Product Type =
One time
. -
FIXED BUG: Sales Document status sync to Stripe.
-
FIXED BUG: When new line items are added to draft invoices, they'll auto-sync in Stripe.
(https://docs.blackthorn.io/docs/converting-opportunities-to-subscriptions) in Stripe.
-
FIXED BUG:
Due Date
field will sync all updates in Stripe. -
FIXED BUG: When the
Billing Method
is set to 'Send Invoice', the Payment Method won't be populated on the Opportunity and Subscription. -
FIXED BUG:
Times Redeemed
field on the coupon object will be updated every time a coupon is used. -
FIXED BUG: Fixed the
Push to Stripe
checkbox on theOpportunity
object. When checked, it'll create a subscription in Stripe.
PayLink
Acceptance Language
with a link for terms and conditions are now available for card payment methods.
Version 4.125
July 30th, 2019
Upgrade Instructions
-
Upgrade your Payments app.
-
Navigate to the Blackthorn | Payments Admin tab | Click on the "Metadata Updates" tab | Click the "Add Picklist Values" and "Add Payment Fields to Page Layouts" buttons.
Custom Permission Sets
If you are not using our managed permission sets (https://docs.blackthorn.io/docs/payments-permission-sets) you will need to provide read/write access to all the new fields. Navigate to the Payment Gateway, Payment Gateway Customer, Payment Method, and Transaction objects view the list of fields and provide access to the fields that aren't currently checked as read or edit. At a minimum, every field should have read access.
Relabeled objects and fields
With the introduction of Authorize.net and support for more gateways (PayPal in July), we've generalized the naming conventions of non-Stripe specific objects and fields. No API field or object name changes occurred, only labels.
- Object: Stripe Customer -> Payment Gateway Customer
- Field: "Non-Stripe" is now "Non-Gateway" on Transaction
- Fields: "Created In Stripe" is now "Created In Gateway" on Transaction, Payment Method, and Payment Gateway Customer
- Buttons: Remove from Stripe buttons are now Remove from Gateway
New Features
Stripe Billing
Ability to auto-generate invoices and invoice lines for any subscription period, including upgrade, downgrade, prorate, and credit scenarios. Bi-direction integration, including create, update, and delete, of subscriptions, plans, tiers, usage, and invoices with Stripe Billing.
- Over 63+ development tickets added to date.
Authorize.net
With Authorize.net, we support over 20 processors. The list of all supported processors is here. Authorize.net can be used with the Virtual Terminal, PayLink, Classic/Lightning UI, and REST API.
Upcoming features for August 2019
- Supporting Strong Customer Authentication for Payment Intents
- Paypal
- Button/Checkbox field to create a Sales Document with Line Items from an Opportunity with Line Items.
- Stripe Orders and SKUs
- Cancel Payment Schedules automatically
Enhancements
-
Deleting Payment Schedules - Deleting a Payment Schedule deletes all related Transactions that have an "Open" status.
-
Related Contact and Account logic across the Payment Method, Transaction, and Customer objects - relating a Contact and/or Account to the Payment Method record will update the related Customer and Transaction records.
-
Virtual Terminal - Supported as a visualforce component.
-
Payments REST API - Update an existing Transaction with a new Payment Method. See step 7.
-
The Blackthorn | Payment Settings tab has been renamed to Blackthorn | Payments Admin
-
Cancel a Payment Schedule through an automated process.
-
The Virtual Terminal is now supported as a quick action.
Bug Fixes
-
Historical Sync for Stripe Customers and Payment Methods - No Stripe Customers or Payment Methods were syncing over.
-
Payment Method with 100+ related Transactions - When you tried to refund or create a new charge, a "loop" exception error would be thrown.
-
The
Amount To Pay
feature with DocumentLink was not working with multiple transactions related to the Sales Document. -
DocumentLink was not showing images in the rich text fields.
-
Refund Transactions can be updated (ie. updating the description field) without a second call to Stripe being initiated. Additional calls can cause potential duplicate refunds.
-
The payment status for a "Partially Refunded" Transaction will stays as is after all the webhook events process.
-
Unsupported webhook types will be automatically set to "Processed". This lowers the batch size and process time.
-
Generated transactions now automatically relate to the parent object record (ie. Opportunity) within a recurring Payment Schedule.
-
On create, setting a Payment Method as the default doesn’t duplicate the Payment Method record.
-
If a recurring Payment is scheduled on a certain date that other months don't have (ie. 29, 30, 31) that month will use its last date (ie 28, 29, 30).
-
The parent object's summary fields (ie. Opportunity) now update when transactions are automatically processed.
-
The
Refund
button the Transaction record in Salesforce Mobile is enabled. -
Fixed error when running the "Re-calculate Account Revenue Values" from the payments admin tab. Previously it was attempting to create a new stripe customer.
-
Removed the Order lookup from Sales Document which was failing the upgrade installs. It can be enabled through the 'Enable Order to Invoice' button. Navigate to the Blackthorn |Payments Admin tab, 'Metadata Updates', then click
Enable Order to Invoice
button. -
When creating a stripe customer from the account, the first related contact on the account will be marked as
Primary Stripe Customer
. -
When creating a stripe customer from the account, the first related contact on the account will be marked as
Primary Stripe Customer
.
Version 4.98
Upgrade Instructions
-
Upgrade your Payments app.
-
Navigate to the Blackthorn | Payments Admin tab | Click on the "Metadata Updates" tab | Click the "Add Picklist Values" and "Add Payment Fields to Page Layouts" buttons.
Enhancements
- Deleting Payment Schedules - Deleting a Payment Schedule deletes all related Transactions that have an "Open" status.
- Related Contact and Account logic across the Payment Method, Transaction, and Customer objects - relating a Contact and/or Account to the Payment Method record will update the related Customer and Transaction records.
- Non-Stripe Transactions (Charge and Refunds)
- Non-Stripe Payment Methods (Card and ACH)
- Virtual Terminal - Supported as a visualforce component.
- Payments REST API - Update an existing Transaction with a new Payment Method. See step 7.
- The Blackthorn | Payment Settings tab has been renamed to Blackthorn | Payments Admin.
New Features
- Webhook Signatures - Webhook signatures include additional security for webhook event records that are created in Salesforce
- Stripe Billing - Create Stripe subscriptions, products, plans, and tiers all from Salesforce
Upcoming features for June 2019
- Supporting two new Payment Gateways, Authorize.net and Paypal
- Several enhancements for Stripe Billing
- Updated Payment Gateway, Transaction, Payment Method, and Customer terminology.
- Supporting Strong Customer Authentication for Payment Intents
- Support Stripe's latest API version
Bug Fixes
- Historical Sync for Stripe Customers and Payment Methods - No Stripe Customers or Payment Methods were syncing over.
- Payment Method with 100+ related Transactions - When you tried to refund or create a new charge, a "loop" exception error would be thrown.
- The
Amount To Pay
feature with DocumentLink was not working with multiple transactions related to the Sales Document. - DocumentLink was not showing images in the rich text fields.
- Refund Transactions can be updated (ie. updating the description field) without a second call to Stripe being initiated. Additional calls can cause potential duplicate refunds.
- The payment status for a "Partially Refunded" Transaction will stays as is after all the webhook events process.
- Unsupported webhook types will be automatically set to "Processed". This lowers the batch size and process time.
Version 4.77
- Subscription update support
- Push to Stripe checkboxes on Plan and Subscriptions
- Opportunity Start Date (Subscription mapping)
- Post install bug fixed
- Delete coupons supported
- Account based coupons supported
- Subscription Item lookup to Account
- Tax rollup rounding
Version 4.72
- Stripe Coupons MVP
- Webhooks sets Transaction source This feature requires that after upgrading, navigate to the Blackthorn | Payments Settings tab and click the Add Picklist Values button to deploy 2 new values to the field: Transaction.Source of Webhook and Sync.
- Tax Rounding problem
- Invoices related to Customer Account/Contact
- Push Plan to Stripe checkbox
Version 4.71
- Default Payment Gateway bug
- Line Item sort order update fixed
- Plan currency mapping on Sync
Version 4.70
- 'Flipping transaction status on refund' bug fixed
- Opportunity Product validations
- Invoice push (Sales Document) from Salesforce
- Transaction Statement Descriptor property mapped
Version 4.69 - Not for customers (not publicly available), technical release
- Invoice push MVP
- Product type field on Opportunity
- Protection against double-processing Transactions in batch runs
Version 4.68
- When syncing Stripe Products, zero-dollar price entry is created for new Products
Version 4.67
- Added a new Lightning Flow Component that allows users to enter and charge a card
- Log the results of the Setup Wizard - Permission Set Assignments to the browser console to make debugging any assignment issues easier for customers
- Refactored the Setup Wizard - PayLink Install step to avoid callout timeouts
- Improved console error logging for Virtual Terminal
Version 4.65
- Auth.net support implemented (hidden)
- Stripe Radar support implemented
Version 4.63
- Added tab for Virtual Terminal and enabled it to work in Salesforce mobile
- Fixed filter logic on Relationship step in the Setup Wizard
- Fixed bug with parent transaction rollups
- Added app fee support for mobile manually entered cards and ach
- Stripe Billing beta!
Version 4.61
- Added Lightning Actions to Add Card from Account records and Charge Card from a Payment Method record. These can be used in the Lightning desktop and on the Salesforce mobile app.
- Added better exception handling in code when Payment Method trigger code updates the Account or Contact record. Now the error is handled, logged as a Blackthorn Log record and the Payment Method update completes successfully. This is useful for customers with sharing rules for Accounts and Contacts.
- Fixed Webhook bug that was setting the wrong Record Type on ACH Payment Methods
Version 4.60
- Added the Virtual Terminal to the Sales Document Lightning page
- Added logic to the Schedule Recommended Payment Jobs (on the Payment Settings tab) that will un-schedule old and unused jobs
- The Currency field on Sales Document defaults to USD and is no longer required
Version 4.59
- Fixed minimum amount validation to exclude Payout Transactions which can be negative
- Updated the Non-Stripe Transaction trigger to work for inserts and updates
- Changed the Stripe Connect Get Balance batch job to only if Stripe Connect is enabled
- Updated query to only process Connected Accounts with a Connected Account Id when running the Get Balance batch job
Version 4.58
- Fixed the pre-population logic on the Virtual Terminal - Add Payment Method page
Version 4.56
- Updated Stripe query API call to return 100 records at a time for Payout Balance processing
- Updated the Setup Wizard - Relationships page to be faster and to sort object names correctly
- Add validations to the (Promo) Code object for Valid From/Through Dates, that only Discount Amount or Percent is populated - not both and that the Code Name is unique in the system
Version 4.54
- Updated logic for refunding a Authorized Transaction when using Refund button. Now it will update the Payment Status to Uncaptured instead of creating a Refund Transaction. This is same behavior as when Stripe releases an Authorized transaction after 7 days.
Patch Release: Version 4.53
- FIX: Custom lookup field in the Virtual Terminal
When adding two or more lookup fields to the virtual terminal fieldset or if a lookup field has additional filters, prepopulating the field did not work.
Minor Release: Version 4.52
Released December 20th, 2018
- FIX: Payment Schedule Rounding Error.
Based on the criteria, transactions would round up and add a few extra cents. For example, Total Amount = $500, Count = 12, Start Date: 12/20/18. The transactions would each round up to 41.67 and bring the total to $500.04. We have improved the logic so that transactions will round down and any additional cents needed for the total will be added to the last transaction.


-
IMPROVEMENT: Remove From Stripe Field Added to Payment Method.
The "Remove From Stripe" functionality on Payment Method is now available as a checkbox field so that it can be triggered by process flows. -
IMPROVEMENT: Two lookups on the Transaction object for Order and Invoice Sales Documents (Billing Customers Only).
There are now two lookup fields on the Transaction object so that you can relate both the order and invoice.
**Existing customers, please edit your transaction page layout and add the Sales Document (Order) field. Then navigate to the Blackthorn | Payments Settings tab -> Batch Jobs -> Click on the "Update Sales Document Order Transaction" button.


Minor Release: Version 4.43
Released December 11th, 2018
-
IMPROVEMENT: The virtual terminal is now a Visualforce component instead of a Lightning component.
We had to refactor the VT into a visualforce component for many reasons, but the biggest reason was that MyDomain and Salesforce URLs impacted the virtual terminal and causing many errors for our customers. -
IMPROVEMENT: ACH Payment Methods are now included in the Default Payment Method feature!
-
IMPROVEMENT: Reattempt Logic and Custom Setting has decreased from 7 to 3 attempt retries.
It is unlikely for a card to succeed once it has continued to fail on three attempts. Across all merchants, only 0.1% of all charges succeed between the 5th and 12th retry. Card network rules limit merchants to 4 retries per failed charge. -
IMPROVEMENT: Uncaptured Method for authorized transactions that were released is defined on the refund transaction
When releasing an authorized Transaction (manually or automatically) a refund transaction is created. This refund now shows the same uncaptured method.
Major Release: Version 4.32
Released November 12th, 2018
-
IMPROVEMENT: Open-ended payment schedules
Now create recurring payment schedules that do not end until manually canceled! -
IMPROVEMENT: Uncaptured Authorized Transactions
There is a new field on the Transaction object called, Uncaptured Method. This field tells you if an authorized transaction was manually or automatically released.
To Do: Add theUncaptured Method
field to your charge transaction page layout. -
IMPROVEMENT: A batch job to delete Blackthorn | Logs after 30 days
Salesforce storage can fill up quickly if the Blackthorn | Logs are not deleted periodically. This batch job delete Blackthorn | Logs that are older than 30 days. -
IMPROVEMENT: Permission set for community users
There is a managed permission set that you can assign to community users for access to Blackthorn | Payments components. -
IMPROVEMENT: A new lookup field to Payment Gateway has been added to the Payment Schedule object
Defining the Payment Gateway on the Payment Schedule will roll down to all generated Transactions.
To Do: Add thePayment Gateway
field to your Payment Schedule page layout. -
FIXED: Related To fields on Payment Schedules are now set on all generated Transactions
When a Transaction is generated from a Payment Schedule, it inherits all the Payment Schedule's "Related To" values. -
FIXED: The setup wizard load time has decreased.
Prior to 4.29, it took around 5 seconds to load. Now it takes 1-2 seconds. -
FIXED: Reattempt transactions now relate to the original transaction's parent record.
-
FIXED: Transaction due dates that have different formats, ie Australian date format, are now calculated correctly from the Payment Schedule record.
-
FIXED: The partial refund button is now working in the Service Console.
Patch Release: Version 4.9
Released September 9th, 2018
- FIXED: Non-stripe Transfer transactions will not be submitted to Stripe.
Updated over 1 year ago