Skip to content

Commit 73de5d1

Browse files
feat(api): new book_transfer_transaction events and Settlement Report field deprecations (#285)
## Book Transfer Transaction events Adds `book_transfer_transaction.created` and `book_transfer_transaction.updated` events ## Settlement Report amounts deprecation Marks SettlementReport fields “currency”, “disputes_gross_amount”, “interchange_gross_amount” “other_fees_gross_amount”, “settled_net_amount” and “transactions_gross_amount” as deprecated. To compute total amounts, Lithic recommends that customers sum the relevant settlement amounts found within `details` Adds “currency” field to settlementSummaryDetails
1 parent 1361bb6 commit 73de5d1

13 files changed

Lines changed: 217 additions & 62 deletions

lithic-java-core/src/main/kotlin/com/lithic/api/models/BookTransferResponse.kt

Lines changed: 27 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ import com.lithic.api.core.toUnmodifiable
1717
import com.lithic.api.errors.LithicInvalidDataException
1818
import java.time.OffsetDateTime
1919
import java.util.Objects
20-
import java.util.Optional
2120

2221
@JsonDeserialize(builder = BookTransferResponse.Builder::class)
2322
@NoAutoDetect
@@ -551,7 +550,7 @@ private constructor(
551550
*/
552551
fun amount(): Long = amount.getRequired("amount")
553552

554-
/** Subtype of the book transfer */
553+
/** Type of the book transfer */
555554
fun type(): String = type.getRequired("type")
556555

557556
/**
@@ -573,16 +572,16 @@ private constructor(
573572
fun memo(): String = memo.getRequired("memo")
574573

575574
/** Detailed Results */
576-
fun detailedResults(): Optional<List<DetailedResult>> =
577-
Optional.ofNullable(detailedResults.getNullable("detailed_results"))
575+
fun detailedResults(): List<DetailedResult> =
576+
detailedResults.getRequired("detailed_results")
578577

579578
/**
580579
* Amount of the financial event that has been settled in the currency's smallest unit
581580
* (e.g., cents).
582581
*/
583582
@JsonProperty("amount") @ExcludeMissing fun _amount() = amount
584583

585-
/** Subtype of the book transfer */
584+
/** Type of the book transfer */
586585
@JsonProperty("type") @ExcludeMissing fun _type() = type
587586

588587
/**
@@ -708,10 +707,10 @@ private constructor(
708707
@ExcludeMissing
709708
fun amount(amount: JsonField<Long>) = apply { this.amount = amount }
710709

711-
/** Subtype of the book transfer */
710+
/** Type of the book transfer */
712711
fun type(type: String) = type(JsonField.of(type))
713712

714-
/** Subtype of the book transfer */
713+
/** Type of the book transfer */
715714
@JsonProperty("type")
716715
@ExcludeMissing
717716
fun type(type: JsonField<String>) = apply { this.type = type }
@@ -801,7 +800,7 @@ private constructor(
801800
)
802801
}
803802

804-
class Result
803+
class DetailedResult
805804
@JsonCreator
806805
private constructor(
807806
private val value: JsonField<String>,
@@ -814,7 +813,7 @@ private constructor(
814813
return true
815814
}
816815

817-
return other is Result && this.value == other.value
816+
return other is DetailedResult && this.value == other.value
818817
}
819818

820819
override fun hashCode() = value.hashCode()
@@ -823,42 +822,43 @@ private constructor(
823822

824823
companion object {
825824

826-
@JvmField val APPROVED = Result(JsonField.of("APPROVED"))
825+
@JvmField val APPROVED = DetailedResult(JsonField.of("APPROVED"))
827826

828-
@JvmField val DECLINED = Result(JsonField.of("DECLINED"))
827+
@JvmField
828+
val FUNDS_INSUFFICIENT = DetailedResult(JsonField.of("FUNDS_INSUFFICIENT"))
829829

830-
@JvmStatic fun of(value: String) = Result(JsonField.of(value))
830+
@JvmStatic fun of(value: String) = DetailedResult(JsonField.of(value))
831831
}
832832

833833
enum class Known {
834834
APPROVED,
835-
DECLINED,
835+
FUNDS_INSUFFICIENT,
836836
}
837837

838838
enum class Value {
839839
APPROVED,
840-
DECLINED,
840+
FUNDS_INSUFFICIENT,
841841
_UNKNOWN,
842842
}
843843

844844
fun value(): Value =
845845
when (this) {
846846
APPROVED -> Value.APPROVED
847-
DECLINED -> Value.DECLINED
847+
FUNDS_INSUFFICIENT -> Value.FUNDS_INSUFFICIENT
848848
else -> Value._UNKNOWN
849849
}
850850

851851
fun known(): Known =
852852
when (this) {
853853
APPROVED -> Known.APPROVED
854-
DECLINED -> Known.DECLINED
855-
else -> throw LithicInvalidDataException("Unknown Result: $value")
854+
FUNDS_INSUFFICIENT -> Known.FUNDS_INSUFFICIENT
855+
else -> throw LithicInvalidDataException("Unknown DetailedResult: $value")
856856
}
857857

858858
fun asString(): String = _value().asStringOrThrow()
859859
}
860860

861-
class DetailedResult
861+
class Result
862862
@JsonCreator
863863
private constructor(
864864
private val value: JsonField<String>,
@@ -871,7 +871,7 @@ private constructor(
871871
return true
872872
}
873873

874-
return other is DetailedResult && this.value == other.value
874+
return other is Result && this.value == other.value
875875
}
876876

877877
override fun hashCode() = value.hashCode()
@@ -880,37 +880,36 @@ private constructor(
880880

881881
companion object {
882882

883-
@JvmField val APPROVED = DetailedResult(JsonField.of("APPROVED"))
883+
@JvmField val APPROVED = Result(JsonField.of("APPROVED"))
884884

885-
@JvmField
886-
val FUNDS_INSUFFICIENT = DetailedResult(JsonField.of("FUNDS_INSUFFICIENT"))
885+
@JvmField val DECLINED = Result(JsonField.of("DECLINED"))
887886

888-
@JvmStatic fun of(value: String) = DetailedResult(JsonField.of(value))
887+
@JvmStatic fun of(value: String) = Result(JsonField.of(value))
889888
}
890889

891890
enum class Known {
892891
APPROVED,
893-
FUNDS_INSUFFICIENT,
892+
DECLINED,
894893
}
895894

896895
enum class Value {
897896
APPROVED,
898-
FUNDS_INSUFFICIENT,
897+
DECLINED,
899898
_UNKNOWN,
900899
}
901900

902901
fun value(): Value =
903902
when (this) {
904903
APPROVED -> Value.APPROVED
905-
FUNDS_INSUFFICIENT -> Value.FUNDS_INSUFFICIENT
904+
DECLINED -> Value.DECLINED
906905
else -> Value._UNKNOWN
907906
}
908907

909908
fun known(): Known =
910909
when (this) {
911910
APPROVED -> Known.APPROVED
912-
FUNDS_INSUFFICIENT -> Known.FUNDS_INSUFFICIENT
913-
else -> throw LithicInvalidDataException("Unknown DetailedResult: $value")
911+
DECLINED -> Known.DECLINED
912+
else -> throw LithicInvalidDataException("Unknown Result: $value")
914913
}
915914

916915
fun asString(): String = _value().asStringOrThrow()

lithic-java-core/src/main/kotlin/com/lithic/api/models/Event.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -331,6 +331,10 @@ private constructor(
331331

332332
@JvmField val BALANCE_UPDATED = EventType(JsonField.of("balance.updated"))
333333

334+
@JvmField
335+
val BOOK_TRANSFER_TRANSACTION_CREATED =
336+
EventType(JsonField.of("book_transfer_transaction.created"))
337+
334338
@JvmField val CARD_CREATED = EventType(JsonField.of("card.created"))
335339

336340
@JvmField val CARD_RENEWED = EventType(JsonField.of("card.renewed"))
@@ -426,6 +430,7 @@ private constructor(
426430
ACCOUNT_HOLDER_UPDATED,
427431
ACCOUNT_HOLDER_VERIFICATION,
428432
BALANCE_UPDATED,
433+
BOOK_TRANSFER_TRANSACTION_CREATED,
429434
CARD_CREATED,
430435
CARD_RENEWED,
431436
CARD_REISSUED,
@@ -459,6 +464,7 @@ private constructor(
459464
ACCOUNT_HOLDER_UPDATED,
460465
ACCOUNT_HOLDER_VERIFICATION,
461466
BALANCE_UPDATED,
467+
BOOK_TRANSFER_TRANSACTION_CREATED,
462468
CARD_CREATED,
463469
CARD_RENEWED,
464470
CARD_REISSUED,
@@ -494,6 +500,7 @@ private constructor(
494500
ACCOUNT_HOLDER_UPDATED -> Value.ACCOUNT_HOLDER_UPDATED
495501
ACCOUNT_HOLDER_VERIFICATION -> Value.ACCOUNT_HOLDER_VERIFICATION
496502
BALANCE_UPDATED -> Value.BALANCE_UPDATED
503+
BOOK_TRANSFER_TRANSACTION_CREATED -> Value.BOOK_TRANSFER_TRANSACTION_CREATED
497504
CARD_CREATED -> Value.CARD_CREATED
498505
CARD_RENEWED -> Value.CARD_RENEWED
499506
CARD_REISSUED -> Value.CARD_REISSUED
@@ -534,6 +541,7 @@ private constructor(
534541
ACCOUNT_HOLDER_UPDATED -> Known.ACCOUNT_HOLDER_UPDATED
535542
ACCOUNT_HOLDER_VERIFICATION -> Known.ACCOUNT_HOLDER_VERIFICATION
536543
BALANCE_UPDATED -> Known.BALANCE_UPDATED
544+
BOOK_TRANSFER_TRANSACTION_CREATED -> Known.BOOK_TRANSFER_TRANSACTION_CREATED
537545
CARD_CREATED -> Known.CARD_CREATED
538546
CARD_RENEWED -> Known.CARD_RENEWED
539547
CARD_REISSUED -> Known.CARD_REISSUED

lithic-java-core/src/main/kotlin/com/lithic/api/models/EventListParams.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,10 @@ constructor(
257257

258258
@JvmField val BALANCE_UPDATED = EventType(JsonField.of("balance.updated"))
259259

260+
@JvmField
261+
val BOOK_TRANSFER_TRANSACTION_CREATED =
262+
EventType(JsonField.of("book_transfer_transaction.created"))
263+
260264
@JvmField val CARD_CREATED = EventType(JsonField.of("card.created"))
261265

262266
@JvmField val CARD_RENEWED = EventType(JsonField.of("card.renewed"))
@@ -352,6 +356,7 @@ constructor(
352356
ACCOUNT_HOLDER_UPDATED,
353357
ACCOUNT_HOLDER_VERIFICATION,
354358
BALANCE_UPDATED,
359+
BOOK_TRANSFER_TRANSACTION_CREATED,
355360
CARD_CREATED,
356361
CARD_RENEWED,
357362
CARD_REISSUED,
@@ -385,6 +390,7 @@ constructor(
385390
ACCOUNT_HOLDER_UPDATED,
386391
ACCOUNT_HOLDER_VERIFICATION,
387392
BALANCE_UPDATED,
393+
BOOK_TRANSFER_TRANSACTION_CREATED,
388394
CARD_CREATED,
389395
CARD_RENEWED,
390396
CARD_REISSUED,
@@ -420,6 +426,7 @@ constructor(
420426
ACCOUNT_HOLDER_UPDATED -> Value.ACCOUNT_HOLDER_UPDATED
421427
ACCOUNT_HOLDER_VERIFICATION -> Value.ACCOUNT_HOLDER_VERIFICATION
422428
BALANCE_UPDATED -> Value.BALANCE_UPDATED
429+
BOOK_TRANSFER_TRANSACTION_CREATED -> Value.BOOK_TRANSFER_TRANSACTION_CREATED
423430
CARD_CREATED -> Value.CARD_CREATED
424431
CARD_RENEWED -> Value.CARD_RENEWED
425432
CARD_REISSUED -> Value.CARD_REISSUED
@@ -460,6 +467,7 @@ constructor(
460467
ACCOUNT_HOLDER_UPDATED -> Known.ACCOUNT_HOLDER_UPDATED
461468
ACCOUNT_HOLDER_VERIFICATION -> Known.ACCOUNT_HOLDER_VERIFICATION
462469
BALANCE_UPDATED -> Known.BALANCE_UPDATED
470+
BOOK_TRANSFER_TRANSACTION_CREATED -> Known.BOOK_TRANSFER_TRANSACTION_CREATED
463471
CARD_CREATED -> Known.CARD_CREATED
464472
CARD_RENEWED -> Known.CARD_RENEWED
465473
CARD_REISSUED -> Known.CARD_REISSUED

lithic-java-core/src/main/kotlin/com/lithic/api/models/EventSubscription.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,10 @@ private constructor(
229229

230230
@JvmField val BALANCE_UPDATED = EventType(JsonField.of("balance.updated"))
231231

232+
@JvmField
233+
val BOOK_TRANSFER_TRANSACTION_CREATED =
234+
EventType(JsonField.of("book_transfer_transaction.created"))
235+
232236
@JvmField val CARD_CREATED = EventType(JsonField.of("card.created"))
233237

234238
@JvmField val CARD_RENEWED = EventType(JsonField.of("card.renewed"))
@@ -324,6 +328,7 @@ private constructor(
324328
ACCOUNT_HOLDER_UPDATED,
325329
ACCOUNT_HOLDER_VERIFICATION,
326330
BALANCE_UPDATED,
331+
BOOK_TRANSFER_TRANSACTION_CREATED,
327332
CARD_CREATED,
328333
CARD_RENEWED,
329334
CARD_REISSUED,
@@ -357,6 +362,7 @@ private constructor(
357362
ACCOUNT_HOLDER_UPDATED,
358363
ACCOUNT_HOLDER_VERIFICATION,
359364
BALANCE_UPDATED,
365+
BOOK_TRANSFER_TRANSACTION_CREATED,
360366
CARD_CREATED,
361367
CARD_RENEWED,
362368
CARD_REISSUED,
@@ -392,6 +398,7 @@ private constructor(
392398
ACCOUNT_HOLDER_UPDATED -> Value.ACCOUNT_HOLDER_UPDATED
393399
ACCOUNT_HOLDER_VERIFICATION -> Value.ACCOUNT_HOLDER_VERIFICATION
394400
BALANCE_UPDATED -> Value.BALANCE_UPDATED
401+
BOOK_TRANSFER_TRANSACTION_CREATED -> Value.BOOK_TRANSFER_TRANSACTION_CREATED
395402
CARD_CREATED -> Value.CARD_CREATED
396403
CARD_RENEWED -> Value.CARD_RENEWED
397404
CARD_REISSUED -> Value.CARD_REISSUED
@@ -432,6 +439,7 @@ private constructor(
432439
ACCOUNT_HOLDER_UPDATED -> Known.ACCOUNT_HOLDER_UPDATED
433440
ACCOUNT_HOLDER_VERIFICATION -> Known.ACCOUNT_HOLDER_VERIFICATION
434441
BALANCE_UPDATED -> Known.BALANCE_UPDATED
442+
BOOK_TRANSFER_TRANSACTION_CREATED -> Known.BOOK_TRANSFER_TRANSACTION_CREATED
435443
CARD_CREATED -> Known.CARD_CREATED
436444
CARD_RENEWED -> Known.CARD_RENEWED
437445
CARD_REISSUED -> Known.CARD_REISSUED

lithic-java-core/src/main/kotlin/com/lithic/api/models/EventSubscriptionCreateParams.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -367,6 +367,10 @@ constructor(
367367

368368
@JvmField val BALANCE_UPDATED = EventType(JsonField.of("balance.updated"))
369369

370+
@JvmField
371+
val BOOK_TRANSFER_TRANSACTION_CREATED =
372+
EventType(JsonField.of("book_transfer_transaction.created"))
373+
370374
@JvmField val CARD_CREATED = EventType(JsonField.of("card.created"))
371375

372376
@JvmField val CARD_RENEWED = EventType(JsonField.of("card.renewed"))
@@ -462,6 +466,7 @@ constructor(
462466
ACCOUNT_HOLDER_UPDATED,
463467
ACCOUNT_HOLDER_VERIFICATION,
464468
BALANCE_UPDATED,
469+
BOOK_TRANSFER_TRANSACTION_CREATED,
465470
CARD_CREATED,
466471
CARD_RENEWED,
467472
CARD_REISSUED,
@@ -495,6 +500,7 @@ constructor(
495500
ACCOUNT_HOLDER_UPDATED,
496501
ACCOUNT_HOLDER_VERIFICATION,
497502
BALANCE_UPDATED,
503+
BOOK_TRANSFER_TRANSACTION_CREATED,
498504
CARD_CREATED,
499505
CARD_RENEWED,
500506
CARD_REISSUED,
@@ -530,6 +536,7 @@ constructor(
530536
ACCOUNT_HOLDER_UPDATED -> Value.ACCOUNT_HOLDER_UPDATED
531537
ACCOUNT_HOLDER_VERIFICATION -> Value.ACCOUNT_HOLDER_VERIFICATION
532538
BALANCE_UPDATED -> Value.BALANCE_UPDATED
539+
BOOK_TRANSFER_TRANSACTION_CREATED -> Value.BOOK_TRANSFER_TRANSACTION_CREATED
533540
CARD_CREATED -> Value.CARD_CREATED
534541
CARD_RENEWED -> Value.CARD_RENEWED
535542
CARD_REISSUED -> Value.CARD_REISSUED
@@ -570,6 +577,7 @@ constructor(
570577
ACCOUNT_HOLDER_UPDATED -> Known.ACCOUNT_HOLDER_UPDATED
571578
ACCOUNT_HOLDER_VERIFICATION -> Known.ACCOUNT_HOLDER_VERIFICATION
572579
BALANCE_UPDATED -> Known.BALANCE_UPDATED
580+
BOOK_TRANSFER_TRANSACTION_CREATED -> Known.BOOK_TRANSFER_TRANSACTION_CREATED
573581
CARD_CREATED -> Known.CARD_CREATED
574582
CARD_RENEWED -> Known.CARD_RENEWED
575583
CARD_REISSUED -> Known.CARD_REISSUED

lithic-java-core/src/main/kotlin/com/lithic/api/models/EventSubscriptionSendSimulatedExampleParams.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,10 @@ constructor(
296296

297297
@JvmField val BALANCE_UPDATED = EventType(JsonField.of("balance.updated"))
298298

299+
@JvmField
300+
val BOOK_TRANSFER_TRANSACTION_CREATED =
301+
EventType(JsonField.of("book_transfer_transaction.created"))
302+
299303
@JvmField val CARD_CREATED = EventType(JsonField.of("card.created"))
300304

301305
@JvmField val CARD_RENEWED = EventType(JsonField.of("card.renewed"))
@@ -391,6 +395,7 @@ constructor(
391395
ACCOUNT_HOLDER_UPDATED,
392396
ACCOUNT_HOLDER_VERIFICATION,
393397
BALANCE_UPDATED,
398+
BOOK_TRANSFER_TRANSACTION_CREATED,
394399
CARD_CREATED,
395400
CARD_RENEWED,
396401
CARD_REISSUED,
@@ -424,6 +429,7 @@ constructor(
424429
ACCOUNT_HOLDER_UPDATED,
425430
ACCOUNT_HOLDER_VERIFICATION,
426431
BALANCE_UPDATED,
432+
BOOK_TRANSFER_TRANSACTION_CREATED,
427433
CARD_CREATED,
428434
CARD_RENEWED,
429435
CARD_REISSUED,
@@ -459,6 +465,7 @@ constructor(
459465
ACCOUNT_HOLDER_UPDATED -> Value.ACCOUNT_HOLDER_UPDATED
460466
ACCOUNT_HOLDER_VERIFICATION -> Value.ACCOUNT_HOLDER_VERIFICATION
461467
BALANCE_UPDATED -> Value.BALANCE_UPDATED
468+
BOOK_TRANSFER_TRANSACTION_CREATED -> Value.BOOK_TRANSFER_TRANSACTION_CREATED
462469
CARD_CREATED -> Value.CARD_CREATED
463470
CARD_RENEWED -> Value.CARD_RENEWED
464471
CARD_REISSUED -> Value.CARD_REISSUED
@@ -499,6 +506,7 @@ constructor(
499506
ACCOUNT_HOLDER_UPDATED -> Known.ACCOUNT_HOLDER_UPDATED
500507
ACCOUNT_HOLDER_VERIFICATION -> Known.ACCOUNT_HOLDER_VERIFICATION
501508
BALANCE_UPDATED -> Known.BALANCE_UPDATED
509+
BOOK_TRANSFER_TRANSACTION_CREATED -> Known.BOOK_TRANSFER_TRANSACTION_CREATED
502510
CARD_CREATED -> Known.CARD_CREATED
503511
CARD_RENEWED -> Known.CARD_RENEWED
504512
CARD_REISSUED -> Known.CARD_REISSUED

0 commit comments

Comments
 (0)