@@ -12,7 +12,9 @@ type CreateTransfer struct {
1212 // An optional description of the transfer for your own internal use.
1313 Description string `json:"description,omitempty"`
1414 // Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
15- Metadata map [string ]string `json:"metadata,omitempty"`
15+ Metadata map [string ]string `json:"metadata,omitempty"`
16+ // ForeignID an optional alias from a foreign/external system which can be used to reference this resource
17+ ForeignID * string `json:"foreignID,omitempty"`
1618 LineItems * CreateTransferLineItems `json:"lineItems,omitempty"`
1719}
1820
@@ -44,6 +46,13 @@ type CreateTransfer_AchDetailsSource struct {
4446 OriginatingCompanyName string `json:"originatingCompanyName,omitempty"`
4547 DebitHoldPeriod * DebitHoldPeriod `json:"debitHoldPeriod,omitempty"`
4648 SecCode * SecCode `json:"secCode,omitempty"`
49+ // Addenda optional ACH addenda to include on the transfer
50+ Addenda []CreateTransfer_AchAddendaRecord `json:"addenda,omitempty"`
51+ }
52+
53+ type CreateTransfer_AchAddendaRecord struct {
54+ // Record an ACH addenda record. Must comply with the NACHA character set and be 80 characters or less
55+ Record string
4756}
4857
4958// CreateTransfer_Destination The final stage of a transfer and the ultimate recipient of the funds.
@@ -65,6 +74,8 @@ type CreateTransfer_AchDetailsBase struct {
6574 CompanyEntryDescription string `json:"companyEntryDescription,omitempty"`
6675 // An optional override of the default NACHA company name for a transfer.
6776 OriginatingCompanyName string `json:"originatingCompanyName,omitempty"`
77+ // Addenda optional ACH addenda to include on the transfer
78+ Addenda []CreateTransfer_AchAddendaRecord `json:"addenda,omitempty"`
6879}
6980
7081// CreateTransfer_FacilitatorFee Total or markup fee.
@@ -141,6 +152,9 @@ type Transfer struct {
141152 ScheduleID * string `json:"scheduleID,omitempty"`
142153 // ID of the associated occurrence.
143154 OccurrenceID * string `json:"occurrenceID,omitempty"`
155+ // ForeignID an optional alias from a foreign/external system which can be used to reference this resource
156+ ForeignID * string `json:"foreignID,omitempty"`
157+
144158 // The total refunded amount for a card transfer, representing one refunded amount, or multiple partial refunded amounts. Contains an integer value and its currency. See the `refunds` array for additional details.
145159 RefundedAmount * Amount `json:"refundedAmount,omitempty"`
146160 // A list of refunds for a card transfer.
@@ -281,15 +295,23 @@ type AchDetailsSource struct {
281295 // An optional override of the default NACHA company entry description for a transfer.
282296 CompanyEntryDescription string `json:"companyEntryDescription,omitempty"`
283297 // An optional override of the default NACHA company name for a transfer.
284- OriginatingCompanyName string `json:"originatingCompanyName,omitempty"`
285- SecCode SecCode `json:"secCode,omitempty"`
286- InitiatedOn * time.Time `json:"initiatedOn,omitempty"`
287- OriginatedOn * time.Time `json:"originatedOn,omitempty"`
288- CorrectedOn * time.Time `json:"correctedOn,omitempty"`
289- ReturnedOn * time.Time `json:"returnedOn,omitempty"`
290- CompletedOn * time.Time `json:"completedOn,omitempty"`
291- CanceledOn * time.Time `json:"canceledOn,omitempty"`
292- DebitHoldPeriod DebitHoldPeriod `json:"debitHoldPeriod,omitempty"`
298+ OriginatingCompanyName string `json:"originatingCompanyName,omitempty"`
299+ SecCode SecCode `json:"secCode,omitempty"`
300+ InitiatedOn * time.Time `json:"initiatedOn,omitempty"`
301+ OriginatedOn * time.Time `json:"originatedOn,omitempty"`
302+ CorrectedOn * time.Time `json:"correctedOn,omitempty"`
303+ ReturnedOn * time.Time `json:"returnedOn,omitempty"`
304+ CompletedOn * time.Time `json:"completedOn,omitempty"`
305+ CanceledOn * time.Time `json:"canceledOn,omitempty"`
306+ DebitHoldPeriod DebitHoldPeriod `json:"debitHoldPeriod,omitempty"`
307+ Addenda []AchAddendaRecord `json:"addenda,omitempty"`
308+ }
309+
310+ type AchAddendaRecord struct {
311+ // Record an ACH addenda record. Must comply with the NACHA character set and be 80 characters or less
312+ Record string
313+ // IsMasked indicates whether the original addenda record has been masked to obscure PII
314+ IsMasked bool
293315}
294316
295317// AchException struct for AchException
@@ -322,14 +344,15 @@ type AchDetails struct {
322344 // An optional override of the default NACHA company entry description for a transfer.
323345 CompanyEntryDescription string `json:"companyEntryDescription,omitempty"`
324346 // An optional override of the default NACHA company name for a transfer.
325- OriginatingCompanyName string `json:"originatingCompanyName,omitempty"`
326- SecCode SecCode `json:"secCode,omitempty"`
327- InitiatedOn * time.Time `json:"initiatedOn,omitempty"`
328- OriginatedOn * time.Time `json:"originatedOn,omitempty"`
329- CorrectedOn * time.Time `json:"correctedOn,omitempty"`
330- ReturnedOn * time.Time `json:"returnedOn,omitempty"`
331- CompletedOn * time.Time `json:"completedOn,omitempty"`
332- CanceledOn * time.Time `json:"canceledOn,omitempty"`
347+ OriginatingCompanyName string `json:"originatingCompanyName,omitempty"`
348+ SecCode SecCode `json:"secCode,omitempty"`
349+ InitiatedOn * time.Time `json:"initiatedOn,omitempty"`
350+ OriginatedOn * time.Time `json:"originatedOn,omitempty"`
351+ CorrectedOn * time.Time `json:"correctedOn,omitempty"`
352+ ReturnedOn * time.Time `json:"returnedOn,omitempty"`
353+ CompletedOn * time.Time `json:"completedOn,omitempty"`
354+ CanceledOn * time.Time `json:"canceledOn,omitempty"`
355+ Addenda []AchAddendaRecord `json:"addenda,omitempty"`
333356}
334357
335358// RtpDetails RTP specific details about the transaction.
0 commit comments