NetSuite CreditMemos and CustomerRefunds are created automatically when a full or partial refund is issued in Stripe.
Refunds for charges applied to an invoice
When a charge applied to an invoice is refunded, the integration creates a CreditMemo and CustomerRefund. This ensures entries are made to income and cash accounts.
The integration also supports automatically creating a refund in Stripe from the NetSuite interface. In this case, your team creates a CreditMemo and SuiteSync creates a CustomerRefund and applies it to the CreditMemo.
Partial refunds are supported. Here are some partial refund details to be aware of:
- If the invoice contains a single item, a CreditMemo is created using the single line item on the original invoice is set to the refund amount.
- If the invoice contains multiple items, the integration is unable to determine which line items should be refunded (Stripe does not associate a refund with specific line items). In this case, the refund is represented by a special NonInventorySaleItem named "Stripe Partial Refund Item." If revenue recognition is enabled on your account, this item uses the schedule and deferred revenue account specified in your settings.
- Instead of creating a "Stripe Partial Refund Item" it's possible for the integration to "guess" which line item(s) the refund is associated with and spread out the refund across those NetSuite items. This is an optional feature that can be enabled on your account.
As with all Stripe-created records, the internal ID of the NetSuite record is added to the corresponding Stripe record's metadata. In this case
netsuite_customer_refund_id fields are added to the refund's metadata.
Refunds for CustomerDeposits
Refunds for charges represented as CustomerDeposits work differently depending on their NetSuite status:
- If the CustomerDeposit has not been applied to an Invoice, a CustomerRefund is created and applied against the CustomerDeposit.
- If a CustomerDeposit has been applied to an Invoice, a CreditMemo is created against the Invoice and a CustomerRefund is applied to the CreditMemo
Refunds for Standalone Charges
If a refund is created for a charge that is not associated with an invoice, a CustomerRefund is created and applied against the CustomerPayment. No CreditMemo is created.
Refunds and the NetSuite Deposit Record
Refunds are included in Stripe transfers, just like charges. Before a refund is included in a transfer, the refund posts to the undeposited funds account in your NetSuite instance (using the CustomerRefund record). After the refund is included in the transfer, the refund is linked to a NetSuite deposit and refund amount moves from undeposited funds to the cash account.
Stripe Fee Refunds
Stripe fee refunds are not represented on the CustomerRefund or CreditMemo records. Stripe fee refunds are recorded on the deposit record as a line item in the "Other Deposits" list. Check out the transfer documentation for more information.
Creating Stripe Refunds in NetSuite
It's possible to create Stripe refunds using the CreditMemo record in NetSuite. This is an optional feature that can be enabled. Learn more about this feature.